aboutsummaryrefslogtreecommitdiff
path: root/playerattacks
diff options
context:
space:
mode:
authorAstatin <[email protected]>2025-05-15 15:42:26 +0200
committerAstatin <[email protected]>2025-05-15 15:42:26 +0200
commita1dad7db479d8203df30a649a688f7351b667d8e (patch)
tree66c878c78365d87f7b37a2ea506c1e1979e0d536 /playerattacks
parentef9de76cd0bc313385b7edac3659e03ab36d3c1e (diff)
Fix some bugs owl found
Diffstat (limited to 'playerattacks')
-rw-r--r--playerattacks/earcoptr.gbasm31
-rw-r--r--playerattacks/freeze.gbasm36
-rw-r--r--playerattacks/heal.gbasm2
3 files changed, 36 insertions, 33 deletions
diff --git a/playerattacks/earcoptr.gbasm b/playerattacks/earcoptr.gbasm
index ef6a4b5..721692e 100644
--- a/playerattacks/earcoptr.gbasm
+++ b/playerattacks/earcoptr.gbasm
@@ -1,24 +1,13 @@
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
- CALL =Update_VBlank_Handler
- 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
+ INC A
+ AND $1f
+ LD $mem_loading_step, A
CP $00
- RET Z
+ JR Z, =.end_attack
CP $11
RET C
@@ -76,6 +65,18 @@ Earcoptr_Attack_Loading_Regular:
RET
+ .end_attack:
+ LD A, $enum_dungeon_mode
+ LD $mem_current_mode, A
+ LD $mem_requested_mode, A
+ CALL =Update_VBlank_Handler
+
+ LD A, $mem_map_loading_flags
+ SET 3, A
+ LD $mem_map_loading_flags, A
+
+ RET
+
Earcoptr_Attack:
PUSH BC
LD A, $mem_bunny_x
diff --git a/playerattacks/freeze.gbasm b/playerattacks/freeze.gbasm
index 80e3ca1..0ce697f 100644
--- a/playerattacks/freeze.gbasm
+++ b/playerattacks/freeze.gbasm
@@ -20,34 +20,21 @@ Freeze_Attack_Loading_VBlank:
JR Z, =.Blink_Animation.dark_palette
LD A, $palette_normal
LD $mem_prepared_color_palette, A
- JR =.end
+ RET
.Blink_Animation.dark_palette:
LD A, $palette_white
LD $mem_prepared_color_palette, A
- .end:
- LD A, $mem_loading_step
- INC A
- AND $0f
- LD $mem_loading_step, A
- CP $00
- RET NZ
-
- LD A, $enum_dungeon_mode
- LD $mem_current_mode, A
- LD $mem_requested_mode, A
- CALL =Update_VBlank_Handler
-
- LD A, $mem_map_loading_flags
- SET 3, A
- LD $mem_map_loading_flags, A
RET
Freeze_Attack_Loading_Regular:
LD A, $mem_loading_step
+ INC A
+ AND $0f
+ LD $mem_loading_step, A
CP $00
- RET Z
+ JR Z, =.end_attack
LD BC, $mem_entities_list
SLA A
@@ -101,6 +88,19 @@ Freeze_Attack_Loading_Regular:
LD (BC), A
RET
+ .end_attack:
+
+ LD A, $enum_dungeon_mode
+ LD $mem_current_mode, A
+ LD $mem_requested_mode, A
+ CALL =Update_VBlank_Handler
+
+ LD A, $mem_map_loading_flags
+ SET 3, A
+ LD $mem_map_loading_flags, A
+
+ RET
+
Freeze_Attack:
LD BC, =Freeze_Attack_Loading_VBlank
LD A, B
diff --git a/playerattacks/heal.gbasm b/playerattacks/heal.gbasm
index 2cc7b10..b8718b9 100644
--- a/playerattacks/heal.gbasm
+++ b/playerattacks/heal.gbasm
@@ -1,5 +1,7 @@
Heal_Attack:
LD A, $mem_bunny_health
+ CP $20
+ JP Z, =Canceled_Attack
ADD $03
DAA
CP $20