diff options
-rw-r--r-- | TODO | 2 | ||||
-rw-r--r-- | definitions.gbasm | 11 | ||||
-rw-r--r-- | entity/bunny.gbasm | 5 | ||||
-rw-r--r-- | main.gbasm | 4 |
4 files changed, 13 insertions, 9 deletions
@@ -1,9 +1,7 @@ Bugs: - -> Health is not updated on death -> Penguins freeze can cancel hops but not freezes -> Foxes can attack even if bunny hopped away -> Emulator crash with "not implemented: Only XKB keymaps are supported when unfocused (or workspace change maybe ?) - -> There is no way to change direction outside of moving -> There is no indicator that the max health is 20 Need to be refactored: diff --git a/definitions.gbasm b/definitions.gbasm index baa72a4..6a8aeaf 100644 --- a/definitions.gbasm +++ b/definitions.gbasm @@ -73,12 +73,13 @@ .DEFINE mem_current_mode ($c014) .DEFINE mem_requested_mode ($c015) +; bit 7: setp if map, objects and gui update are frozen .DEFINE enum_dungeon_mode $00 -.DEFINE enum_dungeon_menu_mode $01 -.DEFINE enum_dungeon_dialogue_mode $02 -.DEFINE enum_loading_mode $03 -.DEFINE enum_dead_mode $04 -.DEFINE enum_animation_wait_mode $05 +.DEFINE enum_dead_mode $01 +.DEFINE enum_dungeon_menu_mode $80 +.DEFINE enum_dungeon_dialogue_mode $81 +.DEFINE enum_loading_mode $82 +.DEFINE enum_animation_wait_mode $83 .DEFINE mem_menu_cursor_position ($c016) .DEFINE mem_last_button_direction ($c017) diff --git a/entity/bunny.gbasm b/entity/bunny.gbasm index c9bd141..4b9bba7 100644 --- a/entity/bunny.gbasm +++ b/entity/bunny.gbasm @@ -72,12 +72,17 @@ Move_Bunny: SET 3, A LD $mem_map_loading_flags, A + LD A, $mem_button_action + BIT 1, A + JR NZ, =.Start_action_or_movement.cancel_movement + LD A, D CALL =Get_Position_After_Move CALL =Is_Collisionable CALL =Carve_Entity_Collision_Map CP $00 JR Z, =.Start_action_or_movement.not_collision + .Start_action_or_movement.cancel_movement: RES 3, D LD A, $mem_map_loading_flags @@ -162,7 +162,7 @@ VBLANK_Entrypoint: CALL =Loading_Mode_VBlank LD A, $mem_current_mode - CP $enum_dungeon_mode + BIT 7, A JR NZ, =Skip_VBlank_Dungeon_Update LD HL, $9d60 LD A, $mem_bunny_health @@ -196,8 +196,8 @@ VBLANK_Entrypoint: CP $enum_dungeon_mode JR NZ, =Skip_Dungeon_Update - CALL =Object_Interactions_Check CALL =Entities_Actions + CALL =Object_Interactions_Check CALL =Respawn_Entities CALL =Prepare_Scrolling_Map |