#include #include "player.h" #include "camera.h" #include "input.h" void player_step(Player *player, Input *input) { Vec move = { input_is_down(*input, K_RIGHT) - input_is_down(*input, K_LEFT), input_is_down(*input, K_DOWN) - input_is_down(*input, K_UP) }; #ifdef FX9860G vec_div(&move, 50); #endif /* FX9860G */ #ifdef FXCG50 vec_mul(&move, 2); #endif /* FXCG50 */ vec_add(&player->pos, move); } void player_draw(Player *player, Camera *camera) { Vec draw_pos_tl; Vec draw_pos_br; vec_cpy(&draw_pos_tl, player->pos); vec_sub(&draw_pos_tl, player->origin); vec_cpy(&draw_pos_br, draw_pos_tl); vec_add(&draw_pos_br, player->hbox); #ifdef FX9860G drect(draw_pos_tl.x, draw_pos_tl.y, draw_pos_br.x, draw_pos_br.y, C_LIGHT); #endif /* FX9860G */ #ifdef FXCG50 drect(draw_pos_tl.x, draw_pos_tl.y, draw_pos_br.x, draw_pos_br.y, C_BLACK); #endif /* FXCG50 */ }