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 LD A, C ADD $04 LD C, A LD A, (BC) SUB $01 RET C LD (BC), A INC C LD A, (BC) SET 3, A LD (BC), A LD A, $mem_moving_animation_step LD B, A LD A, $1f SUB B LD $mem_blinking_animation_counter, A RET Earcoptr_Attack: PUSH BC LD A, $mem_bunny_x LD B, A LD A, $mem_bunny_y LD C, A LD A, $02 PUSH DE LD E, $30 LD D, $00 CALL =Try_Launch_Animation POP DE POP BC 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 .CLOSE_DIALOGUE RET