summaryrefslogtreecommitdiff
path: root/src/engine
diff options
context:
space:
mode:
authorElectroDeoxys <ElectroDeoxys@gmail.com>2021-01-13 18:54:54 +0000
committerElectroDeoxys <ElectroDeoxys@gmail.com>2021-01-13 18:54:54 +0000
commit4d4d7e554def50e5fdbc04a5d2a78f3a69a76327 (patch)
treec31dcaf58db42501f514219a8f8f608e57abd502 /src/engine
parent31335eb22dce889025037e0360c2e711e56a851d (diff)
More misc attack animations
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/bank01.asm27
-rw-r--r--src/engine/bank06.asm6
-rw-r--r--src/engine/bank07.asm8
-rw-r--r--src/engine/effect_functions.asm88
-rw-r--r--src/engine/home.asm6
5 files changed, 70 insertions, 65 deletions
diff --git a/src/engine/bank01.asm b/src/engine/bank01.asm
index 2c2a23f..16d335a 100644
--- a/src/engine/bank01.asm
+++ b/src/engine/bank01.asm
@@ -8171,25 +8171,25 @@ Func_741a: ; 741a (1:741a)
ld d, a
inc hl
ld a, [hli]
- ld e, $7e
+ ld e, ATK_ANIM_SLEEP
cp ASLEEP
jr z, .got_anim
- ld e, $7d
+ ld e, ATK_ANIM_PARALYSIS
cp PARALYZED
jr z, .got_anim
- ld e, $7b
+ ld e, ATK_ANIM_POISON
cp POISONED
jr z, .got_anim
- ld e, $7b
+ ld e, ATK_ANIM_POISON
cp DOUBLE_POISONED
jr z, .got_anim
- ld e, $7c
+ ld e, ATK_ANIM_CONFUSION
cp CONFUSED
jr nz, .loop
ldh a, [hWhoseTurn]
cp d
jr nz, .got_anim
- ld e, $7f
+ ld e, ATK_ANIM_IMAKUNI_CONFUSION
.got_anim
ld a, e
ld [wLoadedMoveAnimation], a
@@ -8266,15 +8266,18 @@ PlayMoveAnimation: ; 7494 (1:7494)
ld [hl], e
inc hl
ld [hl], d
+
+; if damage >= 70, ATK_ANIM_HIT becomes ATK_ANIM_BIG_HIT
ld a, [wLoadedMoveAnimation]
- cp $01
- jr nz, .asm_74d1
+ cp ATK_ANIM_HIT
+ jr nz, .got_anim
ld a, e
- cp $46
- jr c, .asm_74d1
- ld a, $02
+ cp 70
+ jr c, .got_anim
+ ld a, ATK_ANIM_BIG_HIT
ld [wLoadedMoveAnimation], a
-.asm_74d1
+
+.got_anim
farcall Func_18f9c
pop bc
pop de
diff --git a/src/engine/bank06.asm b/src/engine/bank06.asm
index 62e1bbd..8eb6e9a 100644
--- a/src/engine/bank06.asm
+++ b/src/engine/bank06.asm
@@ -1218,6 +1218,7 @@ Func_1909d: ; 1909d (6:509d)
ld a, DUEL_ANIM_SCREEN_MAIN_SCENE
ld [wDuelAnimationScreen], a
ret
+
.asm_50ad
ld a, [wd4b0]
ld l, a
@@ -1304,10 +1305,11 @@ Func_190fb: ; 190fb (6:50fb)
push bc
push de
ld a, [wLoadedMoveAnimation]
- cp $79
+ cp ATK_ANIM_HEAL
jr z, .asm_5164
- cp $86
+ cp ATK_ANIM_HEALING_WIND_PLAY_AREA
jr z, .asm_5164
+
ld a, [wTempNonTurnDuelistCardID]
ld e, a
ld d, $00
diff --git a/src/engine/bank07.asm b/src/engine/bank07.asm
index 1bbcc22..614cb61 100644
--- a/src/engine/bank07.asm
+++ b/src/engine/bank07.asm
@@ -1471,7 +1471,7 @@ Animations: ; 1ce32 (7:4e32)
db SFX_11 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_2
+ ; DUEL_ANIM_PARALYSIS
db SPRITE_DUEL_1 ; sprite ID
db $20 ; palette ID
db $48 ; anim ID
@@ -1487,7 +1487,7 @@ Animations: ; 1ce32 (7:4e32)
db SFX_13 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_4
+ ; DUEL_ANIM_CONFUSION
db SPRITE_DUEL_55 ; sprite ID
db $22 ; palette ID
db $4a ; anim ID
@@ -1591,7 +1591,7 @@ Animations: ; 1ce32 (7:4e32)
db SFX_1E ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_17
+ ; DUEL_ANIM_DIVE_BOMB
db SPRITE_DUEL_10 ; sprite ID
db $2c ; palette ID
db $64 ; anim ID
@@ -1647,7 +1647,7 @@ Animations: ; 1ce32 (7:4e32)
db SFX_25 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_24
+ ; DUEL_ANIM_GLARE
db SPRITE_DUEL_15 ; sprite ID
db $33 ; palette ID
db $6f ; anim ID
diff --git a/src/engine/effect_functions.asm b/src/engine/effect_functions.asm
index b381661..63a3642 100644
--- a/src/engine/effect_functions.asm
+++ b/src/engine/effect_functions.asm
@@ -477,7 +477,7 @@ ApplyAndAnimateHPRecovery: ; 2c221 (b:4221)
; load correct animation
push de
- ld a, $79
+ ld a, ATK_ANIM_HEAL
ld [wLoadedMoveAnimation], a
ld bc, $01 ; arrow
bank1call PlayMoveAnimation
@@ -1466,7 +1466,7 @@ SpitPoison_Poison50PercentEffect: ; 2c6f8 (b:46f8)
ldtx de, PoisonCheckText
call TossCoin_BankB
jp c, PoisonEffect
- ld a, $8c
+ ld a, ATK_ANIM_SPIT_POISON_SUCCESS
ld [wLoadedMoveAnimation], a
call SetNoEffectFromStatus
ret
@@ -1590,7 +1590,7 @@ KakunaStiffenEffect: ; 2c7a0 (b:47a0)
ldtx de, IfHeadsNoDamageNextTurnText
call TossCoin_BankB
jp nc, SetWasUnsuccessful
- ld a, $4f
+ ld a, ATK_ANIM_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_NO_DAMAGE_STIFFEN
call ApplySubstatus1ToDefendingCard
@@ -1699,7 +1699,7 @@ MetapodStiffenEffect: ; 2c836 (b:4836)
ldtx de, IfHeadsNoDamageNextTurnText
call TossCoin_BankB
jp nc, SetWasUnsuccessful
- ld a, $4f
+ ld a, ATK_ANIM_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_NO_DAMAGE_STIFFEN
call ApplySubstatus1ToDefendingCard
@@ -2110,7 +2110,7 @@ HornHazard_NoDamage50PercentEffect: ; 2ca96 (b:4a96)
call SetWasUnsuccessful
ret
.heads
- ld a, $01
+ ld a, ATK_ANIM_HIT
ld [wLoadedMoveAnimation], a
ret
; 0x2caac
@@ -2797,7 +2797,7 @@ SolarPower_CheckUse: ; 2ce53 (b:4e53)
; 0x2ce82
SolarPower_RemoveStatusEffect: ; 2ce82 (b:4e82)
- ld a, $8e
+ ld a, ATK_ANIM_HEAL_BOTH_SIDES
ld [wLoadedMoveAnimation], a
bank1call Func_7415
ldh a, [hTempPlayAreaLocation_ff9d]
@@ -2940,7 +2940,7 @@ WartortleWithdrawEffect: ; 2cf32 (b:4f32)
ldtx de, IfHeadsNoDamageNextTurnText
call TossCoin_BankB
jp nc, SetWasUnsuccessful
- ld a, $4f
+ ld a, ATK_ANIM_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_NO_DAMAGE_10
call ApplySubstatus1ToDefendingCard
@@ -3180,7 +3180,7 @@ SeadraAgilityEffect: ; 2d08b (b:508b)
ldtx de, IfHeadsDoNotReceiveDamageOrEffectText
call TossCoin_BankB
ret nc ; return if tails
- ld a, $52
+ ld a, ATK_ANIM_AGILITY_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_AGILITY
call ApplySubstatus1ToDefendingCard
@@ -3197,7 +3197,7 @@ HideInShellEffect: ; 2d0a4 (b:50a4)
ldtx de, IfHeadsNoDamageNextTurnText
call TossCoin_BankB
jp nc, SetWasUnsuccessful
- ld a, $4f
+ ld a, ATK_ANIM_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_NO_DAMAGE_11
call ApplySubstatus1ToDefendingCard
@@ -3281,7 +3281,7 @@ SquirtleWithdrawEffect: ; 2d120 (b:5120)
ldtx de, IfHeadsNoDamageNextTurnText
call TossCoin_BankB
jp nc, SetWasUnsuccessful
- ld a, $4f
+ ld a, ATK_ANIM_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_NO_DAMAGE_10
call ApplySubstatus1ToDefendingCard
@@ -3473,13 +3473,13 @@ PoliwagWaterGunEffect: ; 2d227 (b:5227)
; 0x2d22d
ClampEffect: ; 2d22d (b:522d)
- ld a, $05
+ ld a, ATK_ANIM_HIT_EFFECT
ld [wLoadedMoveAnimation], a
ldtx de, SuccessCheckIfHeadsAttackIsSuccessfulText
call TossCoin_BankB
jp c, ParalysisEffect
; unsuccessful
- xor a
+ xor a ; ATK_ANIM_NONE
ld [wLoadedMoveAnimation], a
call SetDefiniteDamage
call SetWasUnsuccessful
@@ -3816,7 +3816,7 @@ RapidashAgilityEffect: ; 2d413 (b:5413)
ldtx de, IfHeadsDoNotReceiveDamageOrEffectText
call TossCoin_BankB
ret nc ; return if tails
- ld a, $52
+ ld a, ATK_ANIM_AGILITY_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_AGILITY
call ApplySubstatus1ToDefendingCard
@@ -4043,7 +4043,7 @@ Moltres1DiveBomb_Success50PercentEffect: ; 2d52b (b:552b)
call SetWasUnsuccessful
ret
.heads
- ld a, $11
+ ld a, ATK_ANIM_DIVE_BOMB
ld [wLoadedMoveAnimation], a
ret
; 0x2d541
@@ -4403,14 +4403,14 @@ Firegiver_AddToHandEffect: ; 2d6c2 (b:56c2)
.ok
ldh [hCurSelectionItem], a
-; load correct Move animation depending
+; load correct attack animation depending
; on what side the effect is from.
- ld d, $84
+ ld d, ATK_ANIM_FIREGIVER_PLAYER
ld a, [wDuelistType]
cp DUELIST_TYPE_PLAYER
jr z, .player_1
; opponent
- ld d, $85
+ ld d, ATK_ANIM_FIREGIVER_OPP
.player_1
ld a, d
ld [wLoadedMoveAnimation], a
@@ -4433,7 +4433,7 @@ Firegiver_AddToHandEffect: ; 2d6c2 (b:56c2)
lb bc, 18, 7 ; x, y for hand number
ld e, 3 ; y for deck number
ld a, [wLoadedMoveAnimation]
- cp $84
+ cp ATK_ANIM_FIREGIVER_PLAYER
jr z, .player_2
lb bc, 4, 5 ; x, y for hand number
ld e, 10 ; y for deck number
@@ -4488,7 +4488,7 @@ Moltres2DiveBomb_Success50PercentEffect: ; 2d776 (b:5776)
call SetWasUnsuccessful
ret
.heads
- ld a, $11
+ ld a, ATK_ANIM_DIVE_BOMB
ld [wLoadedMoveAnimation], a
ret
; 0x2d78c
@@ -5492,7 +5492,7 @@ DevolutionBeam_AISelectEffect: ; 2dc9e (b:5c9e)
; 0x2dcb6
DevolutionBeam_LoadAnimation: ; 2dcb6 (b:5cb6)
- xor a
+ xor a ; ATK_ANIM_NONE
ld [wLoadedMoveAnimation], a
ret
; 0x2dcbb
@@ -5517,7 +5517,7 @@ DevolutionBeam_DevolveEffect: ; 2dcbb (b:5cbb)
ret
.DevolvePokemon
- ld a, $5d
+ ld a, ATK_ANIM_DEVOLUTION_BEAM
ld [wLoadedMoveAnimation], a
ldh a, [hTempPlayAreaLocation_ffa1]
ld b, a
@@ -5923,7 +5923,7 @@ SpacingOut_Success50PercentEffect: ; 2dee0 (b:5ee0)
call TossCoin_BankB
ldh [hTemp_ffa0], a
jp nc, SetWasUnsuccessful
- ld a, $58
+ ld a, ATK_ANIM_RECOVER
ld [wLoadedMoveAnimation], a
ret
; 0x2def1
@@ -6152,7 +6152,7 @@ MysteryAttack_RandomEffect: ; 2e009 (b:6009)
ret
.no_damage
- ld a, $5b
+ ld a, ATK_ANIM_GLOW_EFFECT
ld [wLoadedMoveAnimation], a
xor a
call SetDefiniteDamage
@@ -6234,7 +6234,7 @@ TantrumEffect: ; 2e099 (b:6099)
call TossCoin_BankB
ret c ; return if heads
; confuse Pokemon
- ld a, $29
+ ld a, ATK_ANIM_MULTIPLE_SLASH
ld [wLoadedMoveAnimation], a
call SwapTurn
call ConfusionEffect
@@ -6505,7 +6505,7 @@ LeerEffect: ; 2e21d (b:621d)
ldtx de, IfHeadsOpponentCannotAttackText
call TossCoin_BankB
jp nc, SetWasUnsuccessful
- ld a, $74
+ ld a, ATK_ANIM_LEER
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS2_LEER
call ApplySubstatus2ToDefendingCard
@@ -7001,13 +7001,13 @@ Fly_Success50PercentEffect: ; 2e4fc (b:64fc)
ldtx de, SuccessCheckIfHeadsAttackIsSuccessfulText
call TossCoin_BankB
jr c, .heads
- xor a
+ xor a ; ATK_ANIM_NONE
ld [wLoadedMoveAnimation], a
call SetDefiniteDamage
call SetWasUnsuccessful
ret
.heads
- ld a, $52
+ ld a, ATK_ANIM_AGILITY_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_FLY
call ApplySubstatus1ToDefendingCard
@@ -7153,7 +7153,7 @@ RaichuAgilityEffect: ; 2e5dc (b:65dc)
ldtx de, IfHeadsDoNotReceiveDamageOrEffectText
call TossCoin_BankB
ret nc ; skip if got tails
- ld a, $52
+ ld a, ATK_ANIM_AGILITY_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_AGILITY
call ApplySubstatus1ToDefendingCard
@@ -7506,7 +7506,7 @@ RandomlyDamagePlayAreaPokemon: ; 2e78d (b:678d)
jr z, RandomlyDamagePlayAreaPokemon ; re-roll Pokemon to attack
.damage
- ld a, $82
+ ld a, ATK_ANIM_THUNDER_PLAY_AREA
ld [wLoadedMoveAnimation], a
call DealDamageToPlayAreaPokemon
ret
@@ -7818,7 +7818,7 @@ TailWagEffect: ; 2e94e (b:694e)
ldtx de, IfHeadsOpponentCannotAttackText
call TossCoin_BankB
jp nc, SetWasUnsuccessful
- ld a, $46
+ ld a, ATK_ANIM_LURE
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS2_TAIL_WAG
call ApplySubstatus2ToDefendingCard
@@ -7964,7 +7964,7 @@ MirrorMoveEffects: ; 2e98c (b:698c)
ld [de], a
or [hl]
jr z, .no_damage
- ld a, $01
+ ld a, ATK_ANIM_HIT
ld [wLoadedMoveAnimation], a
.no_damage
inc hl
@@ -8094,7 +8094,7 @@ FearowAgilityEffect: ; 2eab8 (b:6ab8)
ldtx de, IfHeadsDoNotReceiveDamageOrEffectText
call TossCoin_BankB
ret nc
- ld a, $52
+ ld a, ATK_ANIM_AGILITY_PROTECT
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_AGILITY
call ApplySubstatus1ToDefendingCard
@@ -8890,7 +8890,7 @@ ScrunchEffect: ; 2eee7 (b:6ee7)
ldtx de, IfHeadsNoDamageNextTurnText
call TossCoin_BankB
jp nc, SetWasUnsuccessful
- ld a, $6b
+ ld a, ATK_ANIM_SCRUNCH
ld [wLoadedMoveAnimation], a
ld a, SUBSTATUS1_NO_DAMAGE_17
call ApplySubstatus1ToDefendingCard
@@ -8975,7 +8975,7 @@ HealingWind_PlayAreaHealEffect: ; 2ef53 (b:6f53)
ld h, a
bank1call PlayMoveAnimation
bank1call WaitMoveAnimation
- ld a, $86
+ ld a, ATK_ANIM_HEALING_WIND_PLAY_AREA
ld [wLoadedMoveAnimation], a
@@ -9078,7 +9078,7 @@ CatPunchEffect: ; 2efe0 (b:6fe0)
call SwapTurn
call PickRandomPlayAreaCard
ld b, a
- ld a, $83
+ ld a, ATK_ANIM_CAT_PUNCH_PLAY_AREA
ld [wLoadedMoveAnimation], a
ld de, 20
call DealDamageToPlayAreaPokemon
@@ -9234,7 +9234,7 @@ SlicingWindEffect: ; 2f0bf (b:70bf)
; 0x2f0d0
Gale_LoadAnimation: ; 2f0d0 (b:70d0)
- ld a, $87
+ ld a, ATK_ANIM_GALE
ld [wLoadedMoveAnimation], a
ret
; 0x2f0d6
@@ -9305,7 +9305,7 @@ FriendshipSong_AddToBench50PercentEffect: ; 2f119 (b:7119)
.successful
call PickRandomBasicCardFromDeck
jr nc, .put_in_bench
- ld a, $6a
+ ld a, ATK_ANIM_FRIENDSHIP_SONG
call Func_2c12e
call .none_came_text
call Func_2c0bd
@@ -9315,7 +9315,7 @@ FriendshipSong_AddToBench50PercentEffect: ; 2f119 (b:7119)
call SearchCardInDeckAndAddToHand
call AddCardToHand
call PutHandPokemonCardInPlayArea
- ld a, $6a
+ ld a, ATK_ANIM_FRIENDSHIP_SONG
call Func_2c12e
ldh a, [hTempCardIndex_ff98]
ldtx hl, CameToTheBenchText
@@ -9488,7 +9488,7 @@ ImakuniEffect: ; 2f216 (b:7216)
.failed
; play confusion animation and print failure text
- ld a, $7f
+ ld a, ATK_ANIM_IMAKUNI_CONFUSION
call Func_2fea9
ldtx hl, ThereWasNoEffectText
call DrawWideTextBox_WaitForInput
@@ -9496,7 +9496,7 @@ ImakuniEffect: ; 2f216 (b:7216)
.success
; play confusion animation and confuse card
- ld a, $7f
+ ld a, ATK_ANIM_IMAKUNI_CONFUSION
call Func_2fea9
ld a, DUELVARS_ARENA_CARD_STATUS
call GetTurnDuelistVariable
@@ -9936,7 +9936,7 @@ FullHeal_StatusCheck: ; 2f4c5 (b:74c5)
; 0x2f4d1
FullHeal_ClearStatusEffect: ; 2f4d1 (b:74d1)
- ld a, $8a
+ ld a, ATK_ANIM_FULL_HEAL
call Func_2fea9
ld a, DUELVARS_ARENA_CARD_STATUS
call GetTurnDuelistVariable
@@ -11739,7 +11739,7 @@ GustOfWind_PlayerSelection: ; 2fe79 (b:7e79)
GustOfWind_SwitchEffect: ; 2fe90 (b:7e90)
; play whirlwind animation
- ld a, $8d
+ ld a, ATK_ANIM_GUST_OF_WIND
call Func_2fea9
; switch Arena card
@@ -11755,7 +11755,7 @@ GustOfWind_SwitchEffect: ; 2fe90 (b:7e90)
; 0x2fea9
; input:
-; a = move animation to play
+; a = attack animation to play
Func_2fea9: ; 2fea9 (b:7ea9)
ld [wLoadedMoveAnimation], a
bank1call Func_7415
@@ -11780,7 +11780,7 @@ HealPlayAreaCardHP: ; 2febc (b:7ebc)
; play heal animation
push de
bank1call Func_7415
- ld a, $86
+ ld a, ATK_ANIM_HEALING_WIND_PLAY_AREA
ld [wLoadedMoveAnimation], a
ldh a, [hTempPlayAreaLocation_ff9d]
ld b, a
diff --git a/src/engine/home.asm b/src/engine/home.asm
index 18a79f4..c860dd3 100644
--- a/src/engine/home.asm
+++ b/src/engine/home.asm
@@ -4529,7 +4529,7 @@ HandleConfusionDamageToSelf: ; 1828 (0:1828)
ld [wIsDamageToSelf], a
ldtx hl, DamageToSelfDueToConfusionText
call DrawWideTextBox_PrintText
- ld a, $75
+ ld a, ATK_ANIM_CONFUSION_HIT
ld [wLoadedMoveAnimation], a
ld a, 20 ; damage
call DealConfusionDamageToSelf
@@ -4700,7 +4700,7 @@ LoadNonPokemonCardEffectCommands: ; 1944 (0:1944)
; display recoil animation
DealRecoilDamageToSelf: ; 1955 (0:1955)
push af
- ld a, $7a
+ ld a, ATK_ANIM_RECOIL_HIT
ld [wLoadedMoveAnimation], a
pop af
; fallthrough
@@ -4977,7 +4977,7 @@ PrintKnockedOut: ; 1ad3 (0:1ad3)
; shows the defending player's play area screen when dealing the damage
; instead of the main duel interface with regular attack animation.
DealDamageToPlayAreaPokemon_RegularAnim: ; 1af3 (0:1af3)
- ld a, $78
+ ld a, ATK_ANIM_BENCH_HIT
ld [wLoadedMoveAnimation], a
; fallthrough