From 874f1c9832ea398c79987fc93ded009f57d8bb40 Mon Sep 17 00:00:00 2001 From: GriffinR Date: Fri, 12 Aug 2022 11:48:45 -0400 Subject: [PATCH] Sync data.c --- include/data.h | 21 +- src/data.c | 207 +++---- src/data/trainer_graphics/front_pic_anims.h | 592 ++++++++++---------- src/pokemon.c | 32 +- src/trainer_pokemon_sprites.c | 13 +- 5 files changed, 429 insertions(+), 436 deletions(-) diff --git a/include/data.h b/include/data.h index 55eda56a4..6fb3bcab2 100644 --- a/include/data.h +++ b/include/data.h @@ -16,10 +16,6 @@ struct MonCoords extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1]; extern const u8 gMoveNames[][13]; -extern const u16 gUnknown_8251CB8[]; -extern const u16 gUnknown_8251FEE[]; -extern const u16 gUnknown_8252324[]; -extern const u16 gUnknown_82539D4[]; extern const u8 gTrainerClassNames[][13]; @@ -32,6 +28,7 @@ extern const struct CompressedSpritePalette gMonShinyPaletteTable[]; extern const union AnimCmd *const *const gTrainerFrontAnimsPtrTable[]; extern const struct MonCoords gTrainerFrontPicCoords[]; extern const struct CompressedSpriteSheet gTrainerFrontPicTable[]; +extern const struct CompressedSpriteSheet gTrainerBackPicTable[]; extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[]; extern const union AnimCmd *const *const gTrainerBackAnimsPtrTable[]; extern const struct MonCoords gTrainerBackPicCoords[]; @@ -45,15 +42,13 @@ extern const u8 gEnemyMonElevation[NUM_SPECIES]; extern const u8 *const gBattleAnims_General[]; extern const u8 *const gBattleAnims_Special[]; -extern const struct OamData gUnknown_824F010; -extern const struct OamData gUnknown_824F018; -extern const union AnimCmd *const gSpriteAnimTable_82349BC[]; -extern const union AffineAnimCmd *const gSpriteAffineAnimTable_BattlerPlayer[]; -extern const union AffineAnimCmd *const gSpriteAffineAnimTable_BattlerOpponent[]; -extern const struct SpriteFrameImage gSpriteImages_BattlerPlayerLeft[]; -extern const struct SpriteFrameImage gSpriteImages_BattlerOpponentLeft[]; -extern const struct SpriteFrameImage gSpriteImages_BattlerPlayerRight[]; -extern const struct SpriteFrameImage gSpriteImages_BattlerOpponentRight[]; +extern const union AnimCmd *const gAnims_MonPic[]; +extern const union AffineAnimCmd *const gAffineAnims_BattleSpritePlayerSide[]; +extern const union AffineAnimCmd *const gAffineAnims_BattleSpriteOpponentSide[]; +extern const struct SpriteFrameImage gBattlerPicTable_PlayerLeft[]; +extern const struct SpriteFrameImage gBattlerPicTable_OpponentLeft[]; +extern const struct SpriteFrameImage gBattlerPicTable_PlayerRight[]; +extern const struct SpriteFrameImage gBattlerPicTable_OpponentRight[]; extern const struct SpriteFrameImage gTrainerBackPicTable_Red[]; extern const struct SpriteFrameImage gTrainerBackPicTable_Leaf[]; extern const struct SpriteFrameImage gTrainerBackPicTable_Pokedude[]; diff --git a/src/data.c b/src/data.c index 2b1d802ab..498f281b4 100644 --- a/src/data.c +++ b/src/data.c @@ -8,36 +8,38 @@ #include "constants/battle_ai.h" #include "constants/trainers.h" -const struct SpriteFrameImage gSpriteImages_BattlerPlayerLeft[] = +#define BATTLER_OFFSET(i) (gHeap + 0x8000 + MON_PIC_SIZE * (i)) + +const struct SpriteFrameImage gBattlerPicTable_PlayerLeft[] = { - gHeap + 0x8000, 0x800, - gHeap + 0x8800, 0x800, - gHeap + 0x9000, 0x800, - gHeap + 0x9800, 0x800, + BATTLER_OFFSET(0), MON_PIC_SIZE, + BATTLER_OFFSET(1), MON_PIC_SIZE, + BATTLER_OFFSET(2), MON_PIC_SIZE, + BATTLER_OFFSET(3), MON_PIC_SIZE, }; -const struct SpriteFrameImage gSpriteImages_BattlerOpponentLeft[] = +const struct SpriteFrameImage gBattlerPicTable_OpponentLeft[] = { - gHeap + 0xA000, 0x800, - gHeap + 0xA800, 0x800, - gHeap + 0xB000, 0x800, - gHeap + 0xB800, 0x800, + BATTLER_OFFSET(4), MON_PIC_SIZE, + BATTLER_OFFSET(5), MON_PIC_SIZE, + BATTLER_OFFSET(6), MON_PIC_SIZE, + BATTLER_OFFSET(7), MON_PIC_SIZE, }; -const struct SpriteFrameImage gSpriteImages_BattlerPlayerRight[] = +const struct SpriteFrameImage gBattlerPicTable_PlayerRight[] = { - gHeap + 0xC000, 0x800, - gHeap + 0xC800, 0x800, - gHeap + 0xD000, 0x800, - gHeap + 0xD800, 0x800, + BATTLER_OFFSET(8), MON_PIC_SIZE, + BATTLER_OFFSET(9), MON_PIC_SIZE, + BATTLER_OFFSET(10), MON_PIC_SIZE, + BATTLER_OFFSET(11), MON_PIC_SIZE, }; -const struct SpriteFrameImage gSpriteImages_BattlerOpponentRight[] = +const struct SpriteFrameImage gBattlerPicTable_OpponentRight[] = { - gHeap + 0xE000, 0x800, - gHeap + 0xE800, 0x800, - gHeap + 0xF000, 0x800, - gHeap + 0xF800, 0x800, + BATTLER_OFFSET(12), MON_PIC_SIZE, + BATTLER_OFFSET(13), MON_PIC_SIZE, + BATTLER_OFFSET(14), MON_PIC_SIZE, + BATTLER_OFFSET(15), MON_PIC_SIZE, }; const struct SpriteFrameImage gTrainerBackPicTable_Red[] = @@ -102,172 +104,177 @@ static const union AnimCmd sAnim_GeneralFrame3[] = ANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_82347F8[] = +// Many of these affine anims seem to go unused, and +// instead SetSpriteRotScale is used to manipulate +// the battler sprites directly (for instance, in AnimTask_SwitchOutShrinkMon). +// Those with explicit indexes are referenced elsewhere. + +static const union AffineAnimCmd sAffineAnim_Battler_Normal[] = { - AFFINEANIMCMD_FRAME(0x0100, 0x0100, 0x00, 0x00), + AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_8234808[] = +static const union AffineAnimCmd sAffineAnim_Battler_Flipped[] = { - AFFINEANIMCMD_FRAME(0xff00, 0x0100, 0x00, 0x00), + AFFINEANIMCMD_FRAME(-0x100, 0x0100, 0, 0), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_8234818[] = +static const union AffineAnimCmd sAffineAnim_Battler_Emerge[] = { - AFFINEANIMCMD_FRAME(0x0028, 0x0028, 0x00, 0x00), - AFFINEANIMCMD_FRAME(0x0012, 0x0012, 0x00, 0x0c), + AFFINEANIMCMD_FRAME(0x28, 0x28, 0, 0), + AFFINEANIMCMD_FRAME(0x12, 0x12, 0, 12), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_8234830[] = +static const union AffineAnimCmd sAffineAnim_Battler_Return[] = { - AFFINEANIMCMD_FRAME(0xfffe, 0xfffe, 0x00, 0x12), - AFFINEANIMCMD_FRAME(0xfff0, 0xfff0, 0x00, 0x0f), + AFFINEANIMCMD_FRAME(-0x2, -0x2, 0, 18), + AFFINEANIMCMD_FRAME(-0x10, -0x10, 0, 15), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_8234848[] = +static const union AffineAnimCmd sAffineAnim_Battler_HorizontalSquishLoop[] = { - AFFINEANIMCMD_FRAME(0x00a0, 0x0100, 0x00, 0x00), - AFFINEANIMCMD_FRAME(0x0004, 0x0000, 0x00, 0x08), - AFFINEANIMCMD_FRAME(0xfffc, 0x0000, 0x00, 0x08), + AFFINEANIMCMD_FRAME(0xA0, 0x100, 0, 0), + AFFINEANIMCMD_FRAME( 0x4, 0x0, 0, 8), + AFFINEANIMCMD_FRAME(-0x4, 0x0, 0, 8), AFFINEANIMCMD_JUMP(1), }; -static const union AffineAnimCmd gSpriteAffineAnim_8234868[] = +static const union AffineAnimCmd sAffineAnim_Battler_Grow[] = { - AFFINEANIMCMD_FRAME(0x0002, 0x0002, 0x00, 0x14), + AFFINEANIMCMD_FRAME(0x2, 0x2, 0, 20), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_8234878[] = +static const union AffineAnimCmd sAffineAnim_Battler_Shrink[] = { - AFFINEANIMCMD_FRAME(0xfffe, 0xfffe, 0x00, 0x14), + AFFINEANIMCMD_FRAME(-0x2, -0x2, 0, 20), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_8234888[] = +static const union AffineAnimCmd sAffineAnim_Battler_BigToSmall[] = { - AFFINEANIMCMD_FRAME(0x0100, 0x0100, 0x00, 0000), - AFFINEANIMCMD_FRAME(0xfff0, 0xfff0, 0x00, 0x09), + AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), + AFFINEANIMCMD_FRAME(-0x10, -0x10, 0, 9), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_82348A0[] = +static const union AffineAnimCmd sAffineAnim_Battler_GrowLarge[] = { - AFFINEANIMCMD_FRAME(0x0004, 0x0004, 0x00, 0x3f), + AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 63), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_82348B0[] = +static const union AffineAnimCmd sAffineAnim_Battler_TipRight[] = { - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0xfd, 0x05), - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x03, 0x05), + AFFINEANIMCMD_FRAME(0x0, 0x0, -3, 5), + AFFINEANIMCMD_FRAME(0x0, 0x0, 3, 5), AFFINEANIMCMD_END, }; -const union AffineAnimCmd *const gSpriteAffineAnimTable_BattlerPlayer[] = +const union AffineAnimCmd *const gAffineAnims_BattleSpritePlayerSide[] = { - gSpriteAffineAnim_82347F8, - gSpriteAffineAnim_8234818, - gSpriteAffineAnim_8234830, - gSpriteAffineAnim_8234848, - gSpriteAffineAnim_8234868, - gSpriteAffineAnim_8234878, - gSpriteAffineAnim_82348A0, - gSpriteAffineAnim_82348B0, - gSpriteAffineAnim_8234888, + [BATTLER_AFFINE_NORMAL] = sAffineAnim_Battler_Normal, + [BATTLER_AFFINE_EMERGE] = sAffineAnim_Battler_Emerge, + [BATTLER_AFFINE_RETURN] = sAffineAnim_Battler_Return, + sAffineAnim_Battler_HorizontalSquishLoop, + sAffineAnim_Battler_Grow, + sAffineAnim_Battler_Shrink, + sAffineAnim_Battler_GrowLarge, + sAffineAnim_Battler_TipRight, + sAffineAnim_Battler_BigToSmall, }; -static const union AffineAnimCmd gSpriteAffineAnim_82348EC[] = +static const union AffineAnimCmd sAffineAnim_Battler_SpinShrink[] = { - AFFINEANIMCMD_FRAME(0xfffc, 0xfffc, 0x04, 0x3f), + AFFINEANIMCMD_FRAME(-0x4, -0x4, 4, 63), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_82348FC[] = +static const union AffineAnimCmd sAffineAnim_Battler_TipLeft[] = { - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x03, 0x05), - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0xfd, 0x05), + AFFINEANIMCMD_FRAME(0x0, 0x0, 3, 5), + AFFINEANIMCMD_FRAME(0x0, 0x0, -3, 5), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_8234914[] = +static const union AffineAnimCmd sAffineAnim_Battler_RotateUpAndBack[] = { - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0xfb, 0x14), - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x00, 0x14), - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x05, 0x14), + AFFINEANIMCMD_FRAME(0x0, 0x0, -5, 20), + AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 20), + AFFINEANIMCMD_FRAME(0x0, 0x0, 5, 20), AFFINEANIMCMD_END, }; -static const union AffineAnimCmd gSpriteAffineAnim_8234934[] = +static const union AffineAnimCmd sAffineAnim_Battler_Spin[] = { - AFFINEANIMCMD_FRAME(0x0000, 0x0000, 0x09, 0x6e), + AFFINEANIMCMD_FRAME(0x0, 0x0, 9, 110), AFFINEANIMCMD_END, }; -const union AffineAnimCmd *const gSpriteAffineAnimTable_BattlerOpponent[] = +const union AffineAnimCmd *const gAffineAnims_BattleSpriteOpponentSide[] = { - gSpriteAffineAnim_82347F8, - gSpriteAffineAnim_8234818, - gSpriteAffineAnim_8234830, - gSpriteAffineAnim_8234848, - gSpriteAffineAnim_8234868, - gSpriteAffineAnim_8234878, - gSpriteAffineAnim_82348EC, - gSpriteAffineAnim_82348FC, - gSpriteAffineAnim_8234914, - gSpriteAffineAnim_8234888, - gSpriteAffineAnim_8234934, + [BATTLER_AFFINE_NORMAL] = sAffineAnim_Battler_Normal, + [BATTLER_AFFINE_EMERGE] = sAffineAnim_Battler_Emerge, + [BATTLER_AFFINE_RETURN] = sAffineAnim_Battler_Return, + sAffineAnim_Battler_HorizontalSquishLoop, + sAffineAnim_Battler_Grow, + sAffineAnim_Battler_Shrink, + sAffineAnim_Battler_SpinShrink, + sAffineAnim_Battler_TipLeft, + sAffineAnim_Battler_RotateUpAndBack, + sAffineAnim_Battler_BigToSmall, + sAffineAnim_Battler_Spin, }; -const union AffineAnimCmd *const gSpriteAffineAnimTable_82349470[] = +const union AffineAnimCmd *const gAffineAnims_BattleSpriteContest[] = { - gSpriteAffineAnim_8234808, - gSpriteAffineAnim_8234818, - gSpriteAffineAnim_8234830, - gSpriteAffineAnim_8234848, - gSpriteAffineAnim_8234868, - gSpriteAffineAnim_8234878, - gSpriteAffineAnim_82348EC, - gSpriteAffineAnim_82348FC, - gSpriteAffineAnim_8234914, - gSpriteAffineAnim_8234888, - gSpriteAffineAnim_8234934, + [BATTLER_AFFINE_NORMAL] = sAffineAnim_Battler_Flipped, + [BATTLER_AFFINE_EMERGE] = sAffineAnim_Battler_Emerge, + [BATTLER_AFFINE_RETURN] = sAffineAnim_Battler_Return, + sAffineAnim_Battler_HorizontalSquishLoop, + sAffineAnim_Battler_Grow, + sAffineAnim_Battler_Shrink, + sAffineAnim_Battler_SpinShrink, + sAffineAnim_Battler_TipLeft, + sAffineAnim_Battler_RotateUpAndBack, + sAffineAnim_Battler_BigToSmall, + sAffineAnim_Battler_Spin, }; -static const union AnimCmd gSpriteAnim_823499C[] = +static const union AnimCmd sAnim_MonPic_0[] = { ANIMCMD_FRAME(0, 0), ANIMCMD_END, }; -static const union AnimCmd gSpriteAnim_82349A4[] = +static const union AnimCmd sAnim_MonPic_1[] = { ANIMCMD_FRAME(1, 0), ANIMCMD_END, }; -static const union AnimCmd gSpriteAnim_82349AC[] = +static const union AnimCmd sAnim_MonPic_2[] = { ANIMCMD_FRAME(2, 0), ANIMCMD_END, }; -static const union AnimCmd gSpriteAnim_82349B4[] = +static const union AnimCmd sAnim_MonPic_3[] = { ANIMCMD_FRAME(3, 0), ANIMCMD_END, }; -const union AnimCmd *const gSpriteAnimTable_82349BC[] = +const union AnimCmd *const gAnims_MonPic[] = { - gSpriteAnim_823499C, - gSpriteAnim_82349A4, - gSpriteAnim_82349AC, - gSpriteAnim_82349B4, + sAnim_MonPic_0, + sAnim_MonPic_1, + sAnim_MonPic_2, + sAnim_MonPic_3, }; #define SPECIES_SPRITE(species, sprite) [SPECIES_##species] = {sprite, 0x800, SPECIES_##species} diff --git a/src/data/trainer_graphics/front_pic_anims.h b/src/data/trainer_graphics/front_pic_anims.h index 32d38068a..2013ebb4b 100644 --- a/src/data/trainer_graphics/front_pic_anims.h +++ b/src/data/trainer_graphics/front_pic_anims.h @@ -1,891 +1,891 @@ -static const union AnimCmd *const sAnims_8238E8C[] = +static const union AnimCmd *const sAnims_AquaLeaderArchie[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238E90[] = +static const union AnimCmd *const sAnims_AquaGruntM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238E94[] = +static const union AnimCmd *const sAnims_AquaGruntF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238E98[] = +static const union AnimCmd *const sAnims_RSAromaLady[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238E9C[] = +static const union AnimCmd *const sAnims_RSRuinManiac[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EA0[] = +static const union AnimCmd *const sAnims_Interviewer[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EA4[] = +static const union AnimCmd *const sAnims_RSTuberF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EA8[] = +static const union AnimCmd *const sAnims_RSTuberM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EAC[] = +static const union AnimCmd *const sAnims_RSCooltrainerM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EB0[] = +static const union AnimCmd *const sAnims_RSCooltrainerF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EB4[] = +static const union AnimCmd *const sAnims_HexManiac[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EB8[] = +static const union AnimCmd *const sAnims_RSLady[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EBC[] = +static const union AnimCmd *const sAnims_RSBeauty[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EC0[] = +static const union AnimCmd *const sAnims_RichBoy[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EC4[] = +static const union AnimCmd *const sAnims_RSPokemaniac[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EC8[] = +static const union AnimCmd *const sAnims_RSSwimmerM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238ECC[] = +static const union AnimCmd *const sAnims_RSBlackBelt[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238ED0[] = +static const union AnimCmd *const sAnims_Guitarist[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238ED4[] = +static const union AnimCmd *const sAnims_Kindler[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238ED8[] = +static const union AnimCmd *const sAnims_RSCamper[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EDC[] = +static const union AnimCmd *const sAnims_BugManiac[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EE0[] = +static const union AnimCmd *const sAnims_RSPsychicM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EE4[] = +static const union AnimCmd *const sAnims_RSPsychicF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EE8[] = +static const union AnimCmd *const sAnims_RSGentleman[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EEC[] = +static const union AnimCmd *const sAnims_EliteFourSidney[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EF0[] = +static const union AnimCmd *const sAnims_EliteFourPhoebe[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EF4[] = +static const union AnimCmd *const sAnims_LeaderRoxanne[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EF8[] = +static const union AnimCmd *const sAnims_LeaderBrawly[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238EFC[] = +static const union AnimCmd *const sAnims_LeaderTateAndLiza[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F00[] = +static const union AnimCmd *const sAnims_SchoolKidM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F04[] = +static const union AnimCmd *const sAnims_SchoolKidF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F08[] = +static const union AnimCmd *const sAnims_SrAndJr[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F0C[] = +static const union AnimCmd *const sAnims_PokefanM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F10[] = +static const union AnimCmd *const sAnims_PokefanF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F14[] = +static const union AnimCmd *const sAnims_ExpertM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F18[] = +static const union AnimCmd *const sAnims_ExpertF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F1C[] = +static const union AnimCmd *const sAnims_RSYoungster[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F20[] = +static const union AnimCmd *const sAnims_ChampionSteven[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F24[] = +static const union AnimCmd *const sAnims_RSFisherman[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F28[] = +static const union AnimCmd *const sAnims_CyclingTriathleteM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F2C[] = +static const union AnimCmd *const sAnims_CyclingTriathleteF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F30[] = +static const union AnimCmd *const sAnims_RunningTriathleteM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F34[] = +static const union AnimCmd *const sAnims_RunningTriathleteF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F38[] = +static const union AnimCmd *const sAnims_SwimmingTriathleteM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F3C[] = +static const union AnimCmd *const sAnims_SwimmingTriathleteF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F40[] = +static const union AnimCmd *const sAnims_DragonTamer[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F44[] = +static const union AnimCmd *const sAnims_RSBirdKeeper[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F48[] = +static const union AnimCmd *const sAnims_NinjaBoy[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F4C[] = +static const union AnimCmd *const sAnims_BattleGirl[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F50[] = +static const union AnimCmd *const sAnims_ParasolLady[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F54[] = +static const union AnimCmd *const sAnims_RSSwimmerF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F58[] = +static const union AnimCmd *const sAnims_RSPicnicker[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F5C[] = +static const union AnimCmd *const sAnims_RSTwins[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F60[] = +static const union AnimCmd *const sAnims_RSSailor[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F64[] = +static const union AnimCmd *const sAnims_Collector[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F68[] = +static const union AnimCmd *const sAnims_Wally[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F6C[] = +static const union AnimCmd *const sAnims_RSBrendan1[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F70[] = +static const union AnimCmd *const sAnims_RSMay1[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F74[] = +static const union AnimCmd *const sAnims_RSPokemonBreederM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F78[] = +static const union AnimCmd *const sAnims_RSPokemonBreederF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F7C[] = +static const union AnimCmd *const sAnims_RSPokemonRangerM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F80[] = +static const union AnimCmd *const sAnims_RSPokemonRangerF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F84[] = +static const union AnimCmd *const sAnims_MagmaLeaderMaxie[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F88[] = +static const union AnimCmd *const sAnims_MagmaGruntM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F8C[] = +static const union AnimCmd *const sAnims_MagmaGruntF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F90[] = +static const union AnimCmd *const sAnims_RSLass[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F94[] = +static const union AnimCmd *const sAnims_RSBugCatcher[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F98[] = +static const union AnimCmd *const sAnims_RSHiker[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238F9C[] = +static const union AnimCmd *const sAnims_RSYoungCouple[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FA0[] = +static const union AnimCmd *const sAnims_OldCouple[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FA4[] = +static const union AnimCmd *const sAnims_RSSisAndBro[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FA8[] = +static const union AnimCmd *const sAnims_AquaAdminM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FAC[] = +static const union AnimCmd *const sAnims_AquaAdminF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FB0[] = +static const union AnimCmd *const sAnims_MagmaAdminM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FB4[] = +static const union AnimCmd *const sAnims_MagmaAdminF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FB8[] = +static const union AnimCmd *const sAnims_LeaderWattson[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FBC[] = +static const union AnimCmd *const sAnims_LeaderFlannery[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FC0[] = +static const union AnimCmd *const sAnims_LeaderNorman[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FC4[] = +static const union AnimCmd *const sAnims_LeaderWinona[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FC8[] = +static const union AnimCmd *const sAnims_LeaderWallace[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FCC[] = +static const union AnimCmd *const sAnims_EliteFourGlacia[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FD0[] = +static const union AnimCmd *const sAnims_EliteFourDrake[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FD4[] = +static const union AnimCmd *const sAnims_Youngster[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FD8[] = +static const union AnimCmd *const sAnims_BugCatcher[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FDC[] = +static const union AnimCmd *const sAnims_Lass[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FE0[] = +static const union AnimCmd *const sAnims_Sailor[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FE4[] = +static const union AnimCmd *const sAnims_Camper[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FE8[] = +static const union AnimCmd *const sAnims_Picnicker[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FEC[] = +static const union AnimCmd *const sAnims_Pokemaniac[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FF0[] = +static const union AnimCmd *const sAnims_SuperNerd[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FF4[] = +static const union AnimCmd *const sAnims_Hiker[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FF8[] = +static const union AnimCmd *const sAnims_Biker[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8238FFC[] = +static const union AnimCmd *const sAnims_Burglar[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239000[] = +static const union AnimCmd *const sAnims_Engineer[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239004[] = +static const union AnimCmd *const sAnims_Fisherman[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239008[] = +static const union AnimCmd *const sAnims_SwimmerM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823900C[] = +static const union AnimCmd *const sAnims_CueBall[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239010[] = +static const union AnimCmd *const sAnims_Gamer[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239014[] = +static const union AnimCmd *const sAnims_Beauty[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239018[] = +static const union AnimCmd *const sAnims_SwimmerF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823901C[] = +static const union AnimCmd *const sAnims_PsychicM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239020[] = +static const union AnimCmd *const sAnims_Rocker[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239024[] = +static const union AnimCmd *const sAnims_Juggler[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239028[] = +static const union AnimCmd *const sAnims_Tamer[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823902C[] = +static const union AnimCmd *const sAnims_BirdKeeper[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239030[] = +static const union AnimCmd *const sAnims_BlackBelt[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239034[] = +static const union AnimCmd *const sAnims_RivalEarly[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239038[] = +static const union AnimCmd *const sAnims_Scientist[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823903C[] = +static const union AnimCmd *const sAnims_LeaderGiovanni[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239040[] = +static const union AnimCmd *const sAnims_RocketGruntM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239044[] = +static const union AnimCmd *const sAnims_CooltrainerM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239048[] = +static const union AnimCmd *const sAnims_CooltrainerF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823904C[] = +static const union AnimCmd *const sAnims_EliteFourLorelei[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239050[] = +static const union AnimCmd *const sAnims_EliteFourBruno[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239054[] = +static const union AnimCmd *const sAnims_EliteFourAgatha[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239058[] = +static const union AnimCmd *const sAnims_EliteFourLance[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823905C[] = +static const union AnimCmd *const sAnims_LeaderBrock[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239060[] = +static const union AnimCmd *const sAnims_LeaderMisty[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239064[] = +static const union AnimCmd *const sAnims_LeaderLtSurge[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239068[] = +static const union AnimCmd *const sAnims_LeaderErika[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823906C[] = +static const union AnimCmd *const sAnims_LeaderKoga[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239070[] = +static const union AnimCmd *const sAnims_LeaderBlaine[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239074[] = +static const union AnimCmd *const sAnims_LeaderSabrina[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239078[] = +static const union AnimCmd *const sAnims_Gentleman[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823907C[] = +static const union AnimCmd *const sAnims_RivalLate[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239080[] = +static const union AnimCmd *const sAnims_ChampionRival[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239084[] = +static const union AnimCmd *const sAnims_Channeler[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239088[] = +static const union AnimCmd *const sAnims_Twins[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823908C[] = +static const union AnimCmd *const sAnims_CoolCouple[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239090[] = +static const union AnimCmd *const sAnims_YoungCouple[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239094[] = +static const union AnimCmd *const sAnims_CrushKin[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_8239098[] = +static const union AnimCmd *const sAnims_SisAndBro[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_823909C[] = +static const union AnimCmd *const sAnims_ProfessorOak[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390A0[] = +static const union AnimCmd *const sAnims_RSBrendan2[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390A4[] = +static const union AnimCmd *const sAnims_RSMay2[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390A8[] = +static const union AnimCmd *const sAnims_Red[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390AC[] = +static const union AnimCmd *const sAnims_Leaf[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390B0[] = +static const union AnimCmd *const sAnims_RocketGruntF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390B4[] = +static const union AnimCmd *const sAnims_PsychicF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390B8[] = +static const union AnimCmd *const sAnims_CrushGirl[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390BC[] = +static const union AnimCmd *const sAnims_TuberF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390C0[] = +static const union AnimCmd *const sAnims_PokemonBreeder[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390C4[] = +static const union AnimCmd *const sAnims_PokemonRangerM[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390C8[] = +static const union AnimCmd *const sAnims_PokemonRangerF[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390CC[] = +static const union AnimCmd *const sAnims_AromaLady[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390D0[] = +static const union AnimCmd *const sAnims_RuinManiac[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390D4[] = +static const union AnimCmd *const sAnims_Lady[] = { sAnim_GeneralFrame0, }; -static const union AnimCmd *const sAnims_82390D8[] = +static const union AnimCmd *const sAnims_Painter[] = { sAnim_GeneralFrame0, }; const union AnimCmd *const *const gTrainerFrontAnimsPtrTable[] = { - sAnims_8238E8C, - sAnims_8238E90, - sAnims_8238E94, - sAnims_8238E98, - sAnims_8238E9C, - sAnims_8238EA0, - sAnims_8238EA4, - sAnims_8238EA8, - sAnims_8238EAC, - sAnims_8238EB0, - sAnims_8238EB4, - sAnims_8238EB8, - sAnims_8238EBC, - sAnims_8238EC0, - sAnims_8238EC4, - sAnims_8238EC8, - sAnims_8238ECC, - sAnims_8238ED0, - sAnims_8238ED4, - sAnims_8238ED8, - sAnims_8238EDC, - sAnims_8238EE0, - sAnims_8238EE4, - sAnims_8238EE8, - sAnims_8238EEC, - sAnims_8238EF0, - sAnims_8238EF4, - sAnims_8238EF8, - sAnims_8238EFC, - sAnims_8238F00, - sAnims_8238F04, - sAnims_8238F08, - sAnims_8238F0C, - sAnims_8238F10, - sAnims_8238F14, - sAnims_8238F18, - sAnims_8238F1C, - sAnims_8238F20, - sAnims_8238F24, - sAnims_8238F28, - sAnims_8238F2C, - sAnims_8238F30, - sAnims_8238F34, - sAnims_8238F38, - sAnims_8238F3C, - sAnims_8238F40, - sAnims_8238F44, - sAnims_8238F48, - sAnims_8238F4C, - sAnims_8238F50, - sAnims_8238F54, - sAnims_8238F58, - sAnims_8238F5C, - sAnims_8238F60, - sAnims_8238F64, - sAnims_8238F68, - sAnims_8238F6C, - sAnims_8238F70, - sAnims_8238F74, - sAnims_8238F78, - sAnims_8238F7C, - sAnims_8238F80, - sAnims_8238F84, - sAnims_8238F88, - sAnims_8238F8C, - sAnims_8238F90, - sAnims_8238F94, - sAnims_8238F98, - sAnims_8238F9C, - sAnims_8238FA0, - sAnims_8238FA4, - sAnims_8238FA8, - sAnims_8238FAC, - sAnims_8238FB0, - sAnims_8238FB4, - sAnims_8238FB8, - sAnims_8238FBC, - sAnims_8238FC0, - sAnims_8238FC4, - sAnims_8238FC8, - sAnims_8238FCC, - sAnims_8238FD0, - sAnims_8238FD4, - sAnims_8238FD8, - sAnims_8238FDC, - sAnims_8238FE0, - sAnims_8238FE4, - sAnims_8238FE8, - sAnims_8238FEC, - sAnims_8238FF0, - sAnims_8238FF4, - sAnims_8238FF8, - sAnims_8238FFC, - sAnims_8239000, - sAnims_8239004, - sAnims_8239008, - sAnims_823900C, - sAnims_8239010, - sAnims_8239014, - sAnims_8239018, - sAnims_823901C, - sAnims_8239020, - sAnims_8239024, - sAnims_8239028, - sAnims_823902C, - sAnims_8239030, - sAnims_8239034, - sAnims_8239038, - sAnims_823903C, - sAnims_8239040, - sAnims_8239044, - sAnims_8239048, - sAnims_823904C, - sAnims_8239050, - sAnims_8239054, - sAnims_8239058, - sAnims_823905C, - sAnims_8239060, - sAnims_8239064, - sAnims_8239068, - sAnims_823906C, - sAnims_8239070, - sAnims_8239074, - sAnims_8239078, - sAnims_823907C, - sAnims_8239080, - sAnims_8239084, - sAnims_8239088, - sAnims_823908C, - sAnims_8239090, - sAnims_8239094, - sAnims_8239098, - sAnims_823909C, - sAnims_82390A0, - sAnims_82390A4, - sAnims_82390A8, - sAnims_82390AC, - sAnims_82390B0, - sAnims_82390B4, - sAnims_82390B8, - sAnims_82390BC, - sAnims_82390C0, - sAnims_82390C4, - sAnims_82390C8, - sAnims_82390CC, - sAnims_82390D0, - sAnims_82390D4, - sAnims_82390D8, + [TRAINER_PIC_AQUA_LEADER_ARCHIE] = sAnims_AquaLeaderArchie, + [TRAINER_PIC_AQUA_GRUNT_M] = sAnims_AquaGruntM, + [TRAINER_PIC_AQUA_GRUNT_F] = sAnims_AquaGruntF, + [TRAINER_PIC_RS_AROMA_LADY] = sAnims_RSAromaLady, + [TRAINER_PIC_RS_RUIN_MANIAC] = sAnims_RSRuinManiac, + [TRAINER_PIC_INTERVIEWER] = sAnims_Interviewer, + [TRAINER_PIC_RS_TUBER_F] = sAnims_RSTuberF, + [TRAINER_PIC_RS_TUBER_M] = sAnims_RSTuberM, + [TRAINER_PIC_RS_COOLTRAINER_M] = sAnims_RSCooltrainerM, + [TRAINER_PIC_RS_COOLTRAINER_F] = sAnims_RSCooltrainerF, + [TRAINER_PIC_HEX_MANIAC] = sAnims_HexManiac, + [TRAINER_PIC_RS_LADY] = sAnims_RSLady, + [TRAINER_PIC_RS_BEAUTY] = sAnims_RSBeauty, + [TRAINER_PIC_RICH_BOY] = sAnims_RichBoy, + [TRAINER_PIC_RS_POKEMANIAC] = sAnims_RSPokemaniac, + [TRAINER_PIC_RS_SWIMMER_M] = sAnims_RSSwimmerM, + [TRAINER_PIC_RS_BLACK_BELT] = sAnims_RSBlackBelt, + [TRAINER_PIC_GUITARIST] = sAnims_Guitarist, + [TRAINER_PIC_KINDLER] = sAnims_Kindler, + [TRAINER_PIC_RS_CAMPER] = sAnims_RSCamper, + [TRAINER_PIC_BUG_MANIAC] = sAnims_BugManiac, + [TRAINER_PIC_RS_PSYCHIC_M] = sAnims_RSPsychicM, + [TRAINER_PIC_RS_PSYCHIC_F] = sAnims_RSPsychicF, + [TRAINER_PIC_RS_GENTLEMAN] = sAnims_RSGentleman, + [TRAINER_PIC_ELITE_FOUR_SIDNEY] = sAnims_EliteFourSidney, + [TRAINER_PIC_ELITE_FOUR_PHOEBE] = sAnims_EliteFourPhoebe, + [TRAINER_PIC_LEADER_ROXANNE] = sAnims_LeaderRoxanne, + [TRAINER_PIC_LEADER_BRAWLY] = sAnims_LeaderBrawly, + [TRAINER_PIC_LEADER_TATE_AND_LIZA] = sAnims_LeaderTateAndLiza, + [TRAINER_PIC_SCHOOL_KID_M] = sAnims_SchoolKidM, + [TRAINER_PIC_SCHOOL_KID_F] = sAnims_SchoolKidF, + [TRAINER_PIC_SR_AND_JR] = sAnims_SrAndJr, + [TRAINER_PIC_POKEFAN_M] = sAnims_PokefanM, + [TRAINER_PIC_POKEFAN_F] = sAnims_PokefanF, + [TRAINER_PIC_EXPERT_M] = sAnims_ExpertM, + [TRAINER_PIC_EXPERT_F] = sAnims_ExpertF, + [TRAINER_PIC_RS_YOUNGSTER] = sAnims_RSYoungster, + [TRAINER_PIC_CHAMPION_STEVEN] = sAnims_ChampionSteven, + [TRAINER_PIC_RS_FISHERMAN] = sAnims_RSFisherman, + [TRAINER_PIC_CYCLING_TRIATHLETE_M] = sAnims_CyclingTriathleteM, + [TRAINER_PIC_CYCLING_TRIATHLETE_F] = sAnims_CyclingTriathleteF, + [TRAINER_PIC_RUNNING_TRIATHLETE_M] = sAnims_RunningTriathleteM, + [TRAINER_PIC_RUNNING_TRIATHLETE_F] = sAnims_RunningTriathleteF, + [TRAINER_PIC_SWIMMING_TRIATHLETE_M] = sAnims_SwimmingTriathleteM, + [TRAINER_PIC_SWIMMING_TRIATHLETE_F] = sAnims_SwimmingTriathleteF, + [TRAINER_PIC_DRAGON_TAMER] = sAnims_DragonTamer, + [TRAINER_PIC_RS_BIRD_KEEPER] = sAnims_RSBirdKeeper, + [TRAINER_PIC_NINJA_BOY] = sAnims_NinjaBoy, + [TRAINER_PIC_BATTLE_GIRL] = sAnims_BattleGirl, + [TRAINER_PIC_PARASOL_LADY] = sAnims_ParasolLady, + [TRAINER_PIC_RS_SWIMMER_F] = sAnims_RSSwimmerF, + [TRAINER_PIC_RS_PICNICKER] = sAnims_RSPicnicker, + [TRAINER_PIC_RS_TWINS] = sAnims_RSTwins, + [TRAINER_PIC_RS_SAILOR] = sAnims_RSSailor, + [TRAINER_PIC_COLLECTOR] = sAnims_Collector, + [TRAINER_PIC_WALLY] = sAnims_Wally, + [TRAINER_PIC_RS_BRENDAN_1] = sAnims_RSBrendan1, + [TRAINER_PIC_RS_MAY_1] = sAnims_RSMay1, + [TRAINER_PIC_RS_POKEMON_BREEDER_M] = sAnims_RSPokemonBreederM, + [TRAINER_PIC_RS_POKEMON_BREEDER_F] = sAnims_RSPokemonBreederF, + [TRAINER_PIC_RS_POKEMON_RANGER_M] = sAnims_RSPokemonRangerM, + [TRAINER_PIC_RS_POKEMON_RANGER_F] = sAnims_RSPokemonRangerF, + [TRAINER_PIC_MAGMA_LEADER_MAXIE] = sAnims_MagmaLeaderMaxie, + [TRAINER_PIC_MAGMA_GRUNT_M] = sAnims_MagmaGruntM, + [TRAINER_PIC_MAGMA_GRUNT_F] = sAnims_MagmaGruntF, + [TRAINER_PIC_RS_LASS] = sAnims_RSLass, + [TRAINER_PIC_RS_BUG_CATCHER] = sAnims_RSBugCatcher, + [TRAINER_PIC_RS_HIKER] = sAnims_RSHiker, + [TRAINER_PIC_RS_YOUNG_COUPLE] = sAnims_RSYoungCouple, + [TRAINER_PIC_OLD_COUPLE] = sAnims_OldCouple, + [TRAINER_PIC_RS_SIS_AND_BRO] = sAnims_RSSisAndBro, + [TRAINER_PIC_AQUA_ADMIN_M] = sAnims_AquaAdminM, + [TRAINER_PIC_AQUA_ADMIN_F] = sAnims_AquaAdminF, + [TRAINER_PIC_MAGMA_ADMIN_M] = sAnims_MagmaAdminM, + [TRAINER_PIC_MAGMA_ADMIN_F] = sAnims_MagmaAdminF, + [TRAINER_PIC_LEADER_WATTSON] = sAnims_LeaderWattson, + [TRAINER_PIC_LEADER_FLANNERY] = sAnims_LeaderFlannery, + [TRAINER_PIC_LEADER_NORMAN] = sAnims_LeaderNorman, + [TRAINER_PIC_LEADER_WINONA] = sAnims_LeaderWinona, + [TRAINER_PIC_LEADER_WALLACE] = sAnims_LeaderWallace, + [TRAINER_PIC_ELITE_FOUR_GLACIA] = sAnims_EliteFourGlacia, + [TRAINER_PIC_ELITE_FOUR_DRAKE] = sAnims_EliteFourDrake, + [TRAINER_PIC_YOUNGSTER] = sAnims_Youngster, + [TRAINER_PIC_BUG_CATCHER] = sAnims_BugCatcher, + [TRAINER_PIC_LASS] = sAnims_Lass, + [TRAINER_PIC_SAILOR] = sAnims_Sailor, + [TRAINER_PIC_CAMPER] = sAnims_Camper, + [TRAINER_PIC_PICNICKER] = sAnims_Picnicker, + [TRAINER_PIC_POKEMANIAC] = sAnims_Pokemaniac, + [TRAINER_PIC_SUPER_NERD] = sAnims_SuperNerd, + [TRAINER_PIC_HIKER] = sAnims_Hiker, + [TRAINER_PIC_BIKER] = sAnims_Biker, + [TRAINER_PIC_BURGLAR] = sAnims_Burglar, + [TRAINER_PIC_ENGINEER] = sAnims_Engineer, + [TRAINER_PIC_FISHERMAN] = sAnims_Fisherman, + [TRAINER_PIC_SWIMMER_M] = sAnims_SwimmerM, + [TRAINER_PIC_CUE_BALL] = sAnims_CueBall, + [TRAINER_PIC_GAMER] = sAnims_Gamer, + [TRAINER_PIC_BEAUTY] = sAnims_Beauty, + [TRAINER_PIC_SWIMMER_F] = sAnims_SwimmerF, + [TRAINER_PIC_PSYCHIC_M] = sAnims_PsychicM, + [TRAINER_PIC_ROCKER] = sAnims_Rocker, + [TRAINER_PIC_JUGGLER] = sAnims_Juggler, + [TRAINER_PIC_TAMER] = sAnims_Tamer, + [TRAINER_PIC_BIRD_KEEPER] = sAnims_BirdKeeper, + [TRAINER_PIC_BLACK_BELT] = sAnims_BlackBelt, + [TRAINER_PIC_RIVAL_EARLY] = sAnims_RivalEarly, + [TRAINER_PIC_SCIENTIST] = sAnims_Scientist, + [TRAINER_PIC_LEADER_GIOVANNI] = sAnims_LeaderGiovanni, + [TRAINER_PIC_ROCKET_GRUNT_M] = sAnims_RocketGruntM, + [TRAINER_PIC_COOLTRAINER_M] = sAnims_CooltrainerM, + [TRAINER_PIC_COOLTRAINER_F] = sAnims_CooltrainerF, + [TRAINER_PIC_ELITE_FOUR_LORELEI] = sAnims_EliteFourLorelei, + [TRAINER_PIC_ELITE_FOUR_BRUNO] = sAnims_EliteFourBruno, + [TRAINER_PIC_ELITE_FOUR_AGATHA] = sAnims_EliteFourAgatha, + [TRAINER_PIC_ELITE_FOUR_LANCE] = sAnims_EliteFourLance, + [TRAINER_PIC_LEADER_BROCK] = sAnims_LeaderBrock, + [TRAINER_PIC_LEADER_MISTY] = sAnims_LeaderMisty, + [TRAINER_PIC_LEADER_LT_SURGE] = sAnims_LeaderLtSurge, + [TRAINER_PIC_LEADER_ERIKA] = sAnims_LeaderErika, + [TRAINER_PIC_LEADER_KOGA] = sAnims_LeaderKoga, + [TRAINER_PIC_LEADER_BLAINE] = sAnims_LeaderBlaine, + [TRAINER_PIC_LEADER_SABRINA] = sAnims_LeaderSabrina, + [TRAINER_PIC_GENTLEMAN] = sAnims_Gentleman, + [TRAINER_PIC_RIVAL_LATE] = sAnims_RivalLate, + [TRAINER_PIC_CHAMPION_RIVAL] = sAnims_ChampionRival, + [TRAINER_PIC_CHANNELER] = sAnims_Channeler, + [TRAINER_PIC_TWINS] = sAnims_Twins, + [TRAINER_PIC_COOL_COUPLE] = sAnims_CoolCouple, + [TRAINER_PIC_YOUNG_COUPLE] = sAnims_YoungCouple, + [TRAINER_PIC_CRUSH_KIN] = sAnims_CrushKin, + [TRAINER_PIC_SIS_AND_BRO] = sAnims_SisAndBro, + [TRAINER_PIC_PROFESSOR_OAK] = sAnims_ProfessorOak, + [TRAINER_PIC_RS_BRENDAN_2] = sAnims_RSBrendan2, + [TRAINER_PIC_RS_MAY_2] = sAnims_RSMay2, + [TRAINER_PIC_RED] = sAnims_Red, + [TRAINER_PIC_LEAF] = sAnims_Leaf, + [TRAINER_PIC_ROCKET_GRUNT_F] = sAnims_RocketGruntF, + [TRAINER_PIC_PSYCHIC_F] = sAnims_PsychicF, + [TRAINER_PIC_CRUSH_GIRL] = sAnims_CrushGirl, + [TRAINER_PIC_TUBER_F] = sAnims_TuberF, + [TRAINER_PIC_POKEMON_BREEDER] = sAnims_PokemonBreeder, + [TRAINER_PIC_POKEMON_RANGER_M] = sAnims_PokemonRangerM, + [TRAINER_PIC_POKEMON_RANGER_F] = sAnims_PokemonRangerF, + [TRAINER_PIC_AROMA_LADY] = sAnims_AromaLady, + [TRAINER_PIC_RUIN_MANIAC] = sAnims_RuinManiac, + [TRAINER_PIC_LADY] = sAnims_Lady, + [TRAINER_PIC_PAINTER] = sAnims_Painter, }; diff --git a/src/pokemon.c b/src/pokemon.c index e2bfb20cf..66d7ed63d 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -1473,8 +1473,8 @@ const struct SpriteTemplate gSpriteTemplates_Battlers[] = .paletteTag = 0, .oam = &gOamData_BattlerPlayer, .anims = NULL, - .images = gSpriteImages_BattlerPlayerLeft, - .affineAnims = gSpriteAffineAnimTable_BattlerPlayer, + .images = gBattlerPicTable_PlayerLeft, + .affineAnims = gAffineAnims_BattleSpritePlayerSide, .callback = SpriteCB_AllyMon, }, [B_POSITION_OPPONENT_LEFT] = { @@ -1482,8 +1482,8 @@ const struct SpriteTemplate gSpriteTemplates_Battlers[] = .paletteTag = 0, .oam = &gOamData_BattlerOpponent, .anims = NULL, - .images = gSpriteImages_BattlerOpponentLeft, - .affineAnims = gSpriteAffineAnimTable_BattlerOpponent, + .images = gBattlerPicTable_OpponentLeft, + .affineAnims = gAffineAnims_BattleSpriteOpponentSide, .callback = SpriteCB_EnemyMon, }, [B_POSITION_PLAYER_RIGHT] = { @@ -1491,8 +1491,8 @@ const struct SpriteTemplate gSpriteTemplates_Battlers[] = .paletteTag = 0, .oam = &gOamData_BattlerPlayer, .anims = NULL, - .images = gSpriteImages_BattlerPlayerRight, - .affineAnims = gSpriteAffineAnimTable_BattlerPlayer, + .images = gBattlerPicTable_PlayerRight, + .affineAnims = gAffineAnims_BattleSpritePlayerSide, .callback = SpriteCB_AllyMon, }, [B_POSITION_OPPONENT_RIGHT] = { @@ -1500,8 +1500,8 @@ const struct SpriteTemplate gSpriteTemplates_Battlers[] = .paletteTag = 0, .oam = &gOamData_BattlerOpponent, .anims = NULL, - .images = gSpriteImages_BattlerOpponentRight, - .affineAnims = gSpriteAffineAnimTable_BattlerOpponent, + .images = gBattlerPicTable_OpponentRight, + .affineAnims = gAffineAnims_BattleSpriteOpponentSide, .callback = SpriteCB_EnemyMon, }, }; @@ -1514,7 +1514,7 @@ const struct SpriteTemplate gSpriteTemplates_TrainerBackpics[] = .oam = &gOamData_BattlerPlayer, .anims = NULL, .images = gTrainerBackPicTable_Red, - .affineAnims = gSpriteAffineAnimTable_BattlerPlayer, + .affineAnims = gAffineAnims_BattleSpritePlayerSide, .callback = SpriteCB_AllyMon, }, { @@ -1523,7 +1523,7 @@ const struct SpriteTemplate gSpriteTemplates_TrainerBackpics[] = .oam = &gOamData_BattlerPlayer, .anims = NULL, .images = gTrainerBackPicTable_Leaf, - .affineAnims = gSpriteAffineAnimTable_BattlerPlayer, + .affineAnims = gAffineAnims_BattleSpritePlayerSide, .callback = SpriteCB_AllyMon, }, { @@ -1532,7 +1532,7 @@ const struct SpriteTemplate gSpriteTemplates_TrainerBackpics[] = .oam = &gOamData_BattlerPlayer, .anims = NULL, .images = gTrainerBackPicTable_RSBrendan, - .affineAnims = gSpriteAffineAnimTable_BattlerPlayer, + .affineAnims = gAffineAnims_BattleSpritePlayerSide, .callback = SpriteCB_AllyMon, }, { @@ -1541,7 +1541,7 @@ const struct SpriteTemplate gSpriteTemplates_TrainerBackpics[] = .oam = &gOamData_BattlerPlayer, .anims = NULL, .images = gTrainerBackPicTable_RSMay, - .affineAnims = gSpriteAffineAnimTable_BattlerPlayer, + .affineAnims = gAffineAnims_BattleSpritePlayerSide, .callback = SpriteCB_AllyMon, }, { @@ -1550,7 +1550,7 @@ const struct SpriteTemplate gSpriteTemplates_TrainerBackpics[] = .oam = &gOamData_BattlerPlayer, .anims = NULL, .images = gTrainerBackPicTable_Pokedude, - .affineAnims = gSpriteAffineAnimTable_BattlerPlayer, + .affineAnims = gAffineAnims_BattleSpritePlayerSide, .callback = SpriteCB_AllyMon, }, { @@ -1559,7 +1559,7 @@ const struct SpriteTemplate gSpriteTemplates_TrainerBackpics[] = .oam = &gOamData_BattlerPlayer, .anims = NULL, .images = gTrainerBackPicTable_OldMan, - .affineAnims = gSpriteAffineAnimTable_BattlerPlayer, + .affineAnims = gAffineAnims_BattleSpritePlayerSide, .callback = SpriteCB_AllyMon, }, }; @@ -2747,7 +2747,7 @@ void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition) } } gMultiuseSpriteTemplate.paletteTag = speciesTag; - gMultiuseSpriteTemplate.anims = gSpriteAnimTable_82349BC; + gMultiuseSpriteTemplate.anims = gAnims_MonPic; } void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerSpriteId, u8 battlerPosition) @@ -6125,7 +6125,7 @@ static void OakSpeechNidoranFSetupTemplateDummy(struct OakSpeechNidoranFStruct * for (j = 0; j < structPtr->frameCount; ++j) structPtr->frameImages[i * structPtr->spriteCount + j].data = &structPtr->bufferPtrs[i][j * 0x800]; structPtr->templates[i].images = &structPtr->frameImages[i * structPtr->spriteCount]; // should be frameCount logically - structPtr->templates[i].anims = gSpriteAnimTable_82349BC; + structPtr->templates[i].anims = gAnims_MonPic; structPtr->templates[i].paletteTag = i; } } diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c index 0740ecdcf..2b58063b8 100644 --- a/src/trainer_pokemon_sprites.c +++ b/src/trainer_pokemon_sprites.c @@ -1,16 +1,7 @@ #include "global.h" #include "gflib.h" #include "decompress.h" - -extern const struct CompressedSpriteSheet gMonFrontPicTable[]; -extern const struct CompressedSpriteSheet gMonBackPicTable[]; -extern const struct CompressedSpriteSheet gTrainerFrontPicTable[]; -extern const struct CompressedSpriteSheet gTrainerBackPicTable[]; -extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[]; -extern const union AnimCmd *const gSpriteAnimTable_82349BC[]; -extern const union AnimCmd *const *const gTrainerFrontAnimsPtrTable[]; - -// Static type declarations +#include "data.h" struct PicData { @@ -131,7 +122,7 @@ void LoadPicPaletteBySlot(u16 species, u32 otId, u32 personality, u8 paletteSlot void AssignSpriteAnimsTable(bool8 isTrainer) { if (!isTrainer) - sCreatingSpriteTemplate.anims = gSpriteAnimTable_82349BC; + sCreatingSpriteTemplate.anims = gAnims_MonPic; else sCreatingSpriteTemplate.anims = gTrainerFrontAnimsPtrTable[0]; }