diff options
author | Astatin <[email protected]> | 2025-05-09 10:28:14 +0200 |
---|---|---|
committer | Astatin <[email protected]> | 2025-05-09 10:28:14 +0200 |
commit | 507a9876b85f47ff81cc9150bea858eec064ba05 (patch) | |
tree | 5b24e7836ce07ad8768d9c7ad7a1c6a2b3e92106 | |
parent | 4b02238d88af30c98b2f8d44e5200fb80b04bcad (diff) |
Refactor viewport to not need Fix_Bunny_Screen anymore and "fix" it before every frame
-rw-r--r-- | enemiesattacks/freeze.gbasm | 1 | ||||
-rw-r--r-- | enemiesattacks/grab.gbasm | 1 | ||||
-rw-r--r-- | entity/bunny.gbasm | 28 | ||||
-rw-r--r-- | entity/display.gbasm | 9 | ||||
-rw-r--r-- | entity/init.gbasm | 1 | ||||
-rw-r--r-- | map/objects.gbasm | 8 | ||||
-rw-r--r-- | playerattacks/hop.gbasm | 1 | ||||
-rw-r--r-- | utils.gbasm | 71 |
8 files changed, 14 insertions, 106 deletions
diff --git a/enemiesattacks/freeze.gbasm b/enemiesattacks/freeze.gbasm index 057dec4..b5b6319 100644 --- a/enemiesattacks/freeze.gbasm +++ b/enemiesattacks/freeze.gbasm @@ -43,7 +43,6 @@ Freeze_Enemy_Attack: ; Direction to face in E. Result in BC (XY), Direction in D LD A, $00 LD $mem_entity_being_attacked_low, A - CALL =Fix_Bunny_screen LD A, $04 LD $mem_bunny_status_clear_turn_counter, A LD A, $enum_dungeon_mode diff --git a/enemiesattacks/grab.gbasm b/enemiesattacks/grab.gbasm index 4529cd7..e69334e 100644 --- a/enemiesattacks/grab.gbasm +++ b/enemiesattacks/grab.gbasm @@ -83,7 +83,6 @@ Grab_Enemy_Attack: ; Direction to face in E. Result in BC (XY), Direction in D INC A OR $08 LD $mem_bunny_direction, A - CALL =Fix_Bunny_screen POP BC POP DE diff --git a/entity/bunny.gbasm b/entity/bunny.gbasm index 46854b8..c58a645 100644 --- a/entity/bunny.gbasm +++ b/entity/bunny.gbasm @@ -167,29 +167,6 @@ Move_Bunny: LD $mem_entity_being_attacked_low, A .Delayed_Attack.end: - .2x_speed_middle_update: - LD A, $mem_bunny_flags - BIT 0, A - JR Z, =.2x_speed_middle_update.end - LD A, $mem_moving_animation_step - CP $07 - JR NZ, =.2x_speed_middle_update.end - - LD A, $mem_bunny_x - LD B, A - LD A, $mem_bunny_y - LD C, A - LD A, $mem_bunny_direction - LD D, A - LD A, $02 - .ADD_A_TO_DIRECTION_BC - LD A, B - LD $mem_bunny_x, A - LD A, C - LD $mem_bunny_y, A - DBG - .2x_speed_middle_update.end: - .End_movement: LD A, $mem_map_loading_flags BIT 3, A @@ -208,7 +185,7 @@ Move_Bunny: LD B, A LD A, $mem_bunny_y LD C, A - LD A, $01 + LD A, E .ADD_A_TO_DIRECTION_BC LD A, B LD $mem_bunny_x, A @@ -407,9 +384,6 @@ Center_viewport_around_entity: ; Entity pointer in HL BIT 0, (HL) JR Z, =.moving_animation_end SLA E - LD A, E - AND $0f - LD E, A .moving_animation_end: LD A, B diff --git a/entity/display.gbasm b/entity/display.gbasm index 0a38755..42f4740 100644 --- a/entity/display.gbasm +++ b/entity/display.gbasm @@ -152,16 +152,7 @@ Display_Entity: CP $30 JR NZ, =.SuperJump_Animation.end - PUSH BC - LD A, $mem_moving_animation_step - CPL - INC A - LD B, A LD A, $mem_moving_animation_step - SLA A - AND $0f - ADD B - POP BC CP $00 JR Z, =.SuperJump_Animation.end .ADD_A_TO_DIRECTION_BC diff --git a/entity/init.gbasm b/entity/init.gbasm index 1e39456..80e3848 100644 --- a/entity/init.gbasm +++ b/entity/init.gbasm @@ -108,7 +108,6 @@ Initialize_Entities: CALL =Reset_Entities_Collision_Map -Fix_Bunny_screen: LD A, $mem_bunny_x SUB $05 LD $mem_viewport_x, A diff --git a/map/objects.gbasm b/map/objects.gbasm index 11eb7f9..7cdd5c4 100644 --- a/map/objects.gbasm +++ b/map/objects.gbasm @@ -265,8 +265,6 @@ Heal_Attack_Box_Action: RES 3, A LD $mem_map_loading_flags, A - CALL =Fix_Bunny_screen - RET .Script: @@ -289,8 +287,6 @@ Freeze_Attack_Box_Action: RES 3, A LD $mem_map_loading_flags, A - CALL =Fix_Bunny_screen - RET .Script: @@ -313,8 +309,6 @@ Earcopter_Attack_Box_Action: RES 3, A LD $mem_map_loading_flags, A - CALL =Fix_Bunny_screen - RET .Script: @@ -337,8 +331,6 @@ Fimsh_Attack_Box_Action: RES 3, A LD $mem_map_loading_flags, A - CALL =Fix_Bunny_screen - RET .Script: diff --git a/playerattacks/hop.gbasm b/playerattacks/hop.gbasm index ac89acd..111fb72 100644 --- a/playerattacks/hop.gbasm +++ b/playerattacks/hop.gbasm @@ -99,7 +99,6 @@ Hop_Attack_Loading_Regular: LD $mem_current_mode, A LD $mem_requested_mode, A CALL =Update_VBlank_Handler - CALL =Fix_Bunny_screen LD A, $mem_bunny_direction OR $38 LD $mem_bunny_direction, A diff --git a/utils.gbasm b/utils.gbasm index ae509f0..5cb39ca 100644 --- a/utils.gbasm +++ b/utils.gbasm @@ -100,64 +100,19 @@ bff: ; dest = HL, n = BC LD A, $mem_bunny_direction BIT 3, A JR Z, =$end - LD A, $mem_bunny_direction - AND $07 - CP $enum_direction_down - JR Z, =$down - CP $enum_direction_right - JR Z, =$right - CP $enum_direction_up - JR Z, =$up - - $left: - LD A, $mem_prepared_viewport_x - SUB $09 - AND $0f - INC A - XOR $ff - INC A - ADD $10 - ADD B - - LD B, A - JR =$end - - $right: - LD A, $mem_prepared_viewport_x - SUB $08 - AND $0f - XOR $ff - INC A - ADD B - - LD B, A - - JR =$end - - $up: - LD A, $mem_prepared_viewport_y - SUB $09 - AND $0f - INC A - XOR $ff - INC A - ADD $10 - ADD C - - LD C, A - - JR =$end - - $down: - LD A, $mem_prepared_viewport_y - SUB $08 - AND $0f - XOR $ff - INC A - ADD C - - LD C, A - + PUSH DE + DEC A + XOR $01 + INC A + LD D, A + LD A, $mem_bunny_flags + BIT 0, A + LD A, $mem_moving_animation_step + JR Z, =$skip_double + SLA A + $skip_double: + .ADD_A_TO_DIRECTION_BC + POP DE $end: .END |