summaryrefslogtreecommitdiff
path: root/src/engine
diff options
context:
space:
mode:
authordannye <33dannye@gmail.com>2021-01-14 13:55:50 -0600
committerdannye <33dannye@gmail.com>2021-01-14 13:55:50 -0600
commitedc82798d8def4958da65c5594c00f0d454f64b8 (patch)
treecf04ab5acae3fa32f768fc9318e9501292c1a77c /src/engine
parent3143d75086ff35199ef7a8864a707e5f33d3aede (diff)
parentea07840c6eb327b0caddfcaca8bbbfb8173a4eab (diff)
Merge branch 'master' of https://github.com/pret/poketcg
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/bank01.asm156
-rw-r--r--src/engine/bank06.asm6
-rw-r--r--src/engine/bank07.asm310
-rw-r--r--src/engine/effect_functions.asm88
-rw-r--r--src/engine/home.asm6
5 files changed, 348 insertions, 218 deletions
diff --git a/src/engine/bank01.asm b/src/engine/bank01.asm
index 9da5dac..9cdb098 100644
--- a/src/engine/bank01.asm
+++ b/src/engine/bank01.asm
@@ -5694,10 +5694,135 @@ PrintPlayAreaCardAttachedEnergies: ; 63e6 (1:63e6)
ret
; 0x6423
- INCROM $6423, $6431
+Func_6423: ; 6423 (1:6423)
+ ld hl, wDefaultText
+ ld e, $08
+.asm_6428
+ ld a, [hli]
+ call JPWriteByteToBGMap0
+ inc b
+ dec e
+ jr nz, .asm_6428
+ ret
+; 0x6431
Func_6431: ; 6431 (1:6431)
- INCROM $6431, $6510
+ xor a
+ ld [wSelectedDuelSubMenuItem], a
+
+Func_6435:
+ call Func_64b0
+ ld hl, PlayAreaScreenMenuParameters_ActivePokemonIncluded
+ ld a, [wSelectedDuelSubMenuItem]
+ call InitializeMenuParameters
+ ld a, [wNumPlayAreaItems]
+ ld [wNumMenuItems], a
+.asm_6447
+ call DoFrame
+ call HandleMenuInput
+ ldh [hTempPlayAreaLocation_ff9d], a
+ ld [wHUDEnergyAndHPBarsX], a
+ jr nc, .asm_6447
+ cp $ff
+ jr z, .asm_649b
+ ld [wSelectedDuelSubMenuItem], a
+ ldh a, [hKeysPressed]
+ and START
+ jr nz, .asm_649d
+ ldh a, [hCurMenuItem]
+ add a
+ ld e, a
+ ld d, $00
+ ld hl, wDuelTempList + 1
+ add hl, de
+ ld a, [hld]
+ cp $04
+ jr nz, .asm_6447
+ ld a, [hl]
+ ldh [hTempCardIndex_ff98], a
+ ld d, a
+ ld e, $00
+ call CopyMoveDataAndDamage_FromDeckIndex
+ call DisplayUsePokemonPowerScreen
+ ld a, EFFECTCMDTYPE_INITIAL_EFFECT_1
+ call TryExecuteEffectCommandFunction
+ jr nc, .asm_648c
+ ldtx hl, PokemonPowerSelectNotRequiredText
+ call DrawWideTextBox_WaitForInput
+ jp Func_6435
+.asm_648c
+ ldtx hl, UseThisPokemonPowerText
+ call YesOrNoMenuWithText
+ jp c, Func_6435
+ ldh a, [hTempCardIndex_ff98]
+ ldh [hTemp_ffa0], a
+ or a
+ ret
+.asm_649b
+ scf
+ ret
+.asm_649d
+ ldh a, [hCurMenuItem]
+ add DUELVARS_ARENA_CARD
+ call GetTurnDuelistVariable
+ call GetCardIDFromDeckIndex
+ call LoadCardDataToBuffer1_FromCardID
+ call OpenCardPage_FromCheckPlayArea
+ jp Func_6435
+; 0x64b0
+
+Func_64b0: ; 64b0 (1:64b0)
+ call ZeroObjectPositionsAndToggleOAMCopy
+ call EmptyScreen
+ call LoadDuelCardSymbolTiles
+ call LoadDuelCheckPokemonScreenTiles
+ ld de, wDuelTempList
+ call SetListPointer
+ ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA
+ call GetTurnDuelistVariable
+ ld c, a
+ ld b, $00
+.asm_64ca
+ push hl
+ push bc
+ ld a, b
+ ld [wHUDEnergyAndHPBarsX], a
+ ld a, b
+ add a
+ add b
+ ld [wCurPlayAreaY], a
+ ld a, b
+ add DUELVARS_ARENA_CARD
+ call GetTurnDuelistVariable
+ call SetNextElementOfList
+ call PrintPlayAreaCardHeader
+ call PrintPlayAreaCardLocation
+ call Func_64fc
+ ld a, [wLoadedCard1Move1Category]
+ call SetNextElementOfList
+ pop bc
+ pop hl
+ inc b
+ dec c
+ jr nz, .asm_64ca
+ ld a, b
+ ld [wNumPlayAreaItems], a
+ call EnableLCD
+ ret
+; 0x64fc
+
+Func_64fc: ; 64fc (1:64fc)
+ ld a, [wLoadedCard1Move1Category]
+ cp POKEMON_POWER
+ ret nz
+ ld a, [wCurPlayAreaY]
+ inc a
+ ld e, a
+ ld d, $04
+ ld hl, wLoadedCard1Move1Name
+ call InitTextPrinting_ProcessTextFromPointerToID
+ ret
+; 0x6510
; display the screen that prompts the player to use the selected card's
; Pokemon Power. Includes the card's information above, and the Pokemon Power's
@@ -8174,25 +8299,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
@@ -8269,15 +8394,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 1ab478f..f314b48 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 ea6e432..81356d3 100644
--- a/src/engine/bank07.asm
+++ b/src/engine/bank07.asm
@@ -1462,7 +1462,7 @@ Animations: ; 1ce32 (7:4e32)
db $00 ; palette ID
db $00 ; anim ID
db $00 ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_GLOW
@@ -1470,15 +1470,15 @@ Animations: ; 1ce32 (7:4e32)
db $1f ; palette ID
db $47 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $11 ; sound FX ID
+ 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
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $12 ; sound FX ID
+ db SFX_12 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_SLEEP
@@ -1486,15 +1486,15 @@ Animations: ; 1ce32 (7:4e32)
db $21 ; palette ID
db $49 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $13 ; sound FX ID
+ 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
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $14 ; sound FX ID
+ db SFX_14 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_POISON
@@ -1502,7 +1502,7 @@ Animations: ; 1ce32 (7:4e32)
db $23 ; palette ID
db $4b ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $15 ; sound FX ID
+ db SFX_15 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_6
@@ -1510,7 +1510,7 @@ Animations: ; 1ce32 (7:4e32)
db $24 ; palette ID
db $4c ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $16 ; sound FX ID
+ db SFX_16 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_HIT
@@ -1518,15 +1518,15 @@ Animations: ; 1ce32 (7:4e32)
db $24 ; palette ID
db $4d ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $16 ; sound FX ID
+ db SFX_16 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_8
+ ; DUEL_ANIM_BIG_HIT
db SPRITE_DUEL_3 ; sprite ID
db $24 ; palette ID
db $4e ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $17 ; sound FX ID
+ db SFX_17 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_SHOW_DAMAGE
@@ -1534,7 +1534,7 @@ Animations: ; 1ce32 (7:4e32)
db $25 ; palette ID
db $00 ; anim ID
db $00 ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_THUNDER_SHOCK
@@ -1542,207 +1542,207 @@ Animations: ; 1ce32 (7:4e32)
db $26 ; palette ID
db $5c ; anim ID
db $00 ; anim flags
- db $18 ; sound FX ID
+ db SFX_18 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_11
+ ; DUEL_ANIM_LIGHTNING
db SPRITE_DUEL_6 ; sprite ID
db $27 ; palette ID
db $5e ; anim ID
db $00 ; anim flags
- db $19 ; sound FX ID
+ db SFX_19 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_12
+ ; DUEL_ANIM_BORDER_SPARK
db SPRITE_DUEL_59 ; sprite ID
db $28 ; palette ID
db $5f ; anim ID
db $00 ; anim flags
- db $1a ; sound FX ID
+ db SFX_1A ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_13
+ ; DUEL_ANIM_BIG_LIGHTNING
db SPRITE_DUEL_7 ; sprite ID
db $29 ; palette ID
db $60 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $1b ; sound FX ID
+ db SFX_1B ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_14
+ ; DUEL_ANIM_SMALL_FLAME
db SPRITE_DUEL_8 ; sprite ID
db $2a ; palette ID
db $61 ; anim ID
db $00 ; anim flags
- db $1c ; sound FX ID
+ db SFX_1C ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_15
+ ; DUEL_ANIM_BIG_FLAME
db SPRITE_DUEL_8 ; sprite ID
db $2a ; palette ID
db $62 ; anim ID
db $00 ; anim flags
- db $1d ; sound FX ID
+ db SFX_1D ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_16
+ ; DUEL_ANIM_FIRE_SPIN
db SPRITE_DUEL_9 ; sprite ID
db $2b ; palette ID
db $63 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $1e ; sound FX ID
+ 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
db $00 ; anim flags
- db $1f ; sound FX ID
+ db SFX_1F ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_18
+ ; DUEL_ANIM_WATER_JETS
db SPRITE_DUEL_61 ; sprite ID
db $2d ; palette ID
db $69 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $20 ; sound FX ID
+ db SFX_20 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_19
+ ; DUEL_ANIM_WATER_GUN
db SPRITE_DUEL_11 ; sprite ID
db $2e ; palette ID
db $6a ; anim ID
db $00 ; anim flags
- db $21 ; sound FX ID
+ db SFX_21 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_20
+ ; DUEL_ANIM_WHIRLPOOL
db SPRITE_DUEL_12 ; sprite ID
db $2f ; palette ID
db $6b ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $22 ; sound FX ID
+ db SFX_22 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_21
+ ; DUEL_ANIM_HYDRO_PUMP
db SPRITE_DUEL_13 ; sprite ID
db $30 ; palette ID
db $6c ; anim ID
db $00 ; anim flags
- db $23 ; sound FX ID
+ db SFX_23 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_22
+ ; DUEL_ANIM_BLIZZARD
db SPRITE_DUEL_62 ; sprite ID
db $31 ; palette ID
db $6d ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $24 ; sound FX ID
+ db SFX_24 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_23
+ ; DUEL_ANIM_PSYCHIC
db SPRITE_DUEL_14 ; sprite ID
db $32 ; palette ID
db $6e ; anim ID
db $00 ; anim flags
- db $25 ; sound FX ID
+ 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
db $00 ; anim flags
- db $26 ; sound FX ID
+ db SFX_26 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_25
+ ; DUEL_ANIM_BEAM
db SPRITE_DUEL_16 ; sprite ID
db $34 ; palette ID
db $70 ; anim ID
db (1 << SPRITE_ANIM_FLAG_6) | (1 << SPRITE_ANIM_FLAG_Y_SUBTRACT) ; anim flags
- db $27 ; sound FX ID
+ db SFX_27 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_26
+ ; DUEL_ANIM_HYPER_BEAM
db SPRITE_DUEL_17 ; sprite ID
db $35 ; palette ID
db $71 ; anim ID
db (1 << SPRITE_ANIM_FLAG_6) | (1 << SPRITE_ANIM_FLAG_Y_SUBTRACT) ; anim flags
- db $28 ; sound FX ID
+ db SFX_28 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_27
+ ; DUEL_ANIM_ROCK_THROW
db SPRITE_DUEL_18 ; sprite ID
db $36 ; palette ID
db $72 ; anim ID
db $00 ; anim flags
- db $29 ; sound FX ID
+ db SFX_29 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_28
+ ; DUEL_ANIM_STONE_BARRAGE
db SPRITE_DUEL_18 ; sprite ID
db $36 ; palette ID
db $73 ; anim ID
db $00 ; anim flags
- db $2a ; sound FX ID
+ db SFX_2A ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_29
+ ; DUEL_ANIM_PUNCH
db SPRITE_DUEL_19 ; sprite ID
db $37 ; palette ID
db $74 ; anim ID
db $00 ; anim flags
- db $2b ; sound FX ID
+ db SFX_2B ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_30
+ ; DUEL_ANIM_THUNDERPUNCH
db SPRITE_DUEL_19 ; sprite ID
db $37 ; palette ID
db $75 ; anim ID
db $00 ; anim flags
- db $52 ; sound FX ID
+ db SFX_52 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_31
+ ; DUEL_ANIM_FIRE_PUNCH
db SPRITE_DUEL_19 ; sprite ID
db $37 ; palette ID
db $76 ; anim ID
db $00 ; anim flags
- db $53 ; sound FX ID
+ db SFX_53 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_32
+ ; DUEL_ANIM_STRETCH_KICK
db SPRITE_DUEL_20 ; sprite ID
db $38 ; palette ID
db $77 ; anim ID
db (1 << SPRITE_ANIM_FLAG_5) | (1 << SPRITE_ANIM_FLAG_X_SUBTRACT) ; anim flags
- db $2c ; sound FX ID
+ db SFX_2C ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_33
+ ; DUEL_ANIM_SLASH
db SPRITE_DUEL_21 ; sprite ID
db $39 ; palette ID
db $78 ; anim ID
db $00 ; anim flags
- db $2d ; sound FX ID
+ db SFX_2D ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_34
+ ; DUEL_ANIM_WHIP
db SPRITE_DUEL_22 ; sprite ID
db $3a ; palette ID
db $7a ; anim ID
db $00 ; anim flags
- db $2d ; sound FX ID
+ db SFX_2D ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_35
+ ; DUEL_ANIM_TEAR
db SPRITE_DUEL_23 ; sprite ID
db $3b ; palette ID
db $7b ; anim ID
db $00 ; anim flags
- db $2e ; sound FX ID
+ db SFX_2E ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_FURY_SWIPES
@@ -1750,207 +1750,207 @@ Animations: ; 1ce32 (7:4e32)
db $39 ; palette ID
db $79 ; anim ID
db $00 ; anim flags
- db $2f ; sound FX ID
+ db SFX_2F ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_37
+ ; DUEL_ANIM_DRILL
db SPRITE_DUEL_24 ; sprite ID
db $3c ; palette ID
db $7c ; anim ID
db (1 << SPRITE_ANIM_FLAG_5) | (1 << SPRITE_ANIM_FLAG_X_SUBTRACT) ; anim flags
- db $30 ; sound FX ID
+ db SFX_30 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_38
+ ; DUEL_ANIM_POT_SMASH
db SPRITE_DUEL_25 ; sprite ID
db $3d ; palette ID
db $7d ; anim ID
db $00 ; anim flags
- db $31 ; sound FX ID
+ db SFX_31 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_39
+ ; DUEL_ANIM_BONEMERANG
db SPRITE_DUEL_26 ; sprite ID
db $3e ; palette ID
db $7e ; anim ID
db $00 ; anim flags
- db $32 ; sound FX ID
+ db SFX_32 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_40
+ ; DUEL_ANIM_SEISMIC_TOSS
db SPRITE_DUEL_27 ; sprite ID
db $3f ; palette ID
db $7f ; anim ID
db $00 ; anim flags
- db $33 ; sound FX ID
+ db SFX_33 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_41
+ ; DUEL_ANIM_NEEDLES
db SPRITE_DUEL_28 ; sprite ID
db $40 ; palette ID
db $80 ; anim ID
db $00 ; anim flags
- db $34 ; sound FX ID
+ db SFX_34 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_42
+ ; DUEL_ANIM_WHITE_GAS
db SPRITE_DUEL_29 ; sprite ID
db $41 ; palette ID
db $81 ; anim ID
db $00 ; anim flags
- db $35 ; sound FX ID
+ db SFX_35 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_43
+ ; DUEL_ANIM_POWDER
db SPRITE_DUEL_56 ; sprite ID
db $42 ; palette ID
db $82 ; anim ID
db $00 ; anim flags
- db $36 ; sound FX ID
+ db SFX_36 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_44
+ ; DUEL_ANIM_GOO
db SPRITE_DUEL_30 ; sprite ID
db $43 ; palette ID
db $83 ; anim ID
db $00 ; anim flags
- db $37 ; sound FX ID
+ db SFX_37 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_45
+ ; DUEL_ANIM_BUBBLES
db SPRITE_DUEL_31 ; sprite ID
db $44 ; palette ID
db $84 ; anim ID
db $00 ; anim flags
- db $38 ; sound FX ID
+ db SFX_38 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_46
+ ; DUEL_ANIM_STRING_SHOT
db SPRITE_DUEL_32 ; sprite ID
db $45 ; palette ID
db $85 ; anim ID
db $00 ; anim flags
- db $39 ; sound FX ID
+ db SFX_39 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_47
+ ; DUEL_ANIM_BOYFRIENDS
db SPRITE_DUEL_33 ; sprite ID
db $46 ; palette ID
db $86 ; anim ID
db $00 ; anim flags
- db $3a ; sound FX ID
+ db SFX_3A ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_48
+ ; DUEL_ANIM_LURE
db SPRITE_DUEL_34 ; sprite ID
db $47 ; palette ID
db $87 ; anim ID
db (1 << SPRITE_ANIM_FLAG_5) | (1 << SPRITE_ANIM_FLAG_X_SUBTRACT) ; anim flags
- db $3b ; sound FX ID
+ db SFX_3B ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_49
+ ; DUEL_ANIM_TOXIC
db SPRITE_DUEL_35 ; sprite ID
db $48 ; palette ID
db $88 ; anim ID
db $00 ; anim flags
- db $3c ; sound FX ID
+ db SFX_3C ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_50
+ ; DUEL_ANIM_CONFUSE_RAY
db SPRITE_DUEL_66 ; sprite ID
db $49 ; palette ID
db $89 ; anim ID
db $00 ; anim flags
- db $3d ; sound FX ID
+ db SFX_3D ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_51
+ ; DUEL_ANIM_SING
db SPRITE_DUEL_36 ; sprite ID
db $4a ; palette ID
db $8a ; anim ID
db $00 ; anim flags
- db $3e ; sound FX ID
+ db SFX_3E ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_52
+ ; DUEL_ANIM_SUPERSONIC
db SPRITE_DUEL_37 ; sprite ID
db $4b ; palette ID
db $8b ; anim ID
db $00 ; anim flags
- db $3f ; sound FX ID
+ db SFX_3F ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_53
+ ; DUEL_ANIM_PETAL_DANCE
db SPRITE_DUEL_57 ; sprite ID
db $4c ; palette ID
db $8c ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $40 ; sound FX ID
+ db SFX_40 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_54
+ ; DUEL_ANIM_PROTECT
db SPRITE_DUEL_38 ; sprite ID
db $4d ; palette ID
db $8d ; anim ID
db $00 ; anim flags
- db $41 ; sound FX ID
+ db SFX_41 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_55
+ ; DUEL_ANIM_BARRIER
db SPRITE_DUEL_39 ; sprite ID
db $4e ; palette ID
db $8e ; anim ID
db $00 ; anim flags
- db $42 ; sound FX ID
+ db SFX_42 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_56
+ ; DUEL_ANIM_QUICK_ATTACK
db SPRITE_DUEL_40 ; sprite ID
db $4f ; palette ID
db $8f ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $43 ; sound FX ID
+ db SFX_43 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_57
+ ; DUEL_ANIM_WHIRLWIND
db SPRITE_DUEL_41 ; sprite ID
db $50 ; palette ID
db $90 ; anim ID
db $00 ; anim flags
- db $44 ; sound FX ID
+ db SFX_44 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_58
+ ; DUEL_ANIM_CRY
db SPRITE_DUEL_42 ; sprite ID
db $51 ; palette ID
db $92 ; anim ID
db $00 ; anim flags
- db $45 ; sound FX ID
+ db SFX_45 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_59
+ ; DUEL_ANIM_QUESTION_MARK
db SPRITE_DUEL_43 ; sprite ID
db $52 ; palette ID
db $93 ; anim ID
db $00 ; anim flags
- db $46 ; sound FX ID
+ db SFX_46 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_60
+ ; DUEL_ANIM_SELFDESTRUCT
db SPRITE_DUEL_44 ; sprite ID
db $53 ; palette ID
db $94 ; anim ID
db $00 ; anim flags
- db $47 ; sound FX ID
+ db SFX_47 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_61
+ ; DUEL_ANIM_BIG_SELFDESTRUCT_1
db SPRITE_DUEL_44 ; sprite ID
db $53 ; palette ID
db $95 ; anim ID
db $00 ; anim flags
- db $48 ; sound FX ID
+ db SFX_48 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_HEAL
@@ -1958,31 +1958,31 @@ Animations: ; 1ce32 (7:4e32)
db $54 ; palette ID
db $97 ; anim ID
db $00 ; anim flags
- db $49 ; sound FX ID
+ db SFX_49 ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_63
+ ; DUEL_ANIM_DRAIN
db SPRITE_DUEL_64 ; sprite ID
db $55 ; palette ID
db $99 ; anim ID
db $00 ; anim flags
- db $4a ; sound FX ID
+ db SFX_4A ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_64
+ ; DUEL_ANIM_DARK_GAS
db SPRITE_DUEL_29 ; sprite ID
db $56 ; palette ID
db $81 ; anim ID
db $00 ; anim flags
- db $4b ; sound FX ID
+ db SFX_4B ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_65
+ ; DUEL_ANIM_BIG_SELFDESTRUCT_2
db SPRITE_DUEL_44 ; sprite ID
db $53 ; palette ID
db $96 ; anim ID
db $00 ; anim flags
- db $47 ; sound FX ID
+ db SFX_47 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_66
@@ -1990,7 +1990,7 @@ Animations: ; 1ce32 (7:4e32)
db $24 ; palette ID
db $4d ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $16 ; sound FX ID
+ db SFX_16 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_67
@@ -1998,7 +1998,7 @@ Animations: ; 1ce32 (7:4e32)
db $24 ; palette ID
db $4e ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $17 ; sound FX ID
+ db SFX_17 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_68
@@ -2006,7 +2006,7 @@ Animations: ; 1ce32 (7:4e32)
db $26 ; palette ID
db $5c ; anim ID
db $00 ; anim flags
- db $18 ; sound FX ID
+ db SFX_18 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_69
@@ -2014,7 +2014,7 @@ Animations: ; 1ce32 (7:4e32)
db $31 ; palette ID
db $6d ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $24 ; sound FX ID
+ db SFX_24 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_70
@@ -2022,7 +2022,7 @@ Animations: ; 1ce32 (7:4e32)
db $57 ; palette ID
db $9a ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) ; anim flags
- db $11 ; sound FX ID
+ db SFX_11 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_71
@@ -2030,7 +2030,7 @@ Animations: ; 1ce32 (7:4e32)
db $2c ; palette ID
db $65 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $5c ; sound FX ID
+ db SFX_5C ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_72
@@ -2038,7 +2038,7 @@ Animations: ; 1ce32 (7:4e32)
db $2c ; palette ID
db $66 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_73
@@ -2046,7 +2046,7 @@ Animations: ; 1ce32 (7:4e32)
db $54 ; palette ID
db $98 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $4c ; sound FX ID
+ db SFX_4C ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_74
@@ -2054,15 +2054,15 @@ Animations: ; 1ce32 (7:4e32)
db $50 ; palette ID
db $91 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $4d ; sound FX ID
+ db SFX_4D ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_75
+ ; DUEL_ANIM_EXPAND
db SPRITE_DUEL_46 ; sprite ID
db $58 ; palette ID
db $9b ; anim ID
db $00 ; anim flags
- db $4e ; sound FX ID
+ db SFX_4E ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_76
@@ -2070,15 +2070,15 @@ Animations: ; 1ce32 (7:4e32)
db $59 ; palette ID
db $9c ; anim ID
db $00 ; anim flags
- db $4f ; sound FX ID
+ db SFX_4F ; sound FX ID
db $00 ; handler function
- ; DUEL_ANIM_77
+ ; DUEL_ANIM_THUNDER_WAVE
db SPRITE_DUEL_48 ; sprite ID
db $5a ; palette ID
db $9d ; anim ID
db $00 ; anim flags
- db $50 ; sound FX ID
+ db SFX_50 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_78
@@ -2086,7 +2086,7 @@ Animations: ; 1ce32 (7:4e32)
db $2c ; palette ID
db $67 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $51 ; sound FX ID
+ db SFX_51 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_79
@@ -2094,7 +2094,7 @@ Animations: ; 1ce32 (7:4e32)
db $2c ; palette ID
db $68 ; anim ID
db (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $51 ; sound FX ID
+ db SFX_51 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_80
@@ -2102,7 +2102,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $9e ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_PLAYER_SHUFFLE
@@ -2110,7 +2110,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $9f ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $07 ; sound FX ID
+ db SFX_07 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_OPP_SHUFFLE
@@ -2118,7 +2118,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $a0 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $07 ; sound FX ID
+ db SFX_07 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_BOTH_SHUFFLE
@@ -2126,7 +2126,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $a1 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $07 ; sound FX ID
+ db SFX_07 ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_84
@@ -2134,7 +2134,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $a2 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_BOTH_DRAW
@@ -2142,7 +2142,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $a3 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_PLAYER_DRAW
@@ -2150,7 +2150,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $a4 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_OPP_DRAW
@@ -2158,7 +2158,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $a5 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_COIN_SPIN
@@ -2166,7 +2166,7 @@ Animations: ; 1ce32 (7:4e32)
db $5c ; palette ID
db $a7 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_COIN_TOSS1
@@ -2174,7 +2174,7 @@ Animations: ; 1ce32 (7:4e32)
db $5c ; palette ID
db $a8 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $0b ; sound FX ID
+ db SFX_0B ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_COIN_TOSS2
@@ -2182,7 +2182,7 @@ Animations: ; 1ce32 (7:4e32)
db $5c ; palette ID
db $a9 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_3) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $0b ; sound FX ID
+ db SFX_0B ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_COIN_TAILS
@@ -2190,7 +2190,7 @@ Animations: ; 1ce32 (7:4e32)
db $5c ; palette ID
db $aa ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_COIN_HEADS
@@ -2198,7 +2198,7 @@ Animations: ; 1ce32 (7:4e32)
db $5c ; palette ID
db $ab ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_DUEL_WIN
@@ -2206,7 +2206,7 @@ Animations: ; 1ce32 (7:4e32)
db $5d ; palette ID
db $ac ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_DUEL_LOSS
@@ -2214,7 +2214,7 @@ Animations: ; 1ce32 (7:4e32)
db $5d ; palette ID
db $ad ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_DUEL_DRAW
@@ -2222,7 +2222,7 @@ Animations: ; 1ce32 (7:4e32)
db $5d ; palette ID
db $ae ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; DUEL_ANIM_96
@@ -2230,7 +2230,7 @@ Animations: ; 1ce32 (7:4e32)
db $5b ; palette ID
db $a6 ; anim ID
db (1 << SPRITE_ANIM_FLAG_UNSKIPPABLE) | (1 << SPRITE_ANIM_FLAG_SPEED) ; anim flags
- db $00 ; sound FX ID
+ db SFX_STOP ; sound FX ID
db $00 ; handler function
; 0x1d078
diff --git a/src/engine/effect_functions.asm b/src/engine/effect_functions.asm
index 1394815..45e71a2 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 f255bb4..8e5233b 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