summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/macros/battle_anim_script.inc16
-rw-r--r--data/battle_anim_scripts.s136
-rw-r--r--include/constants/battle_anim.h3
-rw-r--r--src/battle_anim.c2099
-rw-r--r--src/data/battle_anim.h1625
5 files changed, 1955 insertions, 1924 deletions
diff --git a/asm/macros/battle_anim_script.inc b/asm/macros/battle_anim_script.inc
index df8953a85..15c48c39f 100644
--- a/asm/macros/battle_anim_script.inc
+++ b/asm/macros/battle_anim_script.inc
@@ -14,7 +14,7 @@
.byte 0x02
.4byte \template
.if \anim_battler == ANIM_TARGET
- .byte 0x80 | (\subpriority_offset & 0x7F)
+ .byte ANIMSPRITE_IS_TARGET | (\subpriority_offset & 0x7F)
.else
.byte (\subpriority_offset & 0x7F)
.endif
@@ -193,12 +193,12 @@
.4byte \ptr
.endm
- .macro monbg_22 battler:req
+ .macro monbg_static battler:req
.byte 0x22
.byte \battler
.endm
- .macro clearmonbg_23 battler:req
+ .macro clearmonbg_static battler:req
.byte 0x23
.byte \battler
.endm
@@ -233,16 +233,16 @@
.byte \delay
.endm
- .macro monbgprio_28 battler:req
+ .macro splitbgprio battler:req
.byte 0x28
.byte \battler
.endm
- .macro monbgprio_29
+ .macro splitbgprio_all
.byte 0x29
.endm
- .macro monbgprio_2A battler:req
+ .macro splitbgprio_foes battler:req
.byte 0x2a
.byte \battler
.endm
@@ -257,12 +257,12 @@
.byte \battler
.endm
- .macro doublebattle_2D battler:req
+ .macro teamattack_moveback battler:req
.byte 0x2d
.byte \battler
.endm
- .macro doublebattle_2E battler:req
+ .macro teamattack_movefwd battler:req
.byte 0x2e
.byte \battler
.endm
diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s
index 208bab8a6..45cf17c34 100644
--- a/data/battle_anim_scripts.s
+++ b/data/battle_anim_scripts.s
@@ -622,7 +622,7 @@ Move_BODY_SLAM:
Move_SUPERSONIC:
loadspritegfx ANIM_TAG_GOLD_RING
monbg ANIM_ATK_PARTNER
- monbgprio_2A ANIM_ATTACKER
+ splitbgprio_foes ANIM_ATTACKER
setalpha 12, 8
createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 2, 0, 8, 1
call SupersonicRing
@@ -659,7 +659,7 @@ ScreechRing:
Move_FLAME_WHEEL:
loadspritegfx ANIM_TAG_SMALL_EMBER
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0
playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER
delay 2
@@ -702,7 +702,7 @@ Move_PIN_MISSILE:
loadspritegfx ANIM_TAG_NEEDLE
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER
createsprite gPinMissileSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32
@@ -731,7 +731,7 @@ Move_ICICLE_SPEAR:
loadspritegfx ANIM_TAG_ICICLE_SPEAR
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
playsewithpan SE_M_ICY_WIND, SOUND_PAN_ATTACKER
createsprite gIcicleSpearSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32
@@ -817,7 +817,7 @@ Move_POISON_STING:
loadspritegfx ANIM_TAG_IMPACT
loadspritegfx ANIM_TAG_POISON_BUBBLE
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER
createsprite gLinearStingerSpriteTemplate, ANIM_TARGET, 2, 20, 0, -8, 0, 20
@@ -836,7 +836,7 @@ Move_TWINEEDLE:
loadspritegfx ANIM_TAG_NEEDLE
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
loopsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER, 6, 2
createsprite gLinearStingerSpriteTemplate, ANIM_TARGET, 2, 10, -4, 0, -4, 20
@@ -1029,7 +1029,7 @@ Move_SONIC_BOOM:
loadspritegfx ANIM_TAG_AIR_WAVE
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
call SonicBoomProjectile
call SonicBoomProjectile
@@ -1300,7 +1300,7 @@ Move_SPIKE_CANNON:
loadspritegfx ANIM_TAG_NEEDLE
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -4, 0, 4, 6, 8, 4
waitforvisualfinish
@@ -1668,7 +1668,7 @@ Move_DEFENSE_CURL:
Move_PROTECT:
loadspritegfx ANIM_TAG_PROTECT
monbg ANIM_ATK_PARTNER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 16
createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 24, 0, 90
waitforvisualfinish
@@ -1882,7 +1882,7 @@ Move_PAY_DAY:
loadspritegfx ANIM_TAG_COIN
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER
createsprite gCoinThrowSpriteTemplate, ANIM_ATTACKER, 2, 20, 0, 0, 0, 1152
@@ -2190,7 +2190,7 @@ Move_BUBBLE_BEAM:
loadspritegfx ANIM_TAG_BUBBLE
loadspritegfx ANIM_TAG_SMALL_BUBBLES
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
delay 1
call BulbblebeamCreateBubbles
@@ -2287,7 +2287,7 @@ Move_SMOKESCREEN:
Move_CONVERSION:
loadspritegfx ANIM_TAG_CONVERSION
monbg ANIM_ATK_PARTNER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
setalpha 16, 0
delay 0
playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER
@@ -2339,7 +2339,7 @@ Move_CONVERSION:
Move_CONVERSION_2:
loadspritegfx ANIM_TAG_CONVERSION
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
setalpha 0, 16
delay 0
playsewithpan SE_M_BARRIER, SOUND_PAN_TARGET
@@ -2657,7 +2657,7 @@ DigSetUp:
loadspritegfx ANIM_TAG_DIRT_MOUND
createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0, 0, 180
createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0, 1, 180
- monbg_22 ANIM_ATTACKER
+ monbg_static ANIM_ATTACKER
delay 1
createvisualtask AnimTask_DigDownMovement, 2, FALSE
delay 6
@@ -2667,7 +2667,7 @@ DigSetUp:
call DigThrowDirt
call DigThrowDirt
waitforvisualfinish
- clearmonbg_23 ANIM_ATTACKER
+ clearmonbg_static ANIM_ATTACKER
delay 1
createvisualtask AnimTask_DigDownMovement, 2, TRUE
goto DigEnd
@@ -3156,7 +3156,7 @@ MachPunchAgainstPlayer:
Move_FORESIGHT:
loadspritegfx ANIM_TAG_MAGNIFYING_GLASS
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 16, 0
createsprite gForesightMagnifyingGlassSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET
delay 17
@@ -3236,7 +3236,7 @@ Move_ROLLOUT:
loadspritegfx ANIM_TAG_MUD_SAND
loadspritegfx ANIM_TAG_ROCKS
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createvisualtask AnimTask_Rollout, 2
waitforvisualfinish
@@ -3518,11 +3518,11 @@ Move_MEMENTO:
delay 12
setalpha 0, 16
delay 1
- monbg_22 ANIM_TARGET
+ monbg_static ANIM_TARGET
createvisualtask AnimTask_MoveTargetMementoShadow, 5
playsewithpan SE_M_PSYBEAM, SOUND_PAN_TARGET
waitforvisualfinish
- clearmonbg_23 ANIM_TARGET
+ clearmonbg_static ANIM_TARGET
delay 1
blendoff
delay 1
@@ -3654,7 +3654,7 @@ Move_SUPERPOWER:
loadspritegfx ANIM_TAG_METEOR
loadspritegfx ANIM_TAG_FLAT_ROCK
monbg ANIM_ATK_PARTNER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
setalpha 12, 8
createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 2, ANIM_ATTACKER
playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER
@@ -3853,7 +3853,7 @@ Move_IMPRISON:
Move_GRUDGE:
loadspritegfx ANIM_TAG_PURPLE_FLAME
monbg ANIM_ATTACKER
- monbgprio_29
+ splitbgprio_all
fadetobg BG_GHOST
playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER
waitbgfadein
@@ -3870,7 +3870,7 @@ Move_GRUDGE:
Move_CAMOUFLAGE:
monbg ANIM_ATK_PARTNER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
setalpha 16, 0
createvisualtask AnimTask_SetCamouflageBlend, 5, 2, 3, 0, 14
delay 16
@@ -3968,7 +3968,7 @@ Move_MIST_BALL:
Move_FEATHER_DANCE:
loadspritegfx ANIM_TAG_WHITE_FEATHER
monbg ANIM_DEF_PARTNER
- monbgprio_29
+ splitbgprio_all
playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_TARGET
delay 0
createsprite gFallingFeatherSpriteTemplate, ANIM_TARGET, 0, 0, -16, 64, 2, 104, 11304, 32, 1
@@ -4518,7 +4518,7 @@ Move_LEAF_BLADE:
Move_DRAGON_DANCE:
loadspritegfx ANIM_TAG_HOLLOW_ORB
monbg ANIM_ATTACKER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
delay 1
createvisualtask AnimTask_DragonDanceWaver, 5
playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER
@@ -4924,7 +4924,7 @@ Move_SCRATCH:
Move_DRAGON_BREATH:
loadspritegfx ANIM_TAG_SMALL_EMBER
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 7, 7
createsprite gDragonBreathFireSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0, 0, 20
delay 2
@@ -4958,7 +4958,7 @@ Move_DRAGON_BREATH:
Move_ROAR:
loadspritegfx ANIM_TAG_NOISE_LINE
monbg ANIM_ATTACKER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
setalpha 8, 8
createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, 2
createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 10, ANIM_ATTACKER, 1
@@ -5122,7 +5122,7 @@ Move_BUBBLE:
Move_SMOG:
loadspritegfx ANIM_TAG_PURPLE_GAS_CLOUD
monbg ANIM_DEF_PARTNER
- monbgprio_29
+ splitbgprio_all
setalpha 12, 8
loopsewithpan SE_M_MIST, SOUND_PAN_TARGET, 17, 10
call SmogCloud
@@ -5185,7 +5185,7 @@ Move_FAINT_ATTACK:
Move_SAND_ATTACK:
loadspritegfx ANIM_TAG_MUD_SAND
monbg ANIM_ATK_PARTNER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
setalpha 12, 8
playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_ATTACKER
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, -10, 0, 0, 3
@@ -5343,7 +5343,7 @@ Move_CLAMP:
Move_ICE_BEAM:
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
loadspritegfx ANIM_TAG_ICE_CRYSTALS
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 7, RGB_BLACK
@@ -5606,7 +5606,7 @@ Move_HYDRO_PUMP:
loadspritegfx ANIM_TAG_WATER_ORB
loadspritegfx ANIM_TAG_WATER_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 40, 1
delay 6
@@ -5695,7 +5695,7 @@ Move_ABSORB:
loadspritegfx ANIM_TAG_BLUE_STAR
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
setalpha 12, 8
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 4, RGB(13, 31, 12)
waitforvisualfinish
@@ -5748,7 +5748,7 @@ Move_MEGA_DRAIN:
loadspritegfx ANIM_TAG_BLUE_STAR
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
setalpha 12, 8
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 8, RGB(13, 31, 12)
waitforvisualfinish
@@ -5809,7 +5809,7 @@ Move_GIGA_DRAIN:
loadspritegfx ANIM_TAG_BLUE_STAR
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
setalpha 12, 8
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 12, RGB(13, 31, 12)
waitforvisualfinish
@@ -5880,7 +5880,7 @@ Move_LEECH_LIFE:
loadspritegfx ANIM_TAG_BLUE_STAR
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
setalpha 12, 8
delay 1
createsprite gLeechLifeNeedleSpriteTemplate, ANIM_ATTACKER, 2, -20, 15, 12
@@ -6032,7 +6032,7 @@ Move_BONEMERANG:
loadspritegfx ANIM_TAG_BONE
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
playsewithpan SE_M_BONEMERANG, SOUND_PAN_ATTACKER
createsprite gBonemerangSpriteTemplate, ANIM_ATTACKER, 2
@@ -6052,7 +6052,7 @@ Move_BONE_CLUB:
loadspritegfx ANIM_TAG_BONE
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
playsewithpan SE_M_BONEMERANG, SOUND_PAN_TARGET
createsprite gSpinningBoneSpriteTemplate, ANIM_ATTACKER, 2, -42, -25, 0, 0, 15
@@ -6146,7 +6146,7 @@ Move_GUST:
loadspritegfx ANIM_TAG_GUST
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
playsewithpan SE_M_GUST, SOUND_PAN_TARGET
createsprite gEllipticalGustSpriteTemplate, ANIM_ATTACKER, 2, 0, -16
@@ -6164,7 +6164,7 @@ Move_WING_ATTACK:
loadspritegfx ANIM_TAG_GUST
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
loopsewithpan SE_M_WING_ATTACK, SOUND_PAN_ATTACKER, 20, 2
createvisualtask AnimTask_TranslateMonElliptical, 2, 0, 12, 4, 1, 4
@@ -6197,7 +6197,7 @@ Move_AEROBLAST:
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
call SetSkyBg
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
call AeroblastBeam
createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 5, 0, 50, 1
@@ -6237,7 +6237,7 @@ Move_WATER_GUN:
loadspritegfx ANIM_TAG_SMALL_BUBBLES
loadspritegfx ANIM_TAG_WATER_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createsprite gWaterGunProjectileSpriteTemplate, ANIM_ATTACKER, 2, 20, 0, 0, 0, 40, -25
playsewithpan SE_M_BUBBLE, SOUND_PAN_ATTACKER
@@ -6304,7 +6304,7 @@ Move_SURF:
Move_FLAMETHROWER:
loadspritegfx ANIM_TAG_SMALL_EMBER
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1
delay 6
@@ -6358,7 +6358,7 @@ Move_SANDSTORM:
Move_WHIRLPOOL:
loadspritegfx ANIM_TAG_WATER_ORB
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
delay 0
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 0, 7, RGB(0, 13, 23)
@@ -6445,7 +6445,7 @@ Move_KARATE_CHOP:
loadspritegfx ANIM_TAG_HANDS_AND_FEET
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET
createsprite gKarateChopSpriteTemplate, ANIM_ATTACKER, 2, -16, 0, 0, 0, 10, 1, 3, 0
@@ -6742,7 +6742,7 @@ SunnyDayLightRay:
Move_COTTON_SPORE:
loadspritegfx ANIM_TAG_SPORE
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET, 18, 10
call CreateCottonSpores
call CreateCottonSpores
@@ -6988,7 +6988,7 @@ FireSpreadEffect:
Move_LEER:
loadspritegfx ANIM_TAG_LEER
monbg ANIM_ATTACKER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
setalpha 8, 8
playsewithpan SE_M_LEER, SOUND_PAN_ATTACKER
createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 24, -12
@@ -7008,7 +7008,7 @@ Move_DREAM_EATER:
loadspritegfx ANIM_TAG_ORBS
loadspritegfx ANIM_TAG_BLUE_STAR
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER
call SetPsychicBackground
setalpha 8, 8
@@ -7076,7 +7076,7 @@ Move_POISON_GAS:
loadspritegfx ANIM_TAG_POISON_BUBBLE
delay 0
monbg ANIM_DEF_PARTNER
- monbgprio_29
+ splitbgprio_all
setalpha 12, 8
delay 0
playsewithpan SE_M_MIST, SOUND_PAN_ATTACKER
@@ -7221,7 +7221,7 @@ Move_STEEL_WING:
createvisualtask AnimTask_MetallicShine, 5, 0, 0, 0
waitforvisualfinish
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
loopsewithpan SE_M_WING_ATTACK, SOUND_PAN_ATTACKER, 20, 2
createvisualtask AnimTask_TranslateMonElliptical, 2, 0, 12, 4, 1, 4
@@ -7304,7 +7304,7 @@ Move_METAL_CLAW:
Move_NIGHT_SHADE:
monbg ANIM_ATTACKER
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER
fadetobg BG_GHOST
waitbgfadein
@@ -7475,7 +7475,7 @@ Move_SPIDER_WEB:
delay 0
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 5, 1, 2, 0, 9, RGB_BLACK
waitforvisualfinish
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
loopsewithpan SE_M_STRING_SHOT, SOUND_PAN_ATTACKER, 9, 6
call SpiderWebThread
call SpiderWebThread
@@ -7546,7 +7546,7 @@ RazorWindUnleash:
Move_DISABLE:
loadspritegfx ANIM_TAG_SPARKLE_4
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 8, 8
playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER
createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 24, -16
@@ -7597,8 +7597,8 @@ RecoverAbsorbEffect:
Move_MIMIC:
loadspritegfx ANIM_TAG_ORBS
setalpha 11, 5
- monbg_22 ANIM_DEF_PARTNER
- monbgprio_29
+ monbg_static ANIM_DEF_PARTNER
+ splitbgprio_all
panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, -3, 0
createvisualtask AnimTask_ShrinkTargetCopy, 5, 128, 24
delay 15
@@ -7609,7 +7609,7 @@ Move_MIMIC:
playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER
createvisualtask AnimTask_BlendColorCycle, 2, 2, 0, 2, 0, 11, RGB_WHITE
waitforvisualfinish
- clearmonbg_23 ANIM_DEF_PARTNER
+ clearmonbg_static ANIM_DEF_PARTNER
blendoff
end
@@ -8070,7 +8070,7 @@ Move_WILL_O_WISP:
loadspritegfx ANIM_TAG_WISP_FIRE
loadspritegfx ANIM_TAG_WISP_ORB
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
playsewithpan SE_M_EMBER, SOUND_PAN_ATTACKER
waitplaysewithpan SE_M_EMBER, SOUND_PAN_ATTACKER, 10
createvisualtask SoundTask_AdjustPanningVar, 2, SOUND_PAN_ATTACKER, SOUND_PAN_ATTACKER, 1, 0
@@ -8084,7 +8084,7 @@ Move_WILL_O_WISP:
delay 40
createvisualtask SoundTask_AdjustPanningVar, 2, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0
waitforvisualfinish
- monbgprio_29
+ splitbgprio_all
playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET
createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 13, 1
createsprite gWillOWispFireSpriteTemplate, ANIM_ATTACKER, 2, 0
@@ -8552,7 +8552,7 @@ Move_SHEER_COLD:
waitbgfadein
loadspritegfx ANIM_TAG_ICE_CUBE
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createvisualtask AnimTask_FrozenIceCube, 2
waitplaysewithpan SE_M_HAIL, SOUND_PAN_TARGET, 17
@@ -8566,7 +8566,7 @@ Move_SHEER_COLD:
Move_ARM_THRUST:
loadspritegfx ANIM_TAG_HANDS_AND_FEET
loadspritegfx ANIM_TAG_IMPACT
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createvisualtask AnimTask_RotateMonSpriteToSide, 5, 8, 5, 0, 0
delay 6
@@ -8684,7 +8684,7 @@ DragonClawFireSpiral:
Move_MUD_SHOT:
loadspritegfx ANIM_TAG_BROWN_ORB
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1
delay 6
@@ -8789,7 +8789,7 @@ Move_FRENZY_PLANT:
loadspritegfx ANIM_TAG_ROOTS
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 1, 2, 0, 5, RGB_BLACK
waitforvisualfinish
@@ -8848,7 +8848,7 @@ Move_FRENZY_PLANT:
Move_METAL_SOUND:
loadspritegfx ANIM_TAG_METAL_SOUND_WAVES
monbg ANIM_DEF_PARTNER
- monbgprio_2A ANIM_TARGET
+ splitbgprio_foes ANIM_TARGET
createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 2, 0, 8, 1
call MetalSoundRings
call MetalSoundRings
@@ -9158,7 +9158,7 @@ Move_SILVER_WIND:
playsewithpan SE_M_MORNING_SUN, 0
delay 0
monbg ANIM_DEF_PARTNER
- monbgprio_29
+ splitbgprio_all
delay 0
createvisualtask AnimTask_BlendBattleAnimPalExclude, 10, ANIM_TARGET, 0, 0, 4, RGB_BLACK
createvisualtask AnimTask_GetTargetSide, 2
@@ -9494,7 +9494,7 @@ Move_WATER_PULSE:
loadspritegfx ANIM_TAG_SMALL_BUBBLES
loadspritegfx ANIM_TAG_BLUE_RING_2
monbg ANIM_TARGET
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 0, 7, RGB(0, 25, 28)
delay 10
@@ -9531,7 +9531,7 @@ Move_PSYCHO_BOOST:
delay 6
createvisualtask AnimTask_BlendColorCycle, 2, 1, 2, 8, 0, 10, RGB_BLACK
delay 0
- monbgprio_28 ANIM_ATTACKER
+ splitbgprio ANIM_ATTACKER
setalpha 8, 8
delay 10
createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 3, 0, 240, 0
@@ -9591,7 +9591,7 @@ Move_DOOM_DESIRE:
Move_SKY_UPPERCUT:
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
fadetobg BG_IN_AIR
waitbgfadeout
playsewithpan SE_M_SKY_UPPERCUT, SOUND_PAN_ATTACKER
@@ -9650,7 +9650,7 @@ Move_TWISTER:
loadspritegfx ANIM_TAG_IMPACT
loadspritegfx ANIM_TAG_ROCKS
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
playsewithpan SE_M_TWISTER, SOUND_PAN_TARGET
createsprite gTwisterLeafSpriteTemplate, ANIM_TARGET, 2, 120, 70, 5, 70, 30
delay 1
@@ -10267,7 +10267,7 @@ Status_Freeze:
playsewithpan SE_M_ICY_WIND, 0
loadspritegfx ANIM_TAG_ICE_CUBE
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
waitplaysewithpan SE_M_HAIL, SOUND_PAN_TARGET, 17
createvisualtask AnimTask_FrozenIceCube, 2
waitforvisualfinish
@@ -10384,7 +10384,7 @@ Status_FireSpin:
Status_Whirlpool:
loadspritegfx ANIM_TAG_WATER_ORB
monbg ANIM_DEF_PARTNER
- monbgprio_28 ANIM_TARGET
+ splitbgprio ANIM_TARGET
setalpha 12, 8
delay 0
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 4, 2, 0, 7, RGB(0, 13, 23)
diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h
index 177ea04bb..48de594e2 100644
--- a/include/constants/battle_anim.h
+++ b/include/constants/battle_anim.h
@@ -395,6 +395,9 @@
// Tasks with return values often assign them to gBattleAnimArgs[7].
#define ARG_RET_ID 7
+// For createsprite macro to use internally
+#define ANIMSPRITE_IS_TARGET (1 << 7)
+
// Trapping Wrap-like moves end turn animation.
#define TRAP_ANIM_BIND 0
#define TRAP_ANIM_WRAP 0
diff --git a/src/battle_anim.c b/src/battle_anim.c
index 4599e3e09..4b9fbb1dc 100644
--- a/src/battle_anim.c
+++ b/src/battle_anim.c
@@ -18,65 +18,70 @@
#include "task.h"
#include "constants/battle_anim.h"
+/*
+ This file handles the commands for the macros defined in
+ battle_anim_script.inc and used in battle_anim_scripts.s
+*/
+
#define ANIM_SPRITE_INDEX_COUNT 8
extern const u16 gMovesWithQuietBGM[];
extern const u8 *const gBattleAnims_Moves[];
-static void ScriptCmd_loadspritegfx(void);
-static void ScriptCmd_unloadspritegfx(void);
-static void ScriptCmd_createsprite(void);
-static void ScriptCmd_createvisualtask(void);
-static void ScriptCmd_delay(void);
-static void ScriptCmd_waitforvisualfinish(void);
-static void ScriptCmd_nop(void);
-static void ScriptCmd_nop2(void);
-static void ScriptCmd_end(void);
-static void ScriptCmd_playse(void);
-static void ScriptCmd_monbg(void);
-static void ScriptCmd_clearmonbg(void);
-static void ScriptCmd_setalpha(void);
-static void ScriptCmd_blendoff(void);
-static void ScriptCmd_call(void);
-static void ScriptCmd_return(void);
-static void ScriptCmd_setarg(void);
-static void ScriptCmd_choosetwoturnanim(void);
-static void ScriptCmd_jumpifmoveturn(void);
-static void ScriptCmd_goto(void);
-static void ScriptCmd_fadetobg(void);
-static void ScriptCmd_restorebg(void);
-static void ScriptCmd_waitbgfadeout(void);
-static void ScriptCmd_waitbgfadein(void);
-static void ScriptCmd_changebg(void);
-static void ScriptCmd_playsewithpan(void);
-static void ScriptCmd_setpan(void);
-static void ScriptCmd_panse(void);
-static void ScriptCmd_loopsewithpan(void);
-static void ScriptCmd_waitplaysewithpan(void);
-static void ScriptCmd_setbldcnt(void);
-static void ScriptCmd_createsoundtask(void);
-static void ScriptCmd_waitsound(void);
-static void ScriptCmd_jumpargeq(void);
-static void ScriptCmd_monbg_22(void);
-static void ScriptCmd_clearmonbg_23(void);
-static void ScriptCmd_jumpifcontest(void);
-static void ScriptCmd_fadetobgfromset(void);
-static void ScriptCmd_panse_adjustnone(void);
-static void ScriptCmd_panse_adjustall(void);
-static void ScriptCmd_monbgprio_28(void);
-static void ScriptCmd_monbgprio_29(void);
-static void ScriptCmd_monbgprio_2A(void);
-static void ScriptCmd_invisible(void);
-static void ScriptCmd_visible(void);
-static void ScriptCmd_doublebattle_2D(void);
-static void ScriptCmd_doublebattle_2E(void);
-static void ScriptCmd_stopsound(void);
+static void Cmd_loadspritegfx(void);
+static void Cmd_unloadspritegfx(void);
+static void Cmd_createsprite(void);
+static void Cmd_createvisualtask(void);
+static void Cmd_delay(void);
+static void Cmd_waitforvisualfinish(void);
+static void Cmd_nop(void);
+static void Cmd_nop2(void);
+static void Cmd_end(void);
+static void Cmd_playse(void);
+static void Cmd_monbg(void);
+static void Cmd_clearmonbg(void);
+static void Cmd_setalpha(void);
+static void Cmd_blendoff(void);
+static void Cmd_call(void);
+static void Cmd_return(void);
+static void Cmd_setarg(void);
+static void Cmd_choosetwoturnanim(void);
+static void Cmd_jumpifmoveturn(void);
+static void Cmd_goto(void);
+static void Cmd_fadetobg(void);
+static void Cmd_restorebg(void);
+static void Cmd_waitbgfadeout(void);
+static void Cmd_waitbgfadein(void);
+static void Cmd_changebg(void);
+static void Cmd_playsewithpan(void);
+static void Cmd_setpan(void);
+static void Cmd_panse(void);
+static void Cmd_loopsewithpan(void);
+static void Cmd_waitplaysewithpan(void);
+static void Cmd_setbldcnt(void);
+static void Cmd_createsoundtask(void);
+static void Cmd_waitsound(void);
+static void Cmd_jumpargeq(void);
+static void Cmd_monbg_static(void);
+static void Cmd_clearmonbg_static(void);
+static void Cmd_jumpifcontest(void);
+static void Cmd_fadetobgfromset(void);
+static void Cmd_panse_adjustnone(void);
+static void Cmd_panse_adjustall(void);
+static void Cmd_splitbgprio(void);
+static void Cmd_splitbgprio_all(void);
+static void Cmd_splitbgprio_foes(void);
+static void Cmd_invisible(void);
+static void Cmd_visible(void);
+static void Cmd_teamattack_moveback(void);
+static void Cmd_teamattack_movefwd(void);
+static void Cmd_stopsound(void);
static void RunAnimScriptCommand(void);
-static void task_pA_ma0A_obj_to_bg_pal(u8 taskId);
+static void Task_UpdateMonBg(u8 taskId);
static void FlipBattlerBgTiles(void);
static void Task_ClearMonBg(u8 taskId);
-static void sub_80A4BB0(u8 taskId);
+static void Task_ClearMonBgStatic(u8 taskId);
static void Task_FadeToBg(u8 taskId);
static void Task_PanFromInitialToTarget(u8 taskId);
static void Task_LoopAndPlaySE(u8 taskId);
@@ -108,1682 +113,58 @@ EWRAM_DATA u8 gBattleAnimTarget = 0;
EWRAM_DATA u16 gAnimBattlerSpecies[MAX_BATTLERS_COUNT] = {0};
EWRAM_DATA u8 gAnimCustomPanning = 0;
-const struct OamData gOamData_AffineOff_ObjNormal_8x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x8),
- .x = 0,
- .size = SPRITE_SIZE(8x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-
-const struct OamData gOamData_AffineOff_ObjNormal_16x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x16),
- .x = 0,
- .size = SPRITE_SIZE(16x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_32x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x32),
- .x = 0,
- .size = SPRITE_SIZE(32x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_64x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x64),
- .x = 0,
- .size = SPRITE_SIZE(64x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_16x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x8),
- .x = 0,
- .size = SPRITE_SIZE(16x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_32x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x8),
- .x = 0,
- .size = SPRITE_SIZE(32x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_32x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x16),
- .x = 0,
- .size = SPRITE_SIZE(32x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_64x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x32),
- .x = 0,
- .size = SPRITE_SIZE(64x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_8x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x16),
- .x = 0,
- .size = SPRITE_SIZE(8x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_8x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x32),
- .x = 0,
- .size = SPRITE_SIZE(8x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_16x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x32),
- .x = 0,
- .size = SPRITE_SIZE(16x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjNormal_32x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x64),
- .x = 0,
- .size = SPRITE_SIZE(32x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_8x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x8),
- .x = 0,
- .size = SPRITE_SIZE(8x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_16x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x16),
- .x = 0,
- .size = SPRITE_SIZE(16x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_32x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x32),
- .x = 0,
- .size = SPRITE_SIZE(32x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_64x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x64),
- .x = 0,
- .size = SPRITE_SIZE(64x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_16x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x8),
- .x = 0,
- .size = SPRITE_SIZE(16x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_32x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x8),
- .x = 0,
- .size = SPRITE_SIZE(32x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_32x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x16),
- .x = 0,
- .size = SPRITE_SIZE(32x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_64x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x32),
- .x = 0,
- .size = SPRITE_SIZE(64x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_8x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x16),
- .x = 0,
- .size = SPRITE_SIZE(8x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_8x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x32),
- .x = 0,
- .size = SPRITE_SIZE(8x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_16x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x32),
- .x = 0,
- .size = SPRITE_SIZE(16x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjNormal_32x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x64),
- .x = 0,
- .size = SPRITE_SIZE(32x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_8x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x8),
- .x = 0,
- .size = SPRITE_SIZE(8x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_16x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x16),
- .x = 0,
- .size = SPRITE_SIZE(16x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_32x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x32),
- .x = 0,
- .size = SPRITE_SIZE(32x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_64x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x64),
- .x = 0,
- .size = SPRITE_SIZE(64x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_16x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x8),
- .x = 0,
- .size = SPRITE_SIZE(16x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_32x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x8),
- .x = 0,
- .size = SPRITE_SIZE(32x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_32x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x16),
- .x = 0,
- .size = SPRITE_SIZE(32x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_64x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x32),
- .x = 0,
- .size = SPRITE_SIZE(64x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_8x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x16),
- .x = 0,
- .size = SPRITE_SIZE(8x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_8x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x32),
- .x = 0,
- .size = SPRITE_SIZE(8x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_16x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x32),
- .x = 0,
- .size = SPRITE_SIZE(16x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjNormal_32x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_NORMAL,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x64),
- .x = 0,
- .size = SPRITE_SIZE(32x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_8x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x8),
- .x = 0,
- .size = SPRITE_SIZE(8x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_16x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x16),
- .x = 0,
- .size = SPRITE_SIZE(16x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_32x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x32),
- .x = 0,
- .size = SPRITE_SIZE(32x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_64x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x64),
- .x = 0,
- .size = SPRITE_SIZE(64x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_16x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x8),
- .x = 0,
- .size = SPRITE_SIZE(16x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_32x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x8),
- .x = 0,
- .size = SPRITE_SIZE(32x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_32x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x16),
- .x = 0,
- .size = SPRITE_SIZE(32x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_64x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x32),
- .x = 0,
- .size = SPRITE_SIZE(64x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_8x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x16),
- .x = 0,
- .size = SPRITE_SIZE(8x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_8x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x32),
- .x = 0,
- .size = SPRITE_SIZE(8x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_16x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x32),
- .x = 0,
- .size = SPRITE_SIZE(16x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineOff_ObjBlend_32x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_OFF,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x64),
- .x = 0,
- .size = SPRITE_SIZE(32x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_8x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x8),
- .x = 0,
- .size = SPRITE_SIZE(8x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_16x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x16),
- .x = 0,
- .size = SPRITE_SIZE(16x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_32x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x32),
- .x = 0,
- .size = SPRITE_SIZE(32x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_64x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x64),
- .x = 0,
- .size = SPRITE_SIZE(64x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_16x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x8),
- .x = 0,
- .size = SPRITE_SIZE(16x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_32x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x8),
- .x = 0,
- .size = SPRITE_SIZE(32x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_32x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x16),
- .x = 0,
- .size = SPRITE_SIZE(32x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_64x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x32),
- .x = 0,
- .size = SPRITE_SIZE(64x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_8x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x16),
- .x = 0,
- .size = SPRITE_SIZE(8x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_8x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x32),
- .x = 0,
- .size = SPRITE_SIZE(8x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_16x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x32),
- .x = 0,
- .size = SPRITE_SIZE(16x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineNormal_ObjBlend_32x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_NORMAL,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x64),
- .x = 0,
- .size = SPRITE_SIZE(32x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_8x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x8),
- .x = 0,
- .size = SPRITE_SIZE(8x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_16x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x16),
- .x = 0,
- .size = SPRITE_SIZE(16x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_32x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x32),
- .x = 0,
- .size = SPRITE_SIZE(32x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_64x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x64),
- .x = 0,
- .size = SPRITE_SIZE(64x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_16x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x8),
- .x = 0,
- .size = SPRITE_SIZE(16x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_32x8 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x8),
- .x = 0,
- .size = SPRITE_SIZE(32x8),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_32x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x16),
- .x = 0,
- .size = SPRITE_SIZE(32x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_64x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(64x32),
- .x = 0,
- .size = SPRITE_SIZE(64x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_8x16 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x16),
- .x = 0,
- .size = SPRITE_SIZE(8x16),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_8x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(8x32),
- .x = 0,
- .size = SPRITE_SIZE(8x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_16x32 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(16x32),
- .x = 0,
- .size = SPRITE_SIZE(16x32),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct OamData gOamData_AffineDouble_ObjBlend_32x64 =
-{
- .y = 0,
- .affineMode = ST_OAM_AFFINE_DOUBLE,
- .objMode = ST_OAM_OBJ_BLEND,
- .bpp = ST_OAM_4BPP,
- .shape = SPRITE_SHAPE(32x64),
- .x = 0,
- .size = SPRITE_SIZE(32x64),
- .tileNum = 0,
- .priority = 2,
- .paletteNum = 0,
-};
-
-const struct CompressedSpriteSheet gBattleAnimPicTable[] =
-{
- {gBattleAnimSpriteGfx_Bone, 0x0200, ANIM_TAG_BONE},
- {gBattleAnimSpriteGfx_Spark, 0x0300, ANIM_TAG_SPARK},
- {gBattleAnimSpriteGfx_Pencil, 0x0200, ANIM_TAG_PENCIL},
- {gBattleAnimSpriteGfx_AirWave, 0x0100, ANIM_TAG_AIR_WAVE},
- {gBattleAnimSpriteGfx_Orb, 0x0200, ANIM_TAG_ORB},
- {gBattleAnimSpriteGfx_Sword, 0x0400, ANIM_TAG_SWORD},
- {gBattleAnimSpriteGfx_Seed, 0x0180, ANIM_TAG_SEED},
- {gBattleAnimSpriteGfx_Explosion6, 0x0800, ANIM_TAG_EXPLOSION_6},
- {gBattleAnimSpriteGfx_PinkOrb, 0x0020, ANIM_TAG_PINK_ORB},
- {gBattleAnimSpriteGfx_Gust, 0x0400, ANIM_TAG_GUST},
- {gBattleAnimSpriteGfx_IceCube, 0x1200, ANIM_TAG_ICE_CUBE},
- {gBattleAnimSpriteGfx_Spark2, 0x0180, ANIM_TAG_SPARK_2},
- {gBattleAnimSpriteGfx_Orange, 0x0080, ANIM_TAG_ORANGE},
- {gBattleAnimSpriteGfx_YellowBall, 0x0080, ANIM_TAG_YELLOW_BALL},
- {gBattleAnimSpriteGfx_LockOn, 0x0280, ANIM_TAG_LOCK_ON},
- {gBattleAnimSpriteGfx_TiedBag, 0x0080, ANIM_TAG_TIED_BAG},
- {gBattleAnimSpriteGfx_BlackSmoke, 0x0100, ANIM_TAG_BLACK_SMOKE},
- {gBattleAnimSpriteGfx_BlackBall, 0x0020, ANIM_TAG_BLACK_BALL},
- {gBattleAnimSpriteGfx_Conversion, 0x0080, ANIM_TAG_CONVERSION},
- {gBattleAnimSpriteGfx_Glass, 0x0400, ANIM_TAG_GLASS},
- {gBattleAnimSpriteGfx_HornHit, 0x0200, ANIM_TAG_HORN_HIT},
- {gBattleAnimSpriteGfx_Hit, 0x0A00, ANIM_TAG_HIT},
- {gBattleAnimSpriteGfx_Hit, 0x0A00, ANIM_TAG_HIT_2},
- {gBattleAnimSpriteGfx_BlueShards, 0x0380, ANIM_TAG_BLUE_SHARDS},
- {gBattleAnimSpriteGfx_ClosingEye, 0x0300, ANIM_TAG_CLOSING_EYE},
- {gBattleAnimSpriteGfx_WavingHand, 0x0A00, ANIM_TAG_WAVING_HAND},
- {gBattleAnimSpriteGfx_HitDuplicate, 0x0A00, ANIM_TAG_HIT_DUPLICATE},
- {gBattleAnimSpriteGfx_Leer, 0x0A00, ANIM_TAG_LEER},
- {gBattleAnimSpriteGfx_BlueBurst, 0x0A00, ANIM_TAG_BLUE_BURST},
- {gBattleAnimSpriteGfx_SmallEmber, 0x0A00, ANIM_TAG_SMALL_EMBER},
- {gBattleAnimSpriteGfx_GraySmoke, 0x0A00, ANIM_TAG_GRAY_SMOKE},
- {gBattleAnimSpriteGfx_BlueStar, 0x0E00, ANIM_TAG_BLUE_STAR},
- {gBattleAnimSpriteGfx_BubbleBurst, 0x0380, ANIM_TAG_BUBBLE_BURST},
- {gBattleAnimSpriteGfx_Fire, 0x1000, ANIM_TAG_FIRE},
- {gBattleAnimSpriteGfx_SpinningFire, 0x0800, ANIM_TAG_SPINNING_FIRE},
- {gBattleAnimSpriteGfx_FirePlume, 0x0A00, ANIM_TAG_FIRE_PLUME},
- {gBattleAnimSpriteGfx_Lightning2, 0x0800, ANIM_TAG_LIGHTNING_2},
- {gBattleAnimSpriteGfx_Lightning, 0x0A00, ANIM_TAG_LIGHTNING},
- {gBattleAnimSpriteGfx_ClawSlash2, 0x0A00, ANIM_TAG_CLAW_SLASH_2},
- {gBattleAnimSpriteGfx_ClawSlash, 0x0A00, ANIM_TAG_CLAW_SLASH},
- {gBattleAnimSpriteGfx_Scratch3, 0x0A00, ANIM_TAG_SCRATCH_3},
- {gBattleAnimSpriteGfx_Scratch2, 0x0A00, ANIM_TAG_SCRATCH_2},
- {gBattleAnimSpriteGfx_BubbleBurst2, 0x0A00, ANIM_TAG_BUBBLE_BURST_2},
- {gBattleAnimSpriteGfx_IceChunk, 0x0A00, ANIM_TAG_ICE_CHUNK},
- {gBattleAnimSpriteGfx_Glass2, 0x0A00, ANIM_TAG_GLASS_2},
- {gBattleAnimSpriteGfx_PinkHeart2, 0x0A00, ANIM_TAG_PINK_HEART_2},
- {gBattleAnimSpriteGfx_SapDrip, 0x1000, ANIM_TAG_SAP_DRIP},
- {gBattleAnimSpriteGfx_SapDrip, 0x1000, ANIM_TAG_SAP_DRIP_2},
- {gBattleAnimSpriteGfx_Sparkle1, 0x1000, ANIM_TAG_SPARKLE_1},
- {gBattleAnimSpriteGfx_Sparkle1, 0x1000, ANIM_TAG_SPARKLE_2},
- {gBattleAnimSpriteGfx_HumanoidFoot, 0x0200, ANIM_TAG_HUMANOID_FOOT},
- {gBattleAnimSpriteGfx_MonsterFoot, 0x0200, ANIM_TAG_MONSTER_FOOT},
- {gBattleAnimSpriteGfx_HumanoidHand, 0x0200, ANIM_TAG_HUMANOID_HAND},
- {gBattleAnimSpriteGfx_NoiseLine, 0x0800, ANIM_TAG_NOISE_LINE},
- {gBattleAnimSpriteGfx_YellowUnk, 0x0080, ANIM_TAG_YELLOW_UNK},
- {gBattleAnimSpriteGfx_RedFist, 0x0200, ANIM_TAG_RED_FIST},
- {gBattleAnimSpriteGfx_SlamHit, 0x1000, ANIM_TAG_SLAM_HIT},
- {gBattleAnimSpriteGfx_Ring, 0x0180, ANIM_TAG_RING},
- {gBattleAnimSpriteGfx_Rocks, 0x0C00, ANIM_TAG_ROCKS},
- {gBattleAnimSpriteGfx_Z, 0x0100, ANIM_TAG_Z},
- {gBattleAnimSpriteGfx_YellowUnk2, 0x0040, ANIM_TAG_YELLOW_UNK_2},
- {gBattleAnimSpriteGfx_AirSlash, 0x0180, ANIM_TAG_AIR_SLASH},
- {gBattleAnimSpriteGfx_SpinningGreenOrbs, 0x0800, ANIM_TAG_SPINNING_GREEN_ORBS},
- {gBattleAnimSpriteGfx_Leaf, 0x0480, ANIM_TAG_LEAF},
- {gBattleAnimSpriteGfx_Finger, 0x0200, ANIM_TAG_FINGER},
- {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_POISON_POWDER},
- {gBattleAnimSpriteGfx_BrownTriangle, 0x0100, ANIM_TAG_BROWN_TRIANGLE},
- {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_SLEEP_POWDER},
- {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_STUN_SPORE},
- {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_POWDER},
- {gBattleAnimSpriteGfx_Sparkle3, 0x0200, ANIM_TAG_SPARKLE_3},
- {gBattleAnimSpriteGfx_Sparkle4, 0x0A00, ANIM_TAG_SPARKLE_4},
- {gBattleAnimSpriteGfx_MusicNotes, 0x0300, ANIM_TAG_MUSIC_NOTES},
- {gBattleAnimSpriteGfx_Duck, 0x0180, ANIM_TAG_DUCK},
- {gBattleAnimSpriteGfx_MudSand, 0x00A0, ANIM_TAG_MUD_SAND},
- {gBattleAnimSpriteGfx_Alert, 0x0700, ANIM_TAG_ALERT},
- {gBattleAnimSpriteGfx_BlueFlames, 0x0400, ANIM_TAG_BLUE_FLAMES},
- {gBattleAnimSpriteGfx_BlueFlames2, 0x0200, ANIM_TAG_BLUE_FLAMES_2},
- {gBattleAnimSpriteGfx_Shock4, 0x0300, ANIM_TAG_SHOCK_4},
- {gBattleAnimSpriteGfx_Shock, 0x0C00, ANIM_TAG_SHOCK},
- {gBattleAnimSpriteGfx_Bell2, 0x0A00, ANIM_TAG_BELL_2},
- {gBattleAnimSpriteGfx_PinkGlove, 0x0080, ANIM_TAG_PINK_GLOVE},
- {gBattleAnimSpriteGfx_BlueLines, 0x0040, ANIM_TAG_BLUE_LINES},
- {gBattleAnimSpriteGfx_Impact3, 0x0E00, ANIM_TAG_IMPACT_3},
- {gBattleAnimSpriteGfx_Impact2, 0x0E00, ANIM_TAG_IMPACT_2},
- {gBattleAnimSpriteGfx_Reticle, 0x0280, ANIM_TAG_RETICLE},
- {gBattleAnimSpriteGfx_Breath, 0x0200, ANIM_TAG_BREATH},
- {gBattleAnimSpriteGfx_Anger, 0x0080, ANIM_TAG_ANGER},
- {gBattleAnimSpriteGfx_Snowball, 0x00C0, ANIM_TAG_SNOWBALL},
- {gBattleAnimSpriteGfx_Vine, 0x0A00, ANIM_TAG_VINE},
- {gBattleAnimSpriteGfx_Sword2, 0x0200, ANIM_TAG_SWORD_2},
- {gBattleAnimSpriteGfx_Clapping, 0x0180, ANIM_TAG_CLAPPING},
- {gBattleAnimSpriteGfx_RedTube, 0x0080, ANIM_TAG_RED_TUBE},
- {gBattleAnimSpriteGfx_Amnesia, 0x1000, ANIM_TAG_AMNESIA},
- {gBattleAnimSpriteGfx_String2, 0x0A00, ANIM_TAG_STRING_2},
- {gBattleAnimSpriteGfx_Pencil2, 0x0180, ANIM_TAG_PENCIL_2},
- {gBattleAnimSpriteGfx_Petal, 0x0380, ANIM_TAG_PETAL},
- {gBattleAnimSpriteGfx_BentSpoon, 0x0C00, ANIM_TAG_BENT_SPOON},
- {gBattleAnimSpriteGfx_Web, 0x0200, ANIM_TAG_WEB},
- {gBattleAnimSpriteGfx_MilkBottle, 0x0200, ANIM_TAG_MILK_BOTTLE},
- {gBattleAnimSpriteGfx_Coin, 0x0200, ANIM_TAG_COIN},
- {gBattleAnimSpriteGfx_CrackedEgg, 0x0200, ANIM_TAG_CRACKED_EGG},
- {gBattleAnimSpriteGfx_HatchedEgg, 0x0400, ANIM_TAG_HATCHED_EGG},
- {gBattleAnimSpriteGfx_FreshEgg, 0x0080, ANIM_TAG_FRESH_EGG},
- {gBattleAnimSpriteGfx_Fangs, 0x0400, ANIM_TAG_FANGS},
- {gBattleAnimSpriteGfx_Explosion2, 0x0c00, ANIM_TAG_EXPLOSION_2},
- {gBattleAnimSpriteGfx_Explosion3, 0x0200, ANIM_TAG_EXPLOSION_3},
- {gBattleAnimSpriteGfx_WaterDroplet, 0x1000, ANIM_TAG_WATER_DROPLET},
- {gBattleAnimSpriteGfx_WaterDroplet2, 0x0a00, ANIM_TAG_WATER_DROPLET_2},
- {gBattleAnimSpriteGfx_Seed2, 0x0020, ANIM_TAG_SEED_2},
- {gBattleAnimSpriteGfx_Sprout, 0x0e00, ANIM_TAG_SPROUT},
- {gBattleAnimSpriteGfx_RedWand, 0x0080, ANIM_TAG_RED_WAND},
- {gBattleAnimSpriteGfx_PurpleGreenUnk, 0x0a00, ANIM_TAG_PURPLE_GREEN_UNK},
- {gBattleAnimSpriteGfx_WaterColumn, 0x0400, ANIM_TAG_WATER_COLUMN},
- {gBattleAnimSpriteGfx_MudUnk, 0x0200, ANIM_TAG_MUD_UNK},
- {gBattleAnimSpriteGfx_RainDrops, 0x0700, ANIM_TAG_RAIN_DROPS},
- {gBattleAnimSpriteGfx_FurySwipes, 0x0800, ANIM_TAG_FURY_SWIPES},
- {gBattleAnimSpriteGfx_Vine2, 0x0a00, ANIM_TAG_VINE_2},
- {gBattleAnimSpriteGfx_Teeth, 0x0600, ANIM_TAG_TEETH},
- {gBattleAnimSpriteGfx_Bone2, 0x0800, ANIM_TAG_BONE_2},
- {gBattleAnimSpriteGfx_WhiteBag, 0x0200, ANIM_TAG_WHITE_BAG},
- {gBattleAnimSpriteGfx_Unknown, 0x0040, ANIM_TAG_UNKNOWN},
- {gBattleAnimSpriteGfx_PurpleCoral, 0x0180, ANIM_TAG_PURPLE_CORAL},
- {gBattleAnimSpriteGfx_PurpleDroplet, 0x0600, ANIM_TAG_PURPLE_DROPLET},
- {gBattleAnimSpriteGfx_Shock2, 0x0600, ANIM_TAG_SHOCK_2},
- {gBattleAnimSpriteGfx_ClosingEye2, 0x0200, ANIM_TAG_CLOSING_EYE_2},
- {gBattleAnimSpriteGfx_MetalBall, 0x0080, ANIM_TAG_METAL_BALL},
- {gBattleAnimSpriteGfx_MonsterDoll, 0x0200, ANIM_TAG_MONSTER_DOLL},
- {gBattleAnimSpriteGfx_Whirlwind, 0x0800, ANIM_TAG_WHIRLWIND},
- {gBattleAnimSpriteGfx_Whirlwind2, 0x0080, ANIM_TAG_WHIRLWIND_2},
- {gBattleAnimSpriteGfx_Explosion4, 0x0a00, ANIM_TAG_EXPLOSION_4},
- {gBattleAnimSpriteGfx_Explosion5, 0x0280, ANIM_TAG_EXPLOSION_5},
- {gBattleAnimSpriteGfx_Tongue, 0x0280, ANIM_TAG_TONGUE},
- {gBattleAnimSpriteGfx_Smoke, 0x0100, ANIM_TAG_SMOKE},
- {gBattleAnimSpriteGfx_Smoke2, 0x0200, ANIM_TAG_SMOKE_2},
- {gBattleAnimSpriteGfx_Impact, 0x0200, ANIM_TAG_IMPACT},
- {gBattleAnimSpriteGfx_CircleImpact, 0x0020, ANIM_TAG_CIRCLE_IMPACT},
- {gBattleAnimSpriteGfx_Scratch, 0x0a00, ANIM_TAG_SCRATCH},
- {gBattleAnimSpriteGfx_Cut, 0x0800, ANIM_TAG_CUT},
- {gBattleAnimSpriteGfx_SharpTeeth, 0x0800, ANIM_TAG_SHARP_TEETH},
- {gBattleAnimSpriteGfx_RainbowRings, 0x00c0, ANIM_TAG_RAINBOW_RINGS},
- {gBattleAnimSpriteGfx_IceCrystals, 0x01c0, ANIM_TAG_ICE_CRYSTALS},
- {gBattleAnimSpriteGfx_IceSpikes, 0x0100, ANIM_TAG_ICE_SPIKES},
- {gBattleAnimSpriteGfx_HandsAndFeet, 0x0800, ANIM_TAG_HANDS_AND_FEET},
- {gBattleAnimSpriteGfx_MistCloud, 0x0200, ANIM_TAG_MIST_CLOUD},
- {gBattleAnimSpriteGfx_Clamp, 0x0800, ANIM_TAG_CLAMP},
- {gBattleAnimSpriteGfx_Bubble, 0x0180, ANIM_TAG_BUBBLE},
- {gBattleAnimSpriteGfx_Orbs, 0x0180, ANIM_TAG_ORBS},
- {gBattleAnimSpriteGfx_WaterImpact, 0x0200, ANIM_TAG_WATER_IMPACT},
- {gBattleAnimSpriteGfx_WaterOrb, 0x0200, ANIM_TAG_WATER_ORB},
- {gBattleAnimSpriteGfx_PoisonBubble, 0x0180, ANIM_TAG_POISON_BUBBLE},
- {gBattleAnimSpriteGfx_ToxicBubble, 0x0400, ANIM_TAG_TOXIC_BUBBLE},
- {gBattleAnimSpriteGfx_Spikes, 0x0080, ANIM_TAG_SPIKES},
- {gBattleAnimSpriteGfx_HornHit2, 0x0100, ANIM_TAG_HORN_HIT_2},
- {gBattleAnimSpriteGfx_AirWave2, 0x0100, ANIM_TAG_AIR_WAVE_2},
- {gBattleAnimSpriteGfx_SmallBubbles, 0x0140, ANIM_TAG_SMALL_BUBBLES},
- {gBattleAnimSpriteGfx_RoundShadow, 0x0800, ANIM_TAG_ROUND_SHADOW},
- {gBattleAnimSpriteGfx_Sunlight, 0x0200, ANIM_TAG_SUNLIGHT},
- {gBattleAnimSpriteGfx_Spore, 0x0100, ANIM_TAG_SPORE},
- {gBattleAnimSpriteGfx_Flower, 0x00a0, ANIM_TAG_FLOWER},
- {gBattleAnimSpriteGfx_RazorLeaf, 0x0100, ANIM_TAG_RAZOR_LEAF},
- {gBattleAnimSpriteGfx_Needle, 0x0080, ANIM_TAG_NEEDLE},
- {gBattleAnimSpriteGfx_WhirlwindLines, 0x0300, ANIM_TAG_WHIRLWIND_LINES},
- {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_GOLD_RING},
- {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_PURPLE_RING},
- {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_BLUE_RING},
- {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_GREEN_LIGHT_WALL},
- {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_BLUE_LIGHT_WALL},
- {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_RED_LIGHT_WALL},
- {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_GRAY_LIGHT_WALL},
- {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_ORANGE_LIGHT_WALL},
- {gBattleAnimSpriteGfx_BlackBall2, 0x0080, ANIM_TAG_BLACK_BALL_2},
- {gBattleAnimSpriteGfx_MistCloud, 0x0200, ANIM_TAG_PURPLE_GAS_CLOUD},
- {gBattleAnimSpriteGfx_SparkH, 0x0200, ANIM_TAG_SPARK_H},
- {gBattleAnimSpriteGfx_YellowStar, 0x0200, ANIM_TAG_YELLOW_STAR},
- {gBattleAnimSpriteGfx_LargeFreshEgg, 0x0080, ANIM_TAG_LARGE_FRESH_EGG},
- {gBattleAnimSpriteGfx_ShadowBall, 0x0200, ANIM_TAG_SHADOW_BALL},
- {gBattleAnimSpriteGfx_Lick, 0x0500, ANIM_TAG_LICK},
- {gBattleAnimSpriteGfx_VoidLines, 0x0800, ANIM_TAG_VOID_LINES},
- {gBattleAnimSpriteGfx_String, 0x0400, ANIM_TAG_STRING},
- {gBattleAnimSpriteGfx_WebThread, 0x0020, ANIM_TAG_WEB_THREAD},
- {gBattleAnimSpriteGfx_SpiderWeb, 0x0800, ANIM_TAG_SPIDER_WEB},
- {gBattleAnimSpriteGfx_Lightbulb, 0x0100, ANIM_TAG_LIGHTBULB},
- {gBattleAnimSpriteGfx_Slash, 0x0800, ANIM_TAG_SLASH},
- {gBattleAnimSpriteGfx_FocusEnergy, 0x0400, ANIM_TAG_FOCUS_ENERGY},
- {gBattleAnimSpriteGfx_SphereToCube, 0x0a00, ANIM_TAG_SPHERE_TO_CUBE},
- {gBattleAnimSpriteGfx_Tendrils, 0x1000, ANIM_TAG_TENDRILS},
- {gBattleAnimSpriteGfx_Eye, 0x0800, ANIM_TAG_EYE},
- {gBattleAnimSpriteGfx_WhiteShadow, 0x0400, ANIM_TAG_WHITE_SHADOW},
- {gBattleAnimSpriteGfx_TealAlert, 0x0200, ANIM_TAG_TEAL_ALERT},
- {gBattleAnimSpriteGfx_OpeningEye, 0x0800, ANIM_TAG_OPENING_EYE},
- {gBattleAnimSpriteGfx_RoundWhiteHalo, 0x0800, ANIM_TAG_ROUND_WHITE_HALO},
- {gBattleAnimSpriteGfx_FangAttack, 0x0800, ANIM_TAG_FANG_ATTACK},
- {gBattleAnimSpriteGfx_PurpleHandOutline, 0x0200, ANIM_TAG_PURPLE_HAND_OUTLINE},
- {gBattleAnimSpriteGfx_Moon, 0x0800, ANIM_TAG_MOON},
- {gBattleAnimSpriteGfx_GreenSparkle, 0x0200, ANIM_TAG_GREEN_SPARKLE},
- {gBattleAnimSpriteGfx_Spiral, 0x0800, ANIM_TAG_SPIRAL},
- {gBattleAnimSpriteGfx_SnoreZ, 0x0200, ANIM_TAG_SNORE_Z},
- {gBattleAnimSpriteGfx_Explosion, 0x0800, ANIM_TAG_EXPLOSION},
- {gBattleAnimSpriteGfx_Nail, 0x0400, ANIM_TAG_NAIL},
- {gBattleAnimSpriteGfx_GhostlySpirit, 0x0200, ANIM_TAG_GHOSTLY_SPIRIT},
- {gBattleAnimSpriteGfx_WarmRock, 0x0a80, ANIM_TAG_WARM_ROCK},
- {gBattleAnimSpriteGfx_BreakingEgg, 0x0600, ANIM_TAG_BREAKING_EGG},
- {gBattleAnimSpriteGfx_ThinRing, 0x0800, ANIM_TAG_THIN_RING},
- {gBattleAnimSpriteGfx_PunchImpact, 0x0200, ANIM_TAG_PUNCH_IMPACT},
- {gBattleAnimSpriteGfx_Bell, 0x0600, ANIM_TAG_BELL},
- {gBattleAnimSpriteGfx_MusicNotes2, 0x0800, ANIM_TAG_MUSIC_NOTES_2},
- {gBattleAnimSpriteGfx_SpeedDust, 0x0180, ANIM_TAG_SPEED_DUST},
- {gBattleAnimSpriteGfx_TornMetal, 0x0800, ANIM_TAG_TORN_METAL},
- {gBattleAnimSpriteGfx_ThoughtBubble, 0x0800, ANIM_TAG_THOUGHT_BUBBLE},
- {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_MAGENTA_HEART},
- {gBattleAnimSpriteGfx_ElectricOrbs, 0x0080, ANIM_TAG_ELECTRIC_ORBS},
- {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_CIRCLE_OF_LIGHT},
- {gBattleAnimSpriteGfx_Electricity, 0x0800, ANIM_TAG_ELECTRICITY},
- {gBattleAnimSpriteGfx_Finger2, 0x0600, ANIM_TAG_FINGER_2},
- {gBattleAnimSpriteGfx_MovementWaves, 0x0600, ANIM_TAG_MOVEMENT_WAVES},
- {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_RED_HEART},
- {gBattleAnimSpriteGfx_RedOrb, 0x0080, ANIM_TAG_RED_ORB},
- {gBattleAnimSpriteGfx_EyeSparkle, 0x0180, ANIM_TAG_EYE_SPARKLE},
- {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_PINK_HEART},
- {gBattleAnimSpriteGfx_Angel, 0x0200, ANIM_TAG_ANGEL},
- {gBattleAnimSpriteGfx_Devil, 0x0400, ANIM_TAG_DEVIL},
- {gBattleAnimSpriteGfx_Swipe, 0x0a00, ANIM_TAG_SWIPE},
- {gBattleAnimSpriteGfx_Roots, 0x0800, ANIM_TAG_ROOTS},
- {gBattleAnimSpriteGfx_ItemBag, 0x0200, ANIM_TAG_ITEM_BAG},
- {gBattleAnimSpriteGfx_JaggedMusicNote, 0x0400, ANIM_TAG_JAGGED_MUSIC_NOTE},
- {gBattleAnimSpriteGfx_Pokeball, 0x0080, ANIM_TAG_POKEBALL},
- {gBattleAnimSpriteGfx_Spotlight, 0x0800, ANIM_TAG_SPOTLIGHT},
- {gBattleAnimSpriteGfx_LetterZ, 0x0200, ANIM_TAG_LETTER_Z},
- {gBattleAnimSpriteGfx_RapidSpin, 0x0300, ANIM_TAG_RAPID_SPIN},
- {gBattleAnimSpriteGfx_TriAttackTriangle, 0x0800, ANIM_TAG_TRI_ATTACK_TRIANGLE},
- {gBattleAnimSpriteGfx_WispOrb, 0x0380, ANIM_TAG_WISP_ORB},
- {gBattleAnimSpriteGfx_WispFire, 0x0800, ANIM_TAG_WISP_FIRE},
- {gBattleAnimSpriteGfx_GoldStars, 0x00c0, ANIM_TAG_GOLD_STARS},
- {gBattleAnimSpriteGfx_EclipsingOrb, 0x0800, ANIM_TAG_ECLIPSING_ORB},
- {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_GRAY_ORB},
- {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_BLUE_ORB},
- {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_RED_ORB_2},
- {gBattleAnimSpriteGfx_PinkPetal, 0x0080, ANIM_TAG_PINK_PETAL},
- {gBattleAnimSpriteGfx_PainSplit, 0x0180, ANIM_TAG_PAIN_SPLIT},
- {gBattleAnimSpriteGfx_Confetti, 0x0180, ANIM_TAG_CONFETTI},
- {gBattleAnimSpriteGfx_GreenStar, 0x0200, ANIM_TAG_GREEN_STAR},
- {gBattleAnimSpriteGfx_PinkCloud, 0x0200, ANIM_TAG_PINK_CLOUD},
- {gBattleAnimSpriteGfx_SweatDrop, 0x0020, ANIM_TAG_SWEAT_DROP},
- {gBattleAnimSpriteGfx_GuardRing, 0x0400, ANIM_TAG_GUARD_RING},
- {gBattleAnimSpriteGfx_PurpleScratch, 0x0600, ANIM_TAG_PURPLE_SCRATCH},
- {gBattleAnimSpriteGfx_PurpleSwipe, 0x1000, ANIM_TAG_PURPLE_SWIPE},
- {gBattleAnimSpriteGfx_TagHand, 0x0400, ANIM_TAG_TAG_HAND},
- {gBattleAnimSpriteGfx_SmallRedEye, 0x0020, ANIM_TAG_SMALL_RED_EYE},
- {gBattleAnimSpriteGfx_HollowOrb, 0x0080, ANIM_TAG_HOLLOW_ORB},
- {gBattleAnimSpriteGfx_XSign, 0x0800, ANIM_TAG_X_SIGN},
- {gBattleAnimSpriteGfx_BluegreenOrb, 0x0080, ANIM_TAG_BLUEGREEN_ORB},
- {gBattleAnimSpriteGfx_PawPrint, 0x0200, ANIM_TAG_PAW_PRINT},
- {gBattleAnimSpriteGfx_PurpleFlame, 0x0400, ANIM_TAG_PURPLE_FLAME},
- {gBattleAnimSpriteGfx_RedBall, 0x0200, ANIM_TAG_RED_BALL},
- {gBattleAnimSpriteGfx_SmellingsaltEffect, 0x0200, ANIM_TAG_SMELLINGSALT_EFFECT},
- {gBattleAnimSpriteGfx_Meteor, 0x0800, ANIM_TAG_METEOR},
- {gBattleAnimSpriteGfx_FlatRock, 0x0280, ANIM_TAG_FLAT_ROCK},
- {gBattleAnimSpriteGfx_MagnifyingGlass, 0x0200, ANIM_TAG_MAGNIFYING_GLASS},
- {gBattleAnimSpriteGfx_WaterOrb, 0x0200, ANIM_TAG_BROWN_ORB},
- {gBattleAnimSpriteGfx_MetalSoundWaves, 0x0400, ANIM_TAG_METAL_SOUND_WAVES},
- {gBattleAnimSpriteGfx_FlyingDirt, 0x0200, ANIM_TAG_FLYING_DIRT},
- {gBattleAnimSpriteGfx_IcicleSpear, 0x0200, ANIM_TAG_ICICLE_SPEAR},
- {gBattleAnimSpriteGfx_Hail, 0x0080, ANIM_TAG_HAIL},
- {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_RED_ORB},
- {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_GREEN_ORB},
- {gBattleAnimSpriteGfx_GreenSpike, 0x0080, ANIM_TAG_GREEN_SPIKE},
- {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT},
- {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_BLUE_ORB},
- {gBattleAnimSpriteGfx_Pokeblock, 0x0080, ANIM_TAG_POKEBLOCK},
- {gBattleAnimSpriteGfx_WhiteFeather, 0x0400, ANIM_TAG_WHITE_FEATHER},
- {gBattleAnimSpriteGfx_Sparkle6, 0x0080, ANIM_TAG_SPARKLE_6},
- {gBattleAnimSpriteGfx_Splash, 0x0800, ANIM_TAG_SPLASH},
- {gBattleAnimSpriteGfx_SweatBead, 0x0020, ANIM_TAG_SWEAT_BEAD},
- {gBattleAnimSpriteGfx_Gem1, 0x0800, ANIM_TAG_GEM_1},
- {gBattleAnimSpriteGfx_Gem2, 0x0800, ANIM_TAG_GEM_2},
- {gBattleAnimSpriteGfx_Gem3, 0x0800, ANIM_TAG_GEM_3},
- {gBattleAnimSpriteGfx_SlamHit2, 0x1000, ANIM_TAG_SLAM_HIT_2},
- {gBattleAnimSpriteGfx_Recycle, 0x0800, ANIM_TAG_RECYCLE},
- {gBattleAnimSpriteGfx_RedParticles, 0x00a0, ANIM_TAG_RED_PARTICLES},
- {gBattleAnimSpriteGfx_Protect, 0x0800, ANIM_TAG_PROTECT},
- {gBattleAnimSpriteGfx_DirtMound, 0x0200, ANIM_TAG_DIRT_MOUND},
- {gBattleAnimSpriteGfx_Shock3, 0x0600, ANIM_TAG_SHOCK_3},
- {gBattleAnimSpriteGfx_WeatherBall, 0x0200, ANIM_TAG_WEATHER_BALL},
- {gBattleAnimSpriteGfx_Bird, 0x0800, ANIM_TAG_BIRD},
- {gBattleAnimSpriteGfx_CrossImpact, 0x0200, ANIM_TAG_CROSS_IMPACT},
- {gBattleAnimSpriteGfx_Slash, 0x0800, ANIM_TAG_SLASH_2},
- {gBattleAnimSpriteGfx_SlamHit, 0x1000, ANIM_TAG_WHIP_HIT},
- {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_BLUE_RING_2},
-};
-
-const struct CompressedSpritePalette gBattleAnimPaletteTable[] =
-{
- {gBattleAnimSpritePal_Bone, ANIM_TAG_BONE},
- {gBattleAnimSpritePal_Spark, ANIM_TAG_SPARK},
- {gBattleAnimSpritePal_Pencil, ANIM_TAG_PENCIL},
- {gBattleAnimSpritePal_AirWave, ANIM_TAG_AIR_WAVE},
- {gBattleAnimSpritePal_Orb, ANIM_TAG_ORB},
- {gBattleAnimSpritePal_Sword, ANIM_TAG_SWORD},
- {gBattleAnimSpritePal_Seed, ANIM_TAG_SEED},
- {gBattleAnimSpritePal_Explosion6, ANIM_TAG_EXPLOSION_6},
- {gBattleAnimSpritePal_PinkOrb, ANIM_TAG_PINK_ORB},
- {gBattleAnimSpritePal_Gust, ANIM_TAG_GUST},
- {gBattleAnimSpritePal_IceCube, ANIM_TAG_ICE_CUBE},
- {gBattleAnimSpritePal_Spark2, ANIM_TAG_SPARK_2},
- {gBattleAnimSpritePal_Orange, ANIM_TAG_ORANGE},
- {gBattleAnimSpritePal_YellowBall, ANIM_TAG_YELLOW_BALL},
- {gBattleAnimSpritePal_LockOn, ANIM_TAG_LOCK_ON},
- {gBattleAnimSpritePal_TiedBag, ANIM_TAG_TIED_BAG},
- {gBattleAnimSpritePal_BlackSmoke, ANIM_TAG_BLACK_SMOKE},
- {gBattleAnimSpritePal_BlackSmoke, ANIM_TAG_BLACK_BALL},
- {gBattleAnimSpritePal_Conversion, ANIM_TAG_CONVERSION},
- {gBattleAnimSpritePal_Glass, ANIM_TAG_GLASS},
- {gBattleAnimSpritePal_HornHit, ANIM_TAG_HORN_HIT},
- {gBattleAnimSpritePal_Hit, ANIM_TAG_HIT},
- {gBattleAnimSpritePal_Hit2, ANIM_TAG_HIT_2},
- {gBattleAnimSpritePal_BlueShards, ANIM_TAG_BLUE_SHARDS},
- {gBattleAnimSpritePal_ClosingEye, ANIM_TAG_CLOSING_EYE},
- {gBattleAnimSpritePal_WavingHand, ANIM_TAG_WAVING_HAND},
- {gBattleAnimSpritePal_HitDuplicate, ANIM_TAG_HIT_DUPLICATE},
- {gBattleAnimSpritePal_Leer, ANIM_TAG_LEER},
- {gBattleAnimSpritePal_BlueBurst, ANIM_TAG_BLUE_BURST},
- {gBattleAnimSpritePal_SmallEmber, ANIM_TAG_SMALL_EMBER},
- {gBattleAnimSpritePal_GraySmoke, ANIM_TAG_GRAY_SMOKE},
- {gBattleAnimSpritePal_BlueStar, ANIM_TAG_BLUE_STAR},
- {gBattleAnimSpritePal_BubbleBurst, ANIM_TAG_BUBBLE_BURST},
- {gBattleAnimSpritePal_Fire, ANIM_TAG_FIRE},
- {gBattleAnimSpritePal_Fire, ANIM_TAG_SPINNING_FIRE},
- {gBattleAnimSpritePal_Fire, ANIM_TAG_FIRE_PLUME},
- {gBattleAnimSpritePal_Lightning2, ANIM_TAG_LIGHTNING_2},
- {gBattleAnimSpritePal_Lightning2, ANIM_TAG_LIGHTNING},
- {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_CLAW_SLASH_2},
- {gBattleAnimSpritePal_ClawSlash, ANIM_TAG_CLAW_SLASH},
- {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_SCRATCH_3},
- {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_SCRATCH_2},
- {gBattleAnimSpritePal_BubbleBurst2, ANIM_TAG_BUBBLE_BURST_2},
- {gBattleAnimSpritePal_IceChunk, ANIM_TAG_ICE_CHUNK},
- {gBattleAnimSpritePal_Glass2, ANIM_TAG_GLASS_2},
- {gBattleAnimSpritePal_PinkHeart2, ANIM_TAG_PINK_HEART_2},
- {gBattleAnimSpritePal_SapDrip, ANIM_TAG_SAP_DRIP},
- {gBattleAnimSpritePal_SapDrip2, ANIM_TAG_SAP_DRIP},
- {gBattleAnimSpritePal_Sparkle1, ANIM_TAG_SPARKLE_1},
- {gBattleAnimSpritePal_Sparkle2, ANIM_TAG_SPARKLE_2},
- {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_HUMANOID_FOOT},
- {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_MONSTER_FOOT},
- {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_HUMANOID_HAND},
- {gBattleAnimSpritePal_HitDuplicate, ANIM_TAG_NOISE_LINE},
- {gBattleAnimSpritePal_YellowUnk, ANIM_TAG_YELLOW_UNK},
- {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_RED_FIST},
- {gBattleAnimSpritePal_SlamHit, ANIM_TAG_SLAM_HIT},
- {gBattleAnimSpritePal_Ring, ANIM_TAG_RING},
- {gBattleAnimSpritePal_Rocks, ANIM_TAG_ROCKS},
- {gBattleAnimSpritePal_Z, ANIM_TAG_Z},
- {gBattleAnimSpritePal_YellowUnk2, ANIM_TAG_YELLOW_UNK_2},
- {gBattleAnimSpritePal_AirSlash, ANIM_TAG_AIR_SLASH},
- {gBattleAnimSpritePal_SpinningGreenOrbs, ANIM_TAG_SPINNING_GREEN_ORBS},
- {gBattleAnimSpritePal_Leaf, ANIM_TAG_LEAF},
- {gBattleAnimSpritePal_Finger, ANIM_TAG_FINGER},
- {gBattleAnimSpritePal_PoisonPowder, ANIM_TAG_POISON_POWDER},
- {gBattleAnimSpritePal_BrownTriangle, ANIM_TAG_BROWN_TRIANGLE},
- {gBattleAnimSpritePal_SleepPowder, ANIM_TAG_SLEEP_POWDER},
- {gBattleAnimSpritePal_StunSpore, ANIM_TAG_STUN_SPORE},
- {gBattleAnimSpritePal_PoisonPowder, ANIM_TAG_POWDER},
- {gBattleAnimSpritePal_Sparkle3, ANIM_TAG_SPARKLE_3},
- {gBattleAnimSpritePal_Sparkle3, ANIM_TAG_SPARKLE_4},
- {gBattleAnimSpritePal_MusicNotes, ANIM_TAG_MUSIC_NOTES},
- {gBattleAnimSpritePal_Duck, ANIM_TAG_DUCK},
- {gBattleAnimSpritePal_MudSand, ANIM_TAG_MUD_SAND},
- {gBattleAnimSpritePal_Alert, ANIM_TAG_ALERT},
- {gBattleAnimSpritePal_BlueFlames, ANIM_TAG_BLUE_FLAMES},
- {gBattleAnimSpritePal_BlueFlames, ANIM_TAG_BLUE_FLAMES_2},
- {gBattleAnimSpritePal_Shock4, ANIM_TAG_SHOCK_4},
- {gBattleAnimSpritePal_Shock4, ANIM_TAG_SHOCK},
- {gBattleAnimSpritePal_Bell2, ANIM_TAG_BELL_2},
- {gBattleAnimSpritePal_PinkGlove, ANIM_TAG_PINK_GLOVE},
- {gBattleAnimSpritePal_BlueLines, ANIM_TAG_BLUE_LINES},
- {gBattleAnimSpritePal_Impact3, ANIM_TAG_IMPACT_3},
- {gBattleAnimSpritePal_Impact2, ANIM_TAG_IMPACT_2},
- {gBattleAnimSpritePal_Reticle, ANIM_TAG_RETICLE},
- {gBattleAnimSpritePal_Breath, ANIM_TAG_BREATH},
- {gBattleAnimSpritePal_Anger, ANIM_TAG_ANGER},
- {gBattleAnimSpritePal_Snowball, ANIM_TAG_SNOWBALL},
- {gBattleAnimSpritePal_Vine, ANIM_TAG_VINE},
- {gBattleAnimSpritePal_Sword2, ANIM_TAG_SWORD_2},
- {gBattleAnimSpritePal_Clapping, ANIM_TAG_CLAPPING},
- {gBattleAnimSpritePal_RedTube, ANIM_TAG_RED_TUBE},
- {gBattleAnimSpritePal_Amnesia, ANIM_TAG_AMNESIA},
- {gBattleAnimSpritePal_String2, ANIM_TAG_STRING_2},
- {gBattleAnimSpritePal_Pencil2, ANIM_TAG_PENCIL_2},
- {gBattleAnimSpritePal_Petal, ANIM_TAG_PETAL},
- {gBattleAnimSpritePal_BentSpoon, ANIM_TAG_BENT_SPOON},
- {gBattleAnimSpritePal_String2, ANIM_TAG_WEB},
- {gBattleAnimSpritePal_MilkBottle, ANIM_TAG_MILK_BOTTLE},
- {gBattleAnimSpritePal_Coin, ANIM_TAG_COIN},
- {gBattleAnimSpritePal_CrackedEgg, ANIM_TAG_CRACKED_EGG},
- {gBattleAnimSpritePal_CrackedEgg, ANIM_TAG_HATCHED_EGG},
- {gBattleAnimSpritePal_FreshEgg, ANIM_TAG_FRESH_EGG},
- {gBattleAnimSpritePal_Fangs, ANIM_TAG_FANGS},
- {gBattleAnimSpritePal_Explosion2, ANIM_TAG_EXPLOSION_2},
- {gBattleAnimSpritePal_Explosion2, ANIM_TAG_EXPLOSION_3},
- {gBattleAnimSpritePal_WaterDroplet, ANIM_TAG_WATER_DROPLET},
- {gBattleAnimSpritePal_WaterDroplet, ANIM_TAG_WATER_DROPLET_2},
- {gBattleAnimSpritePal_Seed2, ANIM_TAG_SEED_2},
- {gBattleAnimSpritePal_Seed2, ANIM_TAG_SPROUT},
- {gBattleAnimSpritePal_RedWand, ANIM_TAG_RED_WAND},
- {gBattleAnimSpritePal_PurpleGreenUnk, ANIM_TAG_PURPLE_GREEN_UNK},
- {gBattleAnimSpritePal_WaterColumn, ANIM_TAG_WATER_COLUMN},
- {gBattleAnimSpritePal_MudUnk, ANIM_TAG_MUD_UNK},
- {gBattleAnimSpritePal_RainDrops, ANIM_TAG_RAIN_DROPS},
- {gBattleAnimSpritePal_FurySwipes, ANIM_TAG_FURY_SWIPES},
- {gBattleAnimSpritePal_Vine2, ANIM_TAG_VINE_2},
- {gBattleAnimSpritePal_Teeth, ANIM_TAG_TEETH},
- {gBattleAnimSpritePal_Bone2, ANIM_TAG_BONE_2},
- {gBattleAnimSpritePal_WhiteBag, ANIM_TAG_WHITE_BAG},
- {gBattleAnimSpritePal_Unknown, ANIM_TAG_UNKNOWN},
- {gBattleAnimSpritePal_PurpleCoral, ANIM_TAG_PURPLE_CORAL},
- {gBattleAnimSpritePal_PurpleCoral, ANIM_TAG_PURPLE_DROPLET},
- {gBattleAnimSpritePal_Shock2, ANIM_TAG_SHOCK_2},
- {gBattleAnimSpritePal_ClosingEye2, ANIM_TAG_CLOSING_EYE_2},
- {gBattleAnimSpritePal_MetalBall, ANIM_TAG_METAL_BALL},
- {gBattleAnimSpritePal_MonsterDoll, ANIM_TAG_MONSTER_DOLL},
- {gBattleAnimSpritePal_Whirlwind, ANIM_TAG_WHIRLWIND},
- {gBattleAnimSpritePal_Whirlwind, ANIM_TAG_WHIRLWIND_2},
- {gBattleAnimSpritePal_Explosion4, ANIM_TAG_EXPLOSION_4},
- {gBattleAnimSpritePal_Explosion4, ANIM_TAG_EXPLOSION_5},
- {gBattleAnimSpritePal_Tongue, ANIM_TAG_TONGUE},
- {gBattleAnimSpritePal_Smoke, ANIM_TAG_SMOKE},
- {gBattleAnimSpritePal_Smoke, ANIM_TAG_SMOKE_2},
- {gBattleAnimSpritePal_Impact, ANIM_TAG_IMPACT},
- {gBattleAnimSpritePal_CircleImpact, ANIM_TAG_CIRCLE_IMPACT},
- {gBattleAnimSpritePal_Impact, ANIM_TAG_SCRATCH},
- {gBattleAnimSpritePal_Impact, ANIM_TAG_CUT},
- {gBattleAnimSpritePal_SharpTeeth, ANIM_TAG_SHARP_TEETH},
- {gBattleAnimSpritePal_RainbowRings, ANIM_TAG_RAINBOW_RINGS},
- {gBattleAnimSpritePal_IceCrystals, ANIM_TAG_ICE_CRYSTALS},
- {gBattleAnimSpritePal_IceCrystals, ANIM_TAG_ICE_SPIKES},
- {gBattleAnimSpritePal_HandsAndFeet, ANIM_TAG_HANDS_AND_FEET},
- {gBattleAnimSpritePal_MistCloud, ANIM_TAG_MIST_CLOUD},
- {gBattleAnimSpritePal_SharpTeeth, ANIM_TAG_CLAMP},
- {gBattleAnimSpritePal_RainDrops, ANIM_TAG_BUBBLE},
- {gBattleAnimSpritePal_Orbs, ANIM_TAG_ORBS},
- {gBattleAnimSpritePal_WaterImpact, ANIM_TAG_WATER_IMPACT},
- {gBattleAnimSpritePal_WaterImpact, ANIM_TAG_WATER_ORB},
- {gBattleAnimSpritePal_PoisonBubble, ANIM_TAG_POISON_BUBBLE},
- {gBattleAnimSpritePal_PoisonBubble, ANIM_TAG_TOXIC_BUBBLE},
- {gBattleAnimSpritePal_Spikes, ANIM_TAG_SPIKES},
- {gBattleAnimSpritePal_HornHit2, ANIM_TAG_HORN_HIT_2},
- {gBattleAnimSpritePal_AirWave2, ANIM_TAG_AIR_WAVE_2},
- {gBattleAnimSpritePal_SmallBubbles, ANIM_TAG_SMALL_BUBBLES},
- {gBattleAnimSpritePal_RoundShadow, ANIM_TAG_ROUND_SHADOW},
- {gBattleAnimSpritePal_Sunlight, ANIM_TAG_SUNLIGHT},
- {gBattleAnimSpritePal_Spore, ANIM_TAG_SPORE},
- {gBattleAnimSpritePal_Flower, ANIM_TAG_FLOWER},
- {gBattleAnimSpritePal_RazorLeaf, ANIM_TAG_RAZOR_LEAF},
- {gBattleAnimSpritePal_Needle, ANIM_TAG_NEEDLE},
- {gBattleAnimSpritePal_WhirlwindLines, ANIM_TAG_WHIRLWIND_LINES},
- {gBattleAnimSpritePal_GoldRing, ANIM_TAG_GOLD_RING},
- {gBattleAnimSpritePal_PurpleRing, ANIM_TAG_PURPLE_RING},
- {gBattleAnimSpritePal_BlueRing, ANIM_TAG_BLUE_RING},
- {gBattleAnimSpritePal_GreenLightWall, ANIM_TAG_GREEN_LIGHT_WALL},
- {gBattleAnimSpritePal_BlueLightWall, ANIM_TAG_BLUE_LIGHT_WALL},
- {gBattleAnimSpritePal_RedLightWall, ANIM_TAG_RED_LIGHT_WALL},
- {gBattleAnimSpritePal_GrayLightWall, ANIM_TAG_GRAY_LIGHT_WALL},
- {gBattleAnimSpritePal_OrangeLightWall, ANIM_TAG_ORANGE_LIGHT_WALL},
- {gBattleAnimSpritePal_BlackBall2, ANIM_TAG_BLACK_BALL_2},
- {gBattleAnimSpritePal_PurpleGasCloud, ANIM_TAG_PURPLE_GAS_CLOUD},
- {gBattleAnimSpritePal_Spark, ANIM_TAG_SPARK_H},
- {gBattleAnimSpritePal_YellowStar, ANIM_TAG_YELLOW_STAR},
- {gBattleAnimSpritePal_LargeFreshEgg, ANIM_TAG_LARGE_FRESH_EGG},
- {gBattleAnimSpritePal_ShadowBall, ANIM_TAG_SHADOW_BALL},
- {gBattleAnimSpritePal_Lick, ANIM_TAG_LICK},
- {gBattleAnimSpritePal_VoidLines, ANIM_TAG_VOID_LINES},
- {gBattleAnimSpritePal_String, ANIM_TAG_STRING},
- {gBattleAnimSpritePal_String, ANIM_TAG_WEB_THREAD},
- {gBattleAnimSpritePal_String, ANIM_TAG_SPIDER_WEB},
- {gBattleAnimSpritePal_Lightbulb, ANIM_TAG_LIGHTBULB},
- {gBattleAnimSpritePal_Slash, ANIM_TAG_SLASH},
- {gBattleAnimSpritePal_FocusEnergy, ANIM_TAG_FOCUS_ENERGY},
- {gBattleAnimSpritePal_SphereToCube, ANIM_TAG_SPHERE_TO_CUBE},
- {gBattleAnimSpritePal_Tendrils, ANIM_TAG_TENDRILS},
- {gBattleAnimSpritePal_Eye, ANIM_TAG_EYE},
- {gBattleAnimSpritePal_WhiteShadow, ANIM_TAG_WHITE_SHADOW},
- {gBattleAnimSpritePal_TealAlert, ANIM_TAG_TEAL_ALERT},
- {gBattleAnimSpritePal_OpeningEye, ANIM_TAG_OPENING_EYE},
- {gBattleAnimSpritePal_RoundWhiteHalo, ANIM_TAG_ROUND_WHITE_HALO},
- {gBattleAnimSpritePal_FangAttack, ANIM_TAG_FANG_ATTACK},
- {gBattleAnimSpritePal_PurpleHandOutline, ANIM_TAG_PURPLE_HAND_OUTLINE},
- {gBattleAnimSpritePal_Moon, ANIM_TAG_MOON},
- {gBattleAnimSpritePal_GreenSparkle, ANIM_TAG_GREEN_SPARKLE},
- {gBattleAnimSpritePal_Spiral, ANIM_TAG_SPIRAL},
- {gBattleAnimSpritePal_SnoreZ, ANIM_TAG_SNORE_Z},
- {gBattleAnimSpritePal_Explosion, ANIM_TAG_EXPLOSION},
- {gBattleAnimSpritePal_Nail, ANIM_TAG_NAIL},
- {gBattleAnimSpritePal_GhostlySpirit, ANIM_TAG_GHOSTLY_SPIRIT},
- {gBattleAnimSpritePal_WarmRock, ANIM_TAG_WARM_ROCK},
- {gBattleAnimSpritePal_BreakingEgg, ANIM_TAG_BREAKING_EGG},
- {gBattleAnimSpritePal_ThinRing, ANIM_TAG_THIN_RING},
- {gBattleAnimSpritePal_PunchImpact, ANIM_TAG_PUNCH_IMPACT},
- {gBattleAnimSpritePal_Bell, ANIM_TAG_BELL},
- {gBattleAnimSpritePal_MusicNotes2, ANIM_TAG_MUSIC_NOTES_2},
- {gBattleAnimSpritePal_SpeedDust, ANIM_TAG_SPEED_DUST},
- {gBattleAnimSpritePal_BlueLightWall, ANIM_TAG_TORN_METAL},
- {gBattleAnimSpritePal_ThoughtBubble, ANIM_TAG_THOUGHT_BUBBLE},
- {gBattleAnimSpritePal_MagentaHeart, ANIM_TAG_MAGENTA_HEART},
- {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_ELECTRIC_ORBS},
- {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_CIRCLE_OF_LIGHT},
- {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_ELECTRICITY},
- {gBattleAnimSpritePal_Finger, ANIM_TAG_FINGER_2},
- {gBattleAnimSpritePal_MovementWaves, ANIM_TAG_MOVEMENT_WAVES},
- {gBattleAnimSpritePal_RedHeart, ANIM_TAG_RED_HEART},
- {gBattleAnimSpritePal_RedOrb, ANIM_TAG_RED_ORB},
- {gBattleAnimSpritePal_EyeSparkle, ANIM_TAG_EYE_SPARKLE},
- {gBattleAnimSpritePal_PinkHeart, ANIM_TAG_PINK_HEART},
- {gBattleAnimSpritePal_Angel, ANIM_TAG_ANGEL},
- {gBattleAnimSpritePal_Devil, ANIM_TAG_DEVIL},
- {gBattleAnimSpritePal_Swipe, ANIM_TAG_SWIPE},
- {gBattleAnimSpritePal_Roots, ANIM_TAG_ROOTS},
- {gBattleAnimSpritePal_ItemBag, ANIM_TAG_ITEM_BAG},
- {gBattleAnimSpritePal_JaggedMusicNote, ANIM_TAG_JAGGED_MUSIC_NOTE},
- {gBattleAnimSpritePal_Pokeball, ANIM_TAG_POKEBALL},
- {gBattleAnimSpritePal_Pokeball, ANIM_TAG_SPOTLIGHT},
- {gBattleAnimSpritePal_LetterZ, ANIM_TAG_LETTER_Z},
- {gBattleAnimSpritePal_RapidSpin, ANIM_TAG_RAPID_SPIN},
- {gBattleAnimSpritePal_TriAttackTriangle, ANIM_TAG_TRI_ATTACK_TRIANGLE},
- {gBattleAnimSpritePal_WispOrb, ANIM_TAG_WISP_ORB},
- {gBattleAnimSpritePal_WispOrb, ANIM_TAG_WISP_FIRE},
- {gBattleAnimSpritePal_GoldStars, ANIM_TAG_GOLD_STARS},
- {gBattleAnimSpritePal_EclipsingOrb, ANIM_TAG_ECLIPSING_ORB},
- {gBattleAnimSpritePal_GrayOrb, ANIM_TAG_GRAY_ORB},
- {gBattleAnimSpritePal_BlueOrb, ANIM_TAG_BLUE_ORB},
- {gBattleAnimSpritePal_RedOrb2, ANIM_TAG_RED_ORB_2},
- {gBattleAnimSpritePal_PinkPetal, ANIM_TAG_PINK_PETAL},
- {gBattleAnimSpritePal_PainSplit, ANIM_TAG_PAIN_SPLIT},
- {gBattleAnimSpritePal_Confetti, ANIM_TAG_CONFETTI},
- {gBattleAnimSpritePal_GreenStar, ANIM_TAG_GREEN_STAR},
- {gBattleAnimSpritePal_PinkCloud, ANIM_TAG_PINK_CLOUD},
- {gBattleAnimSpritePal_SweatDrop, ANIM_TAG_SWEAT_DROP},
- {gBattleAnimSpritePal_GuardRing, ANIM_TAG_GUARD_RING},
- {gBattleAnimSpritePal_PurpleScratch, ANIM_TAG_PURPLE_SCRATCH},
- {gBattleAnimSpritePal_PurpleScratch, ANIM_TAG_PURPLE_SWIPE},
- {gBattleAnimSpritePal_Finger, ANIM_TAG_TAG_HAND},
- {gBattleAnimSpritePal_SmallRedEye, ANIM_TAG_SMALL_RED_EYE},
- {gBattleAnimSpritePal_HollowOrb, ANIM_TAG_HOLLOW_ORB},
- {gBattleAnimSpritePal_HollowOrb, ANIM_TAG_X_SIGN},
- {gBattleAnimSpritePal_BluegreenOrb, ANIM_TAG_BLUEGREEN_ORB},
- {gBattleAnimSpritePal_PawPrint, ANIM_TAG_PAW_PRINT},
- {gBattleAnimSpritePal_PurpleFlame, ANIM_TAG_PURPLE_FLAME},
- {gBattleAnimSpritePal_RedBall, ANIM_TAG_RED_BALL},
- {gBattleAnimSpritePal_SmellingsaltEffect, ANIM_TAG_SMELLINGSALT_EFFECT},
- {gBattleAnimSpritePal_Meteor, ANIM_TAG_METEOR},
- {gBattleAnimSpritePal_FlatRock, ANIM_TAG_FLAT_ROCK},
- {gBattleAnimSpritePal_MagnifyingGlass, ANIM_TAG_MAGNIFYING_GLASS},
- {gBattleAnimSpritePal_BrownOrb, ANIM_TAG_BROWN_ORB},
- {gBattleAnimSpritePal_MetalSoundWaves, ANIM_TAG_METAL_SOUND_WAVES},
- {gBattleAnimSpritePal_FlyingDirt, ANIM_TAG_FLYING_DIRT},
- {gBattleAnimSpritePal_IcicleSpear, ANIM_TAG_ICICLE_SPEAR},
- {gBattleAnimSpritePal_Hail, ANIM_TAG_HAIL},
- {gBattleAnimSpritePal_GlowyRedOrb, ANIM_TAG_GLOWY_RED_ORB},
- {gBattleAnimSpritePal_GlowyGreenOrb, ANIM_TAG_GLOWY_GREEN_ORB},
- {gBattleAnimSpritePal_GreenSpike, ANIM_TAG_GREEN_SPIKE},
- {gBattleAnimSpritePal_WhiteCircleOfLight, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT},
- {gBattleAnimSpritePal_GlowyBlueOrb, ANIM_TAG_GLOWY_BLUE_ORB},
- {gBattleAnimSpritePal_Pokeblock, ANIM_TAG_POKEBLOCK},
- {gBattleAnimSpritePal_WhiteFeather, ANIM_TAG_WHITE_FEATHER},
- {gBattleAnimSpritePal_Sparkle6, ANIM_TAG_SPARKLE_6},
- {gBattleAnimSpritePal_Splash, ANIM_TAG_SPLASH},
- {gBattleAnimSpritePal_Splash, ANIM_TAG_SWEAT_BEAD},
- {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_1},
- {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_2},
- {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_3},
- {gBattleAnimSpritePal_SlamHit2, ANIM_TAG_SLAM_HIT_2},
- {gBattleAnimSpritePal_Recycle, ANIM_TAG_RECYCLE},
- {gBattleAnimSpritePal_RedParticles, ANIM_TAG_RED_PARTICLES},
- {gBattleAnimSpritePal_Protect, ANIM_TAG_PROTECT},
- {gBattleAnimSpritePal_DirtMound, ANIM_TAG_DIRT_MOUND},
- {gBattleAnimSpritePal_Shock3, ANIM_TAG_SHOCK_3},
- {gBattleAnimSpritePal_WeatherBall, ANIM_TAG_WEATHER_BALL},
- {gBattleAnimSpritePal_Bird, ANIM_TAG_BIRD},
- {gBattleAnimSpritePal_CrossImpact, ANIM_TAG_CROSS_IMPACT},
- {gBattleAnimSpritePal_Slash2, ANIM_TAG_SLASH_2},
- {gBattleAnimSpritePal_WhipHit, ANIM_TAG_WHIP_HIT},
- {gBattleAnimSpritePal_BlueRing2, ANIM_TAG_BLUE_RING_2},
-};
-
-const struct BattleAnimBackground gBattleAnimBackgroundTable[] =
-{
- [BG_NONE] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark},
- [BG_DARK] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark},
- [BG_GHOST] = {gBattleAnimBgImage_Ghost, gBattleAnimBgPalette_Ghost, gBattleAnimBgTilemap_Ghost},
- [BG_PSYCHIC] = {gBattleAnimBgImage_Psychic, gBattleAnimBgPalette_Psychic, gBattleAnimBgTilemap_Psychic},
- [BG_IMPACT_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactOpponent},
- [BG_IMPACT_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactPlayer},
- [BG_IMPACT_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactContests},
- [BG_DRILL] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_Drill},
- [BG_DRILL_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_DrillContests},
- [BG_HIGHSPEED_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedOpponent},
- [BG_HIGHSPEED_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedPlayer},
- [BG_THUNDER] = {gBattleAnimBgImage_Thunder, gBattleAnimBgPalette_Thunder, gBattleAnimBgTilemap_Thunder},
- [BG_GUILLOTINE_OPPONENT] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineOpponent},
- [BG_GUILLOTINE_PLAYER] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotinePlayer},
- [BG_GUILLOTINE_CONTESTS] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineContests},
- [BG_ICE] = {gBattleAnimBgImage_Ice, gBattleAnimBgPalette_Ice, gBattleAnimBgTilemap_Ice},
- [BG_COSMIC] = {gBattleAnimBgImage_Cosmic, gBattleAnimBgPalette_Cosmic, gBattleAnimBgTilemap_Cosmic},
- [BG_IN_AIR] = {gBattleAnimBgImage_InAir, gBattleAnimBgPalette_InAir, gBattleAnimBgTilemap_InAir},
- [BG_SKY] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_Drill},
- [BG_SKY_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_DrillContests},
- [BG_AURORA] = {gBattleAnimBgImage_Aurora, gBattleAnimBgPalette_Aurora, gBattleAnimBgTilemap_Aurora},
- [BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure},
- [BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent},
- [BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer},
- [BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent},
- [BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer},
- [BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests},
-};
+#include "data/battle_anim.h"
static void (* const sScriptCmdTable[])(void) =
{
- ScriptCmd_loadspritegfx,
- ScriptCmd_unloadspritegfx,
- ScriptCmd_createsprite,
- ScriptCmd_createvisualtask,
- ScriptCmd_delay,
- ScriptCmd_waitforvisualfinish,
- ScriptCmd_nop,
- ScriptCmd_nop2,
- ScriptCmd_end,
- ScriptCmd_playse,
- ScriptCmd_monbg,
- ScriptCmd_clearmonbg,
- ScriptCmd_setalpha,
- ScriptCmd_blendoff,
- ScriptCmd_call,
- ScriptCmd_return,
- ScriptCmd_setarg,
- ScriptCmd_choosetwoturnanim,
- ScriptCmd_jumpifmoveturn,
- ScriptCmd_goto,
- ScriptCmd_fadetobg,
- ScriptCmd_restorebg,
- ScriptCmd_waitbgfadeout,
- ScriptCmd_waitbgfadein,
- ScriptCmd_changebg,
- ScriptCmd_playsewithpan,
- ScriptCmd_setpan,
- ScriptCmd_panse,
- ScriptCmd_loopsewithpan,
- ScriptCmd_waitplaysewithpan,
- ScriptCmd_setbldcnt,
- ScriptCmd_createsoundtask,
- ScriptCmd_waitsound,
- ScriptCmd_jumpargeq,
- ScriptCmd_monbg_22,
- ScriptCmd_clearmonbg_23,
- ScriptCmd_jumpifcontest,
- ScriptCmd_fadetobgfromset,
- ScriptCmd_panse_adjustnone,
- ScriptCmd_panse_adjustall,
- ScriptCmd_monbgprio_28,
- ScriptCmd_monbgprio_29,
- ScriptCmd_monbgprio_2A,
- ScriptCmd_invisible,
- ScriptCmd_visible,
- ScriptCmd_doublebattle_2D,
- ScriptCmd_doublebattle_2E,
- ScriptCmd_stopsound
+ Cmd_loadspritegfx, // 0x00
+ Cmd_unloadspritegfx, // 0x01
+ Cmd_createsprite, // 0x02
+ Cmd_createvisualtask, // 0x03
+ Cmd_delay, // 0x04
+ Cmd_waitforvisualfinish, // 0x05
+ Cmd_nop, // 0x06
+ Cmd_nop2, // 0x07
+ Cmd_end, // 0x08
+ Cmd_playse, // 0x09
+ Cmd_monbg, // 0x0A
+ Cmd_clearmonbg, // 0x0B
+ Cmd_setalpha, // 0x0C
+ Cmd_blendoff, // 0x0D
+ Cmd_call, // 0x0E
+ Cmd_return, // 0x0F
+ Cmd_setarg, // 0x10
+ Cmd_choosetwoturnanim, // 0x11
+ Cmd_jumpifmoveturn, // 0x12
+ Cmd_goto, // 0x13
+ Cmd_fadetobg, // 0x14
+ Cmd_restorebg, // 0x15
+ Cmd_waitbgfadeout, // 0x16
+ Cmd_waitbgfadein, // 0x17
+ Cmd_changebg, // 0x18
+ Cmd_playsewithpan, // 0x19
+ Cmd_setpan, // 0x1A
+ Cmd_panse, // 0x1B
+ Cmd_loopsewithpan, // 0x1C
+ Cmd_waitplaysewithpan, // 0x1D
+ Cmd_setbldcnt, // 0x1E
+ Cmd_createsoundtask, // 0x1F
+ Cmd_waitsound, // 0x20
+ Cmd_jumpargeq, // 0x21
+ Cmd_monbg_static, // 0x22
+ Cmd_clearmonbg_static, // 0x23
+ Cmd_jumpifcontest, // 0x24
+ Cmd_fadetobgfromset, // 0x25
+ Cmd_panse_adjustnone, // 0x26
+ Cmd_panse_adjustall, // 0x27
+ Cmd_splitbgprio, // 0x28
+ Cmd_splitbgprio_all, // 0x29
+ Cmd_splitbgprio_foes, // 0x2A
+ Cmd_invisible, // 0x2B
+ Cmd_visible, // 0x2C
+ Cmd_teamattack_moveback, // 0x2D
+ Cmd_teamattack_movefwd, // 0x2E
+ Cmd_stopsound, // 0x2F
};
void ClearBattleAnimationVars(void)
@@ -1950,7 +331,7 @@ static void RunAnimScriptCommand(void)
} while (sAnimFramesToWait == 0 && gAnimScriptActive);
}
-static void ScriptCmd_loadspritegfx(void)
+static void Cmd_loadspritegfx(void)
{
u16 index;
@@ -1964,7 +345,7 @@ static void ScriptCmd_loadspritegfx(void)
gAnimScriptCallback = WaitAnimFrameCount;
}
-static void ScriptCmd_unloadspritegfx(void)
+static void Cmd_unloadspritegfx(void)
{
u16 index;
@@ -1976,7 +357,7 @@ static void ScriptCmd_unloadspritegfx(void)
ClearSpriteIndex(GET_TRUE_SPRITE_INDEX(index));
}
-static void ScriptCmd_createsprite(void)
+static void Cmd_createsprite(void)
{
s32 i;
const struct SpriteTemplate *template;
@@ -1999,11 +380,11 @@ static void ScriptCmd_createsprite(void)
sBattleAnimScriptPtr += 2;
}
- if (argVar & 0x80)
+ if (argVar & ANIMSPRITE_IS_TARGET)
{
- argVar ^= 0x80;
- if (argVar >= 0x40)
- argVar -= 0x40;
+ argVar ^= ANIMSPRITE_IS_TARGET;
+ if (argVar >= 64)
+ argVar -= 64;
else
argVar *= -1;
@@ -2011,8 +392,8 @@ static void ScriptCmd_createsprite(void)
}
else
{
- if (argVar >= 0x40)
- argVar -= 0x40;
+ if (argVar >= 64)
+ argVar -= 64;
else
argVar *= -1;
@@ -2030,7 +411,7 @@ static void ScriptCmd_createsprite(void)
gAnimVisualTaskCount++;
}
-static void ScriptCmd_createvisualtask(void)
+static void Cmd_createvisualtask(void)
{
TaskFunc taskFunc;
u8 taskPriority;
@@ -2060,7 +441,7 @@ static void ScriptCmd_createvisualtask(void)
gAnimVisualTaskCount++;
}
-static void ScriptCmd_delay(void)
+static void Cmd_delay(void)
{
sBattleAnimScriptPtr++;
sAnimFramesToWait = sBattleAnimScriptPtr[0];
@@ -2071,7 +452,7 @@ static void ScriptCmd_delay(void)
}
// Wait for visual tasks to finish.
-static void ScriptCmd_waitforvisualfinish(void)
+static void Cmd_waitforvisualfinish(void)
{
if (gAnimVisualTaskCount == 0)
{
@@ -2084,15 +465,15 @@ static void ScriptCmd_waitforvisualfinish(void)
}
}
-static void ScriptCmd_nop(void)
+static void Cmd_nop(void)
{
}
-static void ScriptCmd_nop2(void)
+static void Cmd_nop2(void)
{
}
-static void ScriptCmd_end(void)
+static void Cmd_end(void)
{
s32 i;
bool32 continuousAnim = FALSE;
@@ -2146,7 +527,7 @@ static void ScriptCmd_end(void)
}
}
-static void ScriptCmd_playse(void)
+static void Cmd_playse(void)
{
sBattleAnimScriptPtr++;
PlaySE(T1_READ_16(sBattleAnimScriptPtr));
@@ -2154,56 +535,60 @@ static void ScriptCmd_playse(void)
}
// These two tasks share context and similar task data
-// To differentiate them their task data is prefixed t1/t2
+// To differentiate them the task data for Task_UpdateMonBg is prefixed t2
-// Task data for sub_80A40F4
-#define t1_BattlerSpriteId data[0]
-#define t1_InBg2 data[1]
-#define t1_CREATE_ANOTHER_TASK 2
-#define t1_IS_SECONDMON_BG 3
+// Task data for Task_InitUpdateMonBg
+#define tBattlerId data[0]
+#define tInBg2 data[1]
+#define tActive data[2]
+#define tIsPartner data[3]
-// Task data for task_pA_ma0A_obj_to_bg_pal
-#define t2_BATTLER_SPRITE_ID 0
-#define t2_MON_IN_BG2 5
-#define t2_MONBG_BATTLER 6
+// Task data for Task_UpdateMonBg
+#define t2_SpriteId data[0]
+#define t2_SpriteX data[1]
+#define t2_SpriteY data[2]
+#define t2_BgX data[3]
+#define t2_BgY data[4]
+#define t2_InBg2 data[5]
+#define t2_BattlerId data[6]
-static void sub_80A40F4(u8 taskId)
+static void Task_InitUpdateMonBg(u8 taskId)
{
- u8 newTaskId;
+ u8 updateTaskId;
s16 *data = gTasks[taskId].data;
- u8 battlerSpriteId = gBattlerSpriteIds[t1_BattlerSpriteId];
+ u8 battlerSpriteId = gBattlerSpriteIds[tBattlerId];
gSprites[battlerSpriteId].invisible = TRUE;
- if (!data[t1_CREATE_ANOTHER_TASK])
+ if (!tActive)
{
DestroyAnimVisualTask(taskId);
return;
}
- newTaskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10);
- gTasks[newTaskId].data[t2_BATTLER_SPRITE_ID] = battlerSpriteId;
- gTasks[newTaskId].data[1] = gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2;
- gTasks[newTaskId].data[2] = gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2;
+ updateTaskId = CreateTask(Task_UpdateMonBg, 10);
+ gTasks[updateTaskId].t2_SpriteId = battlerSpriteId;
+ gTasks[updateTaskId].t2_SpriteX = gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2;
+ gTasks[updateTaskId].t2_SpriteY = gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2;
- if (!t1_InBg2)
+ if (!tInBg2)
{
- gTasks[newTaskId].data[3] = gBattle_BG1_X;
- gTasks[newTaskId].data[4] = gBattle_BG1_Y;
+ gTasks[updateTaskId].t2_BgX = gBattle_BG1_X;
+ gTasks[updateTaskId].t2_BgY = gBattle_BG1_Y;
}
else
{
- gTasks[newTaskId].data[3] = gBattle_BG2_X;
- gTasks[newTaskId].data[4] = gBattle_BG2_Y;
+ gTasks[updateTaskId].t2_BgX = gBattle_BG2_X;
+ gTasks[updateTaskId].t2_BgY = gBattle_BG2_Y;
}
- gTasks[newTaskId].data[t2_MON_IN_BG2] = t1_InBg2;
- gTasks[newTaskId].data[t2_MONBG_BATTLER] = t1_BattlerSpriteId;
- sMonAnimTaskIdArray[data[t1_IS_SECONDMON_BG]] = newTaskId;
+ gTasks[updateTaskId].t2_InBg2 = tInBg2;
+ gTasks[updateTaskId].t2_BattlerId = tBattlerId;
+ sMonAnimTaskIdArray[tIsPartner] = updateTaskId;
DestroyAnimVisualTask(taskId);
}
-static void ScriptCmd_monbg(void)
+static void Cmd_monbg(void)
{
bool8 toBG_2;
u8 taskId;
@@ -2218,6 +603,7 @@ static void ScriptCmd_monbg(void)
else
battlerId = gBattleAnimAttacker;
+ // Move designated battler to background
if (IsBattlerSpriteVisible(battlerId))
{
u8 position = GetBattlerPosition(battlerId);
@@ -2227,15 +613,16 @@ static void ScriptCmd_monbg(void)
toBG_2 = TRUE;
MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE);
- taskId = CreateTask(sub_80A40F4, 10);
+ taskId = CreateTask(Task_InitUpdateMonBg, 10);
gAnimVisualTaskCount++;
- gTasks[taskId].t1_BattlerSpriteId = battlerId;
- gTasks[taskId].t1_InBg2 = toBG_2;
- gTasks[taskId].data[t1_CREATE_ANOTHER_TASK] = TRUE;
- gTasks[taskId].data[t1_IS_SECONDMON_BG] = 0;
+ gTasks[taskId].tBattlerId = battlerId;
+ gTasks[taskId].tInBg2 = toBG_2;
+ gTasks[taskId].tActive = TRUE;
+ gTasks[taskId].tIsPartner = FALSE;
}
+ // Move battler's partner to background
battlerId ^= BIT_FLANK;
if (IsBattlerSpriteVisible(battlerId))
{
@@ -2246,12 +633,12 @@ static void ScriptCmd_monbg(void)
toBG_2 = TRUE;
MoveBattlerSpriteToBG(battlerId, toBG_2, FALSE);
- taskId = CreateTask(sub_80A40F4, 10);
+ taskId = CreateTask(Task_InitUpdateMonBg, 10);
gAnimVisualTaskCount++;
- gTasks[taskId].data[0] = battlerId;
- gTasks[taskId].data[1] = toBG_2;
- gTasks[taskId].data[t1_CREATE_ANOTHER_TASK] = TRUE;
- gTasks[taskId].data[t1_IS_SECONDMON_BG] = 1;
+ gTasks[taskId].tBattlerId = battlerId;
+ gTasks[taskId].tInBg2 = toBG_2;
+ gTasks[taskId].tActive = TRUE;
+ gTasks[taskId].tIsPartner = TRUE;
}
sBattleAnimScriptPtr++;
@@ -2423,43 +810,58 @@ void ResetBattleAnimBg(bool8 toBG2)
}
}
-static void task_pA_ma0A_obj_to_bg_pal(u8 taskId)
+static void Task_UpdateMonBg(u8 taskId)
{
- u8 spriteId, palIndex;
+ u8 spriteId, battlerId;
s16 x, y;
struct BattleAnimBgData animBg;
- spriteId = gTasks[taskId].data[0];
- palIndex = gTasks[taskId].data[6];
+ spriteId = gTasks[taskId].t2_SpriteId;
+ battlerId = gTasks[taskId].t2_BattlerId;
GetBattleAnimBg1Data(&animBg);
- x = gTasks[taskId].data[1] - (gSprites[spriteId].x + gSprites[spriteId].x2);
- y = gTasks[taskId].data[2] - (gSprites[spriteId].y + gSprites[spriteId].y2);
+ x = gTasks[taskId].t2_SpriteX - (gSprites[spriteId].x + gSprites[spriteId].x2);
+ y = gTasks[taskId].t2_SpriteY - (gSprites[spriteId].y + gSprites[spriteId].y2);
- if (gTasks[taskId].data[5] == 0)
+ if (!gTasks[taskId].t2_InBg2)
{
u16 *src;
u16 *dst;
- gBattle_BG1_X = x + gTasks[taskId].data[3];
- gBattle_BG1_Y = y + gTasks[taskId].data[4];
- src = &gPlttBufferFaded[0x100 + palIndex * 16];
+ gBattle_BG1_X = x + gTasks[taskId].t2_BgX;
+ gBattle_BG1_Y = y + gTasks[taskId].t2_BgY;
+
+ src = &gPlttBufferFaded[0x100 + battlerId * 16];
dst = &gPlttBufferFaded[0x100 + animBg.paletteId * 16 - 256];
- CpuCopy32(src, dst, 0x20);
+ CpuCopy32(src, dst, 32);
}
else
{
u16 *src;
u16 *dst;
- gBattle_BG2_X = x + gTasks[taskId].data[3];
- gBattle_BG2_Y = y + gTasks[taskId].data[4];
- src = &gPlttBufferFaded[0x100 + palIndex * 16];
+ gBattle_BG2_X = x + gTasks[taskId].t2_BgX;
+ gBattle_BG2_Y = y + gTasks[taskId].t2_BgY;
+
+ src = &gPlttBufferFaded[0x100 + battlerId * 16];
dst = &gPlttBufferFaded[0x100 - 112];
- CpuCopy32(src, dst, 0x20);
+ CpuCopy32(src, dst, 32);
}
}
-static void ScriptCmd_clearmonbg(void)
+#undef tBattlerId
+#undef tInBg2
+#undef tActive
+#undef tIsPartner
+
+#undef t2_SpriteId
+#undef t2_SpriteX
+#undef t2_SpriteY
+#undef t2_BgX
+#undef t2_BgY
+#undef t2_InBg2
+#undef t2_BattlerId
+
+static void Cmd_clearmonbg(void)
{
u8 animBattlerId;
u8 battlerId;
@@ -2520,7 +922,8 @@ static void Task_ClearMonBg(u8 taskId)
}
}
-static void ScriptCmd_monbg_22(void)
+// Equivalent to Cmd_monbg but never creates Task_InitUpdateMonBg / Task_UpdateMonBg
+static void Cmd_monbg_static(void)
{
bool8 toBG_2;
u8 battlerId;
@@ -2566,7 +969,7 @@ static void ScriptCmd_monbg_22(void)
sBattleAnimScriptPtr++;
}
-static void ScriptCmd_clearmonbg_23(void)
+static void Cmd_clearmonbg_static(void)
{
u8 animBattlerId;
u8 battlerId;
@@ -2592,14 +995,14 @@ static void ScriptCmd_clearmonbg_23(void)
else
animBattlerId = 0;
- taskId = CreateTask(sub_80A4BB0, 5);
+ taskId = CreateTask(Task_ClearMonBgStatic, 5);
gTasks[taskId].data[0] = animBattlerId;
gTasks[taskId].data[2] = battlerId;
sBattleAnimScriptPtr++;
}
-static void sub_80A4BB0(u8 taskId)
+static void Task_ClearMonBgStatic(u8 taskId)
{
gTasks[taskId].data[1]++;
if (gTasks[taskId].data[1] != 1)
@@ -2621,16 +1024,7 @@ static void sub_80A4BB0(u8 taskId)
}
}
-#undef t1_BattlerSpriteId
-#undef t1_InBg2
-#undef t1_CREATE_ANOTHER_TASK
-#undef t1_IS_SECONDMON_BG
-
-#undef t2_BATTLER_SPRITE_ID
-#undef t2_MON_IN_BG2
-#undef t2_MONBG_BATTLER
-
-static void ScriptCmd_setalpha(void)
+static void Cmd_setalpha(void)
{
u16 half1, half2;
@@ -2641,7 +1035,7 @@ static void ScriptCmd_setalpha(void)
SetGpuReg(REG_OFFSET_BLDALPHA, half1 | half2);
}
-static void ScriptCmd_setbldcnt(void)
+static void Cmd_setbldcnt(void)
{
u16 half1, half2;
@@ -2651,26 +1045,26 @@ static void ScriptCmd_setbldcnt(void)
SetGpuReg(REG_OFFSET_BLDCNT, half1 | half2);
}
-static void ScriptCmd_blendoff(void)
+static void Cmd_blendoff(void)
{
sBattleAnimScriptPtr++;
SetGpuReg(REG_OFFSET_BLDCNT, 0);
SetGpuReg(REG_OFFSET_BLDALPHA, 0);
}
-static void ScriptCmd_call(void)
+static void Cmd_call(void)
{
sBattleAnimScriptPtr++;
sBattleAnimScriptRetAddr = sBattleAnimScriptPtr + 4;
sBattleAnimScriptPtr = T2_READ_PTR(sBattleAnimScriptPtr);
}
-static void ScriptCmd_return(void)
+static void Cmd_return(void)
{
sBattleAnimScriptPtr = sBattleAnimScriptRetAddr;
}
-static void ScriptCmd_setarg(void)
+static void Cmd_setarg(void)
{
// Save original address to return to
// after the T1_READ_16, + 4.
@@ -2688,7 +1082,7 @@ static void ScriptCmd_setarg(void)
gBattleAnimArgs[argId] = value;
}
-static void ScriptCmd_choosetwoturnanim(void)
+static void Cmd_choosetwoturnanim(void)
{
sBattleAnimScriptPtr++;
if (gAnimMoveTurn & 1)
@@ -2696,7 +1090,7 @@ static void ScriptCmd_choosetwoturnanim(void)
sBattleAnimScriptPtr = T2_READ_PTR(sBattleAnimScriptPtr);
}
-static void ScriptCmd_jumpifmoveturn(void)
+static void Cmd_jumpifmoveturn(void)
{
u8 toCheck;
sBattleAnimScriptPtr++;
@@ -2709,7 +1103,7 @@ static void ScriptCmd_jumpifmoveturn(void)
sBattleAnimScriptPtr += 4;
}
-static void ScriptCmd_goto(void)
+static void Cmd_goto(void)
{
sBattleAnimScriptPtr++;
sBattleAnimScriptPtr = T2_READ_PTR(sBattleAnimScriptPtr);
@@ -2728,7 +1122,7 @@ bool8 IsContest(void)
#define tBackgroundId data[0]
#define tState data[10]
-static void ScriptCmd_fadetobg(void)
+static void Cmd_fadetobg(void)
{
u8 backgroundId;
u8 taskId;
@@ -2741,7 +1135,7 @@ static void ScriptCmd_fadetobg(void)
sAnimBackgroundFadeState = 1;
}
-static void ScriptCmd_fadetobgfromset(void)
+static void Cmd_fadetobgfromset(void)
{
u8 bg1, bg2, bg3;
u8 taskId;
@@ -2832,7 +1226,7 @@ static void LoadDefaultBg(void)
DrawMainBattleBackground();
}
-static void ScriptCmd_restorebg(void)
+static void Cmd_restorebg(void)
{
u8 taskId;
@@ -2845,7 +1239,7 @@ static void ScriptCmd_restorebg(void)
#undef tBackgroundId
#undef tState
-static void ScriptCmd_waitbgfadeout(void)
+static void Cmd_waitbgfadeout(void)
{
if (sAnimBackgroundFadeState == 2)
{
@@ -2858,7 +1252,7 @@ static void ScriptCmd_waitbgfadeout(void)
}
}
-static void ScriptCmd_waitbgfadein(void)
+static void Cmd_waitbgfadein(void)
{
if (sAnimBackgroundFadeState == 0)
{
@@ -2871,7 +1265,7 @@ static void ScriptCmd_waitbgfadein(void)
}
}
-static void ScriptCmd_changebg(void)
+static void Cmd_changebg(void)
{
sBattleAnimScriptPtr++;
LoadMoveBg(sBattleAnimScriptPtr[0]);
@@ -2963,7 +1357,7 @@ s16 CalculatePanIncrement(s16 sourcePan, s16 targetPan, s16 incrementPan)
return ret;
}
-static void ScriptCmd_playsewithpan(void)
+static void Cmd_playsewithpan(void)
{
u16 songId;
s8 pan;
@@ -2975,7 +1369,7 @@ static void ScriptCmd_playsewithpan(void)
sBattleAnimScriptPtr += 3;
}
-static void ScriptCmd_setpan(void)
+static void Cmd_setpan(void)
{
s8 pan;
@@ -2992,7 +1386,7 @@ static void ScriptCmd_setpan(void)
#define tCurrentPan data[4]
#define tFrameCounter data[8]
-static void ScriptCmd_panse(void)
+static void Cmd_panse(void)
{
u16 songNum;
s8 currentPanArg, incrementPan, incrementPanArg, currentPan, targetPan;
@@ -3065,7 +1459,7 @@ void Task_PanFromInitialToTarget(u8 taskId)
}
}
-static void ScriptCmd_panse_adjustnone(void)
+static void Cmd_panse_adjustnone(void)
{
u16 songId;
s8 currentPan, targetPan, incrementPan;
@@ -3092,7 +1486,7 @@ static void ScriptCmd_panse_adjustnone(void)
sBattleAnimScriptPtr += 6;
}
-static void ScriptCmd_panse_adjustall(void)
+static void Cmd_panse_adjustall(void)
{
u16 songId;
s8 targetPanArg, incrementPanArg, currentPanArg, currentPan, targetPan, incrementPan;
@@ -3136,7 +1530,7 @@ static void ScriptCmd_panse_adjustall(void)
#define tNumberOfPlays data[3]
#define tFrameCounter data[8]
-static void ScriptCmd_loopsewithpan(void)
+static void Cmd_loopsewithpan(void)
{
u16 songId;
s8 panningArg, panning;
@@ -3193,7 +1587,7 @@ static void Task_LoopAndPlaySE(u8 taskId)
#define tPanning data[1]
#define tFramesToWait data[2]
-static void ScriptCmd_waitplaysewithpan(void)
+static void Cmd_waitplaysewithpan(void)
{
u16 songId;
s8 panningArg, panning;
@@ -3229,7 +1623,7 @@ static void Task_WaitAndPlaySE(u8 taskId)
#undef tPanning
#undef tFramesToWait
-static void ScriptCmd_createsoundtask(void)
+static void Cmd_createsoundtask(void)
{
TaskFunc func;
u8 numArgs, taskId;
@@ -3250,7 +1644,7 @@ static void ScriptCmd_createsoundtask(void)
gAnimSoundTaskCount++;
}
-static void ScriptCmd_waitsound(void)
+static void Cmd_waitsound(void)
{
if (gAnimSoundTaskCount != 0)
{
@@ -3278,7 +1672,7 @@ static void ScriptCmd_waitsound(void)
}
}
-static void ScriptCmd_jumpargeq(void)
+static void Cmd_jumpargeq(void)
{
u8 argId;
s16 valueToCheck;
@@ -3293,7 +1687,7 @@ static void ScriptCmd_jumpargeq(void)
sBattleAnimScriptPtr += 7;
}
-static void ScriptCmd_jumpifcontest(void)
+static void Cmd_jumpifcontest(void)
{
sBattleAnimScriptPtr++;
if (IsContest())
@@ -3302,7 +1696,7 @@ static void ScriptCmd_jumpifcontest(void)
sBattleAnimScriptPtr += 4;
}
-static void ScriptCmd_monbgprio_28(void)
+static void Cmd_splitbgprio(void)
{
u8 wantedBattler;
u8 battlerId;
@@ -3316,6 +1710,7 @@ static void ScriptCmd_monbgprio_28(void)
else
battlerId = gBattleAnimAttacker;
+ // Apply only if the given battler is the lead (on left from team's perspective)
battlerPosition = GetBattlerPosition(battlerId);
if (!IsContest() && (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_OPPONENT_RIGHT))
{
@@ -3324,7 +1719,7 @@ static void ScriptCmd_monbgprio_28(void)
}
}
-static void ScriptCmd_monbgprio_29(void)
+static void Cmd_splitbgprio_all(void)
{
sBattleAnimScriptPtr++;
if (!IsContest())
@@ -3334,7 +1729,7 @@ static void ScriptCmd_monbgprio_29(void)
}
}
-static void ScriptCmd_monbgprio_2A(void)
+static void Cmd_splitbgprio_foes(void)
{
u8 wantedBattler;
u8 battlerPosition;
@@ -3342,6 +1737,8 @@ static void ScriptCmd_monbgprio_2A(void)
wantedBattler = sBattleAnimScriptPtr[1];
sBattleAnimScriptPtr += 2;
+
+ // Apply only if the attacking the opposing side
if (GetBattlerSide(gBattleAnimAttacker) != GetBattlerSide(gBattleAnimTarget))
{
if (wantedBattler != ANIM_ATTACKER)
@@ -3349,6 +1746,7 @@ static void ScriptCmd_monbgprio_2A(void)
else
battlerId = gBattleAnimAttacker;
+ // Apply only if the given battler is the lead (on left from team's perspective)
battlerPosition = GetBattlerPosition(battlerId);
if (!IsContest() && (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_OPPONENT_RIGHT))
{
@@ -3358,7 +1756,7 @@ static void ScriptCmd_monbgprio_2A(void)
}
}
-static void ScriptCmd_invisible(void)
+static void Cmd_invisible(void)
{
u8 spriteId;
@@ -3369,7 +1767,7 @@ static void ScriptCmd_invisible(void)
sBattleAnimScriptPtr += 2;
}
-static void ScriptCmd_visible(void)
+static void Cmd_visible(void)
{
u8 spriteId;
@@ -3380,34 +1778,37 @@ static void ScriptCmd_visible(void)
sBattleAnimScriptPtr += 2;
}
-static void ScriptCmd_doublebattle_2D(void)
+// Below two commands are never used
+static void Cmd_teamattack_moveback(void)
{
u8 wantedBattler;
- u8 r4;
+ u8 priorityRank;
u8 spriteId;
wantedBattler = sBattleAnimScriptPtr[1];
sBattleAnimScriptPtr += 2;
+
+ // Apply to double battles when attacking own side
if (!IsContest() && IsDoubleBattle()
&& GetBattlerSide(gBattleAnimAttacker) == GetBattlerSide(gBattleAnimTarget))
{
if (wantedBattler == ANIM_ATTACKER)
{
- r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
+ priorityRank = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
}
else
{
- r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
+ priorityRank = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
spriteId = GetAnimBattlerSpriteId(ANIM_TARGET);
}
if (spriteId != SPRITE_NONE)
{
gSprites[spriteId].invisible = FALSE;
- if (r4 == 2)
+ if (priorityRank == 2)
gSprites[spriteId].oam.priority = 3;
- if (r4 == 1)
+ if (priorityRank == 1)
ResetBattleAnimBg(FALSE);
else
ResetBattleAnimBg(TRUE);
@@ -3415,34 +1816,36 @@ static void ScriptCmd_doublebattle_2D(void)
}
}
-static void ScriptCmd_doublebattle_2E(void)
+static void Cmd_teamattack_movefwd(void)
{
u8 wantedBattler;
- u8 r4;
+ u8 priorityRank;
u8 spriteId;
wantedBattler = sBattleAnimScriptPtr[1];
sBattleAnimScriptPtr += 2;
+
+ // Apply to double battles when attacking own side
if (!IsContest() && IsDoubleBattle()
&& GetBattlerSide(gBattleAnimAttacker) == GetBattlerSide(gBattleAnimTarget))
{
if (wantedBattler == ANIM_ATTACKER)
{
- r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
+ priorityRank = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
}
else
{
- r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
+ priorityRank = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
spriteId = GetAnimBattlerSpriteId(ANIM_TARGET);
}
- if (spriteId != SPRITE_NONE && r4 == 2)
+ if (spriteId != SPRITE_NONE && priorityRank == 2)
gSprites[spriteId].oam.priority = 2;
}
}
-static void ScriptCmd_stopsound(void)
+static void Cmd_stopsound(void)
{
m4aMPlayStop(&gMPlayInfo_SE1);
m4aMPlayStop(&gMPlayInfo_SE2);
diff --git a/src/data/battle_anim.h b/src/data/battle_anim.h
new file mode 100644
index 000000000..5b24981d5
--- /dev/null
+++ b/src/data/battle_anim.h
@@ -0,0 +1,1625 @@
+const struct OamData gOamData_AffineOff_ObjNormal_8x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x8),
+ .x = 0,
+ .size = SPRITE_SIZE(8x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+
+const struct OamData gOamData_AffineOff_ObjNormal_16x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x16),
+ .x = 0,
+ .size = SPRITE_SIZE(16x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_32x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x32),
+ .x = 0,
+ .size = SPRITE_SIZE(32x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_64x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x64),
+ .x = 0,
+ .size = SPRITE_SIZE(64x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_16x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x8),
+ .x = 0,
+ .size = SPRITE_SIZE(16x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_32x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x8),
+ .x = 0,
+ .size = SPRITE_SIZE(32x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_32x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x16),
+ .x = 0,
+ .size = SPRITE_SIZE(32x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_64x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x32),
+ .x = 0,
+ .size = SPRITE_SIZE(64x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_8x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x16),
+ .x = 0,
+ .size = SPRITE_SIZE(8x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_8x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x32),
+ .x = 0,
+ .size = SPRITE_SIZE(8x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_16x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x32),
+ .x = 0,
+ .size = SPRITE_SIZE(16x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjNormal_32x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x64),
+ .x = 0,
+ .size = SPRITE_SIZE(32x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_8x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x8),
+ .x = 0,
+ .size = SPRITE_SIZE(8x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_16x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x16),
+ .x = 0,
+ .size = SPRITE_SIZE(16x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_32x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x32),
+ .x = 0,
+ .size = SPRITE_SIZE(32x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_64x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x64),
+ .x = 0,
+ .size = SPRITE_SIZE(64x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_16x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x8),
+ .x = 0,
+ .size = SPRITE_SIZE(16x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_32x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x8),
+ .x = 0,
+ .size = SPRITE_SIZE(32x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_32x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x16),
+ .x = 0,
+ .size = SPRITE_SIZE(32x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_64x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x32),
+ .x = 0,
+ .size = SPRITE_SIZE(64x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_8x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x16),
+ .x = 0,
+ .size = SPRITE_SIZE(8x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_8x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x32),
+ .x = 0,
+ .size = SPRITE_SIZE(8x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_16x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x32),
+ .x = 0,
+ .size = SPRITE_SIZE(16x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjNormal_32x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x64),
+ .x = 0,
+ .size = SPRITE_SIZE(32x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_8x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x8),
+ .x = 0,
+ .size = SPRITE_SIZE(8x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_16x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x16),
+ .x = 0,
+ .size = SPRITE_SIZE(16x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_32x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x32),
+ .x = 0,
+ .size = SPRITE_SIZE(32x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_64x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x64),
+ .x = 0,
+ .size = SPRITE_SIZE(64x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_16x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x8),
+ .x = 0,
+ .size = SPRITE_SIZE(16x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_32x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x8),
+ .x = 0,
+ .size = SPRITE_SIZE(32x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_32x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x16),
+ .x = 0,
+ .size = SPRITE_SIZE(32x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_64x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x32),
+ .x = 0,
+ .size = SPRITE_SIZE(64x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_8x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x16),
+ .x = 0,
+ .size = SPRITE_SIZE(8x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_8x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x32),
+ .x = 0,
+ .size = SPRITE_SIZE(8x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_16x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x32),
+ .x = 0,
+ .size = SPRITE_SIZE(16x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjNormal_32x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x64),
+ .x = 0,
+ .size = SPRITE_SIZE(32x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_8x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x8),
+ .x = 0,
+ .size = SPRITE_SIZE(8x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_16x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x16),
+ .x = 0,
+ .size = SPRITE_SIZE(16x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_32x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x32),
+ .x = 0,
+ .size = SPRITE_SIZE(32x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_64x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x64),
+ .x = 0,
+ .size = SPRITE_SIZE(64x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_16x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x8),
+ .x = 0,
+ .size = SPRITE_SIZE(16x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_32x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x8),
+ .x = 0,
+ .size = SPRITE_SIZE(32x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_32x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x16),
+ .x = 0,
+ .size = SPRITE_SIZE(32x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_64x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x32),
+ .x = 0,
+ .size = SPRITE_SIZE(64x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_8x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x16),
+ .x = 0,
+ .size = SPRITE_SIZE(8x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_8x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x32),
+ .x = 0,
+ .size = SPRITE_SIZE(8x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_16x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x32),
+ .x = 0,
+ .size = SPRITE_SIZE(16x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineOff_ObjBlend_32x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x64),
+ .x = 0,
+ .size = SPRITE_SIZE(32x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_8x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x8),
+ .x = 0,
+ .size = SPRITE_SIZE(8x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_16x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x16),
+ .x = 0,
+ .size = SPRITE_SIZE(16x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_32x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x32),
+ .x = 0,
+ .size = SPRITE_SIZE(32x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_64x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x64),
+ .x = 0,
+ .size = SPRITE_SIZE(64x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_16x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x8),
+ .x = 0,
+ .size = SPRITE_SIZE(16x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_32x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x8),
+ .x = 0,
+ .size = SPRITE_SIZE(32x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_32x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x16),
+ .x = 0,
+ .size = SPRITE_SIZE(32x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_64x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x32),
+ .x = 0,
+ .size = SPRITE_SIZE(64x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_8x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x16),
+ .x = 0,
+ .size = SPRITE_SIZE(8x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_8x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x32),
+ .x = 0,
+ .size = SPRITE_SIZE(8x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_16x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x32),
+ .x = 0,
+ .size = SPRITE_SIZE(16x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineNormal_ObjBlend_32x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x64),
+ .x = 0,
+ .size = SPRITE_SIZE(32x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_8x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x8),
+ .x = 0,
+ .size = SPRITE_SIZE(8x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_16x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x16),
+ .x = 0,
+ .size = SPRITE_SIZE(16x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_32x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x32),
+ .x = 0,
+ .size = SPRITE_SIZE(32x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_64x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x64),
+ .x = 0,
+ .size = SPRITE_SIZE(64x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_16x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x8),
+ .x = 0,
+ .size = SPRITE_SIZE(16x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_32x8 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x8),
+ .x = 0,
+ .size = SPRITE_SIZE(32x8),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_32x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x16),
+ .x = 0,
+ .size = SPRITE_SIZE(32x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_64x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(64x32),
+ .x = 0,
+ .size = SPRITE_SIZE(64x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_8x16 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x16),
+ .x = 0,
+ .size = SPRITE_SIZE(8x16),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_8x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(8x32),
+ .x = 0,
+ .size = SPRITE_SIZE(8x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_16x32 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(16x32),
+ .x = 0,
+ .size = SPRITE_SIZE(16x32),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct OamData gOamData_AffineDouble_ObjBlend_32x64 =
+{
+ .y = 0,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .bpp = ST_OAM_4BPP,
+ .shape = SPRITE_SHAPE(32x64),
+ .x = 0,
+ .size = SPRITE_SIZE(32x64),
+ .tileNum = 0,
+ .priority = 2,
+ .paletteNum = 0,
+};
+
+const struct CompressedSpriteSheet gBattleAnimPicTable[] =
+{
+ {gBattleAnimSpriteGfx_Bone, 0x0200, ANIM_TAG_BONE},
+ {gBattleAnimSpriteGfx_Spark, 0x0300, ANIM_TAG_SPARK},
+ {gBattleAnimSpriteGfx_Pencil, 0x0200, ANIM_TAG_PENCIL},
+ {gBattleAnimSpriteGfx_AirWave, 0x0100, ANIM_TAG_AIR_WAVE},
+ {gBattleAnimSpriteGfx_Orb, 0x0200, ANIM_TAG_ORB},
+ {gBattleAnimSpriteGfx_Sword, 0x0400, ANIM_TAG_SWORD},
+ {gBattleAnimSpriteGfx_Seed, 0x0180, ANIM_TAG_SEED},
+ {gBattleAnimSpriteGfx_Explosion6, 0x0800, ANIM_TAG_EXPLOSION_6},
+ {gBattleAnimSpriteGfx_PinkOrb, 0x0020, ANIM_TAG_PINK_ORB},
+ {gBattleAnimSpriteGfx_Gust, 0x0400, ANIM_TAG_GUST},
+ {gBattleAnimSpriteGfx_IceCube, 0x1200, ANIM_TAG_ICE_CUBE},
+ {gBattleAnimSpriteGfx_Spark2, 0x0180, ANIM_TAG_SPARK_2},
+ {gBattleAnimSpriteGfx_Orange, 0x0080, ANIM_TAG_ORANGE},
+ {gBattleAnimSpriteGfx_YellowBall, 0x0080, ANIM_TAG_YELLOW_BALL},
+ {gBattleAnimSpriteGfx_LockOn, 0x0280, ANIM_TAG_LOCK_ON},
+ {gBattleAnimSpriteGfx_TiedBag, 0x0080, ANIM_TAG_TIED_BAG},
+ {gBattleAnimSpriteGfx_BlackSmoke, 0x0100, ANIM_TAG_BLACK_SMOKE},
+ {gBattleAnimSpriteGfx_BlackBall, 0x0020, ANIM_TAG_BLACK_BALL},
+ {gBattleAnimSpriteGfx_Conversion, 0x0080, ANIM_TAG_CONVERSION},
+ {gBattleAnimSpriteGfx_Glass, 0x0400, ANIM_TAG_GLASS},
+ {gBattleAnimSpriteGfx_HornHit, 0x0200, ANIM_TAG_HORN_HIT},
+ {gBattleAnimSpriteGfx_Hit, 0x0A00, ANIM_TAG_HIT},
+ {gBattleAnimSpriteGfx_Hit, 0x0A00, ANIM_TAG_HIT_2},
+ {gBattleAnimSpriteGfx_BlueShards, 0x0380, ANIM_TAG_BLUE_SHARDS},
+ {gBattleAnimSpriteGfx_ClosingEye, 0x0300, ANIM_TAG_CLOSING_EYE},
+ {gBattleAnimSpriteGfx_WavingHand, 0x0A00, ANIM_TAG_WAVING_HAND},
+ {gBattleAnimSpriteGfx_HitDuplicate, 0x0A00, ANIM_TAG_HIT_DUPLICATE},
+ {gBattleAnimSpriteGfx_Leer, 0x0A00, ANIM_TAG_LEER},
+ {gBattleAnimSpriteGfx_BlueBurst, 0x0A00, ANIM_TAG_BLUE_BURST},
+ {gBattleAnimSpriteGfx_SmallEmber, 0x0A00, ANIM_TAG_SMALL_EMBER},
+ {gBattleAnimSpriteGfx_GraySmoke, 0x0A00, ANIM_TAG_GRAY_SMOKE},
+ {gBattleAnimSpriteGfx_BlueStar, 0x0E00, ANIM_TAG_BLUE_STAR},
+ {gBattleAnimSpriteGfx_BubbleBurst, 0x0380, ANIM_TAG_BUBBLE_BURST},
+ {gBattleAnimSpriteGfx_Fire, 0x1000, ANIM_TAG_FIRE},
+ {gBattleAnimSpriteGfx_SpinningFire, 0x0800, ANIM_TAG_SPINNING_FIRE},
+ {gBattleAnimSpriteGfx_FirePlume, 0x0A00, ANIM_TAG_FIRE_PLUME},
+ {gBattleAnimSpriteGfx_Lightning2, 0x0800, ANIM_TAG_LIGHTNING_2},
+ {gBattleAnimSpriteGfx_Lightning, 0x0A00, ANIM_TAG_LIGHTNING},
+ {gBattleAnimSpriteGfx_ClawSlash2, 0x0A00, ANIM_TAG_CLAW_SLASH_2},
+ {gBattleAnimSpriteGfx_ClawSlash, 0x0A00, ANIM_TAG_CLAW_SLASH},
+ {gBattleAnimSpriteGfx_Scratch3, 0x0A00, ANIM_TAG_SCRATCH_3},
+ {gBattleAnimSpriteGfx_Scratch2, 0x0A00, ANIM_TAG_SCRATCH_2},
+ {gBattleAnimSpriteGfx_BubbleBurst2, 0x0A00, ANIM_TAG_BUBBLE_BURST_2},
+ {gBattleAnimSpriteGfx_IceChunk, 0x0A00, ANIM_TAG_ICE_CHUNK},
+ {gBattleAnimSpriteGfx_Glass2, 0x0A00, ANIM_TAG_GLASS_2},
+ {gBattleAnimSpriteGfx_PinkHeart2, 0x0A00, ANIM_TAG_PINK_HEART_2},
+ {gBattleAnimSpriteGfx_SapDrip, 0x1000, ANIM_TAG_SAP_DRIP},
+ {gBattleAnimSpriteGfx_SapDrip, 0x1000, ANIM_TAG_SAP_DRIP_2},
+ {gBattleAnimSpriteGfx_Sparkle1, 0x1000, ANIM_TAG_SPARKLE_1},
+ {gBattleAnimSpriteGfx_Sparkle1, 0x1000, ANIM_TAG_SPARKLE_2},
+ {gBattleAnimSpriteGfx_HumanoidFoot, 0x0200, ANIM_TAG_HUMANOID_FOOT},
+ {gBattleAnimSpriteGfx_MonsterFoot, 0x0200, ANIM_TAG_MONSTER_FOOT},
+ {gBattleAnimSpriteGfx_HumanoidHand, 0x0200, ANIM_TAG_HUMANOID_HAND},
+ {gBattleAnimSpriteGfx_NoiseLine, 0x0800, ANIM_TAG_NOISE_LINE},
+ {gBattleAnimSpriteGfx_YellowUnk, 0x0080, ANIM_TAG_YELLOW_UNK},
+ {gBattleAnimSpriteGfx_RedFist, 0x0200, ANIM_TAG_RED_FIST},
+ {gBattleAnimSpriteGfx_SlamHit, 0x1000, ANIM_TAG_SLAM_HIT},
+ {gBattleAnimSpriteGfx_Ring, 0x0180, ANIM_TAG_RING},
+ {gBattleAnimSpriteGfx_Rocks, 0x0C00, ANIM_TAG_ROCKS},
+ {gBattleAnimSpriteGfx_Z, 0x0100, ANIM_TAG_Z},
+ {gBattleAnimSpriteGfx_YellowUnk2, 0x0040, ANIM_TAG_YELLOW_UNK_2},
+ {gBattleAnimSpriteGfx_AirSlash, 0x0180, ANIM_TAG_AIR_SLASH},
+ {gBattleAnimSpriteGfx_SpinningGreenOrbs, 0x0800, ANIM_TAG_SPINNING_GREEN_ORBS},
+ {gBattleAnimSpriteGfx_Leaf, 0x0480, ANIM_TAG_LEAF},
+ {gBattleAnimSpriteGfx_Finger, 0x0200, ANIM_TAG_FINGER},
+ {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_POISON_POWDER},
+ {gBattleAnimSpriteGfx_BrownTriangle, 0x0100, ANIM_TAG_BROWN_TRIANGLE},
+ {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_SLEEP_POWDER},
+ {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_STUN_SPORE},
+ {gBattleAnimSpriteGfx_PoisonPowder, 0x0200, ANIM_TAG_POWDER},
+ {gBattleAnimSpriteGfx_Sparkle3, 0x0200, ANIM_TAG_SPARKLE_3},
+ {gBattleAnimSpriteGfx_Sparkle4, 0x0A00, ANIM_TAG_SPARKLE_4},
+ {gBattleAnimSpriteGfx_MusicNotes, 0x0300, ANIM_TAG_MUSIC_NOTES},
+ {gBattleAnimSpriteGfx_Duck, 0x0180, ANIM_TAG_DUCK},
+ {gBattleAnimSpriteGfx_MudSand, 0x00A0, ANIM_TAG_MUD_SAND},
+ {gBattleAnimSpriteGfx_Alert, 0x0700, ANIM_TAG_ALERT},
+ {gBattleAnimSpriteGfx_BlueFlames, 0x0400, ANIM_TAG_BLUE_FLAMES},
+ {gBattleAnimSpriteGfx_BlueFlames2, 0x0200, ANIM_TAG_BLUE_FLAMES_2},
+ {gBattleAnimSpriteGfx_Shock4, 0x0300, ANIM_TAG_SHOCK_4},
+ {gBattleAnimSpriteGfx_Shock, 0x0C00, ANIM_TAG_SHOCK},
+ {gBattleAnimSpriteGfx_Bell2, 0x0A00, ANIM_TAG_BELL_2},
+ {gBattleAnimSpriteGfx_PinkGlove, 0x0080, ANIM_TAG_PINK_GLOVE},
+ {gBattleAnimSpriteGfx_BlueLines, 0x0040, ANIM_TAG_BLUE_LINES},
+ {gBattleAnimSpriteGfx_Impact3, 0x0E00, ANIM_TAG_IMPACT_3},
+ {gBattleAnimSpriteGfx_Impact2, 0x0E00, ANIM_TAG_IMPACT_2},
+ {gBattleAnimSpriteGfx_Reticle, 0x0280, ANIM_TAG_RETICLE},
+ {gBattleAnimSpriteGfx_Breath, 0x0200, ANIM_TAG_BREATH},
+ {gBattleAnimSpriteGfx_Anger, 0x0080, ANIM_TAG_ANGER},
+ {gBattleAnimSpriteGfx_Snowball, 0x00C0, ANIM_TAG_SNOWBALL},
+ {gBattleAnimSpriteGfx_Vine, 0x0A00, ANIM_TAG_VINE},
+ {gBattleAnimSpriteGfx_Sword2, 0x0200, ANIM_TAG_SWORD_2},
+ {gBattleAnimSpriteGfx_Clapping, 0x0180, ANIM_TAG_CLAPPING},
+ {gBattleAnimSpriteGfx_RedTube, 0x0080, ANIM_TAG_RED_TUBE},
+ {gBattleAnimSpriteGfx_Amnesia, 0x1000, ANIM_TAG_AMNESIA},
+ {gBattleAnimSpriteGfx_String2, 0x0A00, ANIM_TAG_STRING_2},
+ {gBattleAnimSpriteGfx_Pencil2, 0x0180, ANIM_TAG_PENCIL_2},
+ {gBattleAnimSpriteGfx_Petal, 0x0380, ANIM_TAG_PETAL},
+ {gBattleAnimSpriteGfx_BentSpoon, 0x0C00, ANIM_TAG_BENT_SPOON},
+ {gBattleAnimSpriteGfx_Web, 0x0200, ANIM_TAG_WEB},
+ {gBattleAnimSpriteGfx_MilkBottle, 0x0200, ANIM_TAG_MILK_BOTTLE},
+ {gBattleAnimSpriteGfx_Coin, 0x0200, ANIM_TAG_COIN},
+ {gBattleAnimSpriteGfx_CrackedEgg, 0x0200, ANIM_TAG_CRACKED_EGG},
+ {gBattleAnimSpriteGfx_HatchedEgg, 0x0400, ANIM_TAG_HATCHED_EGG},
+ {gBattleAnimSpriteGfx_FreshEgg, 0x0080, ANIM_TAG_FRESH_EGG},
+ {gBattleAnimSpriteGfx_Fangs, 0x0400, ANIM_TAG_FANGS},
+ {gBattleAnimSpriteGfx_Explosion2, 0x0c00, ANIM_TAG_EXPLOSION_2},
+ {gBattleAnimSpriteGfx_Explosion3, 0x0200, ANIM_TAG_EXPLOSION_3},
+ {gBattleAnimSpriteGfx_WaterDroplet, 0x1000, ANIM_TAG_WATER_DROPLET},
+ {gBattleAnimSpriteGfx_WaterDroplet2, 0x0a00, ANIM_TAG_WATER_DROPLET_2},
+ {gBattleAnimSpriteGfx_Seed2, 0x0020, ANIM_TAG_SEED_2},
+ {gBattleAnimSpriteGfx_Sprout, 0x0e00, ANIM_TAG_SPROUT},
+ {gBattleAnimSpriteGfx_RedWand, 0x0080, ANIM_TAG_RED_WAND},
+ {gBattleAnimSpriteGfx_PurpleGreenUnk, 0x0a00, ANIM_TAG_PURPLE_GREEN_UNK},
+ {gBattleAnimSpriteGfx_WaterColumn, 0x0400, ANIM_TAG_WATER_COLUMN},
+ {gBattleAnimSpriteGfx_MudUnk, 0x0200, ANIM_TAG_MUD_UNK},
+ {gBattleAnimSpriteGfx_RainDrops, 0x0700, ANIM_TAG_RAIN_DROPS},
+ {gBattleAnimSpriteGfx_FurySwipes, 0x0800, ANIM_TAG_FURY_SWIPES},
+ {gBattleAnimSpriteGfx_Vine2, 0x0a00, ANIM_TAG_VINE_2},
+ {gBattleAnimSpriteGfx_Teeth, 0x0600, ANIM_TAG_TEETH},
+ {gBattleAnimSpriteGfx_Bone2, 0x0800, ANIM_TAG_BONE_2},
+ {gBattleAnimSpriteGfx_WhiteBag, 0x0200, ANIM_TAG_WHITE_BAG},
+ {gBattleAnimSpriteGfx_Unknown, 0x0040, ANIM_TAG_UNKNOWN},
+ {gBattleAnimSpriteGfx_PurpleCoral, 0x0180, ANIM_TAG_PURPLE_CORAL},
+ {gBattleAnimSpriteGfx_PurpleDroplet, 0x0600, ANIM_TAG_PURPLE_DROPLET},
+ {gBattleAnimSpriteGfx_Shock2, 0x0600, ANIM_TAG_SHOCK_2},
+ {gBattleAnimSpriteGfx_ClosingEye2, 0x0200, ANIM_TAG_CLOSING_EYE_2},
+ {gBattleAnimSpriteGfx_MetalBall, 0x0080, ANIM_TAG_METAL_BALL},
+ {gBattleAnimSpriteGfx_MonsterDoll, 0x0200, ANIM_TAG_MONSTER_DOLL},
+ {gBattleAnimSpriteGfx_Whirlwind, 0x0800, ANIM_TAG_WHIRLWIND},
+ {gBattleAnimSpriteGfx_Whirlwind2, 0x0080, ANIM_TAG_WHIRLWIND_2},
+ {gBattleAnimSpriteGfx_Explosion4, 0x0a00, ANIM_TAG_EXPLOSION_4},
+ {gBattleAnimSpriteGfx_Explosion5, 0x0280, ANIM_TAG_EXPLOSION_5},
+ {gBattleAnimSpriteGfx_Tongue, 0x0280, ANIM_TAG_TONGUE},
+ {gBattleAnimSpriteGfx_Smoke, 0x0100, ANIM_TAG_SMOKE},
+ {gBattleAnimSpriteGfx_Smoke2, 0x0200, ANIM_TAG_SMOKE_2},
+ {gBattleAnimSpriteGfx_Impact, 0x0200, ANIM_TAG_IMPACT},
+ {gBattleAnimSpriteGfx_CircleImpact, 0x0020, ANIM_TAG_CIRCLE_IMPACT},
+ {gBattleAnimSpriteGfx_Scratch, 0x0a00, ANIM_TAG_SCRATCH},
+ {gBattleAnimSpriteGfx_Cut, 0x0800, ANIM_TAG_CUT},
+ {gBattleAnimSpriteGfx_SharpTeeth, 0x0800, ANIM_TAG_SHARP_TEETH},
+ {gBattleAnimSpriteGfx_RainbowRings, 0x00c0, ANIM_TAG_RAINBOW_RINGS},
+ {gBattleAnimSpriteGfx_IceCrystals, 0x01c0, ANIM_TAG_ICE_CRYSTALS},
+ {gBattleAnimSpriteGfx_IceSpikes, 0x0100, ANIM_TAG_ICE_SPIKES},
+ {gBattleAnimSpriteGfx_HandsAndFeet, 0x0800, ANIM_TAG_HANDS_AND_FEET},
+ {gBattleAnimSpriteGfx_MistCloud, 0x0200, ANIM_TAG_MIST_CLOUD},
+ {gBattleAnimSpriteGfx_Clamp, 0x0800, ANIM_TAG_CLAMP},
+ {gBattleAnimSpriteGfx_Bubble, 0x0180, ANIM_TAG_BUBBLE},
+ {gBattleAnimSpriteGfx_Orbs, 0x0180, ANIM_TAG_ORBS},
+ {gBattleAnimSpriteGfx_WaterImpact, 0x0200, ANIM_TAG_WATER_IMPACT},
+ {gBattleAnimSpriteGfx_WaterOrb, 0x0200, ANIM_TAG_WATER_ORB},
+ {gBattleAnimSpriteGfx_PoisonBubble, 0x0180, ANIM_TAG_POISON_BUBBLE},
+ {gBattleAnimSpriteGfx_ToxicBubble, 0x0400, ANIM_TAG_TOXIC_BUBBLE},
+ {gBattleAnimSpriteGfx_Spikes, 0x0080, ANIM_TAG_SPIKES},
+ {gBattleAnimSpriteGfx_HornHit2, 0x0100, ANIM_TAG_HORN_HIT_2},
+ {gBattleAnimSpriteGfx_AirWave2, 0x0100, ANIM_TAG_AIR_WAVE_2},
+ {gBattleAnimSpriteGfx_SmallBubbles, 0x0140, ANIM_TAG_SMALL_BUBBLES},
+ {gBattleAnimSpriteGfx_RoundShadow, 0x0800, ANIM_TAG_ROUND_SHADOW},
+ {gBattleAnimSpriteGfx_Sunlight, 0x0200, ANIM_TAG_SUNLIGHT},
+ {gBattleAnimSpriteGfx_Spore, 0x0100, ANIM_TAG_SPORE},
+ {gBattleAnimSpriteGfx_Flower, 0x00a0, ANIM_TAG_FLOWER},
+ {gBattleAnimSpriteGfx_RazorLeaf, 0x0100, ANIM_TAG_RAZOR_LEAF},
+ {gBattleAnimSpriteGfx_Needle, 0x0080, ANIM_TAG_NEEDLE},
+ {gBattleAnimSpriteGfx_WhirlwindLines, 0x0300, ANIM_TAG_WHIRLWIND_LINES},
+ {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_GOLD_RING},
+ {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_PURPLE_RING},
+ {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_BLUE_RING},
+ {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_GREEN_LIGHT_WALL},
+ {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_BLUE_LIGHT_WALL},
+ {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_RED_LIGHT_WALL},
+ {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_GRAY_LIGHT_WALL},
+ {gBattleAnimSpriteGfx_GreenLightWall, 0x0800, ANIM_TAG_ORANGE_LIGHT_WALL},
+ {gBattleAnimSpriteGfx_BlackBall2, 0x0080, ANIM_TAG_BLACK_BALL_2},
+ {gBattleAnimSpriteGfx_MistCloud, 0x0200, ANIM_TAG_PURPLE_GAS_CLOUD},
+ {gBattleAnimSpriteGfx_SparkH, 0x0200, ANIM_TAG_SPARK_H},
+ {gBattleAnimSpriteGfx_YellowStar, 0x0200, ANIM_TAG_YELLOW_STAR},
+ {gBattleAnimSpriteGfx_LargeFreshEgg, 0x0080, ANIM_TAG_LARGE_FRESH_EGG},
+ {gBattleAnimSpriteGfx_ShadowBall, 0x0200, ANIM_TAG_SHADOW_BALL},
+ {gBattleAnimSpriteGfx_Lick, 0x0500, ANIM_TAG_LICK},
+ {gBattleAnimSpriteGfx_VoidLines, 0x0800, ANIM_TAG_VOID_LINES},
+ {gBattleAnimSpriteGfx_String, 0x0400, ANIM_TAG_STRING},
+ {gBattleAnimSpriteGfx_WebThread, 0x0020, ANIM_TAG_WEB_THREAD},
+ {gBattleAnimSpriteGfx_SpiderWeb, 0x0800, ANIM_TAG_SPIDER_WEB},
+ {gBattleAnimSpriteGfx_Lightbulb, 0x0100, ANIM_TAG_LIGHTBULB},
+ {gBattleAnimSpriteGfx_Slash, 0x0800, ANIM_TAG_SLASH},
+ {gBattleAnimSpriteGfx_FocusEnergy, 0x0400, ANIM_TAG_FOCUS_ENERGY},
+ {gBattleAnimSpriteGfx_SphereToCube, 0x0a00, ANIM_TAG_SPHERE_TO_CUBE},
+ {gBattleAnimSpriteGfx_Tendrils, 0x1000, ANIM_TAG_TENDRILS},
+ {gBattleAnimSpriteGfx_Eye, 0x0800, ANIM_TAG_EYE},
+ {gBattleAnimSpriteGfx_WhiteShadow, 0x0400, ANIM_TAG_WHITE_SHADOW},
+ {gBattleAnimSpriteGfx_TealAlert, 0x0200, ANIM_TAG_TEAL_ALERT},
+ {gBattleAnimSpriteGfx_OpeningEye, 0x0800, ANIM_TAG_OPENING_EYE},
+ {gBattleAnimSpriteGfx_RoundWhiteHalo, 0x0800, ANIM_TAG_ROUND_WHITE_HALO},
+ {gBattleAnimSpriteGfx_FangAttack, 0x0800, ANIM_TAG_FANG_ATTACK},
+ {gBattleAnimSpriteGfx_PurpleHandOutline, 0x0200, ANIM_TAG_PURPLE_HAND_OUTLINE},
+ {gBattleAnimSpriteGfx_Moon, 0x0800, ANIM_TAG_MOON},
+ {gBattleAnimSpriteGfx_GreenSparkle, 0x0200, ANIM_TAG_GREEN_SPARKLE},
+ {gBattleAnimSpriteGfx_Spiral, 0x0800, ANIM_TAG_SPIRAL},
+ {gBattleAnimSpriteGfx_SnoreZ, 0x0200, ANIM_TAG_SNORE_Z},
+ {gBattleAnimSpriteGfx_Explosion, 0x0800, ANIM_TAG_EXPLOSION},
+ {gBattleAnimSpriteGfx_Nail, 0x0400, ANIM_TAG_NAIL},
+ {gBattleAnimSpriteGfx_GhostlySpirit, 0x0200, ANIM_TAG_GHOSTLY_SPIRIT},
+ {gBattleAnimSpriteGfx_WarmRock, 0x0a80, ANIM_TAG_WARM_ROCK},
+ {gBattleAnimSpriteGfx_BreakingEgg, 0x0600, ANIM_TAG_BREAKING_EGG},
+ {gBattleAnimSpriteGfx_ThinRing, 0x0800, ANIM_TAG_THIN_RING},
+ {gBattleAnimSpriteGfx_PunchImpact, 0x0200, ANIM_TAG_PUNCH_IMPACT},
+ {gBattleAnimSpriteGfx_Bell, 0x0600, ANIM_TAG_BELL},
+ {gBattleAnimSpriteGfx_MusicNotes2, 0x0800, ANIM_TAG_MUSIC_NOTES_2},
+ {gBattleAnimSpriteGfx_SpeedDust, 0x0180, ANIM_TAG_SPEED_DUST},
+ {gBattleAnimSpriteGfx_TornMetal, 0x0800, ANIM_TAG_TORN_METAL},
+ {gBattleAnimSpriteGfx_ThoughtBubble, 0x0800, ANIM_TAG_THOUGHT_BUBBLE},
+ {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_MAGENTA_HEART},
+ {gBattleAnimSpriteGfx_ElectricOrbs, 0x0080, ANIM_TAG_ELECTRIC_ORBS},
+ {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_CIRCLE_OF_LIGHT},
+ {gBattleAnimSpriteGfx_Electricity, 0x0800, ANIM_TAG_ELECTRICITY},
+ {gBattleAnimSpriteGfx_Finger2, 0x0600, ANIM_TAG_FINGER_2},
+ {gBattleAnimSpriteGfx_MovementWaves, 0x0600, ANIM_TAG_MOVEMENT_WAVES},
+ {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_RED_HEART},
+ {gBattleAnimSpriteGfx_RedOrb, 0x0080, ANIM_TAG_RED_ORB},
+ {gBattleAnimSpriteGfx_EyeSparkle, 0x0180, ANIM_TAG_EYE_SPARKLE},
+ {gBattleAnimSpriteGfx_MagentaHeart, 0x0080, ANIM_TAG_PINK_HEART},
+ {gBattleAnimSpriteGfx_Angel, 0x0200, ANIM_TAG_ANGEL},
+ {gBattleAnimSpriteGfx_Devil, 0x0400, ANIM_TAG_DEVIL},
+ {gBattleAnimSpriteGfx_Swipe, 0x0a00, ANIM_TAG_SWIPE},
+ {gBattleAnimSpriteGfx_Roots, 0x0800, ANIM_TAG_ROOTS},
+ {gBattleAnimSpriteGfx_ItemBag, 0x0200, ANIM_TAG_ITEM_BAG},
+ {gBattleAnimSpriteGfx_JaggedMusicNote, 0x0400, ANIM_TAG_JAGGED_MUSIC_NOTE},
+ {gBattleAnimSpriteGfx_Pokeball, 0x0080, ANIM_TAG_POKEBALL},
+ {gBattleAnimSpriteGfx_Spotlight, 0x0800, ANIM_TAG_SPOTLIGHT},
+ {gBattleAnimSpriteGfx_LetterZ, 0x0200, ANIM_TAG_LETTER_Z},
+ {gBattleAnimSpriteGfx_RapidSpin, 0x0300, ANIM_TAG_RAPID_SPIN},
+ {gBattleAnimSpriteGfx_TriAttackTriangle, 0x0800, ANIM_TAG_TRI_ATTACK_TRIANGLE},
+ {gBattleAnimSpriteGfx_WispOrb, 0x0380, ANIM_TAG_WISP_ORB},
+ {gBattleAnimSpriteGfx_WispFire, 0x0800, ANIM_TAG_WISP_FIRE},
+ {gBattleAnimSpriteGfx_GoldStars, 0x00c0, ANIM_TAG_GOLD_STARS},
+ {gBattleAnimSpriteGfx_EclipsingOrb, 0x0800, ANIM_TAG_ECLIPSING_ORB},
+ {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_GRAY_ORB},
+ {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_BLUE_ORB},
+ {gBattleAnimSpriteGfx_GrayOrb, 0x0060, ANIM_TAG_RED_ORB_2},
+ {gBattleAnimSpriteGfx_PinkPetal, 0x0080, ANIM_TAG_PINK_PETAL},
+ {gBattleAnimSpriteGfx_PainSplit, 0x0180, ANIM_TAG_PAIN_SPLIT},
+ {gBattleAnimSpriteGfx_Confetti, 0x0180, ANIM_TAG_CONFETTI},
+ {gBattleAnimSpriteGfx_GreenStar, 0x0200, ANIM_TAG_GREEN_STAR},
+ {gBattleAnimSpriteGfx_PinkCloud, 0x0200, ANIM_TAG_PINK_CLOUD},
+ {gBattleAnimSpriteGfx_SweatDrop, 0x0020, ANIM_TAG_SWEAT_DROP},
+ {gBattleAnimSpriteGfx_GuardRing, 0x0400, ANIM_TAG_GUARD_RING},
+ {gBattleAnimSpriteGfx_PurpleScratch, 0x0600, ANIM_TAG_PURPLE_SCRATCH},
+ {gBattleAnimSpriteGfx_PurpleSwipe, 0x1000, ANIM_TAG_PURPLE_SWIPE},
+ {gBattleAnimSpriteGfx_TagHand, 0x0400, ANIM_TAG_TAG_HAND},
+ {gBattleAnimSpriteGfx_SmallRedEye, 0x0020, ANIM_TAG_SMALL_RED_EYE},
+ {gBattleAnimSpriteGfx_HollowOrb, 0x0080, ANIM_TAG_HOLLOW_ORB},
+ {gBattleAnimSpriteGfx_XSign, 0x0800, ANIM_TAG_X_SIGN},
+ {gBattleAnimSpriteGfx_BluegreenOrb, 0x0080, ANIM_TAG_BLUEGREEN_ORB},
+ {gBattleAnimSpriteGfx_PawPrint, 0x0200, ANIM_TAG_PAW_PRINT},
+ {gBattleAnimSpriteGfx_PurpleFlame, 0x0400, ANIM_TAG_PURPLE_FLAME},
+ {gBattleAnimSpriteGfx_RedBall, 0x0200, ANIM_TAG_RED_BALL},
+ {gBattleAnimSpriteGfx_SmellingsaltEffect, 0x0200, ANIM_TAG_SMELLINGSALT_EFFECT},
+ {gBattleAnimSpriteGfx_Meteor, 0x0800, ANIM_TAG_METEOR},
+ {gBattleAnimSpriteGfx_FlatRock, 0x0280, ANIM_TAG_FLAT_ROCK},
+ {gBattleAnimSpriteGfx_MagnifyingGlass, 0x0200, ANIM_TAG_MAGNIFYING_GLASS},
+ {gBattleAnimSpriteGfx_WaterOrb, 0x0200, ANIM_TAG_BROWN_ORB},
+ {gBattleAnimSpriteGfx_MetalSoundWaves, 0x0400, ANIM_TAG_METAL_SOUND_WAVES},
+ {gBattleAnimSpriteGfx_FlyingDirt, 0x0200, ANIM_TAG_FLYING_DIRT},
+ {gBattleAnimSpriteGfx_IcicleSpear, 0x0200, ANIM_TAG_ICICLE_SPEAR},
+ {gBattleAnimSpriteGfx_Hail, 0x0080, ANIM_TAG_HAIL},
+ {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_RED_ORB},
+ {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_GREEN_ORB},
+ {gBattleAnimSpriteGfx_GreenSpike, 0x0080, ANIM_TAG_GREEN_SPIKE},
+ {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT},
+ {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_BLUE_ORB},
+ {gBattleAnimSpriteGfx_Pokeblock, 0x0080, ANIM_TAG_POKEBLOCK},
+ {gBattleAnimSpriteGfx_WhiteFeather, 0x0400, ANIM_TAG_WHITE_FEATHER},
+ {gBattleAnimSpriteGfx_Sparkle6, 0x0080, ANIM_TAG_SPARKLE_6},
+ {gBattleAnimSpriteGfx_Splash, 0x0800, ANIM_TAG_SPLASH},
+ {gBattleAnimSpriteGfx_SweatBead, 0x0020, ANIM_TAG_SWEAT_BEAD},
+ {gBattleAnimSpriteGfx_Gem1, 0x0800, ANIM_TAG_GEM_1},
+ {gBattleAnimSpriteGfx_Gem2, 0x0800, ANIM_TAG_GEM_2},
+ {gBattleAnimSpriteGfx_Gem3, 0x0800, ANIM_TAG_GEM_3},
+ {gBattleAnimSpriteGfx_SlamHit2, 0x1000, ANIM_TAG_SLAM_HIT_2},
+ {gBattleAnimSpriteGfx_Recycle, 0x0800, ANIM_TAG_RECYCLE},
+ {gBattleAnimSpriteGfx_RedParticles, 0x00a0, ANIM_TAG_RED_PARTICLES},
+ {gBattleAnimSpriteGfx_Protect, 0x0800, ANIM_TAG_PROTECT},
+ {gBattleAnimSpriteGfx_DirtMound, 0x0200, ANIM_TAG_DIRT_MOUND},
+ {gBattleAnimSpriteGfx_Shock3, 0x0600, ANIM_TAG_SHOCK_3},
+ {gBattleAnimSpriteGfx_WeatherBall, 0x0200, ANIM_TAG_WEATHER_BALL},
+ {gBattleAnimSpriteGfx_Bird, 0x0800, ANIM_TAG_BIRD},
+ {gBattleAnimSpriteGfx_CrossImpact, 0x0200, ANIM_TAG_CROSS_IMPACT},
+ {gBattleAnimSpriteGfx_Slash, 0x0800, ANIM_TAG_SLASH_2},
+ {gBattleAnimSpriteGfx_SlamHit, 0x1000, ANIM_TAG_WHIP_HIT},
+ {gBattleAnimSpriteGfx_GoldRing, 0x0100, ANIM_TAG_BLUE_RING_2},
+};
+
+const struct CompressedSpritePalette gBattleAnimPaletteTable[] =
+{
+ {gBattleAnimSpritePal_Bone, ANIM_TAG_BONE},
+ {gBattleAnimSpritePal_Spark, ANIM_TAG_SPARK},
+ {gBattleAnimSpritePal_Pencil, ANIM_TAG_PENCIL},
+ {gBattleAnimSpritePal_AirWave, ANIM_TAG_AIR_WAVE},
+ {gBattleAnimSpritePal_Orb, ANIM_TAG_ORB},
+ {gBattleAnimSpritePal_Sword, ANIM_TAG_SWORD},
+ {gBattleAnimSpritePal_Seed, ANIM_TAG_SEED},
+ {gBattleAnimSpritePal_Explosion6, ANIM_TAG_EXPLOSION_6},
+ {gBattleAnimSpritePal_PinkOrb, ANIM_TAG_PINK_ORB},
+ {gBattleAnimSpritePal_Gust, ANIM_TAG_GUST},
+ {gBattleAnimSpritePal_IceCube, ANIM_TAG_ICE_CUBE},
+ {gBattleAnimSpritePal_Spark2, ANIM_TAG_SPARK_2},
+ {gBattleAnimSpritePal_Orange, ANIM_TAG_ORANGE},
+ {gBattleAnimSpritePal_YellowBall, ANIM_TAG_YELLOW_BALL},
+ {gBattleAnimSpritePal_LockOn, ANIM_TAG_LOCK_ON},
+ {gBattleAnimSpritePal_TiedBag, ANIM_TAG_TIED_BAG},
+ {gBattleAnimSpritePal_BlackSmoke, ANIM_TAG_BLACK_SMOKE},
+ {gBattleAnimSpritePal_BlackSmoke, ANIM_TAG_BLACK_BALL},
+ {gBattleAnimSpritePal_Conversion, ANIM_TAG_CONVERSION},
+ {gBattleAnimSpritePal_Glass, ANIM_TAG_GLASS},
+ {gBattleAnimSpritePal_HornHit, ANIM_TAG_HORN_HIT},
+ {gBattleAnimSpritePal_Hit, ANIM_TAG_HIT},
+ {gBattleAnimSpritePal_Hit2, ANIM_TAG_HIT_2},
+ {gBattleAnimSpritePal_BlueShards, ANIM_TAG_BLUE_SHARDS},
+ {gBattleAnimSpritePal_ClosingEye, ANIM_TAG_CLOSING_EYE},
+ {gBattleAnimSpritePal_WavingHand, ANIM_TAG_WAVING_HAND},
+ {gBattleAnimSpritePal_HitDuplicate, ANIM_TAG_HIT_DUPLICATE},
+ {gBattleAnimSpritePal_Leer, ANIM_TAG_LEER},
+ {gBattleAnimSpritePal_BlueBurst, ANIM_TAG_BLUE_BURST},
+ {gBattleAnimSpritePal_SmallEmber, ANIM_TAG_SMALL_EMBER},
+ {gBattleAnimSpritePal_GraySmoke, ANIM_TAG_GRAY_SMOKE},
+ {gBattleAnimSpritePal_BlueStar, ANIM_TAG_BLUE_STAR},
+ {gBattleAnimSpritePal_BubbleBurst, ANIM_TAG_BUBBLE_BURST},
+ {gBattleAnimSpritePal_Fire, ANIM_TAG_FIRE},
+ {gBattleAnimSpritePal_Fire, ANIM_TAG_SPINNING_FIRE},
+ {gBattleAnimSpritePal_Fire, ANIM_TAG_FIRE_PLUME},
+ {gBattleAnimSpritePal_Lightning2, ANIM_TAG_LIGHTNING_2},
+ {gBattleAnimSpritePal_Lightning2, ANIM_TAG_LIGHTNING},
+ {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_CLAW_SLASH_2},
+ {gBattleAnimSpritePal_ClawSlash, ANIM_TAG_CLAW_SLASH},
+ {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_SCRATCH_3},
+ {gBattleAnimSpritePal_ClawSlash2, ANIM_TAG_SCRATCH_2},
+ {gBattleAnimSpritePal_BubbleBurst2, ANIM_TAG_BUBBLE_BURST_2},
+ {gBattleAnimSpritePal_IceChunk, ANIM_TAG_ICE_CHUNK},
+ {gBattleAnimSpritePal_Glass2, ANIM_TAG_GLASS_2},
+ {gBattleAnimSpritePal_PinkHeart2, ANIM_TAG_PINK_HEART_2},
+ {gBattleAnimSpritePal_SapDrip, ANIM_TAG_SAP_DRIP},
+ {gBattleAnimSpritePal_SapDrip2, ANIM_TAG_SAP_DRIP},
+ {gBattleAnimSpritePal_Sparkle1, ANIM_TAG_SPARKLE_1},
+ {gBattleAnimSpritePal_Sparkle2, ANIM_TAG_SPARKLE_2},
+ {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_HUMANOID_FOOT},
+ {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_MONSTER_FOOT},
+ {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_HUMANOID_HAND},
+ {gBattleAnimSpritePal_HitDuplicate, ANIM_TAG_NOISE_LINE},
+ {gBattleAnimSpritePal_YellowUnk, ANIM_TAG_YELLOW_UNK},
+ {gBattleAnimSpritePal_HumanoidFoot, ANIM_TAG_RED_FIST},
+ {gBattleAnimSpritePal_SlamHit, ANIM_TAG_SLAM_HIT},
+ {gBattleAnimSpritePal_Ring, ANIM_TAG_RING},
+ {gBattleAnimSpritePal_Rocks, ANIM_TAG_ROCKS},
+ {gBattleAnimSpritePal_Z, ANIM_TAG_Z},
+ {gBattleAnimSpritePal_YellowUnk2, ANIM_TAG_YELLOW_UNK_2},
+ {gBattleAnimSpritePal_AirSlash, ANIM_TAG_AIR_SLASH},
+ {gBattleAnimSpritePal_SpinningGreenOrbs, ANIM_TAG_SPINNING_GREEN_ORBS},
+ {gBattleAnimSpritePal_Leaf, ANIM_TAG_LEAF},
+ {gBattleAnimSpritePal_Finger, ANIM_TAG_FINGER},
+ {gBattleAnimSpritePal_PoisonPowder, ANIM_TAG_POISON_POWDER},
+ {gBattleAnimSpritePal_BrownTriangle, ANIM_TAG_BROWN_TRIANGLE},
+ {gBattleAnimSpritePal_SleepPowder, ANIM_TAG_SLEEP_POWDER},
+ {gBattleAnimSpritePal_StunSpore, ANIM_TAG_STUN_SPORE},
+ {gBattleAnimSpritePal_PoisonPowder, ANIM_TAG_POWDER},
+ {gBattleAnimSpritePal_Sparkle3, ANIM_TAG_SPARKLE_3},
+ {gBattleAnimSpritePal_Sparkle3, ANIM_TAG_SPARKLE_4},
+ {gBattleAnimSpritePal_MusicNotes, ANIM_TAG_MUSIC_NOTES},
+ {gBattleAnimSpritePal_Duck, ANIM_TAG_DUCK},
+ {gBattleAnimSpritePal_MudSand, ANIM_TAG_MUD_SAND},
+ {gBattleAnimSpritePal_Alert, ANIM_TAG_ALERT},
+ {gBattleAnimSpritePal_BlueFlames, ANIM_TAG_BLUE_FLAMES},
+ {gBattleAnimSpritePal_BlueFlames, ANIM_TAG_BLUE_FLAMES_2},
+ {gBattleAnimSpritePal_Shock4, ANIM_TAG_SHOCK_4},
+ {gBattleAnimSpritePal_Shock4, ANIM_TAG_SHOCK},
+ {gBattleAnimSpritePal_Bell2, ANIM_TAG_BELL_2},
+ {gBattleAnimSpritePal_PinkGlove, ANIM_TAG_PINK_GLOVE},
+ {gBattleAnimSpritePal_BlueLines, ANIM_TAG_BLUE_LINES},
+ {gBattleAnimSpritePal_Impact3, ANIM_TAG_IMPACT_3},
+ {gBattleAnimSpritePal_Impact2, ANIM_TAG_IMPACT_2},
+ {gBattleAnimSpritePal_Reticle, ANIM_TAG_RETICLE},
+ {gBattleAnimSpritePal_Breath, ANIM_TAG_BREATH},
+ {gBattleAnimSpritePal_Anger, ANIM_TAG_ANGER},
+ {gBattleAnimSpritePal_Snowball, ANIM_TAG_SNOWBALL},
+ {gBattleAnimSpritePal_Vine, ANIM_TAG_VINE},
+ {gBattleAnimSpritePal_Sword2, ANIM_TAG_SWORD_2},
+ {gBattleAnimSpritePal_Clapping, ANIM_TAG_CLAPPING},
+ {gBattleAnimSpritePal_RedTube, ANIM_TAG_RED_TUBE},
+ {gBattleAnimSpritePal_Amnesia, ANIM_TAG_AMNESIA},
+ {gBattleAnimSpritePal_String2, ANIM_TAG_STRING_2},
+ {gBattleAnimSpritePal_Pencil2, ANIM_TAG_PENCIL_2},
+ {gBattleAnimSpritePal_Petal, ANIM_TAG_PETAL},
+ {gBattleAnimSpritePal_BentSpoon, ANIM_TAG_BENT_SPOON},
+ {gBattleAnimSpritePal_String2, ANIM_TAG_WEB},
+ {gBattleAnimSpritePal_MilkBottle, ANIM_TAG_MILK_BOTTLE},
+ {gBattleAnimSpritePal_Coin, ANIM_TAG_COIN},
+ {gBattleAnimSpritePal_CrackedEgg, ANIM_TAG_CRACKED_EGG},
+ {gBattleAnimSpritePal_CrackedEgg, ANIM_TAG_HATCHED_EGG},
+ {gBattleAnimSpritePal_FreshEgg, ANIM_TAG_FRESH_EGG},
+ {gBattleAnimSpritePal_Fangs, ANIM_TAG_FANGS},
+ {gBattleAnimSpritePal_Explosion2, ANIM_TAG_EXPLOSION_2},
+ {gBattleAnimSpritePal_Explosion2, ANIM_TAG_EXPLOSION_3},
+ {gBattleAnimSpritePal_WaterDroplet, ANIM_TAG_WATER_DROPLET},
+ {gBattleAnimSpritePal_WaterDroplet, ANIM_TAG_WATER_DROPLET_2},
+ {gBattleAnimSpritePal_Seed2, ANIM_TAG_SEED_2},
+ {gBattleAnimSpritePal_Seed2, ANIM_TAG_SPROUT},
+ {gBattleAnimSpritePal_RedWand, ANIM_TAG_RED_WAND},
+ {gBattleAnimSpritePal_PurpleGreenUnk, ANIM_TAG_PURPLE_GREEN_UNK},
+ {gBattleAnimSpritePal_WaterColumn, ANIM_TAG_WATER_COLUMN},
+ {gBattleAnimSpritePal_MudUnk, ANIM_TAG_MUD_UNK},
+ {gBattleAnimSpritePal_RainDrops, ANIM_TAG_RAIN_DROPS},
+ {gBattleAnimSpritePal_FurySwipes, ANIM_TAG_FURY_SWIPES},
+ {gBattleAnimSpritePal_Vine2, ANIM_TAG_VINE_2},
+ {gBattleAnimSpritePal_Teeth, ANIM_TAG_TEETH},
+ {gBattleAnimSpritePal_Bone2, ANIM_TAG_BONE_2},
+ {gBattleAnimSpritePal_WhiteBag, ANIM_TAG_WHITE_BAG},
+ {gBattleAnimSpritePal_Unknown, ANIM_TAG_UNKNOWN},
+ {gBattleAnimSpritePal_PurpleCoral, ANIM_TAG_PURPLE_CORAL},
+ {gBattleAnimSpritePal_PurpleCoral, ANIM_TAG_PURPLE_DROPLET},
+ {gBattleAnimSpritePal_Shock2, ANIM_TAG_SHOCK_2},
+ {gBattleAnimSpritePal_ClosingEye2, ANIM_TAG_CLOSING_EYE_2},
+ {gBattleAnimSpritePal_MetalBall, ANIM_TAG_METAL_BALL},
+ {gBattleAnimSpritePal_MonsterDoll, ANIM_TAG_MONSTER_DOLL},
+ {gBattleAnimSpritePal_Whirlwind, ANIM_TAG_WHIRLWIND},
+ {gBattleAnimSpritePal_Whirlwind, ANIM_TAG_WHIRLWIND_2},
+ {gBattleAnimSpritePal_Explosion4, ANIM_TAG_EXPLOSION_4},
+ {gBattleAnimSpritePal_Explosion4, ANIM_TAG_EXPLOSION_5},
+ {gBattleAnimSpritePal_Tongue, ANIM_TAG_TONGUE},
+ {gBattleAnimSpritePal_Smoke, ANIM_TAG_SMOKE},
+ {gBattleAnimSpritePal_Smoke, ANIM_TAG_SMOKE_2},
+ {gBattleAnimSpritePal_Impact, ANIM_TAG_IMPACT},
+ {gBattleAnimSpritePal_CircleImpact, ANIM_TAG_CIRCLE_IMPACT},
+ {gBattleAnimSpritePal_Impact, ANIM_TAG_SCRATCH},
+ {gBattleAnimSpritePal_Impact, ANIM_TAG_CUT},
+ {gBattleAnimSpritePal_SharpTeeth, ANIM_TAG_SHARP_TEETH},
+ {gBattleAnimSpritePal_RainbowRings, ANIM_TAG_RAINBOW_RINGS},
+ {gBattleAnimSpritePal_IceCrystals, ANIM_TAG_ICE_CRYSTALS},
+ {gBattleAnimSpritePal_IceCrystals, ANIM_TAG_ICE_SPIKES},
+ {gBattleAnimSpritePal_HandsAndFeet, ANIM_TAG_HANDS_AND_FEET},
+ {gBattleAnimSpritePal_MistCloud, ANIM_TAG_MIST_CLOUD},
+ {gBattleAnimSpritePal_SharpTeeth, ANIM_TAG_CLAMP},
+ {gBattleAnimSpritePal_RainDrops, ANIM_TAG_BUBBLE},
+ {gBattleAnimSpritePal_Orbs, ANIM_TAG_ORBS},
+ {gBattleAnimSpritePal_WaterImpact, ANIM_TAG_WATER_IMPACT},
+ {gBattleAnimSpritePal_WaterImpact, ANIM_TAG_WATER_ORB},
+ {gBattleAnimSpritePal_PoisonBubble, ANIM_TAG_POISON_BUBBLE},
+ {gBattleAnimSpritePal_PoisonBubble, ANIM_TAG_TOXIC_BUBBLE},
+ {gBattleAnimSpritePal_Spikes, ANIM_TAG_SPIKES},
+ {gBattleAnimSpritePal_HornHit2, ANIM_TAG_HORN_HIT_2},
+ {gBattleAnimSpritePal_AirWave2, ANIM_TAG_AIR_WAVE_2},
+ {gBattleAnimSpritePal_SmallBubbles, ANIM_TAG_SMALL_BUBBLES},
+ {gBattleAnimSpritePal_RoundShadow, ANIM_TAG_ROUND_SHADOW},
+ {gBattleAnimSpritePal_Sunlight, ANIM_TAG_SUNLIGHT},
+ {gBattleAnimSpritePal_Spore, ANIM_TAG_SPORE},
+ {gBattleAnimSpritePal_Flower, ANIM_TAG_FLOWER},
+ {gBattleAnimSpritePal_RazorLeaf, ANIM_TAG_RAZOR_LEAF},
+ {gBattleAnimSpritePal_Needle, ANIM_TAG_NEEDLE},
+ {gBattleAnimSpritePal_WhirlwindLines, ANIM_TAG_WHIRLWIND_LINES},
+ {gBattleAnimSpritePal_GoldRing, ANIM_TAG_GOLD_RING},
+ {gBattleAnimSpritePal_PurpleRing, ANIM_TAG_PURPLE_RING},
+ {gBattleAnimSpritePal_BlueRing, ANIM_TAG_BLUE_RING},
+ {gBattleAnimSpritePal_GreenLightWall, ANIM_TAG_GREEN_LIGHT_WALL},
+ {gBattleAnimSpritePal_BlueLightWall, ANIM_TAG_BLUE_LIGHT_WALL},
+ {gBattleAnimSpritePal_RedLightWall, ANIM_TAG_RED_LIGHT_WALL},
+ {gBattleAnimSpritePal_GrayLightWall, ANIM_TAG_GRAY_LIGHT_WALL},
+ {gBattleAnimSpritePal_OrangeLightWall, ANIM_TAG_ORANGE_LIGHT_WALL},
+ {gBattleAnimSpritePal_BlackBall2, ANIM_TAG_BLACK_BALL_2},
+ {gBattleAnimSpritePal_PurpleGasCloud, ANIM_TAG_PURPLE_GAS_CLOUD},
+ {gBattleAnimSpritePal_Spark, ANIM_TAG_SPARK_H},
+ {gBattleAnimSpritePal_YellowStar, ANIM_TAG_YELLOW_STAR},
+ {gBattleAnimSpritePal_LargeFreshEgg, ANIM_TAG_LARGE_FRESH_EGG},
+ {gBattleAnimSpritePal_ShadowBall, ANIM_TAG_SHADOW_BALL},
+ {gBattleAnimSpritePal_Lick, ANIM_TAG_LICK},
+ {gBattleAnimSpritePal_VoidLines, ANIM_TAG_VOID_LINES},
+ {gBattleAnimSpritePal_String, ANIM_TAG_STRING},
+ {gBattleAnimSpritePal_String, ANIM_TAG_WEB_THREAD},
+ {gBattleAnimSpritePal_String, ANIM_TAG_SPIDER_WEB},
+ {gBattleAnimSpritePal_Lightbulb, ANIM_TAG_LIGHTBULB},
+ {gBattleAnimSpritePal_Slash, ANIM_TAG_SLASH},
+ {gBattleAnimSpritePal_FocusEnergy, ANIM_TAG_FOCUS_ENERGY},
+ {gBattleAnimSpritePal_SphereToCube, ANIM_TAG_SPHERE_TO_CUBE},
+ {gBattleAnimSpritePal_Tendrils, ANIM_TAG_TENDRILS},
+ {gBattleAnimSpritePal_Eye, ANIM_TAG_EYE},
+ {gBattleAnimSpritePal_WhiteShadow, ANIM_TAG_WHITE_SHADOW},
+ {gBattleAnimSpritePal_TealAlert, ANIM_TAG_TEAL_ALERT},
+ {gBattleAnimSpritePal_OpeningEye, ANIM_TAG_OPENING_EYE},
+ {gBattleAnimSpritePal_RoundWhiteHalo, ANIM_TAG_ROUND_WHITE_HALO},
+ {gBattleAnimSpritePal_FangAttack, ANIM_TAG_FANG_ATTACK},
+ {gBattleAnimSpritePal_PurpleHandOutline, ANIM_TAG_PURPLE_HAND_OUTLINE},
+ {gBattleAnimSpritePal_Moon, ANIM_TAG_MOON},
+ {gBattleAnimSpritePal_GreenSparkle, ANIM_TAG_GREEN_SPARKLE},
+ {gBattleAnimSpritePal_Spiral, ANIM_TAG_SPIRAL},
+ {gBattleAnimSpritePal_SnoreZ, ANIM_TAG_SNORE_Z},
+ {gBattleAnimSpritePal_Explosion, ANIM_TAG_EXPLOSION},
+ {gBattleAnimSpritePal_Nail, ANIM_TAG_NAIL},
+ {gBattleAnimSpritePal_GhostlySpirit, ANIM_TAG_GHOSTLY_SPIRIT},
+ {gBattleAnimSpritePal_WarmRock, ANIM_TAG_WARM_ROCK},
+ {gBattleAnimSpritePal_BreakingEgg, ANIM_TAG_BREAKING_EGG},
+ {gBattleAnimSpritePal_ThinRing, ANIM_TAG_THIN_RING},
+ {gBattleAnimSpritePal_PunchImpact, ANIM_TAG_PUNCH_IMPACT},
+ {gBattleAnimSpritePal_Bell, ANIM_TAG_BELL},
+ {gBattleAnimSpritePal_MusicNotes2, ANIM_TAG_MUSIC_NOTES_2},
+ {gBattleAnimSpritePal_SpeedDust, ANIM_TAG_SPEED_DUST},
+ {gBattleAnimSpritePal_BlueLightWall, ANIM_TAG_TORN_METAL},
+ {gBattleAnimSpritePal_ThoughtBubble, ANIM_TAG_THOUGHT_BUBBLE},
+ {gBattleAnimSpritePal_MagentaHeart, ANIM_TAG_MAGENTA_HEART},
+ {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_ELECTRIC_ORBS},
+ {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_CIRCLE_OF_LIGHT},
+ {gBattleAnimSpritePal_ElectricOrbs, ANIM_TAG_ELECTRICITY},
+ {gBattleAnimSpritePal_Finger, ANIM_TAG_FINGER_2},
+ {gBattleAnimSpritePal_MovementWaves, ANIM_TAG_MOVEMENT_WAVES},
+ {gBattleAnimSpritePal_RedHeart, ANIM_TAG_RED_HEART},
+ {gBattleAnimSpritePal_RedOrb, ANIM_TAG_RED_ORB},
+ {gBattleAnimSpritePal_EyeSparkle, ANIM_TAG_EYE_SPARKLE},
+ {gBattleAnimSpritePal_PinkHeart, ANIM_TAG_PINK_HEART},
+ {gBattleAnimSpritePal_Angel, ANIM_TAG_ANGEL},
+ {gBattleAnimSpritePal_Devil, ANIM_TAG_DEVIL},
+ {gBattleAnimSpritePal_Swipe, ANIM_TAG_SWIPE},
+ {gBattleAnimSpritePal_Roots, ANIM_TAG_ROOTS},
+ {gBattleAnimSpritePal_ItemBag, ANIM_TAG_ITEM_BAG},
+ {gBattleAnimSpritePal_JaggedMusicNote, ANIM_TAG_JAGGED_MUSIC_NOTE},
+ {gBattleAnimSpritePal_Pokeball, ANIM_TAG_POKEBALL},
+ {gBattleAnimSpritePal_Pokeball, ANIM_TAG_SPOTLIGHT},
+ {gBattleAnimSpritePal_LetterZ, ANIM_TAG_LETTER_Z},
+ {gBattleAnimSpritePal_RapidSpin, ANIM_TAG_RAPID_SPIN},
+ {gBattleAnimSpritePal_TriAttackTriangle, ANIM_TAG_TRI_ATTACK_TRIANGLE},
+ {gBattleAnimSpritePal_WispOrb, ANIM_TAG_WISP_ORB},
+ {gBattleAnimSpritePal_WispOrb, ANIM_TAG_WISP_FIRE},
+ {gBattleAnimSpritePal_GoldStars, ANIM_TAG_GOLD_STARS},
+ {gBattleAnimSpritePal_EclipsingOrb, ANIM_TAG_ECLIPSING_ORB},
+ {gBattleAnimSpritePal_GrayOrb, ANIM_TAG_GRAY_ORB},
+ {gBattleAnimSpritePal_BlueOrb, ANIM_TAG_BLUE_ORB},
+ {gBattleAnimSpritePal_RedOrb2, ANIM_TAG_RED_ORB_2},
+ {gBattleAnimSpritePal_PinkPetal, ANIM_TAG_PINK_PETAL},
+ {gBattleAnimSpritePal_PainSplit, ANIM_TAG_PAIN_SPLIT},
+ {gBattleAnimSpritePal_Confetti, ANIM_TAG_CONFETTI},
+ {gBattleAnimSpritePal_GreenStar, ANIM_TAG_GREEN_STAR},
+ {gBattleAnimSpritePal_PinkCloud, ANIM_TAG_PINK_CLOUD},
+ {gBattleAnimSpritePal_SweatDrop, ANIM_TAG_SWEAT_DROP},
+ {gBattleAnimSpritePal_GuardRing, ANIM_TAG_GUARD_RING},
+ {gBattleAnimSpritePal_PurpleScratch, ANIM_TAG_PURPLE_SCRATCH},
+ {gBattleAnimSpritePal_PurpleScratch, ANIM_TAG_PURPLE_SWIPE},
+ {gBattleAnimSpritePal_Finger, ANIM_TAG_TAG_HAND},
+ {gBattleAnimSpritePal_SmallRedEye, ANIM_TAG_SMALL_RED_EYE},
+ {gBattleAnimSpritePal_HollowOrb, ANIM_TAG_HOLLOW_ORB},
+ {gBattleAnimSpritePal_HollowOrb, ANIM_TAG_X_SIGN},
+ {gBattleAnimSpritePal_BluegreenOrb, ANIM_TAG_BLUEGREEN_ORB},
+ {gBattleAnimSpritePal_PawPrint, ANIM_TAG_PAW_PRINT},
+ {gBattleAnimSpritePal_PurpleFlame, ANIM_TAG_PURPLE_FLAME},
+ {gBattleAnimSpritePal_RedBall, ANIM_TAG_RED_BALL},
+ {gBattleAnimSpritePal_SmellingsaltEffect, ANIM_TAG_SMELLINGSALT_EFFECT},
+ {gBattleAnimSpritePal_Meteor, ANIM_TAG_METEOR},
+ {gBattleAnimSpritePal_FlatRock, ANIM_TAG_FLAT_ROCK},
+ {gBattleAnimSpritePal_MagnifyingGlass, ANIM_TAG_MAGNIFYING_GLASS},
+ {gBattleAnimSpritePal_BrownOrb, ANIM_TAG_BROWN_ORB},
+ {gBattleAnimSpritePal_MetalSoundWaves, ANIM_TAG_METAL_SOUND_WAVES},
+ {gBattleAnimSpritePal_FlyingDirt, ANIM_TAG_FLYING_DIRT},
+ {gBattleAnimSpritePal_IcicleSpear, ANIM_TAG_ICICLE_SPEAR},
+ {gBattleAnimSpritePal_Hail, ANIM_TAG_HAIL},
+ {gBattleAnimSpritePal_GlowyRedOrb, ANIM_TAG_GLOWY_RED_ORB},
+ {gBattleAnimSpritePal_GlowyGreenOrb, ANIM_TAG_GLOWY_GREEN_ORB},
+ {gBattleAnimSpritePal_GreenSpike, ANIM_TAG_GREEN_SPIKE},
+ {gBattleAnimSpritePal_WhiteCircleOfLight, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT},
+ {gBattleAnimSpritePal_GlowyBlueOrb, ANIM_TAG_GLOWY_BLUE_ORB},
+ {gBattleAnimSpritePal_Pokeblock, ANIM_TAG_POKEBLOCK},
+ {gBattleAnimSpritePal_WhiteFeather, ANIM_TAG_WHITE_FEATHER},
+ {gBattleAnimSpritePal_Sparkle6, ANIM_TAG_SPARKLE_6},
+ {gBattleAnimSpritePal_Splash, ANIM_TAG_SPLASH},
+ {gBattleAnimSpritePal_Splash, ANIM_TAG_SWEAT_BEAD},
+ {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_1},
+ {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_2},
+ {gBattleAnimSpritePal_Gem1, ANIM_TAG_GEM_3},
+ {gBattleAnimSpritePal_SlamHit2, ANIM_TAG_SLAM_HIT_2},
+ {gBattleAnimSpritePal_Recycle, ANIM_TAG_RECYCLE},
+ {gBattleAnimSpritePal_RedParticles, ANIM_TAG_RED_PARTICLES},
+ {gBattleAnimSpritePal_Protect, ANIM_TAG_PROTECT},
+ {gBattleAnimSpritePal_DirtMound, ANIM_TAG_DIRT_MOUND},
+ {gBattleAnimSpritePal_Shock3, ANIM_TAG_SHOCK_3},
+ {gBattleAnimSpritePal_WeatherBall, ANIM_TAG_WEATHER_BALL},
+ {gBattleAnimSpritePal_Bird, ANIM_TAG_BIRD},
+ {gBattleAnimSpritePal_CrossImpact, ANIM_TAG_CROSS_IMPACT},
+ {gBattleAnimSpritePal_Slash2, ANIM_TAG_SLASH_2},
+ {gBattleAnimSpritePal_WhipHit, ANIM_TAG_WHIP_HIT},
+ {gBattleAnimSpritePal_BlueRing2, ANIM_TAG_BLUE_RING_2},
+};
+
+const struct BattleAnimBackground gBattleAnimBackgroundTable[] =
+{
+ [BG_NONE] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark},
+ [BG_DARK] = {gBattleAnimBgImage_Dark, gBattleAnimBgPalette_Dark, gBattleAnimBgTilemap_Dark},
+ [BG_GHOST] = {gBattleAnimBgImage_Ghost, gBattleAnimBgPalette_Ghost, gBattleAnimBgTilemap_Ghost},
+ [BG_PSYCHIC] = {gBattleAnimBgImage_Psychic, gBattleAnimBgPalette_Psychic, gBattleAnimBgTilemap_Psychic},
+ [BG_IMPACT_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactOpponent},
+ [BG_IMPACT_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactPlayer},
+ [BG_IMPACT_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Impact, gBattleAnimBgTilemap_ImpactContests},
+ [BG_DRILL] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_Drill},
+ [BG_DRILL_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Drill, gBattleAnimBgTilemap_DrillContests},
+ [BG_HIGHSPEED_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedOpponent},
+ [BG_HIGHSPEED_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Highspeed, gBattleAnimBgTilemap_HighspeedPlayer},
+ [BG_THUNDER] = {gBattleAnimBgImage_Thunder, gBattleAnimBgPalette_Thunder, gBattleAnimBgTilemap_Thunder},
+ [BG_GUILLOTINE_OPPONENT] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineOpponent},
+ [BG_GUILLOTINE_PLAYER] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotinePlayer},
+ [BG_GUILLOTINE_CONTESTS] = {gBattleAnimBgImage_Guillotine, gBattleAnimBgPalette_Guillotine, gBattleAnimBgTilemap_GuillotineContests},
+ [BG_ICE] = {gBattleAnimBgImage_Ice, gBattleAnimBgPalette_Ice, gBattleAnimBgTilemap_Ice},
+ [BG_COSMIC] = {gBattleAnimBgImage_Cosmic, gBattleAnimBgPalette_Cosmic, gBattleAnimBgTilemap_Cosmic},
+ [BG_IN_AIR] = {gBattleAnimBgImage_InAir, gBattleAnimBgPalette_InAir, gBattleAnimBgTilemap_InAir},
+ [BG_SKY] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_Drill},
+ [BG_SKY_CONTESTS] = {gBattleAnimBgImage_Drill, gBattleAnimBgPalette_Sky, gBattleAnimBgTilemap_DrillContests},
+ [BG_AURORA] = {gBattleAnimBgImage_Aurora, gBattleAnimBgPalette_Aurora, gBattleAnimBgTilemap_Aurora},
+ [BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure},
+ [BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent},
+ [BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer},
+ [BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent},
+ [BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer},
+ [BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests},
+};