diff options
Diffstat (limited to 'engine')
-rwxr-xr-x | engine/battle/core.asm | 4 | ||||
-rw-r--r-- | engine/battle/moveEffects/focus_energy_effect.asm | 24 | ||||
-rw-r--r--[-rwxr-xr-x] | engine/battle/moveEffects/leech_seed_effect.asm (renamed from engine/battle/a.asm) | 0 | ||||
-rw-r--r--[-rwxr-xr-x] | engine/battle/moveEffects/substitute_effect.asm (renamed from engine/battle/5.asm) | 2 | ||||
-rw-r--r-- | engine/battle/print_type.asm | 52 | ||||
-rw-r--r--[-rwxr-xr-x] | engine/battle/save_trainer_name.asm (renamed from engine/battle/9.asm) | 78 |
6 files changed, 79 insertions, 81 deletions
diff --git a/engine/battle/core.asm b/engine/battle/core.asm index bad8f831..48bed512 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -8369,8 +8369,8 @@ ParalyzeEffect: ; 3f9b1 (f:79b1) jp Bankswitch SubstituteEffect: ; 3f9b9 (f:79b9) - ld hl, SubstituteEffectHandler - ld b, BANK(SubstituteEffectHandler) + ld hl, SubstituteEffect_ + ld b, BANK(SubstituteEffect_) jp Bankswitch HyperBeamEffect: ; 3f9c1 (f:79c1) diff --git a/engine/battle/moveEffects/focus_energy_effect.asm b/engine/battle/moveEffects/focus_energy_effect.asm new file mode 100644 index 00000000..f01e61cc --- /dev/null +++ b/engine/battle/moveEffects/focus_energy_effect.asm @@ -0,0 +1,24 @@ +FocusEnergyEffect_: ; 27f86 (9:7f86) + ld hl, W_PLAYERBATTSTATUS2 + ld a, [H_WHOSETURN] + and a + jr z, .notEnemy + ld hl, W_ENEMYBATTSTATUS2 +.notEnemy + bit GettingPumped, [hl] ; is mon already using focus energy? + jr nz, .alreadyUsing + set GettingPumped, [hl] ; mon is now using focus energy + callab PlayCurrentMoveAnimation + ld hl, GettingPumpedText + jp PrintText +.alreadyUsing + ld c, $32 + call DelayFrames + ld hl, PrintButItFailedText_ + ld b, BANK(PrintButItFailedText_) + jp Bankswitch + +GettingPumpedText: ; 27fb3 (9:7fb3) + db $0a + TX_FAR _GettingPumpedText + db "@" diff --git a/engine/battle/a.asm b/engine/battle/moveEffects/leech_seed_effect.asm index a257d143..a257d143 100755..100644 --- a/engine/battle/a.asm +++ b/engine/battle/moveEffects/leech_seed_effect.asm diff --git a/engine/battle/5.asm b/engine/battle/moveEffects/substitute_effect.asm index ef3e1362..e88def4a 100755..100644 --- a/engine/battle/5.asm +++ b/engine/battle/moveEffects/substitute_effect.asm @@ -1,4 +1,4 @@ -SubstituteEffectHandler: ; 17dad (5:7dad) +SubstituteEffect_: ; 17dad (5:7dad) ld c, 50 call DelayFrames ld hl, wBattleMonMaxHP diff --git a/engine/battle/print_type.asm b/engine/battle/print_type.asm new file mode 100644 index 00000000..38c701a8 --- /dev/null +++ b/engine/battle/print_type.asm @@ -0,0 +1,52 @@ +; [wd0b5] = pokemon ID +; hl = dest addr +PrintMonType: ; 27d6b (9:7d6b) + call GetPredefRegisters + push hl + call GetMonHeader + pop hl + push hl + ld a, [W_MONHTYPE1] + call PrintType + ld a, [W_MONHTYPE1] + ld b, a + ld a, [W_MONHTYPE2] + cp b + pop hl + jr z, EraseType2Text + ld bc, SCREEN_WIDTH * 2 + add hl, bc + +; a = type +; hl = dest addr +PrintType: ; 27d89 (9:7d89) + push hl + jr PrintType_ + +; erase "TYPE2/" if the mon only has 1 type +EraseType2Text: ; 27d8c (9:7d8c) + ld a, " " + ld bc, $13 + add hl, bc + ld bc, $6 + jp FillMemory + +PrintMoveType: ; 27d98 (9:7d98) + call GetPredefRegisters + push hl + ld a, [W_PLAYERMOVETYPE] +; fall through + +PrintType_: ; 27d9f (9:7d9f) + add a + ld hl, TypeNames + ld e, a + ld d, $0 + add hl, de + ld a, [hli] + ld e, a + ld d, [hl] + pop hl + jp PlaceString + +INCLUDE "text/type_names.asm" diff --git a/engine/battle/9.asm b/engine/battle/save_trainer_name.asm index e7265f41..84ef1f69 100755..100644 --- a/engine/battle/9.asm +++ b/engine/battle/save_trainer_name.asm @@ -1,56 +1,3 @@ -; [wd0b5] = pokemon ID -; hl = dest addr -PrintMonType: ; 27d6b (9:7d6b) - call GetPredefRegisters - push hl - call GetMonHeader - pop hl - push hl - ld a, [W_MONHTYPE1] - call PrintType - ld a, [W_MONHTYPE1] - ld b, a - ld a, [W_MONHTYPE2] - cp b - pop hl - jr z, EraseType2Text - ld bc, SCREEN_WIDTH * 2 - add hl, bc - -; a = type -; hl = dest addr -PrintType: ; 27d89 (9:7d89) - push hl - jr PrintType_ - -; erase "TYPE2/" if the mon only has 1 type -EraseType2Text: ; 27d8c (9:7d8c) - ld a, " " - ld bc, $13 - add hl, bc - ld bc, $6 - jp FillMemory - -PrintMoveType: ; 27d98 (9:7d98) - call GetPredefRegisters - push hl - ld a, [W_PLAYERMOVETYPE] -; fall through - -PrintType_: ; 27d9f (9:7d9f) - add a - ld hl, TypeNames - ld e, a - ld d, $0 - add hl, de - ld a, [hli] - ld e, a - ld d, [hl] - pop hl - jp PlaceString - -INCLUDE "text/type_names.asm" - SaveTrainerName: ; 27e4a (9:7e4a) ld hl,TrainerNamePointers ld a,[W_TRAINERCLASS] @@ -163,28 +110,3 @@ CooltrainerMName: ; 27f6c (9:7f6c) db "COOLTRAINER♂@" CooltrainerFName: ; 27f79 (9:7f79) db "COOLTRAINER♀@" - -FocusEnergyEffect_: ; 27f86 (9:7f86) - ld hl, W_PLAYERBATTSTATUS2 - ld a, [H_WHOSETURN] - and a - jr z, .notEnemy - ld hl, W_ENEMYBATTSTATUS2 -.notEnemy - bit GettingPumped, [hl] ; is mon already using focus energy? - jr nz, .alreadyUsing - set GettingPumped, [hl] ; mon is now using focus energy - callab PlayCurrentMoveAnimation - ld hl, GettingPumpedText - jp PrintText -.alreadyUsing - ld c, $32 - call DelayFrames - ld hl, PrintButItFailedText_ - ld b, BANK(PrintButItFailedText_) - jp Bankswitch - -GettingPumpedText: ; 27fb3 (9:7fb3) - db $0a - TX_FAR _GettingPumpedText - db "@" |