mirror of
https://github.com/rh-hideout/pokeemerald-expansion.git
synced 2026-03-21 18:04:50 -05:00
enum TrainerPicID to replace defines for TRAINER_PIC_XXXX and TRAINER_BACK_PIC_XXXX (#8789)
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
This commit is contained in:
parent
2fba6a4da4
commit
838d582381
|
|
@ -12,7 +12,7 @@ There are a few steps involved:
|
|||
- In the script the triggers the battle, add a call to `setdynamicaifunc` specifying your function, as in:
|
||||
```
|
||||
setdynamicaifunc AI_TagBattlePreferFoe
|
||||
multi_2_vs_2 TRAINER_SIRIUS_NOVA_HYPERION_TAG, Text_NovaInsurgence_Arrival_Hyperion_Loss, TRAINER_SIRIUS_NOVA_DEIMOS_RECRUIT_TAG, Text_NovaInsurgence_Arrival_DeimosRecruit_Loss, TRAINER_SIRIUS_WHARF_TRITON_PARTNER, TRAINER_BACK_PIC_TRITON
|
||||
multi_2_vs_2 TRAINER_SIRIUS_NOVA_HYPERION_TAG, Text_NovaInsurgence_Arrival_Hyperion_Loss, TRAINER_SIRIUS_NOVA_DEIMOS_RECRUIT_TAG, Text_NovaInsurgence_Arrival_DeimosRecruit_Loss, TRAINER_SIRIUS_WHARF_TRITON_PARTNER, TRAINER_PIC_BACK_TRITON
|
||||
```
|
||||
That's it! The scoring function will be used in the battle immediately following it, and automatically cleared at the end of the battle. You can then use `setdynamicaifunc` with the same or a different AI scoring function as you see fit.
|
||||
|
||||
|
|
|
|||
|
|
@ -49,10 +49,10 @@ So, finally, it needs to look like this:
|
|||
|
||||
const struct TrainerBacksprite gTrainerBacksprites[] =
|
||||
{
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_BRENDAN, 4, gTrainerBackPic_Brendan, gTrainerPalette_Brendan, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_BRENDAN, 4, gTrainerBackPic_Brendan, gTrainerPalette_Brendan, sBackAnims_Hoenn),
|
||||
...
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_STEVEN, 4, gTrainerBackPic_Steven, gTrainerPalette_Steven, sBackAnims_Hoenn),
|
||||
+ TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_NEW_ONE, 4, gTrainerBackPic_NewOne, gTrainerBackPicPalette_NewOne, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_STEVEN, 4, gTrainerBackPic_Steven, gTrainerPalette_Steven, sBackAnims_Hoenn),
|
||||
+ TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_NEW_ONE, 4, gTrainerBackPic_NewOne, gTrainerBackPicPalette_NewOne, sBackAnims_Hoenn),
|
||||
};
|
||||
```
|
||||
|
||||
|
|
@ -63,14 +63,17 @@ So, finally, it needs to look like this:
|
|||
Finally, let's bring it all together by defining our new trainer pic in [`include/constants/trainers.h`](./include/constants/trainers.h):
|
||||
|
||||
```diff
|
||||
#define TRAINER_BACK_PIC_WALLY 6
|
||||
#define TRAINER_BACK_PIC_STEVEN 7
|
||||
+#define TRAINER_BACK_PIC_NEW_ONE 8
|
||||
TRAINER_PIC_BACK_RUBY_SAPPHIRE_MAY,
|
||||
TRAINER_PIC_BACK_WALLY,
|
||||
TRAINER_PIC_BACK_STEVEN,
|
||||
+ TRAINER_PIC_BACK_NEW_ONE,
|
||||
TRAINER_PIC_COUNT,
|
||||
TRAINER_PIC_BACK_COUNT = (TRAINER_PIC_COUNT - TRAINER_PIC_FRONT_COUNT),
|
||||
```
|
||||
Remember to count the number next to the trainer pic up by one!
|
||||
Remember to add new back pics after `TRAINER_PIC_FRONT_COUNT` but before `TRAINER_PIC_COUNT`!
|
||||
|
||||
## Usage
|
||||
You can test your new trainer back pic by going to [`src/data/battle_partners.party`](./src/data/battle_partners.party) and change the `Pic` field. The syntax should match the constant (`TRAINER_BACK_PIC_NEW_ONE`) with the underscore replaced by spaces. For example:
|
||||
You can test your new trainer back pic by going to [`src/data/battle_partners.party`](./src/data/battle_partners.party) and change the `Pic` field. The syntax should match the constant (`TRAINER_PIC_BACK_NEW_ONE`) with the underscore replaced by spaces. For example:
|
||||
```diff
|
||||
=== PARTNER_STEVEN ===
|
||||
Name: STEVEN
|
||||
|
|
@ -87,7 +90,7 @@ Otherwise if you use [`src/data/battle_partners.h`](./src/data/battle_partners.h
|
|||
{
|
||||
.trainerName = _("STEVEN"),
|
||||
.trainerClass = TRAINER_CLASS_RIVAL,
|
||||
- .trainerPic = TRAINER_BACK_PIC_STEVEN,
|
||||
+ .trainerPic = TRAINER_BACK_PIC_NEW_ONE,
|
||||
- .trainerPic = TRAINER_PIC_BACK_STEVEN,
|
||||
+ .trainerPic = TRAINER_PIC_BACK_NEW_ONE,
|
||||
.encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE,
|
||||
```
|
||||
|
|
|
|||
|
|
@ -51,11 +51,11 @@ So, finally, it needs to look like this:
|
|||
|
||||
const struct TrainerSprite gTrainerSprites[] =
|
||||
{
|
||||
TRAINER_SPRITE(TRAINER_PIC_HIKER, gTrainerFrontPic_Hiker, gTrainerPalette_Hiker),
|
||||
TRAINER_SPRITE(TRAINER_PIC_AQUA_GRUNT_M, gTrainerFrontPic_AquaGruntM, gTrainerPalette_AquaGruntM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_HIKER, gTrainerFrontPic_Hiker, gTrainerPalette_Hiker),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_AQUA_GRUNT_M, gTrainerFrontPic_AquaGruntM, gTrainerPalette_AquaGruntM),
|
||||
...
|
||||
TRAINER_SPRITE(TRAINER_PIC_RS_MAY, gTrainerFrontPic_RubySapphireMay, gTrainerPalette_RubySapphireMay),
|
||||
+ TRAINER_SPRITE(TRAINER_PIC_NEW_ONE, gTrainerFrontPic_NewOne, gTrainerPalette_NewOne),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_RS_MAY, gTrainerFrontPic_RubySapphireMay, gTrainerPalette_RubySapphireMay),
|
||||
+ TRAINER_SPRITE(TRAINER_PIC_FRONT_NEW_ONE, gTrainerFrontPic_NewOne, gTrainerPalette_NewOne),
|
||||
};
|
||||
```
|
||||
### The Data
|
||||
|
|
@ -63,16 +63,16 @@ So, finally, it needs to look like this:
|
|||
Finally, let's bring it all together by defining our new trainer pic in [`include/constants/trainers.h`](./include/constants/trainers.h):
|
||||
|
||||
```diff
|
||||
#define TRAINER_PIC_RS_MAY 92
|
||||
+#define TRAINER_PIC_NEW_ONE 93
|
||||
|
||||
#define TRAINER_BACK_PIC_BRENDAN 0
|
||||
#define TRAINER_BACK_PIC_MAY 1
|
||||
TRAINER_PIC_FRONT_RS_MAY,
|
||||
+ TRAINER_PIC_FRONT_NEW_ONE,
|
||||
TRAINER_PIC_FRONT_COUNT,
|
||||
TRAINER_PIC_BACK_BRENDAN = TRAINER_PIC_FRONT_COUNT, // The player back pics are assumed to alternate according to the gender values (MALE/FEMALE)
|
||||
TRAINER_PIC_BACK_MAY,
|
||||
```
|
||||
Remember to count the number next to the trainer pic up by one!
|
||||
Remember to add new front pics before `TRAINER_PIC_FRONT_COUNT`!
|
||||
|
||||
## Usage
|
||||
You can test your trainer type by going to [`src/data/trainers.party`](./src/data/trainers.party) and change the `Pic` field. The syntax should match the constant (`TRAINER_PIC_NEW_ONE`) with the underscore replaced by spaces. For example:
|
||||
You can test your trainer type by going to [`src/data/trainers.party`](./src/data/trainers.party) and change the `Pic` field. The syntax should match the constant (`TRAINER_PIC_FRONT_NEW_ONE`) with the underscore replaced by spaces. For example:
|
||||
```diff
|
||||
=== TRAINER_BRENDAN_PLACEHOLDER ===
|
||||
Name: BRENDAN
|
||||
|
|
@ -90,8 +90,8 @@ Otherwise if you use [`src/data/trainers.h`](./src/data/trainers.h), change the
|
|||
{
|
||||
.trainerName = _("BRENDAN"),
|
||||
.trainerClass = TRAINER_CLASS_RS_PROTAG,
|
||||
- .trainerPic = TRAINER_PIC_RS_BRENDAN,
|
||||
+ .trainerPic = TRAINER_PIC_NEW_ONE,
|
||||
- .trainerPic = TRAINER_PIC_FRONT_RS_BRENDAN,
|
||||
+ .trainerPic = TRAINER_PIC_FRONT_NEW_ONE,
|
||||
.encounterMusic_gender = TRAINER_ENCOUNTER_MUSIC_MALE,
|
||||
.doubleBattle = FALSE,
|
||||
```
|
||||
|
|
|
|||
|
|
@ -366,8 +366,8 @@ void BtlController_HandleSetRawMonData(u32 battler);
|
|||
void BtlController_HandleLoadMonSprite(u32 battler);
|
||||
void BtlController_HandleSwitchInAnim(u32 battler);
|
||||
void BtlController_HandleReturnMonToBall(u32 battler);
|
||||
void BtlController_HandleDrawTrainerPic(u32 battlerId, u32 trainerPicId, bool32 isFrontPic, s16 xPos, s16 yPos, s32 subpriority);
|
||||
void BtlController_HandleTrainerSlide(u32 battler, u32 trainerPicId);
|
||||
void BtlController_HandleDrawTrainerPic(u32 battlerId, enum TrainerPicID trainerPicId, bool32 isFrontPic, s16 xPos, s16 yPos, s32 subpriority);
|
||||
void BtlController_HandleTrainerSlide(u32 battler, enum TrainerPicID trainerPicId);
|
||||
void BtlController_HandleTrainerSlideBack(u32 battlerId, s16 data0, bool32 startAnim);
|
||||
void BtlController_HandleFaintAnimation(u32 battler);
|
||||
void BtlController_HandleBallThrowAnim(u32 battler);
|
||||
|
|
@ -396,7 +396,7 @@ void SetControllerToPlayer(u32 battler);
|
|||
void PlayerBufferExecCompleted(u32 battler);
|
||||
void SetBattleEndCallbacks(u32 battler);
|
||||
void PlayerHandleExpUpdate(u32 battler);
|
||||
u32 LinkPlayerGetTrainerPicId(u32 multiplayerId);
|
||||
enum TrainerPicID LinkPlayerGetTrainerPicId(u32 multiplayerId);
|
||||
void CB2_SetUpReshowBattleScreenAfterMenu(void);
|
||||
void CB2_SetUpReshowBattleScreenAfterMenu2(void);
|
||||
void Task_PlayerController_RestoreBgmAfterCry(u8 taskId);
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ bool8 IsBattleSEPlaying(u8 battler);
|
|||
void BattleLoadMonSpriteGfx(struct Pokemon *mon, u32 battler);
|
||||
void BattleGfxSfxDummy2(u16 species);
|
||||
void DecompressTrainerFrontPic(u16 frontPicId, u8 battler);
|
||||
void DecompressTrainerBackPic(u16 backPicId, u8 battler);
|
||||
void DecompressTrainerBackPic(enum TrainerPicID backPicId, u8 battler);
|
||||
void FreeTrainerFrontPicPalette(u16 frontPicId);
|
||||
bool8 BattleLoadAllHealthBoxesGfx(u8 state);
|
||||
void LoadBattleBarGfx(u8 unused);
|
||||
|
|
|
|||
|
|
@ -15,110 +15,113 @@
|
|||
#define TRAINER_LINK_OPPONENT 2048
|
||||
#define TRAINER_UNION_ROOM 3072
|
||||
|
||||
#define TRAINER_PIC_HIKER 0
|
||||
#define TRAINER_PIC_AQUA_GRUNT_M 1
|
||||
#define TRAINER_PIC_POKEMON_BREEDER_F 2
|
||||
#define TRAINER_PIC_COOLTRAINER_M 3
|
||||
#define TRAINER_PIC_BIRD_KEEPER 4
|
||||
#define TRAINER_PIC_COLLECTOR 5
|
||||
#define TRAINER_PIC_AQUA_GRUNT_F 6
|
||||
#define TRAINER_PIC_SWIMMER_M 7
|
||||
#define TRAINER_PIC_MAGMA_GRUNT_M 8
|
||||
#define TRAINER_PIC_EXPERT_M 9
|
||||
#define TRAINER_PIC_AQUA_ADMIN_M 10
|
||||
#define TRAINER_PIC_BLACK_BELT 11
|
||||
#define TRAINER_PIC_AQUA_ADMIN_F 12
|
||||
#define TRAINER_PIC_AQUA_LEADER_ARCHIE 13
|
||||
#define TRAINER_PIC_HEX_MANIAC 14
|
||||
#define TRAINER_PIC_AROMA_LADY 15
|
||||
#define TRAINER_PIC_RUIN_MANIAC 16
|
||||
#define TRAINER_PIC_INTERVIEWER 17
|
||||
#define TRAINER_PIC_TUBER_F 18
|
||||
#define TRAINER_PIC_TUBER_M 19
|
||||
#define TRAINER_PIC_COOLTRAINER_F 20
|
||||
#define TRAINER_PIC_LADY 21
|
||||
#define TRAINER_PIC_BEAUTY 22
|
||||
#define TRAINER_PIC_RICH_BOY 23
|
||||
#define TRAINER_PIC_EXPERT_F 24
|
||||
#define TRAINER_PIC_POKEMANIAC 25
|
||||
#define TRAINER_PIC_MAGMA_GRUNT_F 26
|
||||
#define TRAINER_PIC_GUITARIST 27
|
||||
#define TRAINER_PIC_KINDLER 28
|
||||
#define TRAINER_PIC_CAMPER 29
|
||||
#define TRAINER_PIC_PICNICKER 30
|
||||
#define TRAINER_PIC_BUG_MANIAC 31
|
||||
#define TRAINER_PIC_POKEMON_BREEDER_M 32
|
||||
#define TRAINER_PIC_PSYCHIC_M 33
|
||||
#define TRAINER_PIC_PSYCHIC_F 34
|
||||
#define TRAINER_PIC_GENTLEMAN 35
|
||||
#define TRAINER_PIC_ELITE_FOUR_SIDNEY 36
|
||||
#define TRAINER_PIC_ELITE_FOUR_PHOEBE 37
|
||||
#define TRAINER_PIC_ELITE_FOUR_GLACIA 38
|
||||
#define TRAINER_PIC_ELITE_FOUR_DRAKE 39
|
||||
#define TRAINER_PIC_LEADER_ROXANNE 40
|
||||
#define TRAINER_PIC_LEADER_BRAWLY 41
|
||||
#define TRAINER_PIC_LEADER_WATTSON 42
|
||||
#define TRAINER_PIC_LEADER_FLANNERY 43
|
||||
#define TRAINER_PIC_LEADER_NORMAN 44
|
||||
#define TRAINER_PIC_LEADER_WINONA 45
|
||||
#define TRAINER_PIC_LEADER_TATE_AND_LIZA 46
|
||||
#define TRAINER_PIC_LEADER_JUAN 47
|
||||
#define TRAINER_PIC_SCHOOL_KID_M 48
|
||||
#define TRAINER_PIC_SCHOOL_KID_F 49
|
||||
#define TRAINER_PIC_SR_AND_JR 50
|
||||
#define TRAINER_PIC_POKEFAN_M 51
|
||||
#define TRAINER_PIC_POKEFAN_F 52
|
||||
#define TRAINER_PIC_YOUNGSTER 53
|
||||
#define TRAINER_PIC_CHAMPION_WALLACE 54
|
||||
#define TRAINER_PIC_FISHERMAN 55
|
||||
#define TRAINER_PIC_CYCLING_TRIATHLETE_M 56
|
||||
#define TRAINER_PIC_CYCLING_TRIATHLETE_F 57
|
||||
#define TRAINER_PIC_RUNNING_TRIATHLETE_M 58
|
||||
#define TRAINER_PIC_RUNNING_TRIATHLETE_F 59
|
||||
#define TRAINER_PIC_SWIMMING_TRIATHLETE_M 60
|
||||
#define TRAINER_PIC_SWIMMING_TRIATHLETE_F 61
|
||||
#define TRAINER_PIC_DRAGON_TAMER 62
|
||||
#define TRAINER_PIC_NINJA_BOY 63
|
||||
#define TRAINER_PIC_BATTLE_GIRL 64
|
||||
#define TRAINER_PIC_PARASOL_LADY 65
|
||||
#define TRAINER_PIC_SWIMMER_F 66
|
||||
#define TRAINER_PIC_TWINS 67
|
||||
#define TRAINER_PIC_SAILOR 68
|
||||
#define TRAINER_PIC_MAGMA_ADMIN 69
|
||||
#define TRAINER_PIC_WALLY 70
|
||||
#define TRAINER_PIC_BRENDAN 71
|
||||
#define TRAINER_PIC_MAY 72
|
||||
#define TRAINER_PIC_BUG_CATCHER 73
|
||||
#define TRAINER_PIC_POKEMON_RANGER_M 74
|
||||
#define TRAINER_PIC_POKEMON_RANGER_F 75
|
||||
#define TRAINER_PIC_MAGMA_LEADER_MAXIE 76
|
||||
#define TRAINER_PIC_LASS 77
|
||||
#define TRAINER_PIC_YOUNG_COUPLE 78
|
||||
#define TRAINER_PIC_OLD_COUPLE 79
|
||||
#define TRAINER_PIC_SIS_AND_BRO 80
|
||||
#define TRAINER_PIC_STEVEN 81
|
||||
#define TRAINER_PIC_SALON_MAIDEN_ANABEL 82
|
||||
#define TRAINER_PIC_DOME_ACE_TUCKER 83
|
||||
#define TRAINER_PIC_PALACE_MAVEN_SPENSER 84
|
||||
#define TRAINER_PIC_ARENA_TYCOON_GRETA 85
|
||||
#define TRAINER_PIC_FACTORY_HEAD_NOLAND 86
|
||||
#define TRAINER_PIC_PIKE_QUEEN_LUCY 87
|
||||
#define TRAINER_PIC_PYRAMID_KING_BRANDON 88
|
||||
#define TRAINER_PIC_RED 89
|
||||
#define TRAINER_PIC_LEAF 90
|
||||
#define TRAINER_PIC_RS_BRENDAN 91
|
||||
#define TRAINER_PIC_RS_MAY 92
|
||||
#define TRAINER_PIC_COUNT 93
|
||||
|
||||
// The player back pics are assumed to alternate according to the gender values (MALE/FEMALE)
|
||||
#define TRAINER_BACK_PIC_BRENDAN 0
|
||||
#define TRAINER_BACK_PIC_MAY 1
|
||||
#define TRAINER_BACK_PIC_RED 2
|
||||
#define TRAINER_BACK_PIC_LEAF 3
|
||||
#define TRAINER_BACK_PIC_RUBY_SAPPHIRE_BRENDAN 4
|
||||
#define TRAINER_BACK_PIC_RUBY_SAPPHIRE_MAY 5
|
||||
#define TRAINER_BACK_PIC_WALLY 6
|
||||
#define TRAINER_BACK_PIC_STEVEN 7
|
||||
enum __attribute__((packed)) TrainerPicID
|
||||
{
|
||||
TRAINER_PIC_FRONT_HIKER,
|
||||
TRAINER_PIC_FRONT_AQUA_GRUNT_M,
|
||||
TRAINER_PIC_FRONT_POKEMON_BREEDER_F,
|
||||
TRAINER_PIC_FRONT_COOLTRAINER_M,
|
||||
TRAINER_PIC_FRONT_BIRD_KEEPER,
|
||||
TRAINER_PIC_FRONT_COLLECTOR,
|
||||
TRAINER_PIC_FRONT_AQUA_GRUNT_F,
|
||||
TRAINER_PIC_FRONT_SWIMMER_M,
|
||||
TRAINER_PIC_FRONT_MAGMA_GRUNT_M,
|
||||
TRAINER_PIC_FRONT_EXPERT_M,
|
||||
TRAINER_PIC_FRONT_AQUA_ADMIN_M,
|
||||
TRAINER_PIC_FRONT_BLACK_BELT,
|
||||
TRAINER_PIC_FRONT_AQUA_ADMIN_F,
|
||||
TRAINER_PIC_FRONT_AQUA_LEADER_ARCHIE,
|
||||
TRAINER_PIC_FRONT_HEX_MANIAC,
|
||||
TRAINER_PIC_FRONT_AROMA_LADY,
|
||||
TRAINER_PIC_FRONT_RUIN_MANIAC,
|
||||
TRAINER_PIC_FRONT_INTERVIEWER,
|
||||
TRAINER_PIC_FRONT_TUBER_F,
|
||||
TRAINER_PIC_FRONT_TUBER_M,
|
||||
TRAINER_PIC_FRONT_COOLTRAINER_F,
|
||||
TRAINER_PIC_FRONT_LADY,
|
||||
TRAINER_PIC_FRONT_BEAUTY,
|
||||
TRAINER_PIC_FRONT_RICH_BOY,
|
||||
TRAINER_PIC_FRONT_EXPERT_F,
|
||||
TRAINER_PIC_FRONT_POKEMANIAC,
|
||||
TRAINER_PIC_FRONT_MAGMA_GRUNT_F,
|
||||
TRAINER_PIC_FRONT_GUITARIST,
|
||||
TRAINER_PIC_FRONT_KINDLER,
|
||||
TRAINER_PIC_FRONT_CAMPER,
|
||||
TRAINER_PIC_FRONT_PICNICKER,
|
||||
TRAINER_PIC_FRONT_BUG_MANIAC,
|
||||
TRAINER_PIC_FRONT_POKEMON_BREEDER_M,
|
||||
TRAINER_PIC_FRONT_PSYCHIC_M,
|
||||
TRAINER_PIC_FRONT_PSYCHIC_F,
|
||||
TRAINER_PIC_FRONT_GENTLEMAN,
|
||||
TRAINER_PIC_FRONT_ELITE_FOUR_SIDNEY,
|
||||
TRAINER_PIC_FRONT_ELITE_FOUR_PHOEBE,
|
||||
TRAINER_PIC_FRONT_ELITE_FOUR_GLACIA,
|
||||
TRAINER_PIC_FRONT_ELITE_FOUR_DRAKE,
|
||||
TRAINER_PIC_FRONT_LEADER_ROXANNE,
|
||||
TRAINER_PIC_FRONT_LEADER_BRAWLY,
|
||||
TRAINER_PIC_FRONT_LEADER_WATTSON,
|
||||
TRAINER_PIC_FRONT_LEADER_FLANNERY,
|
||||
TRAINER_PIC_FRONT_LEADER_NORMAN,
|
||||
TRAINER_PIC_FRONT_LEADER_WINONA,
|
||||
TRAINER_PIC_FRONT_LEADER_TATE_AND_LIZA,
|
||||
TRAINER_PIC_FRONT_LEADER_JUAN,
|
||||
TRAINER_PIC_FRONT_SCHOOL_KID_M,
|
||||
TRAINER_PIC_FRONT_SCHOOL_KID_F,
|
||||
TRAINER_PIC_FRONT_SR_AND_JR,
|
||||
TRAINER_PIC_FRONT_POKEFAN_M,
|
||||
TRAINER_PIC_FRONT_POKEFAN_F,
|
||||
TRAINER_PIC_FRONT_YOUNGSTER,
|
||||
TRAINER_PIC_FRONT_CHAMPION_WALLACE,
|
||||
TRAINER_PIC_FRONT_FISHERMAN,
|
||||
TRAINER_PIC_FRONT_CYCLING_TRIATHLETE_M,
|
||||
TRAINER_PIC_FRONT_CYCLING_TRIATHLETE_F,
|
||||
TRAINER_PIC_FRONT_RUNNING_TRIATHLETE_M,
|
||||
TRAINER_PIC_FRONT_RUNNING_TRIATHLETE_F,
|
||||
TRAINER_PIC_FRONT_SWIMMING_TRIATHLETE_M,
|
||||
TRAINER_PIC_FRONT_SWIMMING_TRIATHLETE_F,
|
||||
TRAINER_PIC_FRONT_DRAGON_TAMER,
|
||||
TRAINER_PIC_FRONT_NINJA_BOY,
|
||||
TRAINER_PIC_FRONT_BATTLE_GIRL,
|
||||
TRAINER_PIC_FRONT_PARASOL_LADY,
|
||||
TRAINER_PIC_FRONT_SWIMMER_F,
|
||||
TRAINER_PIC_FRONT_TWINS,
|
||||
TRAINER_PIC_FRONT_SAILOR,
|
||||
TRAINER_PIC_FRONT_MAGMA_ADMIN,
|
||||
TRAINER_PIC_FRONT_WALLY,
|
||||
TRAINER_PIC_FRONT_BRENDAN,
|
||||
TRAINER_PIC_FRONT_MAY,
|
||||
TRAINER_PIC_FRONT_BUG_CATCHER,
|
||||
TRAINER_PIC_FRONT_POKEMON_RANGER_M,
|
||||
TRAINER_PIC_FRONT_POKEMON_RANGER_F,
|
||||
TRAINER_PIC_FRONT_MAGMA_LEADER_MAXIE,
|
||||
TRAINER_PIC_FRONT_LASS,
|
||||
TRAINER_PIC_FRONT_YOUNG_COUPLE,
|
||||
TRAINER_PIC_FRONT_OLD_COUPLE,
|
||||
TRAINER_PIC_FRONT_SIS_AND_BRO,
|
||||
TRAINER_PIC_FRONT_STEVEN,
|
||||
TRAINER_PIC_FRONT_SALON_MAIDEN_ANABEL,
|
||||
TRAINER_PIC_FRONT_DOME_ACE_TUCKER,
|
||||
TRAINER_PIC_FRONT_PALACE_MAVEN_SPENSER,
|
||||
TRAINER_PIC_FRONT_ARENA_TYCOON_GRETA,
|
||||
TRAINER_PIC_FRONT_FACTORY_HEAD_NOLAND,
|
||||
TRAINER_PIC_FRONT_PIKE_QUEEN_LUCY,
|
||||
TRAINER_PIC_FRONT_PYRAMID_KING_BRANDON,
|
||||
TRAINER_PIC_FRONT_RED,
|
||||
TRAINER_PIC_FRONT_LEAF,
|
||||
TRAINER_PIC_FRONT_RS_BRENDAN,
|
||||
TRAINER_PIC_FRONT_RS_MAY,
|
||||
TRAINER_PIC_FRONT_COUNT,
|
||||
TRAINER_PIC_BACK_BRENDAN = TRAINER_PIC_FRONT_COUNT, // The player back pics are assumed to alternate according to the gender values (MALE/FEMALE)
|
||||
TRAINER_PIC_BACK_MAY,
|
||||
TRAINER_PIC_BACK_RED,
|
||||
TRAINER_PIC_BACK_LEAF,
|
||||
TRAINER_PIC_BACK_RUBY_SAPPHIRE_BRENDAN,
|
||||
TRAINER_PIC_BACK_RUBY_SAPPHIRE_MAY,
|
||||
TRAINER_PIC_BACK_WALLY,
|
||||
TRAINER_PIC_BACK_STEVEN,
|
||||
TRAINER_PIC_COUNT,
|
||||
TRAINER_PIC_BACK_COUNT = (TRAINER_PIC_COUNT - TRAINER_PIC_FRONT_COUNT),
|
||||
};
|
||||
|
||||
#define FACILITY_CLASS_HIKER 0x0
|
||||
#define FACILITY_CLASS_AQUA_GRUNT_M 0x1
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ struct Trainer
|
|||
struct StartingStatuses startingStatus; // this trainer starts a battle with a given status. see include/constants/battle.h for values
|
||||
u8 trainerClass;
|
||||
u8 encounterMusic_gender; // last bit is gender
|
||||
u8 trainerPic;
|
||||
enum TrainerPicID trainerPic;
|
||||
u8 trainerName[TRAINER_NAME_LENGTH + 1];
|
||||
u8 battleType:2;
|
||||
u8 mugshotColor:6;
|
||||
|
|
@ -130,7 +130,7 @@ struct Trainer
|
|||
u8 poolPickIndex;
|
||||
u8 poolPruneIndex;
|
||||
u16 overrideTrainer;
|
||||
u8 trainerBackPic;
|
||||
enum TrainerPicID trainerBackPic;
|
||||
};
|
||||
|
||||
struct TrainerClass
|
||||
|
|
@ -293,7 +293,7 @@ static inline const u8 *GetTrainerNameFromId(u16 trainerId)
|
|||
return GetTrainerStructFromId(trainerId)->trainerName;
|
||||
}
|
||||
|
||||
static inline const u8 GetTrainerPicFromId(u16 trainerId)
|
||||
static inline const enum TrainerPicID GetTrainerPicFromId(u16 trainerId)
|
||||
{
|
||||
enum DifficultyLevel partnerDifficulty = GetBattlePartnerDifficultyLevel(trainerId);
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ void ShowRankingHallRecordsWindow(void);
|
|||
void ScrollRankingHallRecordsWindow(void);
|
||||
void ClearRankingHallRecords(void);
|
||||
void SaveGameFrontier(void);
|
||||
u8 GetFrontierBrainTrainerPicIndex(void);
|
||||
enum TrainerPicID GetFrontierBrainTrainerPicIndex(void);
|
||||
enum TrainerClassID GetFrontierBrainTrainerClass(void);
|
||||
void CopyFrontierBrainTrainerName(u8 *dst);
|
||||
bool8 IsFrontierBrainFemale(void);
|
||||
|
|
|
|||
|
|
@ -708,7 +708,7 @@ void CreateBattleTowerMon_HandleLevel(struct Pokemon *mon, struct BattleTowerPok
|
|||
void CreateApprenticeMon(struct Pokemon *mon, const struct Apprentice *src, u8 monId);
|
||||
void CreateMonWithEVSpreadNatureOTID(struct Pokemon *mon, u16 species, u8 level, u8 nature, u8 fixedIV, u8 evSpread, u32 otId);
|
||||
void ConvertPokemonToBattleTowerPokemon(struct Pokemon *mon, struct BattleTowerPokemon *dest);
|
||||
u16 GetUnionRoomTrainerPic(void);
|
||||
enum TrainerPicID GetUnionRoomTrainerPic(void);
|
||||
enum TrainerClassID GetUnionRoomTrainerClass(void);
|
||||
void CreateEnemyEventMon(void);
|
||||
void CalculateMonStats(struct Pokemon *mon);
|
||||
|
|
@ -734,8 +734,8 @@ u8 GetGenderFromSpeciesAndPersonality(u16 species, u32 personality);
|
|||
bool32 IsPersonalityFemale(u16 species, u32 personality);
|
||||
u32 GetUnownSpeciesId(u32 personality);
|
||||
void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition);
|
||||
void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerPicId, u8 battlerPosition);
|
||||
void SetMultiuseSpriteTemplateToTrainerFront(u16 trainerPicId, u8 battlerPosition);
|
||||
void SetMultiuseSpriteTemplateToTrainerBack(enum TrainerPicID trainerPicId, u8 battlerPosition);
|
||||
void SetMultiuseSpriteTemplateToTrainerFront(enum TrainerPicID trainerPicId, u8 battlerPosition);
|
||||
|
||||
/* GameFreak called Get(Box)MonData with either 2 or 3 arguments, for
|
||||
* type safety we have a Get(Box)MonData macro which dispatches to
|
||||
|
|
@ -762,7 +762,7 @@ u8 GetMonsStateToDoubles_2(void);
|
|||
enum Ability GetAbilityBySpecies(u16 species, u8 abilityNum);
|
||||
enum Ability GetMonAbility(struct Pokemon *mon);
|
||||
void CreateSecretBaseEnemyParty(struct SecretBase *secretBaseRecord);
|
||||
u8 GetSecretBaseTrainerPicIndex(void);
|
||||
enum TrainerPicID GetSecretBaseTrainerPicIndex(void);
|
||||
enum TrainerClassID GetSecretBaseTrainerClass(void);
|
||||
bool8 IsPlayerPartyAndPokemonStorageFull(void);
|
||||
bool8 IsPokemonStorageFull(void);
|
||||
|
|
@ -865,8 +865,8 @@ void PokemonSummaryDoMonAnimation(struct Sprite *sprite, u16 species, bool8 oneF
|
|||
void StopPokemonAnimationDelayTask(void);
|
||||
void BattleAnimateBackSprite(struct Sprite *sprite, u16 species);
|
||||
u8 GetOpposingLinkMultiBattlerId(bool8 rightSide, u8 multiplayerId);
|
||||
u16 FacilityClassToPicIndex(u16 facilityClass);
|
||||
u16 PlayerGenderToFrontTrainerPicId(u8 playerGender);
|
||||
enum TrainerPicID FacilityClassToPicIndex(u16 facilityClass);
|
||||
enum TrainerPicID PlayerGenderToFrontTrainerPicId(u8 playerGender);
|
||||
void HandleSetPokedexFlag(enum NationalDexOrder nationalNum, u8 caseId, u32 personality);
|
||||
void HandleSetPokedexFlagFromMon(struct Pokemon *mon, u32 caseId);
|
||||
bool8 HasTwoFramesAnimation(u16 species);
|
||||
|
|
|
|||
|
|
@ -416,7 +416,7 @@ struct PokenavMatchCallEntry *GetMatchCallList(void);
|
|||
mapsec_u16_t GetMatchCallMapSec(int index);
|
||||
bool32 ShouldDrawRematchPokeballIcon(int index);
|
||||
void ClearRematchPokeballIcon(u16 windowId, u32 tileOffset);
|
||||
int GetMatchCallTrainerPic(int index);
|
||||
enum TrainerPicID GetMatchCallTrainerPic(int index);
|
||||
const u8 *GetMatchCallFlavorText(int index, int checkPageEntry);
|
||||
const u8 *GetMatchCallMessageText(int index, bool8 *newRematchRequest);
|
||||
u16 GetMatchCallOptionCursorPos(void);
|
||||
|
|
|
|||
|
|
@ -16,6 +16,6 @@ u16 CreateTrainerPicSprite(u16 species, bool8 isFrontPic, s16 x, s16 y, u8 palet
|
|||
u16 FreeAndDestroyTrainerPicSprite(u16 spriteId);
|
||||
u16 CreateTrainerCardTrainerPicSprite(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId);
|
||||
u16 PlayerGenderToFrontTrainerPicId_Debug(u8 gender, bool8 getClass);
|
||||
void CopyTrainerBackspriteFramesToDest(u8 trainerPicId, u8 *dest);
|
||||
void CopyTrainerBackspriteFramesToDest(enum TrainerPicID trainerPicId, u8 *dest);
|
||||
|
||||
#endif // GUARD_TRAINER_POKEMON_SPRITES_H
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ end_pokemon_definition = re.compile(r' },')
|
|||
trainer_class_definition = re.compile(r'\.trainerClass = TRAINER_CLASS_(\w+)')
|
||||
encounter_music_gender_definition = re.compile(r'\.encounterMusic_gender = (F_TRAINER_FEMALE \| )?TRAINER_ENCOUNTER_MUSIC_(\w+)')
|
||||
encounter_music_definition = re.compile(r'TRAINER_ENCOUNTER_MUSIC_(\w+)')
|
||||
trainer_pic_definition = re.compile(r'\.trainerPic = TRAINER_PIC_(\w+)')
|
||||
trainer_pic_definition = re.compile(r'\.trainerPic = TRAINER_PIC_FRONT_(\w+)')
|
||||
trainer_name_definition = re.compile(r'\.trainerName = _\("([^"]*)"\)')
|
||||
trainer_items_definition = re.compile(r'\.items = \{([^}]*)\}')
|
||||
trainer_item_definition = re.compile(r'ITEM_(\w+)')
|
||||
|
|
|
|||
|
|
@ -183,7 +183,7 @@ begin_trainer_definition = re.compile(r' \[(PARTNER_\w+)\] =')
|
|||
end_trainer_definition = re.compile(r' }')
|
||||
trainer_class_definition = re.compile(r'\.trainerClass = TRAINER_CLASS_(\w+)')
|
||||
encounter_music_gender_definition = re.compile(r'\.encounterMusic_gender = (F_TRAINER_FEMALE \| )?TRAINER_ENCOUNTER_MUSIC_(\w+)')
|
||||
trainer_pic_definition = re.compile(r'\.trainerPic = TRAINER_BACK_PIC_(\w+)')
|
||||
trainer_pic_definition = re.compile(r'\.trainerPic = TRAINER_PIC_BACK_(\w+)')
|
||||
trainer_name_definition = re.compile(r'\.trainerName = _\("([^"]*)"\)')
|
||||
trainer_items_definition = re.compile(r'\.items = \{([^}]*)\}')
|
||||
trainer_item_definition = re.compile(r'ITEM_(\w+)')
|
||||
|
|
|
|||
|
|
@ -183,7 +183,7 @@ begin_trainer_definition = re.compile(r' \[(TRAINER_\w+)\] =')
|
|||
end_trainer_definition = re.compile(r' }')
|
||||
trainer_class_definition = re.compile(r'\.trainerClass = TRAINER_CLASS_(\w+)')
|
||||
encounter_music_gender_definition = re.compile(r'\.encounterMusic_gender = (F_TRAINER_FEMALE \| )?TRAINER_ENCOUNTER_MUSIC_(\w+)')
|
||||
trainer_pic_definition = re.compile(r'\.trainerPic = TRAINER_PIC_(\w+)')
|
||||
trainer_pic_definition = re.compile(r'\.trainerPic = TRAINER_PIC_FRONT_(\w+)')
|
||||
trainer_name_definition = re.compile(r'\.trainerName = _\("([^"]*)"\)')
|
||||
trainer_items_definition = re.compile(r'\.items = \{([^}]*)\}')
|
||||
trainer_item_definition = re.compile(r'ITEM_(\w+)')
|
||||
|
|
|
|||
|
|
@ -279,7 +279,7 @@ void LinkOpponentBufferExecCompleted(u32 battler)
|
|||
static void LinkOpponentHandleDrawTrainerPic(u32 battler)
|
||||
{
|
||||
s16 xPos;
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||
{
|
||||
|
|
@ -353,7 +353,7 @@ static void LinkOpponentHandleDrawTrainerPic(u32 battler)
|
|||
|
||||
static void LinkOpponentHandleTrainerSlide(u32 battler)
|
||||
{
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
if (battler == B_POSITION_OPPONENT_LEFT)
|
||||
trainerPicId = GetFrontierTrainerFrontSpriteId(TRAINER_BATTLE_PARAM.opponentA);
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ void LinkPartnerBufferExecCompleted(u32 battler)
|
|||
static void LinkPartnerHandleDrawTrainerPic(u32 battler)
|
||||
{
|
||||
s16 xPos;
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||
{
|
||||
|
|
@ -161,7 +161,7 @@ static void LinkPartnerHandleTrainerSlideBack(u32 battler)
|
|||
|
||||
static void LinkPartnerHandleIntroTrainerBallThrow(u32 battler)
|
||||
{
|
||||
u32 trainerPicId = LinkPlayerGetTrainerPicId(GetBattlerMultiplayerId(battler));
|
||||
enum TrainerPicID trainerPicId = LinkPlayerGetTrainerPicId(GetBattlerMultiplayerId(battler));
|
||||
const u16 *trainerPal = gTrainerBacksprites[trainerPicId].palette.data;
|
||||
// Link partner uses the same intro sequence as the player partner.
|
||||
BtlController_HandleIntroTrainerBallThrow(battler, 0xD6F9, trainerPal, 24, Controller_PlayerPartnerShowIntroHealthbox);
|
||||
|
|
|
|||
|
|
@ -310,7 +310,7 @@ void OpponentBufferExecCompleted(u32 battler)
|
|||
|
||||
static u32 OpponentGetTrainerPicId(u32 battlerId)
|
||||
{
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_SECRET_BASE)
|
||||
{
|
||||
|
|
@ -370,14 +370,14 @@ static u32 OpponentGetTrainerPicId(u32 battlerId)
|
|||
static void OpponentHandleDrawTrainerPic(u32 battler)
|
||||
{
|
||||
s16 xPos;
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
// Sets Multibattle test opponent sprites to not be Hiker
|
||||
if (IsMultibattleTest())
|
||||
{
|
||||
if (GetBattlerPosition(battler) == B_POSITION_OPPONENT_LEFT)
|
||||
{
|
||||
trainerPicId = TRAINER_PIC_LEAF;
|
||||
trainerPicId = TRAINER_PIC_FRONT_LEAF;
|
||||
if (!(gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS))
|
||||
xPos = 176;
|
||||
else
|
||||
|
|
@ -385,7 +385,7 @@ static void OpponentHandleDrawTrainerPic(u32 battler)
|
|||
}
|
||||
else
|
||||
{
|
||||
trainerPicId = TRAINER_PIC_RED;
|
||||
trainerPicId = TRAINER_PIC_FRONT_RED;
|
||||
xPos = 152;
|
||||
}
|
||||
}
|
||||
|
|
@ -411,7 +411,7 @@ static void OpponentHandleDrawTrainerPic(u32 battler)
|
|||
|
||||
void OpponentHandleTrainerSlide(u32 battler)
|
||||
{
|
||||
u32 trainerPicId = OpponentGetTrainerPicId(battler);
|
||||
enum TrainerPicID trainerPicId = OpponentGetTrainerPicId(battler);
|
||||
BtlController_HandleTrainerSlide(battler, trainerPicId);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1854,31 +1854,31 @@ static void PlayerHandleLoadMonSprite(u32 battler)
|
|||
gBattlerControllerFuncs[battler] = CompleteOnBattlerSpritePosX_0;
|
||||
}
|
||||
|
||||
u32 LinkPlayerGetTrainerPicId(u32 multiplayerId)
|
||||
enum TrainerPicID LinkPlayerGetTrainerPicId(u32 multiplayerId)
|
||||
{
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
u8 gender = gLinkPlayers[multiplayerId].gender;
|
||||
u8 version = gLinkPlayers[multiplayerId].version & 0xFF;
|
||||
|
||||
if (version == VERSION_FIRE_RED || version == VERSION_LEAF_GREEN)
|
||||
trainerPicId = gender + TRAINER_BACK_PIC_RED;
|
||||
trainerPicId = gender + TRAINER_PIC_BACK_RED;
|
||||
else if (version == VERSION_RUBY || version == VERSION_SAPPHIRE)
|
||||
trainerPicId = gender + TRAINER_BACK_PIC_RUBY_SAPPHIRE_BRENDAN;
|
||||
trainerPicId = gender + TRAINER_PIC_BACK_RUBY_SAPPHIRE_BRENDAN;
|
||||
else
|
||||
trainerPicId = gender + TRAINER_BACK_PIC_BRENDAN;
|
||||
trainerPicId = gender + TRAINER_PIC_BACK_BRENDAN;
|
||||
|
||||
return trainerPicId;
|
||||
}
|
||||
|
||||
static u32 PlayerGetTrainerBackPicId(void)
|
||||
static enum TrainerPicID PlayerGetTrainerBackPicId(void)
|
||||
{
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
trainerPicId = LinkPlayerGetTrainerPicId(GetMultiplayerId());
|
||||
else
|
||||
trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_BACK_PIC_BRENDAN;
|
||||
trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_PIC_BACK_BRENDAN;
|
||||
|
||||
return trainerPicId;
|
||||
}
|
||||
|
|
@ -1890,10 +1890,11 @@ static void PlayerHandleDrawTrainerPic(u32 battler)
|
|||
{
|
||||
bool32 isFrontPic;
|
||||
s16 xPos, yPos;
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
if (IsMultibattleTest())
|
||||
{
|
||||
trainerPicId = TRAINER_BACK_PIC_BRENDAN;
|
||||
trainerPicId = TRAINER_PIC_BACK_BRENDAN;
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
|
||||
xPos = 32;
|
||||
else
|
||||
|
|
@ -1903,6 +1904,7 @@ static void PlayerHandleDrawTrainerPic(u32 battler)
|
|||
else
|
||||
{
|
||||
trainerPicId = PlayerGetTrainerBackPicId();
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||
{
|
||||
if ((GetBattlerPosition(battler) & BIT_FLANK) != B_FLANK_LEFT) // Second mon, on the right.
|
||||
|
|
@ -1943,7 +1945,7 @@ static void PlayerHandleDrawTrainerPic(u32 battler)
|
|||
|
||||
static void PlayerHandleTrainerSlide(u32 battler)
|
||||
{
|
||||
u32 trainerPicId = PlayerGetTrainerBackPicId();
|
||||
enum TrainerPicID trainerPicId = PlayerGetTrainerBackPicId();
|
||||
BtlController_HandleTrainerSlide(battler, trainerPicId);
|
||||
}
|
||||
|
||||
|
|
@ -2270,7 +2272,7 @@ static void PlayerHandleOneReturnValue_Duplicate(u32 battler)
|
|||
|
||||
static void PlayerHandleIntroTrainerBallThrow(u32 battler)
|
||||
{
|
||||
const u32 paletteIndex = PlayerGetTrainerBackPicId();
|
||||
const u32 paletteIndex = PlayerGetTrainerBackPicId() - TRAINER_PIC_FRONT_COUNT;
|
||||
const u16 *trainerPal = gTrainerBacksprites[paletteIndex].palette.data;
|
||||
BtlController_HandleIntroTrainerBallThrow(battler, 0xD6F8, trainerPal, 31, Intro_TryShinyAnimShowHealthbox);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -198,14 +198,14 @@ void PlayerPartnerBufferExecCompleted(u32 battler)
|
|||
}
|
||||
}
|
||||
|
||||
static u32 PlayerPartnerGetTrainerBackPicId(enum DifficultyLevel difficulty)
|
||||
static enum TrainerPicID PlayerPartnerGetTrainerBackPicId(enum DifficultyLevel difficulty)
|
||||
{
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
|
||||
trainerPicId = gBattlePartners[difficulty][gPartnerTrainerId - TRAINER_PARTNER(PARTNER_NONE)].trainerBackPic;
|
||||
else
|
||||
trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_BACK_PIC_BRENDAN;
|
||||
trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_PIC_BACK_BRENDAN;
|
||||
|
||||
return trainerPicId;
|
||||
}
|
||||
|
|
@ -217,13 +217,13 @@ static void PlayerPartnerHandleDrawTrainerPic(u32 battler)
|
|||
{
|
||||
bool32 isFrontPic;
|
||||
s16 xPos, yPos;
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
enum DifficultyLevel difficulty = GetBattlePartnerDifficultyLevel(gPartnerTrainerId);
|
||||
|
||||
if (IsMultibattleTest())
|
||||
{
|
||||
trainerPicId = TRAINER_BACK_PIC_STEVEN;
|
||||
trainerPicId = TRAINER_PIC_BACK_STEVEN;
|
||||
xPos = 90;
|
||||
yPos = (8 - gTrainerBacksprites[trainerPicId].coordinates.size) * 4 + 80;
|
||||
}
|
||||
|
|
@ -258,7 +258,7 @@ static void PlayerPartnerHandleDrawTrainerPic(u32 battler)
|
|||
static void PlayerPartnerHandleTrainerSlide(u32 battler)
|
||||
{
|
||||
enum DifficultyLevel difficulty = GetBattlePartnerDifficultyLevel(gPartnerTrainerId);
|
||||
u32 trainerPicId = PlayerPartnerGetTrainerBackPicId(difficulty);
|
||||
enum TrainerPicID trainerPicId = PlayerPartnerGetTrainerBackPicId(difficulty);
|
||||
BtlController_HandleTrainerSlide(battler, trainerPicId);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -274,14 +274,14 @@ static void Intro_TryShinyAnimShowHealthbox(u32 battler)
|
|||
static void RecordedOpponentHandleDrawTrainerPic(u32 battler)
|
||||
{
|
||||
s16 xPos;
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
// Sets Multibattle test opponent sprites to not be Hiker
|
||||
if (IsMultibattleTest())
|
||||
{
|
||||
if (GetBattlerPosition(battler) == B_POSITION_OPPONENT_LEFT)
|
||||
{
|
||||
trainerPicId = TRAINER_PIC_LEAF;
|
||||
trainerPicId = TRAINER_PIC_FRONT_LEAF;
|
||||
if (!(gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS))
|
||||
xPos = 176;
|
||||
else
|
||||
|
|
@ -289,7 +289,7 @@ static void RecordedOpponentHandleDrawTrainerPic(u32 battler)
|
|||
}
|
||||
else
|
||||
{
|
||||
trainerPicId = TRAINER_PIC_RED;
|
||||
trainerPicId = TRAINER_PIC_FRONT_RED;
|
||||
xPos = 152;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -196,14 +196,14 @@ void RecordedPartnerBufferExecCompleted(u32 battler)
|
|||
}
|
||||
}
|
||||
|
||||
static u32 RecordedPartnerGetTrainerBackPicId(enum DifficultyLevel difficulty)
|
||||
static enum TrainerPicID RecordedPartnerGetTrainerBackPicId(enum DifficultyLevel difficulty)
|
||||
{
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
|
||||
trainerPicId = gBattlePartners[difficulty][gPartnerTrainerId - TRAINER_PARTNER(PARTNER_NONE)].trainerBackPic;
|
||||
else
|
||||
trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_BACK_PIC_BRENDAN;
|
||||
trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_PIC_BACK_BRENDAN;
|
||||
|
||||
return trainerPicId;
|
||||
}
|
||||
|
|
@ -215,9 +215,9 @@ static void RecordedPartnerHandleDrawTrainerPic(u32 battler)
|
|||
{
|
||||
bool32 isFrontPic;
|
||||
s16 xPos, yPos;
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
trainerPicId = TRAINER_BACK_PIC_STEVEN;
|
||||
trainerPicId = TRAINER_PIC_BACK_STEVEN;
|
||||
xPos = 90;
|
||||
yPos = (8 - gTrainerBacksprites[trainerPicId].coordinates.size) * 4 + 80;
|
||||
|
||||
|
|
@ -229,7 +229,7 @@ static void RecordedPartnerHandleDrawTrainerPic(u32 battler)
|
|||
static void RecordedPartnerHandleTrainerSlide(u32 battler)
|
||||
{
|
||||
enum DifficultyLevel difficulty = GetBattlePartnerDifficultyLevel(gPartnerTrainerId);
|
||||
u32 trainerPicId = RecordedPartnerGetTrainerBackPicId(difficulty);
|
||||
enum TrainerPicID trainerPicId = RecordedPartnerGetTrainerBackPicId(difficulty);
|
||||
BtlController_HandleTrainerSlide(battler, trainerPicId);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -274,12 +274,12 @@ static void RecordedPlayerHandleDrawTrainerPic(u32 battler)
|
|||
{
|
||||
bool32 isFrontPic;
|
||||
s16 xPos, yPos;
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
|
||||
// Sets Multibattle test player sprites to not be Hiker
|
||||
if (IsMultibattleTest())
|
||||
{
|
||||
trainerPicId = TRAINER_BACK_PIC_BRENDAN;
|
||||
trainerPicId = TRAINER_PIC_BACK_BRENDAN;
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER)
|
||||
xPos = 32;
|
||||
else
|
||||
|
|
@ -291,12 +291,12 @@ static void RecordedPlayerHandleDrawTrainerPic(u32 battler)
|
|||
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
|
||||
{
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||
trainerPicId = GetBattlerLinkPlayerGender(battler);
|
||||
trainerPicId = GetBattlerLinkPlayerGender(battler) + TRAINER_PIC_BACK_BRENDAN;
|
||||
else
|
||||
trainerPicId = gLinkPlayers[gRecordedBattleMultiplayerId].gender;
|
||||
trainerPicId = gLinkPlayers[gRecordedBattleMultiplayerId].gender + TRAINER_PIC_BACK_BRENDAN;
|
||||
}
|
||||
else
|
||||
trainerPicId = gLinkPlayers[0].gender;
|
||||
trainerPicId = gLinkPlayers[0].gender + TRAINER_PIC_BACK_BRENDAN;
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||
{
|
||||
|
|
@ -410,13 +410,13 @@ static void RecordedPlayerHandleStatusAnimation(u32 battler)
|
|||
|
||||
static void RecordedPlayerHandleIntroTrainerBallThrow(u32 battler)
|
||||
{
|
||||
u32 trainerPicId;
|
||||
enum TrainerPicID trainerPicId;
|
||||
const u16 *trainerPal;
|
||||
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_RECORDED_LINK)
|
||||
trainerPicId = gLinkPlayers[GetBattlerMultiplayerId(battler)].gender + TRAINER_BACK_PIC_BRENDAN;
|
||||
trainerPicId = gLinkPlayers[GetBattlerMultiplayerId(battler)].gender + TRAINER_PIC_BACK_BRENDAN;
|
||||
else
|
||||
trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_BACK_PIC_BRENDAN;
|
||||
trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_PIC_BACK_BRENDAN;
|
||||
|
||||
trainerPal = gTrainerBacksprites[trainerPicId].palette.data;
|
||||
BtlController_HandleIntroTrainerBallThrow(battler, 0xD6F9, trainerPal, 24, Intro_TryShinyAnimShowHealthbox);
|
||||
|
|
|
|||
|
|
@ -276,7 +276,7 @@ void SafariBufferExecCompleted(u32 battler)
|
|||
|
||||
static void SafariHandleDrawTrainerPic(u32 battler)
|
||||
{
|
||||
u32 trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_BACK_PIC_BRENDAN;
|
||||
enum TrainerPicID trainerPicId = gSaveBlock2Ptr->playerGender + TRAINER_PIC_BACK_BRENDAN;
|
||||
|
||||
BtlController_HandleDrawTrainerPic(battler, trainerPicId, FALSE,
|
||||
80, 80 + 4 * (8 - gTrainerBacksprites[trainerPicId].coordinates.size),
|
||||
|
|
|
|||
|
|
@ -282,14 +282,14 @@ void WallyBufferExecCompleted(u32 battler)
|
|||
|
||||
static void WallyHandleDrawTrainerPic(u32 battler)
|
||||
{
|
||||
BtlController_HandleDrawTrainerPic(battler, TRAINER_BACK_PIC_WALLY, FALSE,
|
||||
80, 80 + 4 * (8 - gTrainerBacksprites[TRAINER_BACK_PIC_WALLY].coordinates.size),
|
||||
BtlController_HandleDrawTrainerPic(battler, TRAINER_PIC_BACK_WALLY, FALSE,
|
||||
80, 80 + 4 * (8 - gTrainerBacksprites[TRAINER_PIC_BACK_WALLY].coordinates.size),
|
||||
30);
|
||||
}
|
||||
|
||||
static void WallyHandleTrainerSlide(u32 battler)
|
||||
{
|
||||
BtlController_HandleTrainerSlide(battler, TRAINER_BACK_PIC_WALLY);
|
||||
BtlController_HandleTrainerSlide(battler, TRAINER_PIC_BACK_WALLY);
|
||||
}
|
||||
|
||||
#undef sSpeedX
|
||||
|
|
@ -366,7 +366,7 @@ static void WallyHandleFaintingCry(u32 battler)
|
|||
|
||||
static void WallyHandleIntroTrainerBallThrow(u32 battler)
|
||||
{
|
||||
const u16 *trainerPal = gTrainerBacksprites[TRAINER_BACK_PIC_WALLY].palette.data;
|
||||
const u16 *trainerPal = gTrainerBacksprites[TRAINER_PIC_BACK_WALLY].palette.data;
|
||||
BtlController_HandleIntroTrainerBallThrow(battler, 0xD6F8, trainerPal, 31, Intro_TryShinyAnimShowHealthbox);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2396,7 +2396,7 @@ void BtlController_HandleReturnMonToBall(u32 battler)
|
|||
|
||||
#define sSpeedX data[0]
|
||||
|
||||
void BtlController_HandleDrawTrainerPic(u32 battler, u32 trainerPicId, bool32 isFrontPic, s16 xPos, s16 yPos, s32 subpriority)
|
||||
void BtlController_HandleDrawTrainerPic(u32 battler, enum TrainerPicID trainerPicId, bool32 isFrontPic, s16 xPos, s16 yPos, s32 subpriority)
|
||||
{
|
||||
if (!IsOnPlayerSide(battler)) // Always the front sprite for the opponent.
|
||||
{
|
||||
|
|
@ -2461,7 +2461,7 @@ void BtlController_HandleDrawTrainerPic(u32 battler, u32 trainerPicId, bool32 is
|
|||
gBattlerControllerFuncs[battler] = Controller_WaitForTrainerPic;
|
||||
}
|
||||
|
||||
void BtlController_HandleTrainerSlide(u32 battler, u32 trainerPicId)
|
||||
void BtlController_HandleTrainerSlide(u32 battler, enum TrainerPicID trainerPicId)
|
||||
{
|
||||
if (IsOnPlayerSide(battler))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -695,7 +695,7 @@ void DecompressTrainerFrontPic(u16 frontPicId, u8 battler)
|
|||
LoadSpritePalette(&gTrainerSprites[frontPicId].palette);
|
||||
}
|
||||
|
||||
void DecompressTrainerBackPic(u16 backPicId, u8 battler)
|
||||
void DecompressTrainerBackPic(enum TrainerPicID backPicId, u8 battler)
|
||||
{
|
||||
u8 position = GetBattlerPosition(battler);
|
||||
CopyTrainerBackspriteFramesToDest(backPicId, gMonSpritesGfxPtr->spritesGfx[position]);
|
||||
|
|
|
|||
|
|
@ -293,7 +293,7 @@ const u16 gTrainerBackPicPalette_Red[] = INCBIN_U16("graphics/trainers/back_pics
|
|||
const u16 gTrainerBackPicPalette_Leaf[] = INCBIN_U16("graphics/trainers/back_pics/leaf.gbapal");
|
||||
|
||||
// The first two parameters invoke a front pic and palette by
|
||||
// calling a "TRAINER_PIC" constant (e.g. TRAINER_PIC_HIKER), and
|
||||
// calling a "TRAINER_PIC" constant (e.g. TRAINER_PIC_FRONT_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.
|
||||
|
|
@ -308,99 +308,99 @@ const u16 gTrainerBackPicPalette_Leaf[] = INCBIN_U16("graphics/trainers/back_pic
|
|||
|
||||
const struct TrainerSprite gTrainerSprites[] =
|
||||
{
|
||||
TRAINER_SPRITE(TRAINER_PIC_HIKER, gTrainerFrontPic_Hiker, gTrainerPalette_Hiker),
|
||||
TRAINER_SPRITE(TRAINER_PIC_AQUA_GRUNT_M, gTrainerFrontPic_AquaGruntM, gTrainerPalette_AquaGruntM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_POKEMON_BREEDER_F, gTrainerFrontPic_PokemonBreederF, gTrainerPalette_PokemonBreederF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_COOLTRAINER_M, gTrainerFrontPic_CoolTrainerM, gTrainerPalette_CoolTrainerM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_BIRD_KEEPER, gTrainerFrontPic_BirdKeeper, gTrainerPalette_BirdKeeper),
|
||||
TRAINER_SPRITE(TRAINER_PIC_COLLECTOR, gTrainerFrontPic_Collector, gTrainerPalette_Collector),
|
||||
TRAINER_SPRITE(TRAINER_PIC_AQUA_GRUNT_F, gTrainerFrontPic_AquaGruntF, gTrainerPalette_AquaGruntF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SWIMMER_M, gTrainerFrontPic_SwimmerM, gTrainerPalette_SwimmerM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_MAGMA_GRUNT_M, gTrainerFrontPic_MagmaGruntM, gTrainerPalette_MagmaGruntM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_EXPERT_M, gTrainerFrontPic_ExpertM, gTrainerPalette_ExpertM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_AQUA_ADMIN_M, gTrainerFrontPic_AquaAdminM, gTrainerPalette_AquaAdminM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_BLACK_BELT, gTrainerFrontPic_BlackBelt, gTrainerPalette_BlackBelt),
|
||||
TRAINER_SPRITE(TRAINER_PIC_AQUA_ADMIN_F, gTrainerFrontPic_AquaAdminF, gTrainerPalette_AquaAdminF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_AQUA_LEADER_ARCHIE, gTrainerFrontPic_AquaLeaderArchie, gTrainerPalette_AquaLeaderArchie),
|
||||
TRAINER_SPRITE(TRAINER_PIC_HEX_MANIAC, gTrainerFrontPic_HexManiac, gTrainerPalette_HexManiac),
|
||||
TRAINER_SPRITE(TRAINER_PIC_AROMA_LADY, gTrainerFrontPic_AromaLady, gTrainerPalette_AromaLady),
|
||||
TRAINER_SPRITE(TRAINER_PIC_RUIN_MANIAC, gTrainerFrontPic_RuinManiac, gTrainerPalette_RuinManiac),
|
||||
TRAINER_SPRITE(TRAINER_PIC_INTERVIEWER, gTrainerFrontPic_Interviewer, gTrainerPalette_Interviewer),
|
||||
TRAINER_SPRITE(TRAINER_PIC_TUBER_F, gTrainerFrontPic_TuberF, gTrainerPalette_TuberF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_TUBER_M, gTrainerFrontPic_TuberM, gTrainerPalette_TuberM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_COOLTRAINER_F, gTrainerFrontPic_CoolTrainerF, gTrainerPalette_CoolTrainerF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LADY, gTrainerFrontPic_Lady, gTrainerPalette_Lady),
|
||||
TRAINER_SPRITE(TRAINER_PIC_BEAUTY, gTrainerFrontPic_Beauty, gTrainerPalette_Beauty),
|
||||
TRAINER_SPRITE(TRAINER_PIC_RICH_BOY, gTrainerFrontPic_RichBoy, gTrainerPalette_RichBoy),
|
||||
TRAINER_SPRITE(TRAINER_PIC_EXPERT_F, gTrainerFrontPic_ExpertF, gTrainerPalette_ExpertF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_POKEMANIAC, gTrainerFrontPic_Pokemaniac, gTrainerPalette_Pokemaniac),
|
||||
TRAINER_SPRITE(TRAINER_PIC_MAGMA_GRUNT_F, gTrainerFrontPic_MagmaGruntF, gTrainerPalette_MagmaGruntF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_GUITARIST, gTrainerFrontPic_Guitarist, gTrainerPalette_Guitarist),
|
||||
TRAINER_SPRITE(TRAINER_PIC_KINDLER, gTrainerFrontPic_Kindler, gTrainerPalette_Kindler),
|
||||
TRAINER_SPRITE(TRAINER_PIC_CAMPER, gTrainerFrontPic_Camper, gTrainerPalette_Camper),
|
||||
TRAINER_SPRITE(TRAINER_PIC_PICNICKER, gTrainerFrontPic_Picnicker, gTrainerPalette_Picnicker),
|
||||
TRAINER_SPRITE(TRAINER_PIC_BUG_MANIAC, gTrainerFrontPic_BugManiac, gTrainerPalette_BugManiac),
|
||||
TRAINER_SPRITE(TRAINER_PIC_POKEMON_BREEDER_M, gTrainerFrontPic_PokemonBreederM, gTrainerPalette_PokemonBreederM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_PSYCHIC_M, gTrainerFrontPic_PsychicM, gTrainerPalette_PsychicM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_PSYCHIC_F, gTrainerFrontPic_PsychicF, gTrainerPalette_PsychicF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_GENTLEMAN, gTrainerFrontPic_Gentleman, gTrainerPalette_Gentleman),
|
||||
TRAINER_SPRITE(TRAINER_PIC_ELITE_FOUR_SIDNEY, gTrainerFrontPic_EliteFourSidney, gTrainerPalette_EliteFourSidney),
|
||||
TRAINER_SPRITE(TRAINER_PIC_ELITE_FOUR_PHOEBE, gTrainerFrontPic_EliteFourPhoebe, gTrainerPalette_EliteFourPhoebe),
|
||||
TRAINER_SPRITE(TRAINER_PIC_ELITE_FOUR_GLACIA, gTrainerFrontPic_EliteFourGlacia, gTrainerPalette_EliteFourGlacia, -4, 4, 0x1B0),
|
||||
TRAINER_SPRITE(TRAINER_PIC_ELITE_FOUR_DRAKE, gTrainerFrontPic_EliteFourDrake, gTrainerPalette_EliteFourDrake, 0, 5, 0x1A0),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEADER_ROXANNE, gTrainerFrontPic_LeaderRoxanne, gTrainerPalette_LeaderRoxanne),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEADER_BRAWLY, gTrainerFrontPic_LeaderBrawly, gTrainerPalette_LeaderBrawly),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEADER_WATTSON, gTrainerFrontPic_LeaderWattson, gTrainerPalette_LeaderWattson),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEADER_FLANNERY, gTrainerFrontPic_LeaderFlannery, gTrainerPalette_LeaderFlannery),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEADER_NORMAN, gTrainerFrontPic_LeaderNorman, gTrainerPalette_LeaderNorman),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEADER_WINONA, gTrainerFrontPic_LeaderWinona, gTrainerPalette_LeaderWinona),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEADER_TATE_AND_LIZA, gTrainerFrontPic_LeaderTateAndLiza, gTrainerPalette_LeaderTateAndLiza),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEADER_JUAN, gTrainerFrontPic_LeaderJuan, gTrainerPalette_LeaderJuan),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SCHOOL_KID_M, gTrainerFrontPic_SchoolKidM, gTrainerPalette_SchoolKidM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SCHOOL_KID_F, gTrainerFrontPic_SchoolKidF, gTrainerPalette_SchoolKidF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SR_AND_JR, gTrainerFrontPic_SrAndJr, gTrainerPalette_SrAndJr),
|
||||
TRAINER_SPRITE(TRAINER_PIC_POKEFAN_M, gTrainerFrontPic_PokefanM, gTrainerPalette_PokefanM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_POKEFAN_F, gTrainerFrontPic_PokefanF, gTrainerPalette_PokefanF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_YOUNGSTER, gTrainerFrontPic_Youngster, gTrainerPalette_Youngster),
|
||||
TRAINER_SPRITE(TRAINER_PIC_CHAMPION_WALLACE, gTrainerFrontPic_ChampionWallace, gTrainerPalette_ChampionWallace, -8, 7, 0x188),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FISHERMAN, gTrainerFrontPic_Fisherman, gTrainerPalette_Fisherman),
|
||||
TRAINER_SPRITE(TRAINER_PIC_CYCLING_TRIATHLETE_M, gTrainerFrontPic_CyclingTriathleteM, gTrainerPalette_CyclingTriathleteM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_CYCLING_TRIATHLETE_F, gTrainerFrontPic_CyclingTriathleteF, gTrainerPalette_CyclingTriathleteF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_RUNNING_TRIATHLETE_M, gTrainerFrontPic_RunningTriathleteM, gTrainerPalette_RunningTriathleteM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_RUNNING_TRIATHLETE_F, gTrainerFrontPic_RunningTriathleteF, gTrainerPalette_RunningTriathleteF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SWIMMING_TRIATHLETE_M, gTrainerFrontPic_SwimmingTriathleteM, gTrainerPalette_SwimmingTriathleteM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SWIMMING_TRIATHLETE_F, gTrainerFrontPic_SwimmingTriathleteF, gTrainerPalette_SwimmingTriathleteF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_DRAGON_TAMER, gTrainerFrontPic_DragonTamer, gTrainerPalette_DragonTamer),
|
||||
TRAINER_SPRITE(TRAINER_PIC_NINJA_BOY, gTrainerFrontPic_NinjaBoy, gTrainerPalette_NinjaBoy),
|
||||
TRAINER_SPRITE(TRAINER_PIC_BATTLE_GIRL, gTrainerFrontPic_BattleGirl, gTrainerPalette_BattleGirl),
|
||||
TRAINER_SPRITE(TRAINER_PIC_PARASOL_LADY, gTrainerFrontPic_ParasolLady, gTrainerPalette_ParasolLady),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SWIMMER_F, gTrainerFrontPic_SwimmerF, gTrainerPalette_SwimmerF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_TWINS, gTrainerFrontPic_Twins, gTrainerPalette_Twins),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SAILOR, gTrainerFrontPic_Sailor, gTrainerPalette_Sailor),
|
||||
TRAINER_SPRITE(TRAINER_PIC_MAGMA_ADMIN, gTrainerFrontPic_MagmaAdmin, gTrainerPalette_MagmaAdmin),
|
||||
TRAINER_SPRITE(TRAINER_PIC_WALLY, gTrainerFrontPic_Wally, gTrainerPalette_Wally),
|
||||
TRAINER_SPRITE(TRAINER_PIC_BRENDAN, gTrainerFrontPic_Brendan, gTrainerPalette_Brendan),
|
||||
TRAINER_SPRITE(TRAINER_PIC_MAY, gTrainerFrontPic_May, gTrainerPalette_May),
|
||||
TRAINER_SPRITE(TRAINER_PIC_BUG_CATCHER, gTrainerFrontPic_BugCatcher, gTrainerPalette_BugCatcher),
|
||||
TRAINER_SPRITE(TRAINER_PIC_POKEMON_RANGER_M, gTrainerFrontPic_PokemonRangerM, gTrainerPalette_PokemonRangerM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_POKEMON_RANGER_F, gTrainerFrontPic_PokemonRangerF, gTrainerPalette_PokemonRangerF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_MAGMA_LEADER_MAXIE, gTrainerFrontPic_MagmaLeaderMaxie, gTrainerPalette_MagmaLeaderMaxie),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LASS, gTrainerFrontPic_Lass, gTrainerPalette_Lass),
|
||||
TRAINER_SPRITE(TRAINER_PIC_YOUNG_COUPLE, gTrainerFrontPic_YoungCouple, gTrainerPalette_YoungCouple),
|
||||
TRAINER_SPRITE(TRAINER_PIC_OLD_COUPLE, gTrainerFrontPic_OldCouple, gTrainerPalette_OldCouple),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SIS_AND_BRO, gTrainerFrontPic_SisAndBro, gTrainerPalette_SisAndBro),
|
||||
TRAINER_SPRITE(TRAINER_PIC_STEVEN, gTrainerFrontPic_Steven, gTrainerPalette_Steven, 0, 7, 0x188),
|
||||
TRAINER_SPRITE(TRAINER_PIC_SALON_MAIDEN_ANABEL, gTrainerFrontPic_SalonMaidenAnabel, gTrainerPalette_SalonMaidenAnabel),
|
||||
TRAINER_SPRITE(TRAINER_PIC_DOME_ACE_TUCKER, gTrainerFrontPic_DomeAceTucker, gTrainerPalette_DomeAceTucker),
|
||||
TRAINER_SPRITE(TRAINER_PIC_PALACE_MAVEN_SPENSER, gTrainerFrontPic_PalaceMavenSpenser, gTrainerPalette_PalaceMavenSpenser),
|
||||
TRAINER_SPRITE(TRAINER_PIC_ARENA_TYCOON_GRETA, gTrainerFrontPic_ArenaTycoonGreta, gTrainerPalette_ArenaTycoonGreta),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FACTORY_HEAD_NOLAND, gTrainerFrontPic_FactoryHeadNoland, gTrainerPalette_FactoryHeadNoland),
|
||||
TRAINER_SPRITE(TRAINER_PIC_PIKE_QUEEN_LUCY, gTrainerFrontPic_PikeQueenLucy, gTrainerPalette_PikeQueenLucy),
|
||||
TRAINER_SPRITE(TRAINER_PIC_PYRAMID_KING_BRANDON, gTrainerFrontPic_PyramidKingBrandon, gTrainerPalette_PyramidKingBrandon),
|
||||
TRAINER_SPRITE(TRAINER_PIC_RED, gTrainerFrontPic_Red, gTrainerPalette_Red),
|
||||
TRAINER_SPRITE(TRAINER_PIC_LEAF, gTrainerFrontPic_Leaf, gTrainerPalette_Leaf),
|
||||
TRAINER_SPRITE(TRAINER_PIC_RS_BRENDAN, gTrainerFrontPic_RubySapphireBrendan, gTrainerPalette_RubySapphireBrendan),
|
||||
TRAINER_SPRITE(TRAINER_PIC_RS_MAY, gTrainerFrontPic_RubySapphireMay, gTrainerPalette_RubySapphireMay),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_HIKER, gTrainerFrontPic_Hiker, gTrainerPalette_Hiker),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_AQUA_GRUNT_M, gTrainerFrontPic_AquaGruntM, gTrainerPalette_AquaGruntM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_POKEMON_BREEDER_F, gTrainerFrontPic_PokemonBreederF, gTrainerPalette_PokemonBreederF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_COOLTRAINER_M, gTrainerFrontPic_CoolTrainerM, gTrainerPalette_CoolTrainerM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_BIRD_KEEPER, gTrainerFrontPic_BirdKeeper, gTrainerPalette_BirdKeeper),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_COLLECTOR, gTrainerFrontPic_Collector, gTrainerPalette_Collector),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_AQUA_GRUNT_F, gTrainerFrontPic_AquaGruntF, gTrainerPalette_AquaGruntF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SWIMMER_M, gTrainerFrontPic_SwimmerM, gTrainerPalette_SwimmerM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_MAGMA_GRUNT_M, gTrainerFrontPic_MagmaGruntM, gTrainerPalette_MagmaGruntM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_EXPERT_M, gTrainerFrontPic_ExpertM, gTrainerPalette_ExpertM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_AQUA_ADMIN_M, gTrainerFrontPic_AquaAdminM, gTrainerPalette_AquaAdminM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_BLACK_BELT, gTrainerFrontPic_BlackBelt, gTrainerPalette_BlackBelt),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_AQUA_ADMIN_F, gTrainerFrontPic_AquaAdminF, gTrainerPalette_AquaAdminF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_AQUA_LEADER_ARCHIE, gTrainerFrontPic_AquaLeaderArchie, gTrainerPalette_AquaLeaderArchie),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_HEX_MANIAC, gTrainerFrontPic_HexManiac, gTrainerPalette_HexManiac),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_AROMA_LADY, gTrainerFrontPic_AromaLady, gTrainerPalette_AromaLady),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_RUIN_MANIAC, gTrainerFrontPic_RuinManiac, gTrainerPalette_RuinManiac),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_INTERVIEWER, gTrainerFrontPic_Interviewer, gTrainerPalette_Interviewer),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_TUBER_F, gTrainerFrontPic_TuberF, gTrainerPalette_TuberF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_TUBER_M, gTrainerFrontPic_TuberM, gTrainerPalette_TuberM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_COOLTRAINER_F, gTrainerFrontPic_CoolTrainerF, gTrainerPalette_CoolTrainerF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LADY, gTrainerFrontPic_Lady, gTrainerPalette_Lady),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_BEAUTY, gTrainerFrontPic_Beauty, gTrainerPalette_Beauty),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_RICH_BOY, gTrainerFrontPic_RichBoy, gTrainerPalette_RichBoy),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_EXPERT_F, gTrainerFrontPic_ExpertF, gTrainerPalette_ExpertF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_POKEMANIAC, gTrainerFrontPic_Pokemaniac, gTrainerPalette_Pokemaniac),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_MAGMA_GRUNT_F, gTrainerFrontPic_MagmaGruntF, gTrainerPalette_MagmaGruntF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_GUITARIST, gTrainerFrontPic_Guitarist, gTrainerPalette_Guitarist),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_KINDLER, gTrainerFrontPic_Kindler, gTrainerPalette_Kindler),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_CAMPER, gTrainerFrontPic_Camper, gTrainerPalette_Camper),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_PICNICKER, gTrainerFrontPic_Picnicker, gTrainerPalette_Picnicker),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_BUG_MANIAC, gTrainerFrontPic_BugManiac, gTrainerPalette_BugManiac),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_POKEMON_BREEDER_M, gTrainerFrontPic_PokemonBreederM, gTrainerPalette_PokemonBreederM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_PSYCHIC_M, gTrainerFrontPic_PsychicM, gTrainerPalette_PsychicM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_PSYCHIC_F, gTrainerFrontPic_PsychicF, gTrainerPalette_PsychicF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_GENTLEMAN, gTrainerFrontPic_Gentleman, gTrainerPalette_Gentleman),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_ELITE_FOUR_SIDNEY, gTrainerFrontPic_EliteFourSidney, gTrainerPalette_EliteFourSidney),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_ELITE_FOUR_PHOEBE, gTrainerFrontPic_EliteFourPhoebe, gTrainerPalette_EliteFourPhoebe),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_ELITE_FOUR_GLACIA, gTrainerFrontPic_EliteFourGlacia, gTrainerPalette_EliteFourGlacia, -4, 4, 0x1B0),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_ELITE_FOUR_DRAKE, gTrainerFrontPic_EliteFourDrake, gTrainerPalette_EliteFourDrake, 0, 5, 0x1A0),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEADER_ROXANNE, gTrainerFrontPic_LeaderRoxanne, gTrainerPalette_LeaderRoxanne),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEADER_BRAWLY, gTrainerFrontPic_LeaderBrawly, gTrainerPalette_LeaderBrawly),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEADER_WATTSON, gTrainerFrontPic_LeaderWattson, gTrainerPalette_LeaderWattson),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEADER_FLANNERY, gTrainerFrontPic_LeaderFlannery, gTrainerPalette_LeaderFlannery),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEADER_NORMAN, gTrainerFrontPic_LeaderNorman, gTrainerPalette_LeaderNorman),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEADER_WINONA, gTrainerFrontPic_LeaderWinona, gTrainerPalette_LeaderWinona),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEADER_TATE_AND_LIZA, gTrainerFrontPic_LeaderTateAndLiza, gTrainerPalette_LeaderTateAndLiza),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEADER_JUAN, gTrainerFrontPic_LeaderJuan, gTrainerPalette_LeaderJuan),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SCHOOL_KID_M, gTrainerFrontPic_SchoolKidM, gTrainerPalette_SchoolKidM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SCHOOL_KID_F, gTrainerFrontPic_SchoolKidF, gTrainerPalette_SchoolKidF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SR_AND_JR, gTrainerFrontPic_SrAndJr, gTrainerPalette_SrAndJr),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_POKEFAN_M, gTrainerFrontPic_PokefanM, gTrainerPalette_PokefanM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_POKEFAN_F, gTrainerFrontPic_PokefanF, gTrainerPalette_PokefanF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_YOUNGSTER, gTrainerFrontPic_Youngster, gTrainerPalette_Youngster),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_CHAMPION_WALLACE, gTrainerFrontPic_ChampionWallace, gTrainerPalette_ChampionWallace, -8, 7, 0x188),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_FISHERMAN, gTrainerFrontPic_Fisherman, gTrainerPalette_Fisherman),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_CYCLING_TRIATHLETE_M, gTrainerFrontPic_CyclingTriathleteM, gTrainerPalette_CyclingTriathleteM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_CYCLING_TRIATHLETE_F, gTrainerFrontPic_CyclingTriathleteF, gTrainerPalette_CyclingTriathleteF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_RUNNING_TRIATHLETE_M, gTrainerFrontPic_RunningTriathleteM, gTrainerPalette_RunningTriathleteM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_RUNNING_TRIATHLETE_F, gTrainerFrontPic_RunningTriathleteF, gTrainerPalette_RunningTriathleteF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SWIMMING_TRIATHLETE_M, gTrainerFrontPic_SwimmingTriathleteM, gTrainerPalette_SwimmingTriathleteM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SWIMMING_TRIATHLETE_F, gTrainerFrontPic_SwimmingTriathleteF, gTrainerPalette_SwimmingTriathleteF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_DRAGON_TAMER, gTrainerFrontPic_DragonTamer, gTrainerPalette_DragonTamer),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_NINJA_BOY, gTrainerFrontPic_NinjaBoy, gTrainerPalette_NinjaBoy),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_BATTLE_GIRL, gTrainerFrontPic_BattleGirl, gTrainerPalette_BattleGirl),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_PARASOL_LADY, gTrainerFrontPic_ParasolLady, gTrainerPalette_ParasolLady),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SWIMMER_F, gTrainerFrontPic_SwimmerF, gTrainerPalette_SwimmerF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_TWINS, gTrainerFrontPic_Twins, gTrainerPalette_Twins),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SAILOR, gTrainerFrontPic_Sailor, gTrainerPalette_Sailor),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_MAGMA_ADMIN, gTrainerFrontPic_MagmaAdmin, gTrainerPalette_MagmaAdmin),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_WALLY, gTrainerFrontPic_Wally, gTrainerPalette_Wally),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_BRENDAN, gTrainerFrontPic_Brendan, gTrainerPalette_Brendan),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_MAY, gTrainerFrontPic_May, gTrainerPalette_May),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_BUG_CATCHER, gTrainerFrontPic_BugCatcher, gTrainerPalette_BugCatcher),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_POKEMON_RANGER_M, gTrainerFrontPic_PokemonRangerM, gTrainerPalette_PokemonRangerM),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_POKEMON_RANGER_F, gTrainerFrontPic_PokemonRangerF, gTrainerPalette_PokemonRangerF),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_MAGMA_LEADER_MAXIE, gTrainerFrontPic_MagmaLeaderMaxie, gTrainerPalette_MagmaLeaderMaxie),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LASS, gTrainerFrontPic_Lass, gTrainerPalette_Lass),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_YOUNG_COUPLE, gTrainerFrontPic_YoungCouple, gTrainerPalette_YoungCouple),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_OLD_COUPLE, gTrainerFrontPic_OldCouple, gTrainerPalette_OldCouple),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SIS_AND_BRO, gTrainerFrontPic_SisAndBro, gTrainerPalette_SisAndBro),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_STEVEN, gTrainerFrontPic_Steven, gTrainerPalette_Steven, 0, 7, 0x188),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_SALON_MAIDEN_ANABEL, gTrainerFrontPic_SalonMaidenAnabel, gTrainerPalette_SalonMaidenAnabel),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_DOME_ACE_TUCKER, gTrainerFrontPic_DomeAceTucker, gTrainerPalette_DomeAceTucker),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_PALACE_MAVEN_SPENSER, gTrainerFrontPic_PalaceMavenSpenser, gTrainerPalette_PalaceMavenSpenser),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_ARENA_TYCOON_GRETA, gTrainerFrontPic_ArenaTycoonGreta, gTrainerPalette_ArenaTycoonGreta),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_FACTORY_HEAD_NOLAND, gTrainerFrontPic_FactoryHeadNoland, gTrainerPalette_FactoryHeadNoland),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_PIKE_QUEEN_LUCY, gTrainerFrontPic_PikeQueenLucy, gTrainerPalette_PikeQueenLucy),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_PYRAMID_KING_BRANDON, gTrainerFrontPic_PyramidKingBrandon, gTrainerPalette_PyramidKingBrandon),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_RED, gTrainerFrontPic_Red, gTrainerPalette_Red),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_LEAF, gTrainerFrontPic_Leaf, gTrainerPalette_Leaf),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_RS_BRENDAN, gTrainerFrontPic_RubySapphireBrendan, gTrainerPalette_RubySapphireBrendan),
|
||||
TRAINER_SPRITE(TRAINER_PIC_FRONT_RS_MAY, gTrainerFrontPic_RubySapphireMay, gTrainerPalette_RubySapphireMay),
|
||||
};
|
||||
|
||||
static const union AnimCmd sAnimCmd_Hoenn[] =
|
||||
|
|
@ -468,12 +468,12 @@ static const union AnimCmd *const sBackAnims_Kanto[] =
|
|||
|
||||
const struct TrainerBacksprite gTrainerBacksprites[] =
|
||||
{
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_BRENDAN, 4, gTrainerBackPic_Brendan, gTrainerPalette_Brendan, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_MAY, 4, gTrainerBackPic_May, gTrainerPalette_May, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_RED, 5, gTrainerBackPic_Red, gTrainerBackPicPalette_Red, sBackAnims_Kanto),
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_LEAF, 5, gTrainerBackPic_Leaf, gTrainerBackPicPalette_Leaf, sBackAnims_Kanto),
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_RUBY_SAPPHIRE_BRENDAN, 4, gTrainerBackPic_RubySapphireBrendan, gTrainerPalette_RubySapphireBrendan, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_RUBY_SAPPHIRE_MAY, 4, gTrainerBackPic_RubySapphireMay, gTrainerPalette_RubySapphireMay, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_WALLY, 4, gTrainerBackPic_Wally, gTrainerPalette_Wally, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_BACK_PIC_STEVEN, 4, gTrainerBackPic_Steven, gTrainerPalette_Steven, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_BRENDAN, 4, gTrainerBackPic_Brendan, gTrainerPalette_Brendan, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_MAY, 4, gTrainerBackPic_May, gTrainerPalette_May, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_RED, 5, gTrainerBackPic_Red, gTrainerBackPicPalette_Red, sBackAnims_Kanto),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_LEAF, 5, gTrainerBackPic_Leaf, gTrainerBackPicPalette_Leaf, sBackAnims_Kanto),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_RUBY_SAPPHIRE_BRENDAN, 4, gTrainerBackPic_RubySapphireBrendan, gTrainerPalette_RubySapphireBrendan, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_RUBY_SAPPHIRE_MAY, 4, gTrainerBackPic_RubySapphireMay, gTrainerPalette_RubySapphireMay, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_WALLY, 4, gTrainerBackPic_Wally, gTrainerPalette_Wally, sBackAnims_Hoenn),
|
||||
TRAINER_BACK_SPRITE(TRAINER_PIC_BACK_STEVEN, 4, gTrainerBackPic_Steven, gTrainerPalette_Steven, sBackAnims_Hoenn),
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,87 +1,87 @@
|
|||
const u16 gFacilityClassToPicIndex[] =
|
||||
{
|
||||
[FACILITY_CLASS_HIKER] = TRAINER_PIC_HIKER,
|
||||
[FACILITY_CLASS_AQUA_GRUNT_M] = TRAINER_PIC_AQUA_GRUNT_M,
|
||||
[FACILITY_CLASS_PKMN_BREEDER_F] = TRAINER_PIC_POKEMON_BREEDER_F,
|
||||
[FACILITY_CLASS_COOLTRAINER_M] = TRAINER_PIC_COOLTRAINER_M,
|
||||
[FACILITY_CLASS_BIRD_KEEPER] = TRAINER_PIC_BIRD_KEEPER,
|
||||
[FACILITY_CLASS_COLLECTOR] = TRAINER_PIC_COLLECTOR,
|
||||
[FACILITY_CLASS_AQUA_GRUNT_F] = TRAINER_PIC_AQUA_GRUNT_F,
|
||||
[FACILITY_CLASS_SWIMMER_M] = TRAINER_PIC_SWIMMER_M,
|
||||
[FACILITY_CLASS_MAGMA_GRUNT_M] = TRAINER_PIC_MAGMA_GRUNT_M,
|
||||
[FACILITY_CLASS_EXPERT_M] = TRAINER_PIC_EXPERT_M,
|
||||
[FACILITY_CLASS_BLACK_BELT] = TRAINER_PIC_BLACK_BELT,
|
||||
[FACILITY_CLASS_AQUA_LEADER_ARCHIE] = TRAINER_PIC_AQUA_LEADER_ARCHIE,
|
||||
[FACILITY_CLASS_HEX_MANIAC] = TRAINER_PIC_HEX_MANIAC,
|
||||
[FACILITY_CLASS_AROMA_LADY] = TRAINER_PIC_AROMA_LADY,
|
||||
[FACILITY_CLASS_RUIN_MANIAC] = TRAINER_PIC_RUIN_MANIAC,
|
||||
[FACILITY_CLASS_INTERVIEWER] = TRAINER_PIC_INTERVIEWER,
|
||||
[FACILITY_CLASS_TUBER_F] = TRAINER_PIC_TUBER_F,
|
||||
[FACILITY_CLASS_TUBER_M] = TRAINER_PIC_TUBER_M,
|
||||
[FACILITY_CLASS_COOLTRAINER_F] = TRAINER_PIC_COOLTRAINER_F,
|
||||
[FACILITY_CLASS_LADY] = TRAINER_PIC_LADY,
|
||||
[FACILITY_CLASS_BEAUTY] = TRAINER_PIC_BEAUTY,
|
||||
[FACILITY_CLASS_RICH_BOY] = TRAINER_PIC_RICH_BOY,
|
||||
[FACILITY_CLASS_EXPERT_F] = TRAINER_PIC_EXPERT_F,
|
||||
[FACILITY_CLASS_POKEMANIAC] = TRAINER_PIC_POKEMANIAC,
|
||||
[FACILITY_CLASS_MAGMA_GRUNT_F] = TRAINER_PIC_MAGMA_GRUNT_F,
|
||||
[FACILITY_CLASS_GUITARIST] = TRAINER_PIC_GUITARIST,
|
||||
[FACILITY_CLASS_KINDLER] = TRAINER_PIC_KINDLER,
|
||||
[FACILITY_CLASS_CAMPER] = TRAINER_PIC_CAMPER,
|
||||
[FACILITY_CLASS_PICNICKER] = TRAINER_PIC_PICNICKER,
|
||||
[FACILITY_CLASS_BUG_MANIAC] = TRAINER_PIC_BUG_MANIAC,
|
||||
[FACILITY_CLASS_PSYCHIC_M] = TRAINER_PIC_PSYCHIC_M,
|
||||
[FACILITY_CLASS_PSYCHIC_F] = TRAINER_PIC_PSYCHIC_F,
|
||||
[FACILITY_CLASS_GENTLEMAN] = TRAINER_PIC_GENTLEMAN,
|
||||
[FACILITY_CLASS_ELITE_FOUR_SIDNEY] = TRAINER_PIC_ELITE_FOUR_SIDNEY,
|
||||
[FACILITY_CLASS_ELITE_FOUR_PHOEBE] = TRAINER_PIC_ELITE_FOUR_PHOEBE,
|
||||
[FACILITY_CLASS_LEADER_ROXANNE] = TRAINER_PIC_LEADER_ROXANNE,
|
||||
[FACILITY_CLASS_LEADER_BRAWLY] = TRAINER_PIC_LEADER_BRAWLY,
|
||||
[FACILITY_CLASS_LEADER_TATE_AND_LIZA] = TRAINER_PIC_LEADER_TATE_AND_LIZA,
|
||||
[FACILITY_CLASS_SCHOOL_KID_M] = TRAINER_PIC_SCHOOL_KID_M,
|
||||
[FACILITY_CLASS_SCHOOL_KID_F] = TRAINER_PIC_SCHOOL_KID_F,
|
||||
[FACILITY_CLASS_SR_AND_JR] = TRAINER_PIC_SR_AND_JR,
|
||||
[FACILITY_CLASS_POKEFAN_M] = TRAINER_PIC_POKEFAN_M,
|
||||
[FACILITY_CLASS_POKEFAN_F] = TRAINER_PIC_POKEFAN_F,
|
||||
[FACILITY_CLASS_YOUNGSTER] = TRAINER_PIC_YOUNGSTER,
|
||||
[FACILITY_CLASS_CHAMPION_WALLACE] = TRAINER_PIC_CHAMPION_WALLACE,
|
||||
[FACILITY_CLASS_FISHERMAN] = TRAINER_PIC_FISHERMAN,
|
||||
[FACILITY_CLASS_CYCLING_TRIATHLETE_M] = TRAINER_PIC_CYCLING_TRIATHLETE_M,
|
||||
[FACILITY_CLASS_CYCLING_TRIATHLETE_F] = TRAINER_PIC_CYCLING_TRIATHLETE_F,
|
||||
[FACILITY_CLASS_RUNNING_TRIATHLETE_M] = TRAINER_PIC_RUNNING_TRIATHLETE_M,
|
||||
[FACILITY_CLASS_RUNNING_TRIATHLETE_F] = TRAINER_PIC_RUNNING_TRIATHLETE_F,
|
||||
[FACILITY_CLASS_SWIMMING_TRIATHLETE_M] = TRAINER_PIC_SWIMMING_TRIATHLETE_M,
|
||||
[FACILITY_CLASS_SWIMMING_TRIATHLETE_F] = TRAINER_PIC_SWIMMING_TRIATHLETE_F,
|
||||
[FACILITY_CLASS_DRAGON_TAMER] = TRAINER_PIC_DRAGON_TAMER,
|
||||
[FACILITY_CLASS_NINJA_BOY] = TRAINER_PIC_NINJA_BOY,
|
||||
[FACILITY_CLASS_BATTLE_GIRL] = TRAINER_PIC_BATTLE_GIRL,
|
||||
[FACILITY_CLASS_PARASOL_LADY] = TRAINER_PIC_PARASOL_LADY,
|
||||
[FACILITY_CLASS_SWIMMER_F] = TRAINER_PIC_SWIMMER_F,
|
||||
[FACILITY_CLASS_TWINS] = TRAINER_PIC_TWINS,
|
||||
[FACILITY_CLASS_SAILOR] = TRAINER_PIC_SAILOR,
|
||||
[FACILITY_CLASS_WALLY] = TRAINER_PIC_WALLY,
|
||||
[FACILITY_CLASS_BRENDAN] = TRAINER_PIC_BRENDAN,
|
||||
[FACILITY_CLASS_BRENDAN_2] = TRAINER_PIC_BRENDAN,
|
||||
[FACILITY_CLASS_BRENDAN_3] = TRAINER_PIC_BRENDAN,
|
||||
[FACILITY_CLASS_MAY] = TRAINER_PIC_MAY,
|
||||
[FACILITY_CLASS_MAY_2] = TRAINER_PIC_MAY,
|
||||
[FACILITY_CLASS_MAY_3] = TRAINER_PIC_MAY,
|
||||
[FACILITY_CLASS_PKMN_BREEDER_M] = TRAINER_PIC_POKEMON_BREEDER_M,
|
||||
[FACILITY_CLASS_BUG_CATCHER] = TRAINER_PIC_BUG_CATCHER,
|
||||
[FACILITY_CLASS_PKMN_RANGER_M] = TRAINER_PIC_POKEMON_RANGER_M,
|
||||
[FACILITY_CLASS_PKMN_RANGER_F] = TRAINER_PIC_POKEMON_RANGER_F,
|
||||
[FACILITY_CLASS_MAGMA_LEADER_MAXIE] = TRAINER_PIC_MAGMA_LEADER_MAXIE,
|
||||
[FACILITY_CLASS_LASS] = TRAINER_PIC_LASS,
|
||||
[FACILITY_CLASS_YOUNG_COUPLE] = TRAINER_PIC_YOUNG_COUPLE,
|
||||
[FACILITY_CLASS_OLD_COUPLE] = TRAINER_PIC_OLD_COUPLE,
|
||||
[FACILITY_CLASS_SIS_AND_BRO] = TRAINER_PIC_SIS_AND_BRO,
|
||||
[FACILITY_CLASS_STEVEN] = TRAINER_PIC_STEVEN,
|
||||
[FACILITY_CLASS_SALON_MAIDEN_ANABEL] = TRAINER_PIC_SALON_MAIDEN_ANABEL,
|
||||
[FACILITY_CLASS_DOME_ACE_TUCKER] = TRAINER_PIC_DOME_ACE_TUCKER,
|
||||
[FACILITY_CLASS_RED] = TRAINER_PIC_RED,
|
||||
[FACILITY_CLASS_LEAF] = TRAINER_PIC_LEAF,
|
||||
[FACILITY_CLASS_RS_BRENDAN] = TRAINER_PIC_RS_BRENDAN,
|
||||
[FACILITY_CLASS_RS_MAY] = TRAINER_PIC_RS_MAY,
|
||||
[FACILITY_CLASS_HIKER] = TRAINER_PIC_FRONT_HIKER,
|
||||
[FACILITY_CLASS_AQUA_GRUNT_M] = TRAINER_PIC_FRONT_AQUA_GRUNT_M,
|
||||
[FACILITY_CLASS_PKMN_BREEDER_F] = TRAINER_PIC_FRONT_POKEMON_BREEDER_F,
|
||||
[FACILITY_CLASS_COOLTRAINER_M] = TRAINER_PIC_FRONT_COOLTRAINER_M,
|
||||
[FACILITY_CLASS_BIRD_KEEPER] = TRAINER_PIC_FRONT_BIRD_KEEPER,
|
||||
[FACILITY_CLASS_COLLECTOR] = TRAINER_PIC_FRONT_COLLECTOR,
|
||||
[FACILITY_CLASS_AQUA_GRUNT_F] = TRAINER_PIC_FRONT_AQUA_GRUNT_F,
|
||||
[FACILITY_CLASS_SWIMMER_M] = TRAINER_PIC_FRONT_SWIMMER_M,
|
||||
[FACILITY_CLASS_MAGMA_GRUNT_M] = TRAINER_PIC_FRONT_MAGMA_GRUNT_M,
|
||||
[FACILITY_CLASS_EXPERT_M] = TRAINER_PIC_FRONT_EXPERT_M,
|
||||
[FACILITY_CLASS_BLACK_BELT] = TRAINER_PIC_FRONT_BLACK_BELT,
|
||||
[FACILITY_CLASS_AQUA_LEADER_ARCHIE] = TRAINER_PIC_FRONT_AQUA_LEADER_ARCHIE,
|
||||
[FACILITY_CLASS_HEX_MANIAC] = TRAINER_PIC_FRONT_HEX_MANIAC,
|
||||
[FACILITY_CLASS_AROMA_LADY] = TRAINER_PIC_FRONT_AROMA_LADY,
|
||||
[FACILITY_CLASS_RUIN_MANIAC] = TRAINER_PIC_FRONT_RUIN_MANIAC,
|
||||
[FACILITY_CLASS_INTERVIEWER] = TRAINER_PIC_FRONT_INTERVIEWER,
|
||||
[FACILITY_CLASS_TUBER_F] = TRAINER_PIC_FRONT_TUBER_F,
|
||||
[FACILITY_CLASS_TUBER_M] = TRAINER_PIC_FRONT_TUBER_M,
|
||||
[FACILITY_CLASS_COOLTRAINER_F] = TRAINER_PIC_FRONT_COOLTRAINER_F,
|
||||
[FACILITY_CLASS_LADY] = TRAINER_PIC_FRONT_LADY,
|
||||
[FACILITY_CLASS_BEAUTY] = TRAINER_PIC_FRONT_BEAUTY,
|
||||
[FACILITY_CLASS_RICH_BOY] = TRAINER_PIC_FRONT_RICH_BOY,
|
||||
[FACILITY_CLASS_EXPERT_F] = TRAINER_PIC_FRONT_EXPERT_F,
|
||||
[FACILITY_CLASS_POKEMANIAC] = TRAINER_PIC_FRONT_POKEMANIAC,
|
||||
[FACILITY_CLASS_MAGMA_GRUNT_F] = TRAINER_PIC_FRONT_MAGMA_GRUNT_F,
|
||||
[FACILITY_CLASS_GUITARIST] = TRAINER_PIC_FRONT_GUITARIST,
|
||||
[FACILITY_CLASS_KINDLER] = TRAINER_PIC_FRONT_KINDLER,
|
||||
[FACILITY_CLASS_CAMPER] = TRAINER_PIC_FRONT_CAMPER,
|
||||
[FACILITY_CLASS_PICNICKER] = TRAINER_PIC_FRONT_PICNICKER,
|
||||
[FACILITY_CLASS_BUG_MANIAC] = TRAINER_PIC_FRONT_BUG_MANIAC,
|
||||
[FACILITY_CLASS_PSYCHIC_M] = TRAINER_PIC_FRONT_PSYCHIC_M,
|
||||
[FACILITY_CLASS_PSYCHIC_F] = TRAINER_PIC_FRONT_PSYCHIC_F,
|
||||
[FACILITY_CLASS_GENTLEMAN] = TRAINER_PIC_FRONT_GENTLEMAN,
|
||||
[FACILITY_CLASS_ELITE_FOUR_SIDNEY] = TRAINER_PIC_FRONT_ELITE_FOUR_SIDNEY,
|
||||
[FACILITY_CLASS_ELITE_FOUR_PHOEBE] = TRAINER_PIC_FRONT_ELITE_FOUR_PHOEBE,
|
||||
[FACILITY_CLASS_LEADER_ROXANNE] = TRAINER_PIC_FRONT_LEADER_ROXANNE,
|
||||
[FACILITY_CLASS_LEADER_BRAWLY] = TRAINER_PIC_FRONT_LEADER_BRAWLY,
|
||||
[FACILITY_CLASS_LEADER_TATE_AND_LIZA] = TRAINER_PIC_FRONT_LEADER_TATE_AND_LIZA,
|
||||
[FACILITY_CLASS_SCHOOL_KID_M] = TRAINER_PIC_FRONT_SCHOOL_KID_M,
|
||||
[FACILITY_CLASS_SCHOOL_KID_F] = TRAINER_PIC_FRONT_SCHOOL_KID_F,
|
||||
[FACILITY_CLASS_SR_AND_JR] = TRAINER_PIC_FRONT_SR_AND_JR,
|
||||
[FACILITY_CLASS_POKEFAN_M] = TRAINER_PIC_FRONT_POKEFAN_M,
|
||||
[FACILITY_CLASS_POKEFAN_F] = TRAINER_PIC_FRONT_POKEFAN_F,
|
||||
[FACILITY_CLASS_YOUNGSTER] = TRAINER_PIC_FRONT_YOUNGSTER,
|
||||
[FACILITY_CLASS_CHAMPION_WALLACE] = TRAINER_PIC_FRONT_CHAMPION_WALLACE,
|
||||
[FACILITY_CLASS_FISHERMAN] = TRAINER_PIC_FRONT_FISHERMAN,
|
||||
[FACILITY_CLASS_CYCLING_TRIATHLETE_M] = TRAINER_PIC_FRONT_CYCLING_TRIATHLETE_M,
|
||||
[FACILITY_CLASS_CYCLING_TRIATHLETE_F] = TRAINER_PIC_FRONT_CYCLING_TRIATHLETE_F,
|
||||
[FACILITY_CLASS_RUNNING_TRIATHLETE_M] = TRAINER_PIC_FRONT_RUNNING_TRIATHLETE_M,
|
||||
[FACILITY_CLASS_RUNNING_TRIATHLETE_F] = TRAINER_PIC_FRONT_RUNNING_TRIATHLETE_F,
|
||||
[FACILITY_CLASS_SWIMMING_TRIATHLETE_M] = TRAINER_PIC_FRONT_SWIMMING_TRIATHLETE_M,
|
||||
[FACILITY_CLASS_SWIMMING_TRIATHLETE_F] = TRAINER_PIC_FRONT_SWIMMING_TRIATHLETE_F,
|
||||
[FACILITY_CLASS_DRAGON_TAMER] = TRAINER_PIC_FRONT_DRAGON_TAMER,
|
||||
[FACILITY_CLASS_NINJA_BOY] = TRAINER_PIC_FRONT_NINJA_BOY,
|
||||
[FACILITY_CLASS_BATTLE_GIRL] = TRAINER_PIC_FRONT_BATTLE_GIRL,
|
||||
[FACILITY_CLASS_PARASOL_LADY] = TRAINER_PIC_FRONT_PARASOL_LADY,
|
||||
[FACILITY_CLASS_SWIMMER_F] = TRAINER_PIC_FRONT_SWIMMER_F,
|
||||
[FACILITY_CLASS_TWINS] = TRAINER_PIC_FRONT_TWINS,
|
||||
[FACILITY_CLASS_SAILOR] = TRAINER_PIC_FRONT_SAILOR,
|
||||
[FACILITY_CLASS_WALLY] = TRAINER_PIC_FRONT_WALLY,
|
||||
[FACILITY_CLASS_BRENDAN] = TRAINER_PIC_FRONT_BRENDAN,
|
||||
[FACILITY_CLASS_BRENDAN_2] = TRAINER_PIC_FRONT_BRENDAN,
|
||||
[FACILITY_CLASS_BRENDAN_3] = TRAINER_PIC_FRONT_BRENDAN,
|
||||
[FACILITY_CLASS_MAY] = TRAINER_PIC_FRONT_MAY,
|
||||
[FACILITY_CLASS_MAY_2] = TRAINER_PIC_FRONT_MAY,
|
||||
[FACILITY_CLASS_MAY_3] = TRAINER_PIC_FRONT_MAY,
|
||||
[FACILITY_CLASS_PKMN_BREEDER_M] = TRAINER_PIC_FRONT_POKEMON_BREEDER_M,
|
||||
[FACILITY_CLASS_BUG_CATCHER] = TRAINER_PIC_FRONT_BUG_CATCHER,
|
||||
[FACILITY_CLASS_PKMN_RANGER_M] = TRAINER_PIC_FRONT_POKEMON_RANGER_M,
|
||||
[FACILITY_CLASS_PKMN_RANGER_F] = TRAINER_PIC_FRONT_POKEMON_RANGER_F,
|
||||
[FACILITY_CLASS_MAGMA_LEADER_MAXIE] = TRAINER_PIC_FRONT_MAGMA_LEADER_MAXIE,
|
||||
[FACILITY_CLASS_LASS] = TRAINER_PIC_FRONT_LASS,
|
||||
[FACILITY_CLASS_YOUNG_COUPLE] = TRAINER_PIC_FRONT_YOUNG_COUPLE,
|
||||
[FACILITY_CLASS_OLD_COUPLE] = TRAINER_PIC_FRONT_OLD_COUPLE,
|
||||
[FACILITY_CLASS_SIS_AND_BRO] = TRAINER_PIC_FRONT_SIS_AND_BRO,
|
||||
[FACILITY_CLASS_STEVEN] = TRAINER_PIC_FRONT_STEVEN,
|
||||
[FACILITY_CLASS_SALON_MAIDEN_ANABEL] = TRAINER_PIC_FRONT_SALON_MAIDEN_ANABEL,
|
||||
[FACILITY_CLASS_DOME_ACE_TUCKER] = TRAINER_PIC_FRONT_DOME_ACE_TUCKER,
|
||||
[FACILITY_CLASS_RED] = TRAINER_PIC_FRONT_RED,
|
||||
[FACILITY_CLASS_LEAF] = TRAINER_PIC_FRONT_LEAF,
|
||||
[FACILITY_CLASS_RS_BRENDAN] = TRAINER_PIC_FRONT_RS_BRENDAN,
|
||||
[FACILITY_CLASS_RS_MAY] = TRAINER_PIC_FRONT_RS_MAY,
|
||||
};
|
||||
|
||||
const enum TrainerClassID gFacilityClassToTrainerClass[] =
|
||||
|
|
|
|||
|
|
@ -2541,7 +2541,7 @@ void SaveGameFrontier(void)
|
|||
}
|
||||
|
||||
// Frontier Brain functions.
|
||||
u8 GetFrontierBrainTrainerPicIndex(void)
|
||||
enum TrainerPicID GetFrontierBrainTrainerPicIndex(void)
|
||||
{
|
||||
s32 facility;
|
||||
|
||||
|
|
|
|||
|
|
@ -1592,7 +1592,7 @@ static void CreateEventMon(struct Pokemon *mon, u16 species, u8 level, u8 fixedI
|
|||
SetMonData(mon, MON_DATA_MODERN_FATEFUL_ENCOUNTER, &isModernFatefulEncounter);
|
||||
}
|
||||
|
||||
u16 GetUnionRoomTrainerPic(void)
|
||||
enum TrainerPicID GetUnionRoomTrainerPic(void)
|
||||
{
|
||||
u8 linkId;
|
||||
u32 arrId;
|
||||
|
|
@ -2164,7 +2164,7 @@ void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition)
|
|||
}
|
||||
}
|
||||
|
||||
void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerPicId, u8 battlerPosition)
|
||||
void SetMultiuseSpriteTemplateToTrainerBack(enum TrainerPicID trainerPicId, u8 battlerPosition)
|
||||
{
|
||||
gMultiuseSpriteTemplate.paletteTag = trainerPicId;
|
||||
if (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_PLAYER_RIGHT)
|
||||
|
|
@ -2183,7 +2183,7 @@ void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerPicId, u8 battlerPosition
|
|||
}
|
||||
}
|
||||
|
||||
void SetMultiuseSpriteTemplateToTrainerFront(u16 trainerPicId, u8 battlerPosition)
|
||||
void SetMultiuseSpriteTemplateToTrainerFront(enum TrainerPicID trainerPicId, u8 battlerPosition)
|
||||
{
|
||||
if (gMonSpritesGfxPtr != NULL)
|
||||
gMultiuseSpriteTemplate = gMonSpritesGfxPtr->templates[battlerPosition];
|
||||
|
|
@ -3445,7 +3445,7 @@ void CreateSecretBaseEnemyParty(struct SecretBase *secretBaseRecord)
|
|||
}
|
||||
}
|
||||
|
||||
u8 GetSecretBaseTrainerPicIndex(void)
|
||||
enum TrainerPicID GetSecretBaseTrainerPicIndex(void)
|
||||
{
|
||||
u8 facilityClass = sSecretBaseFacilityClasses[gBattleResources->secretBase->gender][gBattleResources->secretBase->trainerId[0] % NUM_SECRET_BASE_CLASSES];
|
||||
return gFacilityClassToPicIndex[facilityClass];
|
||||
|
|
@ -6633,12 +6633,12 @@ u8 GetOpposingLinkMultiBattlerId(bool8 rightSide, u8 multiplayerId)
|
|||
return i;
|
||||
}
|
||||
|
||||
u16 FacilityClassToPicIndex(u16 facilityClass)
|
||||
enum TrainerPicID FacilityClassToPicIndex(u16 facilityClass)
|
||||
{
|
||||
return gFacilityClassToPicIndex[facilityClass];
|
||||
}
|
||||
|
||||
u16 PlayerGenderToFrontTrainerPicId(u8 playerGender)
|
||||
enum TrainerPicID PlayerGenderToFrontTrainerPicId(u8 playerGender)
|
||||
{
|
||||
if (playerGender != MALE)
|
||||
return FacilityClassToPicIndex(FACILITY_CLASS_MAY);
|
||||
|
|
|
|||
|
|
@ -1242,7 +1242,7 @@ static struct Sprite *CreateTrainerPicSprite(void)
|
|||
static void LoadCheckPageTrainerPic(struct Pokenav_MatchCallGfx *gfx)
|
||||
{
|
||||
u16 cursor;
|
||||
int trainerPic = GetMatchCallTrainerPic(PokenavList_GetSelectedIndex());
|
||||
enum TrainerPicID trainerPic = GetMatchCallTrainerPic(PokenavList_GetSelectedIndex());
|
||||
if (trainerPic >= 0)
|
||||
{
|
||||
DecompressPicFromTable(&gTrainerSprites[trainerPic].frontPic, gfx->trainerPicGfx);
|
||||
|
|
|
|||
|
|
@ -332,7 +332,7 @@ bool32 ShouldDrawRematchPokeballIcon(int index)
|
|||
#endif //FREE_MATCH_CALL
|
||||
}
|
||||
|
||||
int GetMatchCallTrainerPic(int index)
|
||||
enum TrainerPicID GetMatchCallTrainerPic(int index)
|
||||
{
|
||||
int headerId;
|
||||
struct Pokenav_MatchCallMenu *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_MAIN);
|
||||
|
|
|
|||
|
|
@ -278,7 +278,7 @@ static bool8 LoadBattlerSpriteGfx(u32 battler)
|
|||
else if (gBattleTypeFlags & BATTLE_TYPE_SAFARI && battler == B_POSITION_PLAYER_LEFT) // Should be checking position, not battler.
|
||||
DecompressTrainerBackPic(gSaveBlock2Ptr->playerGender, battler);
|
||||
else if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL && battler == B_POSITION_PLAYER_LEFT) // Should be checking position, not battler.
|
||||
DecompressTrainerBackPic(TRAINER_BACK_PIC_WALLY, battler);
|
||||
DecompressTrainerBackPic(TRAINER_PIC_BACK_WALLY, battler);
|
||||
else if (!gBattleSpritesDataPtr->battlerData[battler].behindSubstitute)
|
||||
BattleLoadMonSpriteGfx(GetBattlerMon(battler), battler);
|
||||
else
|
||||
|
|
@ -330,9 +330,9 @@ void CreateBattlerSprite(u32 battler)
|
|||
}
|
||||
else if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL && battler == B_POSITION_PLAYER_LEFT)
|
||||
{
|
||||
SetMultiuseSpriteTemplateToTrainerBack(TRAINER_BACK_PIC_WALLY, GetBattlerPosition(0));
|
||||
SetMultiuseSpriteTemplateToTrainerBack(TRAINER_PIC_BACK_WALLY, GetBattlerPosition(0));
|
||||
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, 0x50,
|
||||
(8 - gTrainerBacksprites[TRAINER_BACK_PIC_WALLY].coordinates.size) * 4 + 80,
|
||||
(8 - gTrainerBacksprites[TRAINER_PIC_BACK_WALLY].coordinates.size) * 4 + 80,
|
||||
GetBattlerSpriteSubpriority(0));
|
||||
gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = (8 + battler / 2);
|
||||
gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ static bool16 DecompressPic(u16 picId, u32 personality, bool8 isFrontPic, u8 *de
|
|||
}
|
||||
else
|
||||
{
|
||||
u16 trainerPicId = picId;
|
||||
enum TrainerPicID trainerPicId = picId;
|
||||
if (isFrontPic)
|
||||
DecompressPicFromTable(&gTrainerSprites[trainerPicId].frontPic, dest);
|
||||
else
|
||||
|
|
@ -360,7 +360,7 @@ u16 PlayerGenderToFrontTrainerPicId_Debug(u8 gender, bool8 getClass)
|
|||
return gender;
|
||||
}
|
||||
|
||||
void CopyTrainerBackspriteFramesToDest(u8 trainerPicId, u8 *dest)
|
||||
void CopyTrainerBackspriteFramesToDest(enum TrainerPicID trainerPicId, u8 *dest)
|
||||
{
|
||||
const struct SpriteFrameImage *frame = &gTrainerBacksprites[trainerPicId].backPic;
|
||||
// y_offset is repurposed to indicates how many frames does the trainer pic have.
|
||||
|
|
|
|||
|
|
@ -1821,7 +1821,7 @@ static void fprint_trainers(const char *output_path, FILE *f, struct Parsed *par
|
|||
{
|
||||
fprintf(f, "#line %d\n", trainer->pic_line);
|
||||
fprintf(f, " .trainerPic = ");
|
||||
fprint_constant(f, "TRAINER_PIC", trainer->pic);
|
||||
fprint_constant(f, "TRAINER_PIC_FRONT", trainer->pic);
|
||||
fprintf(f, ",\n");
|
||||
}
|
||||
|
||||
|
|
@ -1935,14 +1935,14 @@ static void fprint_trainers(const char *output_path, FILE *f, struct Parsed *par
|
|||
{
|
||||
fprintf(f, "#line %d\n", trainer->back_pic_line);
|
||||
fprintf(f, " .trainerBackPic = ");
|
||||
fprint_constant(f, "TRAINER_BACK_PIC", trainer->back_pic);
|
||||
fprint_constant(f, "TRAINER_PIC_BACK", trainer->back_pic);
|
||||
fprintf(f, ",\n");
|
||||
}
|
||||
else // defaults to front pic in absence of defined back pic
|
||||
{
|
||||
fprintf(f, "#line %d\n", trainer->back_pic_line);
|
||||
fprintf(f, " .trainerBackPic = ");
|
||||
fprint_constant(f, "TRAINER_PIC", trainer->pic);
|
||||
fprint_constant(f, "TRAINER_PIC_FRONT", trainer->pic);
|
||||
fprintf(f, ",\n");
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user