X-Git-Url: https://git.rohieb.name/hackover2013-badge-firmware.git/blobdiff_plain/5df5b3536a7e824c1340a07f3c26a7c61e78b68b..9c281c1d45fb710afc2884f99760113062b6a301:/badge/jumpnrun/enemies.h diff --git a/badge/jumpnrun/enemies.h b/badge/jumpnrun/enemies.h index add16c0..5b6da64 100644 --- a/badge/jumpnrun/enemies.h +++ b/badge/jumpnrun/enemies.h @@ -29,7 +29,10 @@ typedef struct jumpnrun_enemy_type { void (*collision_player)(struct jumpnrun_enemy *self, struct jumpnrun_game_state *state, vec2d *player_inertia_mod); - void (*game_tick)(struct jumpnrun_enemy *self, + void (*collision_shots)(struct jumpnrun_enemy *self, + struct jumpnrun_game_state *state); + + void (*move_tick)(struct jumpnrun_enemy *self, struct jumpnrun_game_state *state, struct jumpnrun_level *lv, struct jumpnrun_tile_range const *visible_tiles, @@ -47,7 +50,8 @@ typedef struct jumpnrun_enemy { enum { JUMPNRUN_ENEMY_SPAWNED = 1, JUMPNRUN_ENEMY_UNAVAILABLE = 2, - JUMPNRUN_ENEMY_FACING_RIGHT = 4 + JUMPNRUN_ENEMY_FACING_RIGHT = 4, + JUMPNRUN_ENEMY_EVENT_TRIGGER1 = 128 }; static inline rectangle const *enemy_box (jumpnrun_enemy const *enemy) { return &enemy->base.current_box ; } @@ -66,6 +70,10 @@ enum { JUMPNRUN_ENEMY_TYPE_SPIRAL, JUMPNRUN_ENEMY_TYPE_ROTOR, JUMPNRUN_ENEMY_TYPE_DOG, + JUMPNRUN_ENEMY_TYPE_GIRAFFE, + JUMPNRUN_ENEMY_TYPE_BIRD, + JUMPNRUN_ENEMY_TYPE_BIRD_STRAIGHT, + JUMPNRUN_ENEMY_TYPE_BIRD_DIP, JUMPNRUN_ENEMY_TYPE_COUNT };