diff options
author | Astatin <[email protected]> | 2024-12-12 15:52:19 +0900 |
---|---|---|
committer | Astatin <[email protected]> | 2024-12-12 15:52:19 +0900 |
commit | e93a99e8e8565db0111b40d3286ce3d78f263559 (patch) | |
tree | 5dea1c3d71de34d6b96ec01d8d0583bad053489b /attacks | |
parent | c9ab625b7f226e778fe5cba894fe088e044e704c (diff) |
Earcopter damages + blinking animation
Diffstat (limited to 'attacks')
-rw-r--r-- | attacks/earcoptr.gbasm | 86 |
1 files changed, 80 insertions, 6 deletions
diff --git a/attacks/earcoptr.gbasm b/attacks/earcoptr.gbasm index 3700a88..baa08b9 100644 --- a/attacks/earcoptr.gbasm +++ b/attacks/earcoptr.gbasm @@ -1,3 +1,70 @@ +Earcoptr_Attack_Loading_VBlank: + LD A, $mem_loading_step + INC A + AND $1f + LD $mem_loading_step, A + CP $00 + RET NZ + + LD A, $enum_dungeon_mode + LD $mem_current_mode, A + LD $mem_requested_mode, A + LD A, $mem_map_loading_flags + SET 3, A + LD $mem_map_loading_flags, A + RET + +Earcoptr_Attack_Loading_Regular: + LD A, $mem_loading_step + CP $00 + RET Z + CP $11 + RET C + + SUB $10 + LD BC, $mem_entities_list + SLA A + SLA A + SLA A + SLA A + INC A + LD C, A + + LD A, (BC) + LD E, A + + LD A, $mem_bunny_x + SUB E + .ABS + CP $02 + RET NC + + INC C + + LD A, (BC) + LD E, A + + LD A, $mem_bunny_y + SUB E + .ABS + CP $02 + RET NC + + INC C + LD A, (BC) + AND $0f + OR $50 + LD (BC), A + + LD A, C + ADD $03 + LD C, A + LD A, (BC) + SUB $01 + RET C + LD (BC), A + RET + Earcoptr_Attack: PUSH BC LD A, $mem_bunny_x @@ -8,14 +75,21 @@ Earcoptr_Attack: CALL =Try_Launch_Animation POP BC - LD A, $enum_dungeon_mode + LD BC, =Earcoptr_Attack_Loading_VBlank + LD A, B + LD $mem_loading_mode_vblank_func_pointer_high, A + LD A, C + LD $mem_loading_mode_vblank_func_pointer_low, A + + LD BC, =Earcoptr_Attack_Loading_Regular + LD A, B + LD $mem_loading_mode_regular_func_pointer_high, A + LD A, C + LD $mem_loading_mode_regular_func_pointer_low, A + + LD A, $enum_loading_mode LD $mem_requested_mode, A - LD $mem_current_mode, A LD A, $00 LD $mem_display_flag, A - - LD A, $mem_map_loading_flags - SET 3, A - LD $mem_map_loading_flags, A RET |