diff options
author | yenatch <yenatch@gmail.com> | 2015-04-09 12:25:29 -0400 |
---|---|---|
committer | yenatch <yenatch@gmail.com> | 2015-04-09 12:25:29 -0400 |
commit | 941d2b9eb8a59b42ea71a08b34b25c06477cf36d (patch) | |
tree | b304682416ef55ddb763759cab6d03aeb1af5f55 /engine/battle/moveEffects/haze_effect.asm | |
parent | c2efe700ac1c5cca88bac710b98388a99665741e (diff) | |
parent | 9739c26ed7fa89492cbc8609445d292ced48ee65 (diff) |
Merge pull request #93 from xCrystal/master
Document some move effects
Diffstat (limited to 'engine/battle/moveEffects/haze_effect.asm')
-rw-r--r-- | engine/battle/moveEffects/haze_effect.asm | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/engine/battle/moveEffects/haze_effect.asm b/engine/battle/moveEffects/haze_effect.asm index 2343e784..14b5f5dd 100644 --- a/engine/battle/moveEffects/haze_effect.asm +++ b/engine/battle/moveEffects/haze_effect.asm @@ -1,9 +1,11 @@ HazeEffect_: ; 139da (4:79da) ld a, $7 +; store 7 on every stat mod ld hl, wPlayerMonAttackMod call ResetStatMods ld hl, wEnemyMonAttackMod call ResetStatMods +; copy unmodified stats to battle stats ld hl, wPlayerMonUnmodifiedAttack ld de, wBattleMonAttack call ResetStats @@ -14,39 +16,42 @@ HazeEffect_: ; 139da (4:79da) ld de, wEnemySelectedMove ld a, [H_WHOSETURN] and a - jr z, .asm_13a09 + jr z, .cureStatuses ld hl, wBattleMonStatus - dec de + dec de ; wPlayerSelectedMove -.asm_13a09 +.cureStatuses ld a, [hl] ld [hl], $0 - and $27 - jr z, .asm_13a13 + and SLP | (1 << FRZ) + jr z, .cureVolatileStatuses +; prevent the Pokemon from executing a move if it was asleep or frozen ld a, $ff ld [de], a -.asm_13a13 +.cureVolatileStatuses xor a ld [W_PLAYERDISABLEDMOVE], a ld [W_ENEMYDISABLEDMOVE], a - ld hl, wccee + ld hl, wPlayerDisabledMoveNumber ld [hli], a ld [hl], a ld hl, W_PLAYERBATTSTATUS1 - call CureStatuses + call CureVolatileStatuses ld hl, W_ENEMYBATTSTATUS1 - call CureStatuses + call CureVolatileStatuses ld hl, PlayCurrentMoveAnimation call CallBankF ld hl, StatusChangesEliminatedText jp PrintText -CureStatuses: ; 13a37 (4:7a37) +CureVolatileStatuses: ; 13a37 (4:7a37) +; only cures statuses of the Pokemon not using Haze res Confused, [hl] inc hl ; BATTSTATUS2 ld a, [hl] - and (1 << UsingRage) | (1 << NeedsToRecharge) | (1 << HasSubstituteUp) | (1 << 3) ; clear all but these from BATTSTATUS2 + ; clear UsingXAccuracy, ProtectedByMist, GettingPumped, and Seeded statuses + and $ff ^((1 << UsingXAccuracy) | (1 << ProtectedByMist) | (1 << GettingPumped) | (1 << Seeded)) ld [hli], a ; BATTSTATUS3 ld a, [hl] and %11110000 | (1 << Transformed) ; clear Bad Poison, Reflect and Light Screen statuses @@ -56,7 +61,7 @@ CureStatuses: ; 13a37 (4:7a37) ResetStatMods: ; 13a43 (4:7a43) ld b, $8 .loop - ld [hli], a + ld [hli], a dec b jr nz, .loop ret |