X-Git-Url: http://git.rohieb.name/hackover2013-badge-firmware.git/blobdiff_plain/81be30fb6f37d0f9633d5883445f3ebc57989a53..926f4cca0bec5b39f4d45dc9cdece5ddcedbcd95:/badge/jumpnrun/jumpnrun.h diff --git a/badge/jumpnrun/jumpnrun.h b/badge/jumpnrun/jumpnrun.h index fc386c7..c6613f5 100644 --- a/badge/jumpnrun/jumpnrun.h +++ b/badge/jumpnrun/jumpnrun.h @@ -25,12 +25,14 @@ enum { }; typedef struct jumpnrun_shot { + rectangle old_box; rectangle current_box; vec2d inertia; uint8_t tick; } jumpnrun_shot; static inline bool jumpnrun_shot_spawned(jumpnrun_shot const *shot) { return fixed_point_ne(shot->inertia.x, FIXED_INT(0)); } +static inline void jumpnrun_shot_despawn(jumpnrun_shot *shot) { shot->inertia.x = FIXED_INT(0); } enum { JUMPNRUN_MAX_SHOTS = 2 @@ -41,12 +43,12 @@ typedef struct jumpnrun_game_state { uint8_t status; int left; + uint8_t lives; jumpnrun_shot shots[JUMPNRUN_MAX_SHOTS]; } jumpnrun_game_state; -rectangle hacker_rect_current(jumpnrun_game_state const *state); - +vec2d hacker_extents(void); void jumpnrun_passive_movement(vec2d *inertia); uint8_t jumpnrun_play(char const *lvname);