Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify gTrainerSprites #4140

Merged
merged 5 commits into from
Feb 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions include/data.h
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ extern const union AffineAnimCmd *const gAffineAnims_BattleSpriteContest[];
extern const union AnimCmd sAnim_GeneralFrame0[];
extern const union AnimCmd sAnim_GeneralFrame3[];
extern const union AnimCmd *const gAnims_MonPic[];
extern const union AnimCmd *const sAnims_Trainer[];
extern const struct TrainerSprite gTrainerSprites[];
extern const struct TrainerBacksprite gTrainerBacksprites[];

Expand Down
4 changes: 1 addition & 3 deletions src/battle_controller_link_opponent.c
Original file line number Diff line number Diff line change
Expand Up @@ -462,9 +462,7 @@ static void LinkOpponentHandleDrawTrainerPic(u32 battler)
}
}

BtlController_HandleDrawTrainerPic(battler, trainerPicId, TRUE,
xPos, 40 + 4 * (8 - gTrainerSprites[trainerPicId].y_offset),
-1);
BtlController_HandleDrawTrainerPic(battler, trainerPicId, TRUE, xPos, 40, -1);
}

static void LinkOpponentHandleTrainerSlide(u32 battler)
Expand Down
4 changes: 1 addition & 3 deletions src/battle_controller_opponent.c
Original file line number Diff line number Diff line change
Expand Up @@ -484,9 +484,7 @@ static void OpponentHandleDrawTrainerPic(u32 battler)
xPos = 176;
}

BtlController_HandleDrawTrainerPic(battler, trainerPicId, TRUE,
xPos, 40 + 4 * (8 - gTrainerSprites[trainerPicId].y_offset),
-1);
BtlController_HandleDrawTrainerPic(battler, trainerPicId, TRUE, xPos, 40, -1);
}

static void OpponentHandleTrainerSlide(u32 battler)
Expand Down
2 changes: 1 addition & 1 deletion src/battle_controller_player.c
Original file line number Diff line number Diff line change
Expand Up @@ -1882,7 +1882,7 @@ static void PlayerHandleDrawTrainerPic(u32 battler)
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && gPartnerTrainerId < TRAINER_PARTNER(PARTNER_NONE))
{
xPos = 90;
yPos = (8 - gTrainerSprites[trainerPicId].y_offset) * 4 + 80;
yPos = 80;
}
else
{
Expand Down
4 changes: 2 additions & 2 deletions src/battle_controller_player_partner.c
Original file line number Diff line number Diff line change
Expand Up @@ -307,13 +307,13 @@ static void PlayerPartnerHandleDrawTrainerPic(u32 battler)
{
trainerPicId = gTrainers[gPartnerTrainerId].trainerPic;
xPos = 60;
yPos = (8 - gTrainerSprites[trainerPicId].y_offset) * 4 + 80;
yPos = 80;
}
else
{
trainerPicId = GetFrontierTrainerFrontSpriteId(gPartnerTrainerId);
xPos = 32;
yPos = (8 - gTrainerSprites[trainerPicId].y_offset) * 4 + 80;
yPos = 80;
}

// Use back pic only if the partner Steven or is custom.
Expand Down
4 changes: 1 addition & 3 deletions src/battle_controller_recorded_opponent.c
Original file line number Diff line number Diff line change
Expand Up @@ -420,9 +420,7 @@ static void RecordedOpponentHandleDrawTrainerPic(u32 battler)
}
}

BtlController_HandleDrawTrainerPic(battler, trainerPicId, TRUE,
xPos, 40 + 4 * (8 - gTrainerSprites[trainerPicId].y_offset),
-1);
BtlController_HandleDrawTrainerPic(battler, trainerPicId, TRUE, xPos, 40, -1);
}

static void RecordedOpponentHandleTrainerSlideBack(u32 battler)
Expand Down
2 changes: 1 addition & 1 deletion src/battle_controller_recorded_player.c
Original file line number Diff line number Diff line change
Expand Up @@ -393,7 +393,7 @@ static void RecordedPlayerHandleDrawTrainerPic(u32 battler)
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
{
xPos = 90;
yPos = (8 - gTrainerSprites[trainerPicId].y_offset) * 4 + 80;
yPos = 80;
}
else
{
Expand Down
5 changes: 1 addition & 4 deletions src/battle_controllers.c
Original file line number Diff line number Diff line change
Expand Up @@ -2542,10 +2542,7 @@ void BtlController_HandleTrainerSlide(u32 battler, u32 trainerPicId)
{
DecompressTrainerFrontPic(trainerPicId, battler);
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(battler));
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate,
176,
(8 - gTrainerSprites[trainerPicId].y_offset) * 4 + 40,
30);
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, 176, 40, 30);
gSprites[gBattlerSpriteIds[battler]].oam.affineParam = trainerPicId;
gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerSprites[trainerPicId].palette.tag);
gSprites[gBattlerSpriteIds[battler]].x2 = 96;
Expand Down
4 changes: 4 additions & 0 deletions src/data.c
Original file line number Diff line number Diff line change
Expand Up @@ -220,5 +220,9 @@ const union AnimCmd *const gAnims_MonPic[MAX_MON_PIC_FRAMES] =
sAnim_MonPic_1,
};

const union AnimCmd *const sAnims_Trainer[] ={
sAnim_GeneralFrame0,
};

#include "data/trainer_parties.h"
#include "data/trainers.h"
195 changes: 97 additions & 98 deletions src/data/graphics/trainers.h
Original file line number Diff line number Diff line change
Expand Up @@ -292,116 +292,115 @@ const u8 gTrainerBackPic_Steven[] = INCBIN_U8("graphics/trainers/back_pics/steve
const u32 gTrainerBackPicPalette_Red[] = INCBIN_U32("graphics/trainers/back_pics/red.gbapal.lz");
const u32 gTrainerBackPicPalette_Leaf[] = INCBIN_U32("graphics/trainers/back_pics/leaf.gbapal.lz");

static const union AnimCmd *const sAnims_Trainer[] ={
sAnim_GeneralFrame0,
};

#define TRAINER_SPRITE(trainerPic, file, x, y, rotation) \
// The first two parameters invoke a front pic and palette by
// calling a "TRAINER_PIC" constant (e.g. TRAINER_PIC_HIKER), and
// gTrainerFrontPic/gTrainerPalette pointers, (e.g "gTrainerFrontPic_Hiker" and "gTrainerPalette_Hiker").
// The last three parameters control the X and Y coordinates and rotation of the mugshot on the screen.
// They default to 0, 0, and 0x200 which are default values used by the majority of the game's trainer sprites.
#define TRAINER_SPRITE(trainerPic, file, ...) \
[TRAINER_PIC_##trainerPic] = \
{ \
.y_offset = 8, \
.frontPic = {gTrainerFrontPic_##file, TRAINER_PIC_SIZE, TRAINER_PIC_##trainerPic},\
.palette = {gTrainerPalette_##file, TRAINER_PIC_##trainerPic}, \
.animation = sAnims_Trainer, \
.mugshotCoords = {x, y}, \
.mugshotRotation = rotation, \
.mugshotCoords = {DEFAULT(0, __VA_ARGS__), DEFAULT_2(0, __VA_ARGS__)}, \
.mugshotRotation = DEFAULT_3(0x200, __VA_ARGS__), \
}

const struct TrainerSprite gTrainerSprites[] =
{
TRAINER_SPRITE(HIKER, Hiker, 0, 0, 0x200),
AlexOn1ine marked this conversation as resolved.
Show resolved Hide resolved
TRAINER_SPRITE(AQUA_GRUNT_M, AquaGruntM, 0, 0, 0x200),
TRAINER_SPRITE(POKEMON_BREEDER_F, PokemonBreederF, 0, 0, 0x200),
TRAINER_SPRITE(COOLTRAINER_M, CoolTrainerM, 0, 0, 0x200),
TRAINER_SPRITE(BIRD_KEEPER, BirdKeeper, 0, 0, 0x200),
TRAINER_SPRITE(COLLECTOR, Collector, 0, 0, 0x200),
TRAINER_SPRITE(AQUA_GRUNT_F, AquaGruntF, 0, 0, 0x200),
TRAINER_SPRITE(SWIMMER_M, SwimmerM, 0, 0, 0x200),
TRAINER_SPRITE(MAGMA_GRUNT_M, MagmaGruntM, 0, 0, 0x200),
TRAINER_SPRITE(EXPERT_M, ExpertM, 0, 0, 0x200),
TRAINER_SPRITE(AQUA_ADMIN_M, AquaAdminM, 0, 0, 0x200),
TRAINER_SPRITE(BLACK_BELT, BlackBelt, 0, 0, 0x200),
TRAINER_SPRITE(AQUA_ADMIN_F, AquaAdminF, 0, 0, 0x200),
TRAINER_SPRITE(AQUA_LEADER_ARCHIE, AquaLeaderArchie, 0, 0, 0x200),
TRAINER_SPRITE(HEX_MANIAC, HexManiac, 0, 0, 0x200),
TRAINER_SPRITE(AROMA_LADY, AromaLady, 0, 0, 0x200),
TRAINER_SPRITE(RUIN_MANIAC, RuinManiac, 0, 0, 0x200),
TRAINER_SPRITE(INTERVIEWER, Interviewer, 0, 0, 0x200),
TRAINER_SPRITE(TUBER_F, TuberF, 0, 0, 0x200),
TRAINER_SPRITE(TUBER_M, TuberM, 0, 0, 0x200),
TRAINER_SPRITE(COOLTRAINER_F, CoolTrainerF, 0, 0, 0x200),
TRAINER_SPRITE(LADY, Lady, 0, 0, 0x200),
TRAINER_SPRITE(BEAUTY, Beauty, 0, 0, 0x200),
TRAINER_SPRITE(RICH_BOY, RichBoy, 0, 0, 0x200),
TRAINER_SPRITE(EXPERT_F, ExpertF, 0, 0, 0x200),
TRAINER_SPRITE(POKEMANIAC, Pokemaniac, 0, 0, 0x200),
TRAINER_SPRITE(MAGMA_GRUNT_F, MagmaGruntF, 0, 0, 0x200),
TRAINER_SPRITE(GUITARIST, Guitarist, 0, 0, 0x200),
TRAINER_SPRITE(KINDLER, Kindler, 0, 0, 0x200),
TRAINER_SPRITE(CAMPER, Camper, 0, 0, 0x200),
TRAINER_SPRITE(PICNICKER, Picnicker, 0, 0, 0x200),
TRAINER_SPRITE(BUG_MANIAC, BugManiac, 0, 0, 0x200),
TRAINER_SPRITE(POKEMON_BREEDER_M, PokemonBreederM, 0, 0, 0x200),
TRAINER_SPRITE(PSYCHIC_M, PsychicM, 0, 0, 0x200),
TRAINER_SPRITE(PSYCHIC_F, PsychicF, 0, 0, 0x200),
TRAINER_SPRITE(GENTLEMAN, Gentleman, 0, 0, 0x200),
TRAINER_SPRITE(ELITE_FOUR_SIDNEY, EliteFourSidney, 0, 0, 0x200),
TRAINER_SPRITE(ELITE_FOUR_PHOEBE, EliteFourPhoebe, 0, 0, 0x200),
TRAINER_SPRITE(HIKER, Hiker),
TRAINER_SPRITE(AQUA_GRUNT_M, AquaGruntM),
TRAINER_SPRITE(POKEMON_BREEDER_F, PokemonBreederF),
TRAINER_SPRITE(COOLTRAINER_M, CoolTrainerM),
TRAINER_SPRITE(BIRD_KEEPER, BirdKeeper),
TRAINER_SPRITE(COLLECTOR, Collector),
TRAINER_SPRITE(AQUA_GRUNT_F, AquaGruntF),
TRAINER_SPRITE(SWIMMER_M, SwimmerM),
TRAINER_SPRITE(MAGMA_GRUNT_M, MagmaGruntM),
TRAINER_SPRITE(EXPERT_M, ExpertM),
TRAINER_SPRITE(AQUA_ADMIN_M, AquaAdminM),
TRAINER_SPRITE(BLACK_BELT, BlackBelt),
TRAINER_SPRITE(AQUA_ADMIN_F, AquaAdminF),
TRAINER_SPRITE(AQUA_LEADER_ARCHIE, AquaLeaderArchie),
TRAINER_SPRITE(HEX_MANIAC, HexManiac),
TRAINER_SPRITE(AROMA_LADY, AromaLady),
TRAINER_SPRITE(RUIN_MANIAC, RuinManiac),
TRAINER_SPRITE(INTERVIEWER, Interviewer),
TRAINER_SPRITE(TUBER_F, TuberF),
TRAINER_SPRITE(TUBER_M, TuberM),
TRAINER_SPRITE(COOLTRAINER_F, CoolTrainerF),
TRAINER_SPRITE(LADY, Lady),
TRAINER_SPRITE(BEAUTY, Beauty),
TRAINER_SPRITE(RICH_BOY, RichBoy),
TRAINER_SPRITE(EXPERT_F, ExpertF),
TRAINER_SPRITE(POKEMANIAC, Pokemaniac),
TRAINER_SPRITE(MAGMA_GRUNT_F, MagmaGruntF),
TRAINER_SPRITE(GUITARIST, Guitarist),
TRAINER_SPRITE(KINDLER, Kindler),
TRAINER_SPRITE(CAMPER, Camper),
TRAINER_SPRITE(PICNICKER, Picnicker),
TRAINER_SPRITE(BUG_MANIAC, BugManiac),
TRAINER_SPRITE(POKEMON_BREEDER_M, PokemonBreederM),
TRAINER_SPRITE(PSYCHIC_M, PsychicM),
TRAINER_SPRITE(PSYCHIC_F, PsychicF),
TRAINER_SPRITE(GENTLEMAN, Gentleman),
TRAINER_SPRITE(ELITE_FOUR_SIDNEY, EliteFourSidney),
TRAINER_SPRITE(ELITE_FOUR_PHOEBE, EliteFourPhoebe),
TRAINER_SPRITE(ELITE_FOUR_GLACIA, EliteFourGlacia, -4, 4, 0x1B0),
TRAINER_SPRITE(ELITE_FOUR_DRAKE, EliteFourDrake, 0, 5, 0x1A0),
TRAINER_SPRITE(LEADER_ROXANNE, LeaderRoxanne, 0, 0, 0x200),
TRAINER_SPRITE(LEADER_BRAWLY, LeaderBrawly, 0, 0, 0x200),
TRAINER_SPRITE(LEADER_WATTSON, LeaderWattson, 0, 0, 0x200),
TRAINER_SPRITE(LEADER_FLANNERY, LeaderFlannery, 0, 0, 0x200),
TRAINER_SPRITE(LEADER_NORMAN, LeaderNorman, 0, 0, 0x200),
TRAINER_SPRITE(LEADER_WINONA, LeaderWinona, 0, 0, 0x200),
TRAINER_SPRITE(LEADER_TATE_AND_LIZA, LeaderTateAndLiza, 0, 0, 0x200),
TRAINER_SPRITE(LEADER_JUAN, LeaderJuan, 0, 0, 0x200),
TRAINER_SPRITE(SCHOOL_KID_M, SchoolKidM, 0, 0, 0x200),
TRAINER_SPRITE(SCHOOL_KID_F, SchoolKidF, 0, 0, 0x200),
TRAINER_SPRITE(SR_AND_JR, SrAndJr, 0, 0, 0x200),
TRAINER_SPRITE(POKEFAN_M, PokefanM, 0, 0, 0x200),
TRAINER_SPRITE(POKEFAN_F, PokefanF, 0, 0, 0x200),
TRAINER_SPRITE(YOUNGSTER, Youngster, 0, 0, 0x200),
TRAINER_SPRITE(LEADER_ROXANNE, LeaderRoxanne),
TRAINER_SPRITE(LEADER_BRAWLY, LeaderBrawly),
TRAINER_SPRITE(LEADER_WATTSON, LeaderWattson),
TRAINER_SPRITE(LEADER_FLANNERY, LeaderFlannery),
TRAINER_SPRITE(LEADER_NORMAN, LeaderNorman),
TRAINER_SPRITE(LEADER_WINONA, LeaderWinona),
TRAINER_SPRITE(LEADER_TATE_AND_LIZA, LeaderTateAndLiza),
TRAINER_SPRITE(LEADER_JUAN, LeaderJuan),
TRAINER_SPRITE(SCHOOL_KID_M, SchoolKidM),
TRAINER_SPRITE(SCHOOL_KID_F, SchoolKidF),
TRAINER_SPRITE(SR_AND_JR, SrAndJr),
TRAINER_SPRITE(POKEFAN_M, PokefanM),
TRAINER_SPRITE(POKEFAN_F, PokefanF),
TRAINER_SPRITE(YOUNGSTER, Youngster),
TRAINER_SPRITE(CHAMPION_WALLACE, ChampionWallace, -8, 7, 0x188),
TRAINER_SPRITE(FISHERMAN, Fisherman, 0, 0, 0x200),
TRAINER_SPRITE(CYCLING_TRIATHLETE_M, CyclingTriathleteM, 0, 0, 0x200),
TRAINER_SPRITE(CYCLING_TRIATHLETE_F, CyclingTriathleteF, 0, 0, 0x200),
TRAINER_SPRITE(RUNNING_TRIATHLETE_M, RunningTriathleteM, 0, 0, 0x200),
TRAINER_SPRITE(RUNNING_TRIATHLETE_F, RunningTriathleteF, 0, 0, 0x200),
TRAINER_SPRITE(SWIMMING_TRIATHLETE_M, SwimmingTriathleteM, 0, 0, 0x200),
TRAINER_SPRITE(SWIMMING_TRIATHLETE_F, SwimmingTriathleteF, 0, 0, 0x200),
TRAINER_SPRITE(DRAGON_TAMER, DragonTamer, 0, 0, 0x200),
TRAINER_SPRITE(NINJA_BOY, NinjaBoy, 0, 0, 0x200),
TRAINER_SPRITE(BATTLE_GIRL, BattleGirl, 0, 0, 0x200),
TRAINER_SPRITE(PARASOL_LADY, ParasolLady, 0, 0, 0x200),
TRAINER_SPRITE(SWIMMER_F, SwimmerF, 0, 0, 0x200),
TRAINER_SPRITE(TWINS, Twins, 0, 0, 0x200),
TRAINER_SPRITE(SAILOR, Sailor, 0, 0, 0x200),
TRAINER_SPRITE(MAGMA_ADMIN, MagmaAdmin, 0, 0, 0x200),
TRAINER_SPRITE(WALLY, Wally, 0, 0, 0x200),
TRAINER_SPRITE(BRENDAN, Brendan, 0, 0, 0x200),
TRAINER_SPRITE(MAY, May, 0, 0, 0x200),
TRAINER_SPRITE(BUG_CATCHER, BugCatcher, 0, 0, 0x200),
TRAINER_SPRITE(POKEMON_RANGER_M, PokemonRangerM, 0, 0, 0x200),
TRAINER_SPRITE(POKEMON_RANGER_F, PokemonRangerF, 0, 0, 0x200),
TRAINER_SPRITE(MAGMA_LEADER_MAXIE, MagmaLeaderMaxie, 0, 0, 0x200),
TRAINER_SPRITE(LASS, Lass, 0, 0, 0x200),
TRAINER_SPRITE(YOUNG_COUPLE, YoungCouple, 0, 0, 0x200),
TRAINER_SPRITE(OLD_COUPLE, OldCouple, 0, 0, 0x200),
TRAINER_SPRITE(SIS_AND_BRO, SisAndBro, 0, 0, 0x200),
TRAINER_SPRITE(FISHERMAN, Fisherman),
TRAINER_SPRITE(CYCLING_TRIATHLETE_M, CyclingTriathleteM),
TRAINER_SPRITE(CYCLING_TRIATHLETE_F, CyclingTriathleteF),
TRAINER_SPRITE(RUNNING_TRIATHLETE_M, RunningTriathleteM),
TRAINER_SPRITE(RUNNING_TRIATHLETE_F, RunningTriathleteF),
TRAINER_SPRITE(SWIMMING_TRIATHLETE_M, SwimmingTriathleteM),
TRAINER_SPRITE(SWIMMING_TRIATHLETE_F, SwimmingTriathleteF),
TRAINER_SPRITE(DRAGON_TAMER, DragonTamer),
TRAINER_SPRITE(NINJA_BOY, NinjaBoy),
TRAINER_SPRITE(BATTLE_GIRL, BattleGirl),
TRAINER_SPRITE(PARASOL_LADY, ParasolLady),
TRAINER_SPRITE(SWIMMER_F, SwimmerF),
TRAINER_SPRITE(TWINS, Twins),
TRAINER_SPRITE(SAILOR, Sailor),
TRAINER_SPRITE(MAGMA_ADMIN, MagmaAdmin),
TRAINER_SPRITE(WALLY, Wally),
TRAINER_SPRITE(BRENDAN, Brendan),
TRAINER_SPRITE(MAY, May),
TRAINER_SPRITE(BUG_CATCHER, BugCatcher),
TRAINER_SPRITE(POKEMON_RANGER_M, PokemonRangerM),
TRAINER_SPRITE(POKEMON_RANGER_F, PokemonRangerF),
TRAINER_SPRITE(MAGMA_LEADER_MAXIE, MagmaLeaderMaxie),
TRAINER_SPRITE(LASS, Lass),
TRAINER_SPRITE(YOUNG_COUPLE, YoungCouple),
TRAINER_SPRITE(OLD_COUPLE, OldCouple),
TRAINER_SPRITE(SIS_AND_BRO, SisAndBro),
TRAINER_SPRITE(STEVEN, Steven, 0, 7, 0x188),
TRAINER_SPRITE(SALON_MAIDEN_ANABEL, SalonMaidenAnabel, 0, 0, 0x200),
TRAINER_SPRITE(DOME_ACE_TUCKER, DomeAceTucker, 0, 0, 0x200),
TRAINER_SPRITE(PALACE_MAVEN_SPENSER, PalaceMavenSpenser, 0, 0, 0x200),
TRAINER_SPRITE(ARENA_TYCOON_GRETA, ArenaTycoonGreta, 0, 0, 0x200),
TRAINER_SPRITE(FACTORY_HEAD_NOLAND, FactoryHeadNoland, 0, 0, 0x200),
TRAINER_SPRITE(PIKE_QUEEN_LUCY, PikeQueenLucy, 0, 0, 0x200),
TRAINER_SPRITE(PYRAMID_KING_BRANDON, PyramidKingBrandon, 0, 0, 0x200),
TRAINER_SPRITE(RED, Red, 0, 0, 0x200),
TRAINER_SPRITE(LEAF, Leaf, 0, 0, 0x200),
TRAINER_SPRITE(RS_BRENDAN, RubySapphireBrendan, 0, 0, 0x200),
TRAINER_SPRITE(RS_MAY, RubySapphireMay, 0, 0, 0x200),
TRAINER_SPRITE(SALON_MAIDEN_ANABEL, SalonMaidenAnabel),
TRAINER_SPRITE(DOME_ACE_TUCKER, DomeAceTucker),
TRAINER_SPRITE(PALACE_MAVEN_SPENSER, PalaceMavenSpenser),
TRAINER_SPRITE(ARENA_TYCOON_GRETA, ArenaTycoonGreta),
TRAINER_SPRITE(FACTORY_HEAD_NOLAND, FactoryHeadNoland),
TRAINER_SPRITE(PIKE_QUEEN_LUCY, PikeQueenLucy),
TRAINER_SPRITE(PYRAMID_KING_BRANDON, PyramidKingBrandon),
TRAINER_SPRITE(RED, Red),
TRAINER_SPRITE(LEAF, Leaf),
TRAINER_SPRITE(RS_BRENDAN, RubySapphireBrendan),
TRAINER_SPRITE(RS_MAY, RubySapphireMay),
};

static const union AnimCmd sAnimCmd_Hoenn[] =
Expand Down
4 changes: 2 additions & 2 deletions src/pokemon.c
Original file line number Diff line number Diff line change
Expand Up @@ -1927,7 +1927,7 @@ void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerPicId, u8 battlerPosition
gMultiuseSpriteTemplate = gMonSpritesGfxPtr->templates[battlerPosition];
else
gMultiuseSpriteTemplate = gBattlerSpriteTemplates[battlerPosition];
gMultiuseSpriteTemplate.anims = gTrainerSprites[trainerPicId].animation;
gMultiuseSpriteTemplate.anims = sAnims_Trainer;
}
}

Expand All @@ -1939,7 +1939,7 @@ void SetMultiuseSpriteTemplateToTrainerFront(u16 trainerPicId, u8 battlerPositio
gMultiuseSpriteTemplate = gBattlerSpriteTemplates[battlerPosition];

gMultiuseSpriteTemplate.paletteTag = trainerPicId;
gMultiuseSpriteTemplate.anims = gTrainerSprites[trainerPicId].animation;
gMultiuseSpriteTemplate.anims = sAnims_Trainer;
}

static void EncryptBoxMon(struct BoxPokemon *boxMon)
Expand Down
2 changes: 1 addition & 1 deletion src/trainer_pokemon_sprites.c
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ static void AssignSpriteAnimsTable(bool8 isTrainer)
if (!isTrainer)
sCreatingSpriteTemplate.anims = gAnims_MonPic;
else
sCreatingSpriteTemplate.anims = gTrainerSprites[0].animation;
sCreatingSpriteTemplate.anims = sAnims_Trainer;
}

static u16 CreatePicSprite(u16 species, bool8 isShiny, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag, bool8 isTrainer)
Expand Down
Loading