mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-11-16 19:47:35 +01:00
Disabled species now default their graphics to SPECIES_NONE (#3116)
This commit is contained in:
commit
0efc9a29ad
Binary file not shown.
Before Width: | Height: | Size: 435 B After Width: | Height: | Size: 410 B |
Binary file not shown.
Before Width: | Height: | Size: 423 B After Width: | Height: | Size: 399 B |
Binary file not shown.
Before Width: | Height: | Size: 313 B After Width: | Height: | Size: 289 B |
@ -325,9 +325,8 @@
|
||||
#define SPECIES_FLAG_ALOLAN_FORM (1 << 5)
|
||||
#define SPECIES_FLAG_GALARIAN_FORM (1 << 6)
|
||||
#define SPECIES_FLAG_HISUIAN_FORM (1 << 7)
|
||||
#define SPECIES_FLAG_GENDER_DIFFERENCE (1 << 8)
|
||||
#define SPECIES_FLAG_ALL_PERFECT_IVS (1 << 9)
|
||||
#define SPECIES_FLAG_CANNOT_BE_TRADED (1 << 10)
|
||||
#define SPECIES_FLAG_ALL_PERFECT_IVS (1 << 8)
|
||||
#define SPECIES_FLAG_CANNOT_BE_TRADED (1 << 9)
|
||||
|
||||
#define LEGENDARY_PERFECT_IV_COUNT 3
|
||||
|
||||
|
@ -153,7 +153,7 @@ extern const struct MonCoords gTrainerBackPicCoords[];
|
||||
extern const struct CompressedSpriteSheet gTrainerBackPicTable[]; // functionally unused
|
||||
extern const struct CompressedSpritePalette gTrainerBackPicPaletteTable[];
|
||||
|
||||
extern const u8 gEnemyMonElevation[NUM_SPECIES];
|
||||
extern const u8 gEnemyMonElevation[NUM_SPECIES + 1];
|
||||
|
||||
extern const union AnimCmd *const *const gMonFrontAnimsPtrTable[];
|
||||
extern const struct CompressedSpriteSheet gMonFrontPicTable[];
|
||||
@ -161,7 +161,7 @@ extern const struct CompressedSpriteSheet gMonFrontPicTableFemale[];
|
||||
|
||||
extern const struct Trainer gTrainers[];
|
||||
extern const u8 gTrainerClassNames[][13];
|
||||
extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1];
|
||||
extern const u8 gSpeciesNames[NUM_SPECIES][POKEMON_NAME_LENGTH + 1];
|
||||
extern const u8 gMoveNames[MOVES_COUNT][MOVE_NAME_LENGTH + 1];
|
||||
extern const u8 *const gZMoveNames[];
|
||||
|
||||
|
@ -494,6 +494,7 @@ u8 GetDefaultMoveTarget(u8 battlerId);
|
||||
u8 GetMonGender(struct Pokemon *mon);
|
||||
u8 GetBoxMonGender(struct BoxPokemon *boxMon);
|
||||
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 trainerSpriteId, u8 battlerPosition);
|
||||
@ -522,7 +523,7 @@ u8 GetSecretBaseTrainerPicIndex(void);
|
||||
u8 GetSecretBaseTrainerClass(void);
|
||||
bool8 IsPlayerPartyAndPokemonStorageFull(void);
|
||||
bool8 IsPokemonStorageFull(void);
|
||||
void GetSpeciesName(u8 *name, u16 species);
|
||||
const u8 *GetSpeciesName(u16 species);
|
||||
u8 CalculatePPWithBonus(u16 move, u8 ppBonuses, u8 moveIndex);
|
||||
void RemoveMonPPBonus(struct Pokemon *mon, u8 moveIndex);
|
||||
void RemoveBattleMonPPBonus(struct BattlePokemon *mon, u8 moveIndex);
|
||||
@ -606,11 +607,13 @@ u16 GetFormChangeTargetSpecies(struct Pokemon *mon, u16 method, u32 arg);
|
||||
u16 GetFormChangeTargetSpeciesBoxMon(struct BoxPokemon *boxMon, u16 method, u32 arg);
|
||||
bool32 DoesSpeciesHaveFormChangeMethod(u16 species, u16 method);
|
||||
u16 MonTryLearningNewMoveEvolution(struct Pokemon *mon, bool8 firstMove);
|
||||
bool32 ShouldShowFemaleDifferences(u16 species, u32 personality);
|
||||
bool32 SpeciesHasGenderDifferences(u16 species);
|
||||
bool32 TryFormChange(u32 monId, u32 side, u16 method);
|
||||
void TryToSetBattleFormChangeMoves(struct Pokemon *mon, u16 method);
|
||||
u32 GetMonFriendshipScore(struct Pokemon *pokemon);
|
||||
void UpdateMonPersonality(struct BoxPokemon *boxMon, u32 personality);
|
||||
u8 CalculatePartyCount(struct Pokemon *party);
|
||||
u16 SanitizeSpeciesId(u16 species);
|
||||
bool32 IsSpeciesEnabled(u16 species);
|
||||
|
||||
#endif // GUARD_POKEMON_H
|
||||
|
@ -3,7 +3,8 @@
|
||||
|
||||
extern const u8 gMonIconPaletteIndices[];
|
||||
extern const u8 gMonIconPaletteIndicesFemale[];
|
||||
extern const u8 *const gMonIconTable[];
|
||||
extern const u8 *const gMonIconTable[NUM_SPECIES + 1];
|
||||
extern const u8 *const gMonIconTableFemale[NUM_SPECIES + 1];
|
||||
extern const struct SpritePalette gMonIconPaletteTable[];
|
||||
|
||||
const u8 *GetMonIconTiles(u16 species, u32 personality);
|
||||
|
@ -592,7 +592,7 @@ static void CreateApprenticeMenu(u8 menu)
|
||||
|
||||
speciesTableId = APPRENTICE_SPECIES_ID(i);
|
||||
species = gApprentices[PLAYER_APPRENTICE.id].species[speciesTableId];
|
||||
strings[i] = gSpeciesNames[species];
|
||||
strings[i] = GetSpeciesName(species);
|
||||
}
|
||||
break;
|
||||
case APPRENTICE_ASK_2SPECIES:
|
||||
@ -600,8 +600,8 @@ static void CreateApprenticeMenu(u8 menu)
|
||||
top = 8;
|
||||
if (PLAYER_APPRENTICE.questionsAnswered >= NUM_WHICH_MON_QUESTIONS)
|
||||
return;
|
||||
strings[1] = gSpeciesNames[gApprenticeQuestionData->altSpeciesId];
|
||||
strings[0] = gSpeciesNames[gApprenticeQuestionData->speciesId];
|
||||
strings[1] = GetSpeciesName(gApprenticeQuestionData->altSpeciesId);
|
||||
strings[0] = GetSpeciesName(gApprenticeQuestionData->speciesId);
|
||||
break;
|
||||
case APPRENTICE_ASK_MOVES:
|
||||
left = 17;
|
||||
@ -1050,13 +1050,13 @@ static void ApprenticeBufferString(void)
|
||||
switch (gSpecialVar_0x8006)
|
||||
{
|
||||
case APPRENTICE_BUFF_SPECIES1:
|
||||
StringCopy(stringDst, gSpeciesNames[gApprenticeQuestionData->speciesId]);
|
||||
StringCopy(stringDst, GetSpeciesName(gApprenticeQuestionData->speciesId));
|
||||
break;
|
||||
case APPRENTICE_BUFF_SPECIES2:
|
||||
StringCopy(stringDst, gSpeciesNames[gApprenticeQuestionData->altSpeciesId]);
|
||||
StringCopy(stringDst, GetSpeciesName(gApprenticeQuestionData->altSpeciesId));
|
||||
break;
|
||||
case APPRENTICE_BUFF_SPECIES3:
|
||||
StringCopy(stringDst, gSpeciesNames[gApprenticeQuestionData->speciesId]);
|
||||
StringCopy(stringDst, GetSpeciesName(gApprenticeQuestionData->speciesId));
|
||||
break;
|
||||
case APPRENTICE_BUFF_MOVE1:
|
||||
StringCopy(stringDst, gMoveNames[gApprenticeQuestionData->moveId1]);
|
||||
@ -1083,7 +1083,7 @@ static void ApprenticeBufferString(void)
|
||||
break;
|
||||
case APPRENTICE_BUFF_LEAD_MON_SPECIES:
|
||||
speciesArrayId = APPRENTICE_SPECIES_ID(PLAYER_APPRENTICE.leadMonId);
|
||||
StringCopy(stringDst, gSpeciesNames[gApprentices[PLAYER_APPRENTICE.id].species[speciesArrayId]]);
|
||||
StringCopy(stringDst, GetSpeciesName(gApprentices[PLAYER_APPRENTICE.id].species[speciesArrayId]));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -4392,11 +4392,11 @@ static void DisplayTrainerInfoOnCard(u8 flags, u8 trainerTourneyId)
|
||||
{
|
||||
textPrinter.currentY = sSpeciesNameTextYCoords[i];
|
||||
if (trainerId == TRAINER_PLAYER)
|
||||
textPrinter.currentChar = gSpeciesNames[DOME_MONS[trainerTourneyId][i]];
|
||||
textPrinter.currentChar = GetSpeciesName(DOME_MONS[trainerTourneyId][i]);
|
||||
else if (trainerId == TRAINER_FRONTIER_BRAIN)
|
||||
textPrinter.currentChar = gSpeciesNames[DOME_MONS[trainerTourneyId][i]];
|
||||
textPrinter.currentChar = GetSpeciesName(DOME_MONS[trainerTourneyId][i]);
|
||||
else
|
||||
textPrinter.currentChar = gSpeciesNames[gFacilityTrainerMons[DOME_MONS[trainerTourneyId][i]].species];
|
||||
textPrinter.currentChar = GetSpeciesName(gFacilityTrainerMons[DOME_MONS[trainerTourneyId][i]].species);
|
||||
|
||||
textPrinter.windowId = WIN_TRAINER_MON1_NAME + i + windowId;
|
||||
if (i == 1)
|
||||
|
@ -1872,7 +1872,7 @@ static void Select_PrintMonSpecies(void)
|
||||
|
||||
FillWindowPixelBuffer(SELECT_WIN_SPECIES, PIXEL_FILL(0));
|
||||
species = GetMonData(&sFactorySelectScreen->mons[monId].monData, MON_DATA_SPECIES, NULL);
|
||||
StringCopy(gStringVar4, gSpeciesNames[species]);
|
||||
StringCopy(gStringVar4, GetSpeciesName(species));
|
||||
x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86);
|
||||
AddTextPrinterParameterized3(SELECT_WIN_SPECIES, FONT_NORMAL, x, 1, sSpeciesNameTextColors, 0, gStringVar4);
|
||||
CopyWindowToVram(SELECT_WIN_SPECIES, COPYWIN_GFX);
|
||||
@ -3773,7 +3773,7 @@ static void Swap_PrintMonSpecies(void)
|
||||
species = GetMonData(&gPlayerParty[monId], MON_DATA_SPECIES, NULL);
|
||||
else
|
||||
species = GetMonData(&gEnemyParty[monId], MON_DATA_SPECIES, NULL);
|
||||
StringCopy(gStringVar4, gSpeciesNames[species]);
|
||||
StringCopy(gStringVar4, GetSpeciesName(species));
|
||||
x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86);
|
||||
AddTextPrinterParameterized3(SWAP_WIN_SPECIES, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4);
|
||||
CopyWindowToVram(SWAP_WIN_SPECIES, COPYWIN_FULL);
|
||||
@ -3882,7 +3882,7 @@ static void Swap_PrintMonSpeciesAtFade(void)
|
||||
species = GetMonData(&gPlayerParty[monId], MON_DATA_SPECIES, NULL);
|
||||
else
|
||||
species = GetMonData(&gEnemyParty[monId], MON_DATA_SPECIES, NULL);
|
||||
StringCopy(gStringVar4, gSpeciesNames[species]);
|
||||
StringCopy(gStringVar4, GetSpeciesName(species));
|
||||
x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86);
|
||||
AddTextPrinterParameterized3(SWAP_WIN_SPECIES_AT_FADE, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4);
|
||||
CopyWindowToVram(SWAP_WIN_SPECIES_AT_FADE, COPYWIN_FULL);
|
||||
@ -3909,7 +3909,7 @@ static void Swap_PrintMonSpeciesForTransition(void)
|
||||
species = GetMonData(&gPlayerParty[monId], MON_DATA_SPECIES, NULL);
|
||||
else
|
||||
species = GetMonData(&gEnemyParty[monId], MON_DATA_SPECIES, NULL);
|
||||
StringCopy(gStringVar4, gSpeciesNames[species]);
|
||||
StringCopy(gStringVar4, GetSpeciesName(species));
|
||||
x = GetStringRightAlignXOffset(FONT_NORMAL, gStringVar4, 86);
|
||||
AddTextPrinterParameterized3(SWAP_WIN_SPECIES, FONT_NORMAL, x, 1, sSwapSpeciesNameTextColors, 0, gStringVar4);
|
||||
CopyWindowToVram(SWAP_WIN_SPECIES, COPYWIN_FULL);
|
||||
|
@ -2096,7 +2096,7 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon)
|
||||
gender = GetMonGender(mon);
|
||||
species = GetMonData(mon, MON_DATA_SPECIES);
|
||||
|
||||
if ((species == SPECIES_NIDORAN_F || species == SPECIES_NIDORAN_M) && StringCompare(nickname, gSpeciesNames[species]) == 0)
|
||||
if ((species == SPECIES_NIDORAN_F || species == SPECIES_NIDORAN_M) && StringCompare(nickname, GetSpeciesName(species)) == 0)
|
||||
gender = 100;
|
||||
|
||||
// AddTextPrinterAndCreateWindowOnHealthbox's arguments are the same in all 3 cases.
|
||||
|
@ -3662,7 +3662,7 @@ void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst)
|
||||
srcID += 2;
|
||||
break;
|
||||
case B_BUFF_SPECIES: // species name
|
||||
GetSpeciesName(dst, T1_READ_16(&src[srcID + 1]));
|
||||
StringCopy(dst, GetSpeciesName(T1_READ_16(&src[srcID + 1])));
|
||||
srcID += 3;
|
||||
break;
|
||||
case B_BUFF_MON_NICK: // poke nick without prefix
|
||||
|
@ -1357,7 +1357,7 @@ void GenerateBattlePyramidWildMon(void)
|
||||
|
||||
id = GetMonData(&gEnemyParty[0], MON_DATA_SPECIES, NULL) - 1;
|
||||
SetMonData(&gEnemyParty[0], MON_DATA_SPECIES, &wildMons[id].species);
|
||||
GetSpeciesName(name, wildMons[id].species);
|
||||
StringCopy(name, GetSpeciesName(wildMons[id].species));
|
||||
SetMonData(&gEnemyParty[0], MON_DATA_NICKNAME, &name);
|
||||
if (lvl != FRONTIER_LVL_50)
|
||||
{
|
||||
|
@ -2491,7 +2491,7 @@ static void GetPotentialPartnerMoveAndSpecies(u16 trainerId, u16 monId)
|
||||
}
|
||||
|
||||
StringCopy(gStringVar1, gMoveNames[move]);
|
||||
StringCopy(gStringVar2, gSpeciesNames[species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(species));
|
||||
}
|
||||
|
||||
// For multi battles in the Battle Tower, the player may choose a partner by talking to them
|
||||
|
@ -446,13 +446,13 @@ bool32 AreBattleTowerLinkSpeciesSame(u16 *speciesList1, u16 *speciesList2)
|
||||
{
|
||||
if (numSameSpecies == 0)
|
||||
{
|
||||
StringCopy(gStringVar1, gSpeciesNames[speciesList1[i]]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(speciesList1[i]));
|
||||
haveSameSpecies = TRUE;
|
||||
}
|
||||
|
||||
if (numSameSpecies == 1)
|
||||
{
|
||||
StringCopy(gStringVar2, gSpeciesNames[speciesList1[i]]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(speciesList1[i]));
|
||||
haveSameSpecies = TRUE;
|
||||
}
|
||||
|
||||
|
@ -17,6 +17,7 @@
|
||||
#endif
|
||||
|
||||
#define PIKACHU_SPECIES_INFO(gender, flip) \
|
||||
{ \
|
||||
.baseHP = 35, \
|
||||
.baseAttack = 55, \
|
||||
.baseSpeed = 90, \
|
||||
@ -34,10 +35,11 @@
|
||||
.eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FAIRY}, \
|
||||
.abilities = {ABILITY_STATIC, ABILITY_NONE, ABILITY_LIGHTNING_ROD},\
|
||||
.bodyColor = BODY_COLOR_YELLOW, \
|
||||
.noFlip = flip
|
||||
.noFlip = flip, \
|
||||
}
|
||||
|
||||
#define COSPLAY_PIKACHU_SPECIES_INFO(flip) { PIKACHU_SPECIES_INFO(MON_FEMALE, flip), }
|
||||
#define CAP_PIKACHU_SPECIES_INFO(flip) { PIKACHU_SPECIES_INFO(MON_MALE, flip), }
|
||||
#define COSPLAY_PIKACHU_SPECIES_INFO(flip) PIKACHU_SPECIES_INFO(MON_FEMALE, flip)
|
||||
#define CAP_PIKACHU_SPECIES_INFO(flip) PIKACHU_SPECIES_INFO(MON_MALE, flip)
|
||||
|
||||
#define PICHU_SPECIES_INFO(flip) \
|
||||
{ \
|
||||
@ -905,7 +907,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_OVERGROW, ABILITY_NONE, ABILITY_CHLOROPHYLL},
|
||||
.bodyColor = BODY_COLOR_GREEN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_CHARMANDER] =
|
||||
@ -1112,7 +1113,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_COMPOUND_EYES, ABILITY_NONE, ABILITY_TINTED_LENS},
|
||||
.bodyColor = BODY_COLOR_WHITE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_WEEDLE] =
|
||||
@ -1277,7 +1277,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_RUN_AWAY, ABILITY_GUTS, ABILITY_HUSTLE},
|
||||
.bodyColor = BODY_COLOR_PURPLE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_RATICATE] =
|
||||
@ -1300,7 +1299,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_RUN_AWAY, ABILITY_GUTS, ABILITY_HUSTLE},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SPEAROW] =
|
||||
@ -1397,11 +1395,7 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.noFlip = FALSE,
|
||||
},
|
||||
|
||||
[SPECIES_PIKACHU] =
|
||||
{
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
PIKACHU_SPECIES_INFO(PERCENT_FEMALE(50), FLIP),
|
||||
},
|
||||
[SPECIES_PIKACHU] = PIKACHU_SPECIES_INFO(PERCENT_FEMALE(50), FLIP),
|
||||
|
||||
[SPECIES_RAICHU] =
|
||||
{
|
||||
@ -1427,7 +1421,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_STATIC, ABILITY_NONE, ABILITY_LIGHTNING_ROD},
|
||||
.bodyColor = BODY_COLOR_YELLOW,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SANDSHREW] =
|
||||
@ -1799,7 +1792,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INNER_FOCUS, ABILITY_NONE, ABILITY_INFILTRATOR},
|
||||
.bodyColor = BODY_COLOR_PURPLE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_GOLBAT] =
|
||||
@ -1822,7 +1814,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INNER_FOCUS, ABILITY_NONE, ABILITY_INFILTRATOR},
|
||||
.bodyColor = BODY_COLOR_PURPLE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_ODDISH] =
|
||||
@ -1869,7 +1860,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_CHLOROPHYLL, ABILITY_NONE, ABILITY_STENCH},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_VILEPLUME] =
|
||||
@ -1897,7 +1887,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_CHLOROPHYLL, ABILITY_NONE, ABILITY_EFFECT_SPORE},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_PARAS] =
|
||||
@ -2339,7 +2328,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SYNCHRONIZE, ABILITY_INNER_FOCUS, ABILITY_MAGIC_GUARD},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = TRUE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_ALAKAZAM] =
|
||||
@ -2367,7 +2355,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SYNCHRONIZE, ABILITY_INNER_FOCUS, ABILITY_MAGIC_GUARD},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_MACHOP] =
|
||||
@ -2812,7 +2799,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_RUN_AWAY, ABILITY_EARLY_BIRD, ABILITY_TANGLED_FEET},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_DODRIO] =
|
||||
@ -2840,7 +2826,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_RUN_AWAY, ABILITY_EARLY_BIRD, ABILITY_TANGLED_FEET},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SEEL] =
|
||||
@ -3116,7 +3101,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INSOMNIA, ABILITY_FOREWARN, ABILITY_INNER_FOCUS},
|
||||
.bodyColor = BODY_COLOR_YELLOW,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_KRABBY] =
|
||||
@ -3439,7 +3423,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_LIGHTNING_ROD, ABILITY_ROCK_HEAD, ABILITY_RECKLESS},
|
||||
.bodyColor = BODY_COLOR_GRAY,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_RHYDON] =
|
||||
@ -3462,7 +3445,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_LIGHTNING_ROD, ABILITY_ROCK_HEAD, ABILITY_RECKLESS},
|
||||
.bodyColor = BODY_COLOR_GRAY,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_CHANSEY] =
|
||||
@ -3600,7 +3582,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWIFT_SWIM, ABILITY_WATER_VEIL, ABILITY_LIGHTNING_ROD},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SEAKING] =
|
||||
@ -3624,7 +3605,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWIFT_SWIM, ABILITY_WATER_VEIL, ABILITY_LIGHTNING_ROD},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_STARYU] =
|
||||
@ -3721,7 +3701,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWARM, ABILITY_TECHNICIAN, ABILITY_STEADFAST},
|
||||
.bodyColor = BODY_COLOR_GREEN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_JYNX] =
|
||||
@ -3857,7 +3836,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWIFT_SWIM, ABILITY_NONE, ABILITY_RATTLED},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_GYARADOS] =
|
||||
@ -3880,7 +3858,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INTIMIDATE, ABILITY_NONE, ABILITY_MOXIE},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_LAPRAS] =
|
||||
@ -3951,7 +3928,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_RUN_AWAY, ABILITY_ADAPTABILITY, ABILITY_ANTICIPATION},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_VAPOREON] =
|
||||
@ -4432,7 +4408,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_OVERGROW, ABILITY_NONE, ABILITY_LEAF_GUARD},
|
||||
.bodyColor = BODY_COLOR_GREEN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_CYNDAQUIL] =
|
||||
@ -4682,7 +4657,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWARM, ABILITY_EARLY_BIRD, ABILITY_RATTLED},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_LEDIAN] =
|
||||
@ -4705,7 +4679,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWARM, ABILITY_EARLY_BIRD, ABILITY_IRON_FIST},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SPINARAK] =
|
||||
@ -4974,7 +4947,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SYNCHRONIZE, ABILITY_EARLY_BIRD, ABILITY_MAGIC_BOUNCE},
|
||||
.bodyColor = BODY_COLOR_GREEN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_MAREEP] =
|
||||
@ -5150,7 +5122,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_STURDY, ABILITY_ROCK_HEAD, ABILITY_RATTLED},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_POLITOED] =
|
||||
@ -5174,7 +5145,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_WATER_ABSORB, ABILITY_DAMP, ABILITY_DRIZZLE},
|
||||
.bodyColor = BODY_COLOR_GREEN,
|
||||
.noFlip = TRUE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_HOPPIP] =
|
||||
@ -5267,7 +5237,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_RUN_AWAY, ABILITY_PICKUP, ABILITY_SKILL_LINK},
|
||||
.bodyColor = BODY_COLOR_PURPLE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SUNKERN] =
|
||||
@ -5357,7 +5326,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_DAMP, ABILITY_WATER_ABSORB, ABILITY_UNAWARE},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_QUAGSIRE] =
|
||||
@ -5380,7 +5348,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_DAMP, ABILITY_WATER_ABSORB, ABILITY_UNAWARE},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_ESPEON] =
|
||||
@ -5447,7 +5414,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INSOMNIA, ABILITY_SUPER_LUCK, ABILITY_PRANKSTER},
|
||||
.bodyColor = BODY_COLOR_BLACK,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SLOWKING] =
|
||||
@ -5517,7 +5483,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SHADOW_TAG, ABILITY_NONE, ABILITY_TELEPATHY},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_GIRAFARIG] =
|
||||
@ -5540,7 +5505,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INNER_FOCUS, ABILITY_EARLY_BIRD, ABILITY_SAP_SIPPER},
|
||||
.bodyColor = BODY_COLOR_YELLOW,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_PINECO] =
|
||||
@ -5629,7 +5593,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_HYPER_CUTTER, ABILITY_SAND_VEIL, ABILITY_IMMUNITY},
|
||||
.bodyColor = BODY_COLOR_PURPLE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_STEELIX] =
|
||||
@ -5653,7 +5616,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_ROCK_HEAD, ABILITY_STURDY, ABILITY_SHEER_FORCE},
|
||||
.bodyColor = BODY_COLOR_GRAY,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SNUBBULL] =
|
||||
@ -5755,7 +5717,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWARM, ABILITY_TECHNICIAN, ABILITY_LIGHT_METAL},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SHUCKLE] =
|
||||
@ -5803,7 +5764,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWARM, ABILITY_GUTS, ABILITY_MOXIE},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SNEASEL] =
|
||||
@ -5827,7 +5787,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INNER_FOCUS, ABILITY_KEEN_EYE, ABILITY_PICKPOCKET},
|
||||
.bodyColor = BODY_COLOR_BLACK,
|
||||
.noFlip = TRUE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_TEDDIURSA] =
|
||||
@ -5872,7 +5831,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_GUTS, ABILITY_QUICK_FEET, ABILITY_UNNERVE},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SLUGMA] =
|
||||
@ -5967,7 +5925,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_OBLIVIOUS, ABILITY_SNOW_CLOAK, ABILITY_THICK_FAT},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_CORSOLA] =
|
||||
@ -6043,7 +6000,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SUCTION_CUPS, ABILITY_SNIPER, ABILITY_MOODY},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_DELIBIRD] =
|
||||
@ -6159,7 +6115,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_EARLY_BIRD, ABILITY_FLASH_FIRE, ABILITY_UNNERVE},
|
||||
.bodyColor = BODY_COLOR_BLACK,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_KINGDRA] =
|
||||
@ -6230,7 +6185,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_STURDY, ABILITY_NONE, ABILITY_SAND_VEIL},
|
||||
.bodyColor = BODY_COLOR_GRAY,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_PORYGON2] =
|
||||
@ -6767,7 +6721,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_BLAZE, ABILITY_NONE, ABILITY_SPEED_BOOST},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_COMBUSKEN] =
|
||||
@ -6791,7 +6744,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_BLAZE, ABILITY_NONE, ABILITY_SPEED_BOOST},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_BLAZIKEN] =
|
||||
@ -6814,7 +6766,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_BLAZE, ABILITY_NONE, ABILITY_SPEED_BOOST},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_MUDKIP] =
|
||||
@ -7046,7 +6997,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWARM, ABILITY_NONE, ABILITY_RIVALRY},
|
||||
.bodyColor = BODY_COLOR_YELLOW,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_CASCOON] =
|
||||
@ -7092,7 +7042,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SHIELD_DUST, ABILITY_NONE, ABILITY_COMPOUND_EYES},
|
||||
.bodyColor = BODY_COLOR_GREEN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_LOTAD] =
|
||||
@ -7162,7 +7111,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWIFT_SWIM, ABILITY_RAIN_DISH, ABILITY_OWN_TEMPO},
|
||||
.bodyColor = BODY_COLOR_GREEN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SEEDOT] =
|
||||
@ -7209,7 +7157,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_CHLOROPHYLL, ABILITY_EARLY_BIRD, ABILITY_PICKPOCKET},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SHIFTRY] =
|
||||
@ -7233,7 +7180,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_CHLOROPHYLL, ABILITY_EARLY_BIRD, ABILITY_PICKPOCKET},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_TAILLOW] =
|
||||
@ -8012,7 +7958,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_PURE_POWER, ABILITY_NONE, ABILITY_TELEPATHY},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_MEDICHAM] =
|
||||
@ -8035,7 +7980,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_PURE_POWER, ABILITY_NONE, ABILITY_TELEPATHY},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_ELECTRIKE] =
|
||||
@ -10062,7 +10006,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_KEEN_EYE, ABILITY_NONE, ABILITY_RECKLESS},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_STARAVIA] =
|
||||
@ -10085,7 +10028,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INTIMIDATE, ABILITY_NONE, ABILITY_RECKLESS},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_STARAPTOR] =
|
||||
@ -10134,7 +10076,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SIMPLE, ABILITY_UNAWARE, ABILITY_MOODY},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_BIBAREL] =
|
||||
@ -10180,7 +10121,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SHED_SKIN, ABILITY_NONE, ABILITY_RUN_AWAY},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_KRICKETUNE] =
|
||||
@ -10204,7 +10144,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SWARM, ABILITY_NONE, ABILITY_TECHNICIAN},
|
||||
.bodyColor = BODY_COLOR_RED,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SHINX] =
|
||||
@ -10227,7 +10166,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_RIVALRY, ABILITY_INTIMIDATE, ABILITY_GUTS},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_LUXIO] =
|
||||
@ -10482,7 +10420,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_HONEY_GATHER, ABILITY_NONE, ABILITY_HUSTLE},
|
||||
.bodyColor = BODY_COLOR_YELLOW,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_VESPIQUEN] =
|
||||
@ -10624,7 +10561,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_TECHNICIAN, ABILITY_PICKUP, ABILITY_SKILL_LINK},
|
||||
.bodyColor = BODY_COLOR_PURPLE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_DRIFLOON] =
|
||||
@ -11055,7 +10991,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SAND_VEIL, ABILITY_NONE, ABILITY_ROUGH_SKIN},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_GABITE] =
|
||||
@ -11078,7 +11013,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SAND_VEIL, ABILITY_NONE, ABILITY_ROUGH_SKIN},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_GARCHOMP] =
|
||||
@ -11101,7 +11035,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SAND_VEIL, ABILITY_NONE, ABILITY_ROUGH_SKIN},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_MUNCHLAX] =
|
||||
@ -11193,7 +11126,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SAND_STREAM, ABILITY_NONE, ABILITY_SAND_FORCE},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_HIPPOWDON] =
|
||||
@ -11216,7 +11148,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_SAND_STREAM, ABILITY_NONE, ABILITY_SAND_FORCE},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_SKORUPI] =
|
||||
@ -11468,7 +11399,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_PRESSURE, ABILITY_NONE, ABILITY_PICKPOCKET},
|
||||
.bodyColor = BODY_COLOR_BLACK,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_MAGNEZONE] =
|
||||
@ -11537,7 +11467,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_LIGHTNING_ROD, ABILITY_SOLID_ROCK, ABILITY_RECKLESS},
|
||||
.bodyColor = BODY_COLOR_GRAY,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_TANGROWTH] =
|
||||
@ -11560,7 +11489,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_CHLOROPHYLL, ABILITY_LEAF_GUARD, ABILITY_REGENERATOR},
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_ELECTIVIRE] =
|
||||
@ -11745,7 +11673,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_OBLIVIOUS, ABILITY_SNOW_CLOAK, ABILITY_THICK_FAT},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_PORYGON_Z] =
|
||||
@ -12843,7 +12770,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_BIG_PECKS, ABILITY_SUPER_LUCK, ABILITY_RIVALRY},
|
||||
.bodyColor = BODY_COLOR_GRAY,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_BLITZLE] =
|
||||
@ -14457,7 +14383,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_WATER_ABSORB, ABILITY_CURSED_BODY, ABILITY_DAMP},
|
||||
.bodyColor = BODY_COLOR_WHITE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_JELLICENT] =
|
||||
@ -14480,7 +14405,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_WATER_ABSORB, ABILITY_CURSED_BODY, ABILITY_DAMP},
|
||||
.bodyColor = BODY_COLOR_WHITE,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_ALOMOMOLA] =
|
||||
@ -16140,7 +16064,6 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_RIVALRY, ABILITY_UNNERVE, ABILITY_MOXIE},
|
||||
.bodyColor = BODY_COLOR_BROWN,
|
||||
.noFlip = FALSE,
|
||||
.flags = SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
},
|
||||
|
||||
[SPECIES_FLABEBE] = FLABEBE_SPECIES_INFO,
|
||||
@ -23319,7 +23242,7 @@ const struct SpeciesInfo gSpeciesInfo[] =
|
||||
.abilities = {ABILITY_INNER_FOCUS, ABILITY_KEEN_EYE, ABILITY_POISON_TOUCH},
|
||||
.bodyColor = BODY_COLOR_BLACK,
|
||||
.noFlip = TRUE,
|
||||
.flags = SPECIES_FLAG_HISUIAN_FORM | SPECIES_FLAG_GENDER_DIFFERENCE,
|
||||
.flags = SPECIES_FLAG_HISUIAN_FORM,
|
||||
},
|
||||
|
||||
#if P_GEN_5_POKEMON == TRUE
|
||||
|
@ -21,7 +21,7 @@
|
||||
// the sprite's non-transparent pixels actually are.
|
||||
// .size is the dimensions of this drawn pixel area.
|
||||
// .y_offset is the number of pixels between the drawn pixel area and the bottom edge.
|
||||
const struct MonCoords gMonBackPicCoords[] =
|
||||
const struct MonCoords gMonBackPicCoords[NUM_SPECIES + 1] =
|
||||
{
|
||||
[SPECIES_NONE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 },
|
||||
[SPECIES_BULBASAUR] = { .size = MON_COORDS_SIZE(56, 40), .y_offset = 13 },
|
||||
|
@ -1,4 +1,4 @@
|
||||
const struct CompressedSpriteSheet gMonBackPicTable[] =
|
||||
const struct CompressedSpriteSheet gMonBackPicTable[NUM_SPECIES + 1] =
|
||||
{
|
||||
SPECIES_SPRITE(NONE, gMonBackPic_CircledQuestionMark),
|
||||
SPECIES_SPRITE(BULBASAUR, gMonBackPic_Bulbasaur),
|
||||
@ -1338,7 +1338,7 @@ const struct CompressedSpriteSheet gMonBackPicTable[] =
|
||||
SPECIES_SPRITE(EGG, gMonFrontPic_Egg),
|
||||
};
|
||||
|
||||
const struct CompressedSpriteSheet gMonBackPicTableFemale[] =
|
||||
const struct CompressedSpriteSheet gMonBackPicTableFemale[NUM_SPECIES + 1] =
|
||||
{
|
||||
SPECIES_SPRITE(VENUSAUR, gMonBackPic_VenusaurF),
|
||||
SPECIES_SPRITE(BUTTERFREE, gMonBackPic_ButterfreeF),
|
||||
|
@ -1,6 +1,6 @@
|
||||
// This determines how much higher above the usual position the enemy Pokémon
|
||||
// is during battle. Species that float or fly have nonzero values.
|
||||
const u8 gEnemyMonElevation[NUM_SPECIES] =
|
||||
const u8 gEnemyMonElevation[NUM_SPECIES + 1] =
|
||||
{
|
||||
[SPECIES_BUTTERFREE] = 10,
|
||||
[SPECIES_BEEDRILL] = 9,
|
||||
|
@ -1,4 +1,4 @@
|
||||
const u8 *const gMonFootprintTable[] =
|
||||
const u8 *const gMonFootprintTable[NUM_SPECIES + 1] =
|
||||
{
|
||||
[SPECIES_NONE] = gMonFootprint_Bulbasaur,
|
||||
[SPECIES_BULBASAUR] = gMonFootprint_Bulbasaur,
|
||||
|
@ -11665,7 +11665,7 @@ SINGLE_ANIMATION(LycanrocDusk);
|
||||
SINGLE_ANIMATION(EnamorusTherian);
|
||||
#endif
|
||||
|
||||
const union AnimCmd *const *const gMonFrontAnimsPtrTable[] =
|
||||
const union AnimCmd *const *const gMonFrontAnimsPtrTable[NUM_SPECIES + 1] =
|
||||
{
|
||||
[SPECIES_NONE] = sAnims_None,
|
||||
[SPECIES_BULBASAUR] = sAnims_Bulbasaur,
|
||||
|
@ -2,7 +2,7 @@
|
||||
// the sprite's non-transparent pixels actually are.
|
||||
// .size is the dimensions of this drawn pixel area.
|
||||
// .y_offset is the number of pixels between the drawn pixel area and the bottom edge.
|
||||
const struct MonCoords gMonFrontPicCoords[] =
|
||||
const struct MonCoords gMonFrontPicCoords[NUM_SPECIES + 1] =
|
||||
{
|
||||
[SPECIES_NONE] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 12 },
|
||||
[SPECIES_BULBASAUR] = { .size = MON_COORDS_SIZE(40, 40), .y_offset = 13 },
|
||||
|
@ -1,4 +1,4 @@
|
||||
const struct CompressedSpriteSheet gMonFrontPicTable[] =
|
||||
const struct CompressedSpriteSheet gMonFrontPicTable[NUM_SPECIES + 1] =
|
||||
{
|
||||
SPECIES_SPRITE(NONE, gMonFrontPic_CircledQuestionMark),
|
||||
SPECIES_SPRITE(BULBASAUR, gMonFrontPic_Bulbasaur),
|
||||
@ -1337,7 +1337,7 @@ const struct CompressedSpriteSheet gMonFrontPicTable[] =
|
||||
SPECIES_SPRITE(EGG, gMonFrontPic_Egg),
|
||||
};
|
||||
|
||||
const struct CompressedSpriteSheet gMonFrontPicTableFemale[] =
|
||||
const struct CompressedSpriteSheet gMonFrontPicTableFemale[NUM_SPECIES + 1] =
|
||||
{
|
||||
SPECIES_SPRITE(VENUSAUR, gMonFrontPic_VenusaurF),
|
||||
SPECIES_SPRITE(BUTTERFREE, gMonFrontPic_ButterfreeF),
|
||||
@ -1394,7 +1394,6 @@ const struct CompressedSpriteSheet gMonFrontPicTableFemale[] =
|
||||
SPECIES_SPRITE(SHIFTRY, gMonFrontPic_ShiftryF),
|
||||
SPECIES_SPRITE(MEDITITE, gMonFrontPic_MedititeF),
|
||||
SPECIES_SPRITE(MEDICHAM, gMonFrontPic_MedichamF),
|
||||
|
||||
#if P_GEN_4_POKEMON == TRUE
|
||||
SPECIES_SPRITE(STARLY, gMonFrontPic_StarlyF),
|
||||
SPECIES_SPRITE(STARAVIA, gMonFrontPic_StaraviaF),
|
||||
@ -1403,13 +1402,10 @@ const struct CompressedSpriteSheet gMonFrontPicTableFemale[] =
|
||||
SPECIES_SPRITE(KRICKETOT, gMonFrontPic_KricketotF),
|
||||
SPECIES_SPRITE(KRICKETUNE, gMonFrontPic_KricketuneF),
|
||||
SPECIES_SPRITE(SHINX, gMonFrontPic_ShinxF),
|
||||
SPECIES_SPRITE(COMBEE, gMonFrontPic_Combee),
|
||||
SPECIES_SPRITE(AMBIPOM, gMonFrontPic_AmbipomF),
|
||||
SPECIES_SPRITE(GIBLE, gMonFrontPic_GibleF),
|
||||
SPECIES_SPRITE(GABITE, gMonFrontPic_GabiteF),
|
||||
SPECIES_SPRITE(GARCHOMP, gMonFrontPic_GarchompF),
|
||||
SPECIES_SPRITE(HIPPOPOTAS, gMonFrontPic_Hippopotas),
|
||||
SPECIES_SPRITE(HIPPOWDON, gMonFrontPic_Hippowdon),
|
||||
SPECIES_SPRITE(WEAVILE, gMonFrontPic_WeavileF),
|
||||
SPECIES_SPRITE(RHYPERIOR, gMonFrontPic_RhyperiorF),
|
||||
SPECIES_SPRITE(TANGROWTH, gMonFrontPic_TangrowthF),
|
||||
@ -1423,6 +1419,5 @@ const struct CompressedSpriteSheet gMonFrontPicTableFemale[] =
|
||||
#if P_GEN_6_POKEMON == TRUE
|
||||
SPECIES_SPRITE(PYROAR, gMonFrontPic_PyroarF),
|
||||
#endif
|
||||
|
||||
SPECIES_SPRITE(SNEASEL_HISUIAN, gMonFrontPic_SneaselHisuianF),
|
||||
};
|
||||
|
@ -1,4 +1,4 @@
|
||||
const struct CompressedSpritePalette gMonPaletteTable[] =
|
||||
const struct CompressedSpritePalette gMonPaletteTable[NUM_SPECIES + 1] =
|
||||
{
|
||||
SPECIES_PAL(NONE, gMonPalette_CircledQuestionMark),
|
||||
SPECIES_PAL(BULBASAUR, gMonPalette_Bulbasaur),
|
||||
@ -1336,92 +1336,16 @@ const struct CompressedSpritePalette gMonPaletteTable[] =
|
||||
SPECIES_PAL(EGG, gMonPalette_Egg),
|
||||
};
|
||||
|
||||
const struct CompressedSpritePalette gMonPaletteTableFemale[] =
|
||||
const struct CompressedSpritePalette gMonPaletteTableFemale[NUM_SPECIES + 1] =
|
||||
{
|
||||
SPECIES_PAL(VENUSAUR, gMonPalette_Venusaur),
|
||||
SPECIES_PAL(BUTTERFREE, gMonPalette_Butterfree),
|
||||
SPECIES_PAL(RATTATA, gMonPalette_Rattata),
|
||||
SPECIES_PAL(RATICATE, gMonPalette_Raticate),
|
||||
SPECIES_PAL(PIKACHU, gMonPalette_Pikachu),
|
||||
SPECIES_PAL(RAICHU, gMonPalette_Raichu),
|
||||
SPECIES_PAL(ZUBAT, gMonPalette_Zubat),
|
||||
SPECIES_PAL(GOLBAT, gMonPalette_Golbat),
|
||||
SPECIES_PAL(GLOOM, gMonPalette_Gloom),
|
||||
SPECIES_PAL(VILEPLUME, gMonPalette_Vileplume),
|
||||
SPECIES_PAL(KADABRA, gMonPalette_Kadabra),
|
||||
SPECIES_PAL(ALAKAZAM, gMonPalette_Alakazam),
|
||||
SPECIES_PAL(DODUO, gMonPalette_Doduo),
|
||||
SPECIES_PAL(DODRIO, gMonPalette_Dodrio),
|
||||
SPECIES_PAL(HYPNO, gMonPalette_Hypno),
|
||||
SPECIES_PAL(RHYHORN, gMonPalette_Rhyhorn),
|
||||
SPECIES_PAL(RHYDON, gMonPalette_Rhydon),
|
||||
SPECIES_PAL(GOLDEEN, gMonPalette_Goldeen),
|
||||
SPECIES_PAL(SEAKING, gMonPalette_Seaking),
|
||||
SPECIES_PAL(SCYTHER, gMonPalette_Scyther),
|
||||
SPECIES_PAL(MAGIKARP, gMonPalette_Magikarp),
|
||||
SPECIES_PAL(GYARADOS, gMonPalette_Gyarados),
|
||||
SPECIES_PAL(EEVEE, gMonPalette_Eevee),
|
||||
SPECIES_PAL(MEGANIUM, gMonPalette_Meganium),
|
||||
SPECIES_PAL(LEDYBA, gMonPalette_Ledyba),
|
||||
SPECIES_PAL(LEDIAN, gMonPalette_Ledian),
|
||||
SPECIES_PAL(XATU, gMonPalette_Xatu),
|
||||
SPECIES_PAL(SUDOWOODO, gMonPalette_Sudowoodo),
|
||||
SPECIES_PAL(POLITOED, gMonPalette_Politoed),
|
||||
SPECIES_PAL(AIPOM, gMonPalette_Aipom),
|
||||
SPECIES_PAL(WOOPER, gMonPalette_Wooper),
|
||||
SPECIES_PAL(QUAGSIRE, gMonPalette_Quagsire),
|
||||
SPECIES_PAL(MURKROW, gMonPalette_Murkrow),
|
||||
SPECIES_PAL(WOBBUFFET, gMonPalette_Wobbuffet),
|
||||
SPECIES_PAL(GIRAFARIG, gMonPalette_Girafarig),
|
||||
SPECIES_PAL(GLIGAR, gMonPalette_Gligar),
|
||||
SPECIES_PAL(STEELIX, gMonPalette_Steelix),
|
||||
SPECIES_PAL(SCIZOR, gMonPalette_Scizor),
|
||||
SPECIES_PAL(HERACROSS, gMonPalette_Heracross),
|
||||
SPECIES_PAL(SNEASEL, gMonPalette_Sneasel),
|
||||
SPECIES_PAL(URSARING, gMonPalette_Ursaring),
|
||||
SPECIES_PAL(PILOSWINE, gMonPalette_Piloswine),
|
||||
SPECIES_PAL(OCTILLERY, gMonPalette_Octillery),
|
||||
SPECIES_PAL(HOUNDOOM, gMonPalette_Houndoom),
|
||||
SPECIES_PAL(DONPHAN, gMonPalette_Donphan),
|
||||
SPECIES_PAL(TORCHIC, gMonPalette_Torchic),
|
||||
SPECIES_PAL(COMBUSKEN, gMonPalette_Combusken),
|
||||
SPECIES_PAL(BLAZIKEN, gMonPalette_Blaziken),
|
||||
SPECIES_PAL(BEAUTIFLY, gMonPalette_Beautifly),
|
||||
SPECIES_PAL(DUSTOX, gMonPalette_Dustox),
|
||||
SPECIES_PAL(LUDICOLO, gMonPalette_Ludicolo),
|
||||
SPECIES_PAL(NUZLEAF, gMonPalette_Nuzleaf),
|
||||
SPECIES_PAL(SHIFTRY, gMonPalette_Shiftry),
|
||||
SPECIES_PAL(MEDITITE, gMonPalette_Meditite),
|
||||
SPECIES_PAL(MEDICHAM, gMonPalette_Medicham),
|
||||
|
||||
#if P_GEN_4_POKEMON == TRUE
|
||||
SPECIES_PAL(STARLY, gMonPalette_Starly),
|
||||
SPECIES_PAL(STARAVIA, gMonPalette_Staravia),
|
||||
SPECIES_PAL(STARAPTOR, gMonPalette_Staraptor),
|
||||
SPECIES_PAL(BIDOOF, gMonPalette_Bidoof),
|
||||
SPECIES_PAL(KRICKETOT, gMonPalette_Kricketot),
|
||||
SPECIES_PAL(KRICKETUNE, gMonPalette_Kricketune),
|
||||
SPECIES_PAL(SHINX, gMonPalette_Shinx),
|
||||
SPECIES_PAL(COMBEE, gMonPalette_CombeeF),
|
||||
SPECIES_PAL(AMBIPOM, gMonPalette_Ambipom),
|
||||
SPECIES_PAL(GIBLE, gMonPalette_Gible),
|
||||
SPECIES_PAL(GABITE, gMonPalette_Gabite),
|
||||
SPECIES_PAL(GARCHOMP, gMonPalette_Garchomp),
|
||||
SPECIES_PAL(HIPPOPOTAS, gMonPalette_HippopotasF),
|
||||
SPECIES_PAL(HIPPOWDON, gMonPalette_HippowdonF),
|
||||
SPECIES_PAL(WEAVILE, gMonPalette_Weavile),
|
||||
SPECIES_PAL(RHYPERIOR, gMonPalette_Rhyperior),
|
||||
SPECIES_PAL(TANGROWTH, gMonPalette_Tangrowth),
|
||||
SPECIES_PAL(MAMOSWINE, gMonPalette_Mamoswine),
|
||||
#endif
|
||||
#if P_GEN_5_POKEMON == TRUE
|
||||
SPECIES_PAL(UNFEZANT, gMonPalette_UnfezantF),
|
||||
SPECIES_PAL(FRILLISH, gMonPalette_FrillishF),
|
||||
SPECIES_PAL(JELLICENT, gMonPalette_JellicentF),
|
||||
#endif
|
||||
#if P_GEN_6_POKEMON == TRUE
|
||||
SPECIES_PAL(PYROAR, gMonPalette_Pyroar),
|
||||
#endif
|
||||
|
||||
SPECIES_PAL(SNEASEL_HISUIAN, gMonPalette_SneaselHisuian),
|
||||
};
|
||||
|
@ -1,4 +1,4 @@
|
||||
const struct CompressedSpritePalette gMonShinyPaletteTable[] =
|
||||
const struct CompressedSpritePalette gMonShinyPaletteTable[NUM_SPECIES + 1] =
|
||||
{
|
||||
SPECIES_SHINY_PAL(NONE, gMonShinyPalette_CircledQuestionMark),
|
||||
SPECIES_SHINY_PAL(BULBASAUR, gMonShinyPalette_Bulbasaur),
|
||||
@ -1335,92 +1335,16 @@ const struct CompressedSpritePalette gMonShinyPaletteTable[] =
|
||||
SPECIES_SHINY_PAL(EGG, gMonPalette_Egg),
|
||||
};
|
||||
|
||||
const struct CompressedSpritePalette gMonShinyPaletteTableFemale[] =
|
||||
const struct CompressedSpritePalette gMonShinyPaletteTableFemale[NUM_SPECIES + 1] =
|
||||
{
|
||||
SPECIES_SHINY_PAL(VENUSAUR, gMonShinyPalette_Venusaur),
|
||||
SPECIES_SHINY_PAL(BUTTERFREE, gMonShinyPalette_Butterfree),
|
||||
SPECIES_SHINY_PAL(RATTATA, gMonShinyPalette_Rattata),
|
||||
SPECIES_SHINY_PAL(RATICATE, gMonShinyPalette_Raticate),
|
||||
SPECIES_SHINY_PAL(PIKACHU, gMonShinyPalette_Pikachu),
|
||||
SPECIES_SHINY_PAL(RAICHU, gMonShinyPalette_Raichu),
|
||||
SPECIES_SHINY_PAL(ZUBAT, gMonShinyPalette_Zubat),
|
||||
SPECIES_SHINY_PAL(GOLBAT, gMonShinyPalette_Golbat),
|
||||
SPECIES_SHINY_PAL(GLOOM, gMonShinyPalette_Gloom),
|
||||
SPECIES_SHINY_PAL(VILEPLUME, gMonShinyPalette_Vileplume),
|
||||
SPECIES_SHINY_PAL(KADABRA, gMonShinyPalette_Kadabra),
|
||||
SPECIES_SHINY_PAL(ALAKAZAM, gMonShinyPalette_Alakazam),
|
||||
SPECIES_SHINY_PAL(DODUO, gMonShinyPalette_Doduo),
|
||||
SPECIES_SHINY_PAL(DODRIO, gMonShinyPalette_Dodrio),
|
||||
SPECIES_SHINY_PAL(HYPNO, gMonShinyPalette_Hypno),
|
||||
SPECIES_SHINY_PAL(RHYHORN, gMonShinyPalette_Rhyhorn),
|
||||
SPECIES_SHINY_PAL(RHYDON, gMonShinyPalette_Rhydon),
|
||||
SPECIES_SHINY_PAL(GOLDEEN, gMonShinyPalette_Goldeen),
|
||||
SPECIES_SHINY_PAL(SEAKING, gMonShinyPalette_Seaking),
|
||||
SPECIES_SHINY_PAL(SCYTHER, gMonShinyPalette_Scyther),
|
||||
SPECIES_SHINY_PAL(MAGIKARP, gMonShinyPalette_Magikarp),
|
||||
SPECIES_SHINY_PAL(GYARADOS, gMonShinyPalette_Gyarados),
|
||||
SPECIES_SHINY_PAL(EEVEE, gMonShinyPalette_Eevee),
|
||||
SPECIES_SHINY_PAL(MEGANIUM, gMonShinyPalette_Meganium),
|
||||
SPECIES_SHINY_PAL(LEDYBA, gMonShinyPalette_Ledyba),
|
||||
SPECIES_SHINY_PAL(LEDIAN, gMonShinyPalette_Ledian),
|
||||
SPECIES_SHINY_PAL(XATU, gMonShinyPalette_Xatu),
|
||||
SPECIES_SHINY_PAL(SUDOWOODO, gMonShinyPalette_Sudowoodo),
|
||||
SPECIES_SHINY_PAL(POLITOED, gMonShinyPalette_Politoed),
|
||||
SPECIES_SHINY_PAL(AIPOM, gMonShinyPalette_Aipom),
|
||||
SPECIES_SHINY_PAL(WOOPER, gMonShinyPalette_Wooper),
|
||||
SPECIES_SHINY_PAL(QUAGSIRE, gMonShinyPalette_Quagsire),
|
||||
SPECIES_SHINY_PAL(MURKROW, gMonShinyPalette_Murkrow),
|
||||
SPECIES_SHINY_PAL(WOBBUFFET, gMonShinyPalette_Wobbuffet),
|
||||
SPECIES_SHINY_PAL(GIRAFARIG, gMonShinyPalette_Girafarig),
|
||||
SPECIES_SHINY_PAL(GLIGAR, gMonShinyPalette_Gligar),
|
||||
SPECIES_SHINY_PAL(STEELIX, gMonShinyPalette_Steelix),
|
||||
SPECIES_SHINY_PAL(SCIZOR, gMonShinyPalette_Scizor),
|
||||
SPECIES_SHINY_PAL(HERACROSS, gMonShinyPalette_Heracross),
|
||||
SPECIES_SHINY_PAL(SNEASEL, gMonShinyPalette_Sneasel),
|
||||
SPECIES_SHINY_PAL(URSARING, gMonShinyPalette_Ursaring),
|
||||
SPECIES_SHINY_PAL(PILOSWINE, gMonShinyPalette_Piloswine),
|
||||
SPECIES_SHINY_PAL(OCTILLERY, gMonShinyPalette_Octillery),
|
||||
SPECIES_SHINY_PAL(HOUNDOOM, gMonShinyPalette_Houndoom),
|
||||
SPECIES_SHINY_PAL(DONPHAN, gMonShinyPalette_Donphan),
|
||||
SPECIES_SHINY_PAL(TORCHIC, gMonShinyPalette_Torchic),
|
||||
SPECIES_SHINY_PAL(COMBUSKEN, gMonShinyPalette_Combusken),
|
||||
SPECIES_SHINY_PAL(BLAZIKEN, gMonShinyPalette_Blaziken),
|
||||
SPECIES_SHINY_PAL(BEAUTIFLY, gMonShinyPalette_Beautifly),
|
||||
SPECIES_SHINY_PAL(DUSTOX, gMonShinyPalette_Dustox),
|
||||
SPECIES_SHINY_PAL(LUDICOLO, gMonShinyPalette_Ludicolo),
|
||||
SPECIES_SHINY_PAL(NUZLEAF, gMonShinyPalette_Nuzleaf),
|
||||
SPECIES_SHINY_PAL(SHIFTRY, gMonShinyPalette_Shiftry),
|
||||
SPECIES_SHINY_PAL(MEDITITE, gMonShinyPalette_Meditite),
|
||||
SPECIES_SHINY_PAL(MEDICHAM, gMonShinyPalette_Medicham),
|
||||
|
||||
#if P_GEN_4_POKEMON == TRUE
|
||||
SPECIES_SHINY_PAL(STARLY, gMonShinyPalette_Starly),
|
||||
SPECIES_SHINY_PAL(STARAVIA, gMonShinyPalette_Staravia),
|
||||
SPECIES_SHINY_PAL(STARAPTOR, gMonShinyPalette_Staraptor),
|
||||
SPECIES_SHINY_PAL(BIDOOF, gMonShinyPalette_Bidoof),
|
||||
SPECIES_SHINY_PAL(KRICKETOT, gMonShinyPalette_Kricketot),
|
||||
SPECIES_SHINY_PAL(KRICKETUNE, gMonShinyPalette_Kricketune),
|
||||
SPECIES_SHINY_PAL(SHINX, gMonShinyPalette_Shinx),
|
||||
SPECIES_SHINY_PAL(COMBEE, gMonShinyPalette_CombeeF),
|
||||
SPECIES_SHINY_PAL(AMBIPOM, gMonShinyPalette_Ambipom),
|
||||
SPECIES_SHINY_PAL(GIBLE, gMonShinyPalette_Gible),
|
||||
SPECIES_SHINY_PAL(GABITE, gMonShinyPalette_Gabite),
|
||||
SPECIES_SHINY_PAL(GARCHOMP, gMonShinyPalette_Garchomp),
|
||||
SPECIES_SHINY_PAL(HIPPOPOTAS, gMonShinyPalette_HippopotasF),
|
||||
SPECIES_SHINY_PAL(HIPPOWDON, gMonShinyPalette_HippowdonF),
|
||||
SPECIES_SHINY_PAL(WEAVILE, gMonShinyPalette_Weavile),
|
||||
SPECIES_SHINY_PAL(RHYPERIOR, gMonShinyPalette_Rhyperior),
|
||||
SPECIES_SHINY_PAL(TANGROWTH, gMonShinyPalette_Tangrowth),
|
||||
SPECIES_SHINY_PAL(MAMOSWINE, gMonShinyPalette_Mamoswine),
|
||||
#endif
|
||||
#if P_GEN_5_POKEMON == TRUE
|
||||
SPECIES_SHINY_PAL(UNFEZANT, gMonShinyPalette_UnfezantF),
|
||||
SPECIES_SHINY_PAL(FRILLISH, gMonShinyPalette_FrillishF),
|
||||
SPECIES_SHINY_PAL(JELLICENT, gMonShinyPalette_JellicentF),
|
||||
#endif
|
||||
#if P_GEN_6_POKEMON == TRUE
|
||||
SPECIES_SHINY_PAL(PYROAR, gMonShinyPalette_Pyroar),
|
||||
#endif
|
||||
|
||||
SPECIES_SHINY_PAL(SNEASEL_HISUIAN, gMonShinyPalette_SneaselHisuian),
|
||||
};
|
||||
|
@ -1,4 +1,4 @@
|
||||
const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1] = {
|
||||
const u8 gSpeciesNames[NUM_SPECIES][POKEMON_NAME_LENGTH + 1] = {
|
||||
[SPECIES_NONE] = _("??????????"),
|
||||
[SPECIES_BULBASAUR] = _("Bulbasaur"),
|
||||
[SPECIES_IVYSAUR] = _("Ivysaur"),
|
||||
|
@ -2048,7 +2048,7 @@ static void DebugAction_Give_PokemonSimple(u8 taskId)
|
||||
//Display initial ID
|
||||
StringCopy(gStringVar2, gText_DigitIndicator[0]);
|
||||
ConvertIntToDecimalStringN(gStringVar3, 1, STR_CONV_MODE_LEADING_ZEROS, 3);
|
||||
StringCopy(gStringVar1, gSpeciesNames[1]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(1));
|
||||
StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15);
|
||||
StringExpandPlaceholders(gStringVar4, sDebugText_PokemonID);
|
||||
AddTextPrinterParameterized(windowId, 1, gStringVar4, 1, 1, 0, NULL);
|
||||
@ -2086,7 +2086,7 @@ static void DebugAction_Give_PokemonComplex(u8 taskId)
|
||||
//Display initial ID
|
||||
StringCopy(gStringVar2, gText_DigitIndicator[0]);
|
||||
ConvertIntToDecimalStringN(gStringVar3, 1, STR_CONV_MODE_LEADING_ZEROS, 4);
|
||||
StringCopy(gStringVar1, gSpeciesNames[1]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(1));
|
||||
StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15);
|
||||
StringExpandPlaceholders(gStringVar4, sDebugText_PokemonID);
|
||||
AddTextPrinterParameterized(windowId, 1, gStringVar4, 1, 1, 0, NULL);
|
||||
@ -2133,7 +2133,7 @@ static void DebugAction_Give_Pokemon_SelectId(u8 taskId)
|
||||
}
|
||||
|
||||
StringCopy(gStringVar2, gText_DigitIndicator[gTasks[taskId].data[4]]);
|
||||
StringCopy(gStringVar1, gSpeciesNames[gTasks[taskId].data[3]]); //CopyItemName(gTasks[taskId].data[3], gStringVar1);
|
||||
StringCopy(gStringVar1, GetSpeciesName(gTasks[taskId].data[3])); //CopyItemName(gTasks[taskId].data[3], gStringVar1);
|
||||
StringCopyPadded(gStringVar1, gStringVar1, CHAR_SPACE, 15);
|
||||
ConvertIntToDecimalStringN(gStringVar3, gTasks[taskId].data[3], STR_CONV_MODE_LEADING_ZEROS, 4);
|
||||
StringExpandPlaceholders(gStringVar4, sDebugText_PokemonID);
|
||||
|
@ -63,17 +63,19 @@ void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePale
|
||||
void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void *buffer, s32 species)
|
||||
{
|
||||
if (species > NUM_SPECIES)
|
||||
LZ77UnCompWram(gMonFrontPicTable[0].data, buffer);
|
||||
LZ77UnCompWram(gMonFrontPicTable[SPECIES_NONE].data, buffer);
|
||||
else
|
||||
LZ77UnCompWram(src->data, buffer);
|
||||
}
|
||||
|
||||
void DecompressPicFromTableGender(void* buffer, s32 species, u32 personality)
|
||||
{
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
DecompressPicFromTable(&gMonFrontPicTableFemale[species], buffer, species);
|
||||
if (gMonFrontPicTableFemale[species].data != NULL && IsPersonalityFemale(species, personality))
|
||||
LZ77UnCompWram(gMonFrontPicTableFemale[species].data, buffer);
|
||||
else if (gMonFrontPicTable[species].data != NULL)
|
||||
LZ77UnCompWram(gMonFrontPicTable[species].data, buffer);
|
||||
else
|
||||
DecompressPicFromTable(&gMonFrontPicTable[species], buffer, species);
|
||||
LZ77UnCompWram(gMonFrontPicTable[SPECIES_NONE].data, buffer);
|
||||
}
|
||||
|
||||
void HandleLoadSpecialPokePic(bool32 isFrontPic, void *dest, s32 species, u32 personality)
|
||||
@ -83,35 +85,28 @@ void HandleLoadSpecialPokePic(bool32 isFrontPic, void *dest, s32 species, u32 pe
|
||||
|
||||
void LoadSpecialPokePic(void *dest, s32 species, u32 personality, bool8 isFrontPic)
|
||||
{
|
||||
if (species == SPECIES_UNOWN)
|
||||
{
|
||||
u32 id = GetUnownSpeciesId(personality);
|
||||
if (species > NUM_SPECIES)
|
||||
species = SPECIES_NONE;
|
||||
else if (species == SPECIES_UNOWN)
|
||||
species = GetUnownSpeciesId(personality);
|
||||
|
||||
if (!isFrontPic)
|
||||
LZ77UnCompWram(gMonBackPicTable[id].data, dest);
|
||||
else
|
||||
LZ77UnCompWram(gMonFrontPicTable[id].data, dest);
|
||||
}
|
||||
else if (species > NUM_SPECIES) // is species unknown? draw the ? icon
|
||||
if (isFrontPic)
|
||||
{
|
||||
if (isFrontPic)
|
||||
LZ77UnCompWram(gMonFrontPicTable[0].data, dest);
|
||||
else
|
||||
LZ77UnCompWram(gMonBackPicTable[0].data, dest);
|
||||
}
|
||||
else if (ShouldShowFemaleDifferences(species, personality))
|
||||
{
|
||||
if (isFrontPic)
|
||||
if (gMonFrontPicTableFemale[species].data != NULL && IsPersonalityFemale(species, personality))
|
||||
LZ77UnCompWram(gMonFrontPicTableFemale[species].data, dest);
|
||||
else if (gMonFrontPicTable[species].data != NULL)
|
||||
LZ77UnCompWram(gMonFrontPicTable[species].data, dest);
|
||||
else
|
||||
LZ77UnCompWram(gMonBackPicTableFemale[species].data, dest);
|
||||
LZ77UnCompWram(gMonFrontPicTable[SPECIES_NONE].data, dest);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (isFrontPic)
|
||||
LZ77UnCompWram(gMonFrontPicTable[species].data, dest);
|
||||
else
|
||||
if (gMonBackPicTableFemale[species].data != NULL && IsPersonalityFemale(species, personality))
|
||||
LZ77UnCompWram(gMonBackPicTableFemale[species].data, dest);
|
||||
else if (gMonBackPicTable[species].data != NULL)
|
||||
LZ77UnCompWram(gMonBackPicTable[species].data, dest);
|
||||
else
|
||||
LZ77UnCompWram(gMonBackPicTable[SPECIES_NONE].data, dest);
|
||||
}
|
||||
|
||||
DrawSpindaSpots(species, personality, dest, isFrontPic);
|
||||
|
@ -5204,7 +5204,7 @@ static const u8 *GetEasyChatWord(u8 groupId, u16 index)
|
||||
{
|
||||
case EC_GROUP_POKEMON:
|
||||
case EC_GROUP_POKEMON_NATIONAL:
|
||||
return gSpeciesNames[index];
|
||||
return GetSpeciesName(index);
|
||||
case EC_GROUP_MOVE_1:
|
||||
case EC_GROUP_MOVE_2:
|
||||
return gMoveNames[index];
|
||||
|
@ -369,7 +369,7 @@ static void AddHatchedMonToParty(u8 id)
|
||||
SetMonData(mon, MON_DATA_IS_EGG, &isEgg);
|
||||
|
||||
species = GetMonData(mon, MON_DATA_SPECIES);
|
||||
GetSpeciesName(name, species);
|
||||
StringCopy(name, GetSpeciesName(species));
|
||||
SetMonData(mon, MON_DATA_NICKNAME, name);
|
||||
|
||||
species = SpeciesToNationalPokedexNum(species);
|
||||
|
@ -254,7 +254,7 @@ void EvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, bool8 canStopEvo, u
|
||||
|
||||
GetMonData(mon, MON_DATA_NICKNAME, name);
|
||||
StringCopy_Nickname(gStringVar1, name);
|
||||
StringCopy(gStringVar2, gSpeciesNames[postEvoSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(postEvoSpecies));
|
||||
|
||||
// preEvo sprite
|
||||
currSpecies = GetMonData(mon, MON_DATA_SPECIES);
|
||||
@ -476,7 +476,7 @@ void TradeEvolutionScene(struct Pokemon *mon, u16 postEvoSpecies, u8 preEvoSprit
|
||||
|
||||
GetMonData(mon, MON_DATA_NICKNAME, name);
|
||||
StringCopy_Nickname(gStringVar1, name);
|
||||
StringCopy(gStringVar2, gSpeciesNames[postEvoSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(postEvoSpecies));
|
||||
|
||||
gAffineAnimsDisabled = TRUE;
|
||||
|
||||
@ -561,7 +561,7 @@ static void CreateShedinja(u16 preEvoSpecies, struct Pokemon *mon)
|
||||
|
||||
CopyMon(&gPlayerParty[gPlayerPartyCount], mon, sizeof(struct Pokemon));
|
||||
SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_SPECIES, &gEvolutionTable[preEvoSpecies][1].targetSpecies);
|
||||
SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_NICKNAME, gSpeciesNames[gEvolutionTable[preEvoSpecies][1].targetSpecies]);
|
||||
SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_NICKNAME, GetSpeciesName(gEvolutionTable[preEvoSpecies][1].targetSpecies));
|
||||
SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_HELD_ITEM, &data);
|
||||
SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_MARKINGS, &data);
|
||||
SetMonData(&gPlayerParty[gPlayerPartyCount], MON_DATA_ENCRYPT_SEPARATOR, &data);
|
||||
|
@ -236,7 +236,7 @@ static void Task_MoveDeoxysRock(u8 taskId);
|
||||
static u8 sActiveList[32];
|
||||
|
||||
// External declarations
|
||||
extern struct CompressedSpritePalette gMonPaletteTable[]; // GF made a mistake and did not extern it as const.
|
||||
extern const struct CompressedSpritePalette gMonPaletteTable[];
|
||||
extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[];
|
||||
extern const struct CompressedSpriteSheet gTrainerFrontPicTable[];
|
||||
extern u8 *gFieldEffectScriptPointers[];
|
||||
|
@ -1911,7 +1911,7 @@ static u8 AppendCaughtBannedMonSpeciesName(u16 species, u8 count, s32 numBannedM
|
||||
StringAppend(gStringVar1, gText_LineBreak);
|
||||
break;
|
||||
}
|
||||
StringAppend(gStringVar1, gSpeciesNames[species]);
|
||||
StringAppend(gStringVar1, GetSpeciesName(species));
|
||||
}
|
||||
|
||||
return count;
|
||||
|
@ -1163,7 +1163,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u
|
||||
AddTextPrinterParameterized3(0, FONT_NORMAL, width, 1, sMonInfoTextColors, TEXT_SKIP_DRAW, text);
|
||||
|
||||
text[0] = CHAR_SLASH;
|
||||
stringPtr = StringCopy(text + 1, gSpeciesNames[currMon->species]);
|
||||
stringPtr = StringCopy(text + 1, GetSpeciesName(currMon->species));
|
||||
|
||||
if (currMon->species != SPECIES_NIDORAN_M && currMon->species != SPECIES_NIDORAN_F)
|
||||
{
|
||||
|
@ -1777,7 +1777,7 @@ static void PopulateSpeciesFromTrainerLocation(int matchCallId, u8 *destStr)
|
||||
|
||||
if (numSpecies)
|
||||
{
|
||||
StringCopy(destStr, gSpeciesNames[species[Random() % numSpecies]]);
|
||||
StringCopy(destStr, GetSpeciesName(species[Random() % numSpecies]));
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -1801,19 +1801,19 @@ static void PopulateSpeciesFromTrainerParty(int matchCallId, u8 *destStr)
|
||||
{
|
||||
case 0:
|
||||
default:
|
||||
speciesName = gSpeciesNames[party.NoItemDefaultMoves[monId].species];
|
||||
speciesName = GetSpeciesName(party.NoItemDefaultMoves[monId].species);
|
||||
break;
|
||||
case F_TRAINER_PARTY_CUSTOM_MOVESET:
|
||||
speciesName = gSpeciesNames[party.NoItemCustomMoves[monId].species];
|
||||
speciesName = GetSpeciesName(party.NoItemCustomMoves[monId].species);
|
||||
break;
|
||||
case F_TRAINER_PARTY_HELD_ITEM:
|
||||
speciesName = gSpeciesNames[party.ItemDefaultMoves[monId].species];
|
||||
speciesName = GetSpeciesName(party.ItemDefaultMoves[monId].species);
|
||||
break;
|
||||
case F_TRAINER_PARTY_CUSTOM_MOVESET | F_TRAINER_PARTY_HELD_ITEM:
|
||||
speciesName = gSpeciesNames[party.ItemCustomMoves[monId].species];
|
||||
speciesName = GetSpeciesName(party.ItemCustomMoves[monId].species);
|
||||
break;
|
||||
case F_TRAINER_PARTY_EVERYTHING_CUSTOMIZED:
|
||||
speciesName = gSpeciesNames[party.EverythingCustomized[monId].species];
|
||||
speciesName = GetSpeciesName(party.EverythingCustomized[monId].species);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -939,7 +939,7 @@ static u8 *GetConditionMenuMonString(u8 *dst, u16 boxId, u16 monId)
|
||||
level = GetLevelFromBoxMonExp(boxMon);
|
||||
}
|
||||
|
||||
if ((species == SPECIES_NIDORAN_F || species == SPECIES_NIDORAN_M) && !StringCompare(dst, gSpeciesNames[species]))
|
||||
if ((species == SPECIES_NIDORAN_F || species == SPECIES_NIDORAN_M) && !StringCompare(dst, GetSpeciesName(species)))
|
||||
gender = MON_GENDERLESS;
|
||||
|
||||
for (str = dst; *str != EOS; str++)
|
||||
|
@ -1712,7 +1712,7 @@ static void DrawMonTextEntryBox(void)
|
||||
{
|
||||
u8 buffer[32];
|
||||
|
||||
StringCopy(buffer, gSpeciesNames[sNamingScreen->monSpecies]);
|
||||
StringCopy(buffer, GetSpeciesName(sNamingScreen->monSpecies));
|
||||
StringAppendN(buffer, sNamingScreen->template->title, 15);
|
||||
FillWindowPixelBuffer(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX], PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized(sNamingScreen->windows[WIN_TEXT_ENTRY_BOX], FONT_NORMAL, buffer, 8, 1, 0, 0);
|
||||
|
@ -2333,7 +2333,7 @@ static void DisplayPartyPokemonGender(u8 gender, u16 species, u8 *nickname, stru
|
||||
|
||||
if (species == SPECIES_NONE)
|
||||
return;
|
||||
if ((species == SPECIES_NIDORAN_M || species == SPECIES_NIDORAN_F) && StringCompare(nickname, gSpeciesNames[species]) == 0)
|
||||
if ((species == SPECIES_NIDORAN_M || species == SPECIES_NIDORAN_F) && StringCompare(nickname, GetSpeciesName(species)) == 0)
|
||||
return;
|
||||
switch (gender)
|
||||
{
|
||||
|
@ -2447,7 +2447,7 @@ static u8 CreateMonName(u16 num, u8 left, u8 top)
|
||||
|
||||
num = NationalPokedexNumToSpecies(num);
|
||||
if (num)
|
||||
str = gSpeciesNames[num];
|
||||
str = GetSpeciesName(num);
|
||||
else
|
||||
str = sText_TenDashes;
|
||||
PrintMonDexNumAndName(0, FONT_NARROW, str, left, top);
|
||||
@ -4112,7 +4112,7 @@ static void PrintMonInfo(u32 num, u32 value, u32 owned, u32 newEntry)
|
||||
PrintInfoScreenText(str, 0x60, 0x19);
|
||||
natNum = NationalPokedexNumToSpecies(num);
|
||||
if (natNum)
|
||||
name = gSpeciesNames[natNum];
|
||||
name = GetSpeciesName(natNum);
|
||||
else
|
||||
name = sText_TenDashes2;
|
||||
PrintInfoScreenText(name, 0x84, 0x19);
|
||||
@ -4459,8 +4459,8 @@ static u8 PrintCryScreenSpeciesName(u8 windowId, u16 num, u8 left, u8 top)
|
||||
switch (num)
|
||||
{
|
||||
default:
|
||||
for (i = 0; gSpeciesNames[num][i] != EOS && i < POKEMON_NAME_LENGTH; i++)
|
||||
str[i] = gSpeciesNames[num][i];
|
||||
for (i = 0; GetSpeciesName(num)[i] != EOS && i < POKEMON_NAME_LENGTH; i++)
|
||||
str[i] = GetSpeciesName(num)[i];
|
||||
break;
|
||||
case 0:
|
||||
for (i = 0; i < 5; i++)
|
||||
@ -4661,7 +4661,7 @@ static int DoPokedexSearch(u8 dexMode, u8 order, u8 abcGroup, u8 bodyColor, u8 t
|
||||
u8 firstLetter;
|
||||
|
||||
species = NationalPokedexNumToSpecies(sPokedexView->pokedexList[i].dexNum);
|
||||
firstLetter = gSpeciesNames[species][0];
|
||||
firstLetter = GetSpeciesName(species)[0];
|
||||
if (LETTER_IN_RANGE_UPPER(firstLetter, abcGroup) || LETTER_IN_RANGE_LOWER(firstLetter, abcGroup))
|
||||
{
|
||||
sPokedexView->pokedexList[resultsCount] = sPokedexView->pokedexList[i];
|
||||
|
@ -3504,7 +3504,7 @@ void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV,
|
||||
checksum = CalculateBoxMonChecksum(boxMon);
|
||||
SetBoxMonData(boxMon, MON_DATA_CHECKSUM, &checksum);
|
||||
EncryptBoxMon(boxMon);
|
||||
GetSpeciesName(speciesName, species);
|
||||
StringCopy(speciesName, GetSpeciesName(species));
|
||||
SetBoxMonData(boxMon, MON_DATA_NICKNAME, speciesName);
|
||||
SetBoxMonData(boxMon, MON_DATA_LANGUAGE, &gGameLanguage);
|
||||
SetBoxMonData(boxMon, MON_DATA_OT_NAME, gSaveBlock2Ptr->playerName);
|
||||
@ -4478,6 +4478,11 @@ u8 GetGenderFromSpeciesAndPersonality(u16 species, u32 personality)
|
||||
return MON_MALE;
|
||||
}
|
||||
|
||||
bool32 IsPersonalityFemale(u16 species, u32 personality)
|
||||
{
|
||||
return GetGenderFromSpeciesAndPersonality(species, personality) == MON_FEMALE;
|
||||
}
|
||||
|
||||
u32 GetUnownSpeciesId(u32 personality)
|
||||
{
|
||||
u16 unownLetter = GetUnownLetterByPersonality(personality);
|
||||
@ -4502,9 +4507,19 @@ void SetMultiuseSpriteTemplateToPokemon(u16 speciesTag, u8 battlerPosition)
|
||||
if (battlerPosition == B_POSITION_PLAYER_LEFT || battlerPosition == B_POSITION_PLAYER_RIGHT)
|
||||
gMultiuseSpriteTemplate.anims = gAnims_MonPic;
|
||||
else if (speciesTag > SPECIES_SHINY_TAG)
|
||||
gMultiuseSpriteTemplate.anims = gMonFrontAnimsPtrTable[speciesTag - SPECIES_SHINY_TAG];
|
||||
{
|
||||
if (gMonFrontAnimsPtrTable[speciesTag - SPECIES_SHINY_TAG] != NULL)
|
||||
gMultiuseSpriteTemplate.anims = gMonFrontAnimsPtrTable[speciesTag - SPECIES_SHINY_TAG];
|
||||
else
|
||||
gMultiuseSpriteTemplate.anims = gMonFrontAnimsPtrTable[SPECIES_NONE];
|
||||
}
|
||||
else
|
||||
gMultiuseSpriteTemplate.anims = gMonFrontAnimsPtrTable[speciesTag];
|
||||
{
|
||||
if (gMonFrontAnimsPtrTable[speciesTag] != NULL)
|
||||
gMultiuseSpriteTemplate.anims = gMonFrontAnimsPtrTable[speciesTag];
|
||||
else
|
||||
gMultiuseSpriteTemplate.anims = gMonFrontAnimsPtrTable[SPECIES_NONE];
|
||||
}
|
||||
}
|
||||
|
||||
void SetMultiuseSpriteTemplateToTrainerBack(u16 trainerPicId, u8 battlerPosition)
|
||||
@ -5597,22 +5612,9 @@ bool8 IsPokemonStorageFull(void)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void GetSpeciesName(u8 *name, u16 species)
|
||||
const u8 *GetSpeciesName(u16 species)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i <= POKEMON_NAME_LENGTH; i++)
|
||||
{
|
||||
if (species > NUM_SPECIES)
|
||||
name[i] = gSpeciesNames[SPECIES_NONE][i];
|
||||
else
|
||||
name[i] = gSpeciesNames[species][i];
|
||||
|
||||
if (name[i] == EOS)
|
||||
break;
|
||||
}
|
||||
|
||||
name[i] = EOS;
|
||||
return gSpeciesNames[SanitizeSpeciesId(species)];
|
||||
}
|
||||
|
||||
u8 CalculatePPWithBonus(u16 move, u8 ppBonuses, u8 moveIndex)
|
||||
@ -6903,8 +6905,8 @@ void EvolutionRenameMon(struct Pokemon *mon, u16 oldSpecies, u16 newSpecies)
|
||||
u8 language;
|
||||
GetMonData(mon, MON_DATA_NICKNAME, gStringVar1);
|
||||
language = GetMonData(mon, MON_DATA_LANGUAGE, &language);
|
||||
if (language == GAME_LANGUAGE && !StringCompare(gSpeciesNames[oldSpecies], gStringVar1))
|
||||
SetMonData(mon, MON_DATA_NICKNAME, gSpeciesNames[newSpecies]);
|
||||
if (language == GAME_LANGUAGE && !StringCompare(GetSpeciesName(oldSpecies), gStringVar1))
|
||||
SetMonData(mon, MON_DATA_NICKNAME, GetSpeciesName(newSpecies));
|
||||
}
|
||||
|
||||
// The below two functions determine which side of a multi battle the trainer battles on
|
||||
@ -7627,17 +7629,21 @@ const u32 *GetMonSpritePalFromSpeciesAndPersonality(u16 species, u32 otId, u32 p
|
||||
shinyValue = GET_SHINY_VALUE(otId, personality);
|
||||
if (shinyValue < SHINY_ODDS)
|
||||
{
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
if (gMonShinyPaletteTableFemale[species].data != NULL && IsPersonalityFemale(species, personality))
|
||||
return gMonShinyPaletteTableFemale[species].data;
|
||||
else
|
||||
else if (gMonShinyPaletteTable[species].data != NULL)
|
||||
return gMonShinyPaletteTable[species].data;
|
||||
else
|
||||
return gMonShinyPaletteTable[SPECIES_NONE].data;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
if (gMonPaletteTableFemale[species].data != NULL && IsPersonalityFemale(species, personality))
|
||||
return gMonPaletteTableFemale[species].data;
|
||||
else
|
||||
else if (gMonPaletteTable[species].data != NULL)
|
||||
return gMonPaletteTable[species].data;
|
||||
else
|
||||
return gMonPaletteTable[SPECIES_NONE].data;
|
||||
}
|
||||
}
|
||||
|
||||
@ -7656,17 +7662,21 @@ const struct CompressedSpritePalette *GetMonSpritePalStructFromOtIdPersonality(u
|
||||
shinyValue = GET_SHINY_VALUE(otId, personality);
|
||||
if (shinyValue < SHINY_ODDS)
|
||||
{
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
if (gMonShinyPaletteTableFemale[species].data != NULL && IsPersonalityFemale(species, personality))
|
||||
return &gMonShinyPaletteTableFemale[species];
|
||||
else
|
||||
else if (gMonShinyPaletteTable[species].data != NULL)
|
||||
return &gMonShinyPaletteTable[species];
|
||||
else
|
||||
return &gMonShinyPaletteTable[SPECIES_NONE];
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
if (gMonPaletteTableFemale[species].data != NULL && IsPersonalityFemale(species, personality))
|
||||
return &gMonPaletteTableFemale[species];
|
||||
else
|
||||
else if (gMonPaletteTable[species].data != NULL)
|
||||
return &gMonPaletteTable[species];
|
||||
else
|
||||
return &gMonPaletteTable[SPECIES_NONE];
|
||||
}
|
||||
}
|
||||
|
||||
@ -8491,11 +8501,16 @@ void TrySpecialOverworldEvo(void)
|
||||
SetMainCallback2(CB2_ReturnToField);
|
||||
}
|
||||
|
||||
bool32 ShouldShowFemaleDifferences(u16 species, u32 personality)
|
||||
bool32 SpeciesHasGenderDifferences(u16 species)
|
||||
{
|
||||
if (species >= NUM_SPECIES)
|
||||
return FALSE;
|
||||
return (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && GetGenderFromSpeciesAndPersonality(species, personality) == MON_FEMALE;
|
||||
if (gMonFrontPicTableFemale[species].data != NULL
|
||||
|| gMonPaletteTableFemale[species].data != NULL
|
||||
|| gMonBackPicTableFemale[species].data != NULL
|
||||
|| gMonShinyPaletteTableFemale[species].data != NULL
|
||||
|| gMonIconTableFemale[species] != NULL)
|
||||
return TRUE;
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool32 TryFormChange(u32 monId, u32 side, u16 method)
|
||||
@ -8523,6 +8538,19 @@ bool32 TryFormChange(u32 monId, u32 side, u16 method)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
u16 SanitizeSpeciesId(u16 species)
|
||||
{
|
||||
if (species > NUM_SPECIES || !IsSpeciesEnabled(species))
|
||||
return SPECIES_NONE;
|
||||
else
|
||||
return species;
|
||||
}
|
||||
|
||||
bool32 IsSpeciesEnabled(u16 species)
|
||||
{
|
||||
return gSpeciesInfo[species].baseHP > 0;
|
||||
}
|
||||
|
||||
void TryToSetBattleFormChangeMoves(struct Pokemon *mon, u16 method)
|
||||
{
|
||||
int i, j;
|
||||
|
@ -415,21 +415,21 @@ static void PrintInstructionsOnWindow(struct PokemonDebugMenu *data)
|
||||
FillWindowPixelBuffer(WIN_INSTRUCTIONS, 0x11);
|
||||
if (data->currentSubmenu == 0)
|
||||
{
|
||||
if (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE)
|
||||
if (SpeciesHasGenderDifferences(species))
|
||||
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsGender, x, 0, 0, NULL);
|
||||
else
|
||||
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructions, x, 0, 0, NULL);
|
||||
}
|
||||
else if (data->currentSubmenu == 1)
|
||||
{
|
||||
if (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE)
|
||||
if (SpeciesHasGenderDifferences(species))
|
||||
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuOneGender, x, 0, 0, NULL);
|
||||
else
|
||||
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuOne, x, 0, 0, NULL);
|
||||
}
|
||||
else if (data->currentSubmenu == 2)
|
||||
{
|
||||
if (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE)
|
||||
if (SpeciesHasGenderDifferences(species))
|
||||
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuTwoGender, x, 0, 0, NULL);
|
||||
else
|
||||
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuTwo, x, 0, 0, NULL);
|
||||
@ -483,7 +483,7 @@ static void PrintDigitChars(struct PokemonDebugMenu *data)
|
||||
text[i++] = CHAR_SPACE;
|
||||
text[i++] = CHAR_HYPHEN;
|
||||
|
||||
if (gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE)
|
||||
if (SpeciesHasGenderDifferences(species))
|
||||
{
|
||||
if (data->isFemale)
|
||||
text[i++] = CHAR_FEMALE;
|
||||
@ -493,7 +493,7 @@ static void PrintDigitChars(struct PokemonDebugMenu *data)
|
||||
}
|
||||
|
||||
text[i++] = CHAR_SPACE;
|
||||
StringCopy(&text[i], gSpeciesNames[species]);
|
||||
StringCopy(&text[i], GetSpeciesName(species));
|
||||
|
||||
FillWindowPixelBuffer(WIN_NAME_NUMBERS, 0x11);
|
||||
AddTextPrinterParameterized(WIN_NAME_NUMBERS, 1, text, 6, 0, 0, NULL);
|
||||
@ -686,17 +686,21 @@ static const struct CompressedSpritePalette *GetMonSpritePalStructCustom(u16 spe
|
||||
{
|
||||
if (isShiny)
|
||||
{
|
||||
if ((gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale)
|
||||
if (gMonShinyPaletteTableFemale[species].data != NULL && isFemale)
|
||||
return &gMonShinyPaletteTableFemale[species];
|
||||
else
|
||||
else if (gMonShinyPaletteTable[species].data != NULL)
|
||||
return &gMonShinyPaletteTable[species];
|
||||
else
|
||||
return &gMonShinyPaletteTable[SPECIES_NONE];
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale)
|
||||
if (gMonPaletteTableFemale[species].data != NULL && isFemale)
|
||||
return &gMonPaletteTableFemale[species];
|
||||
else
|
||||
else if (gMonPaletteTable[species].data != NULL)
|
||||
return &gMonPaletteTable[species];
|
||||
else
|
||||
return &gMonPaletteTable[SPECIES_NONE];
|
||||
}
|
||||
}
|
||||
|
||||
@ -712,17 +716,21 @@ static void BattleLoadOpponentMonSpriteGfxCustom(u16 species, bool8 isFemale, bo
|
||||
|
||||
if (isShiny)
|
||||
{
|
||||
if ((gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale)
|
||||
if (gMonShinyPaletteTableFemale[species].data != NULL && isFemale)
|
||||
lzPaletteData = gMonShinyPaletteTableFemale[species].data;
|
||||
else
|
||||
else if (gMonShinyPaletteTable[species].data != NULL)
|
||||
lzPaletteData = gMonShinyPaletteTable[species].data;
|
||||
else
|
||||
lzPaletteData = gMonShinyPaletteTable[SPECIES_NONE].data;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((gSpeciesInfo[species].flags & SPECIES_FLAG_GENDER_DIFFERENCE) && isFemale)
|
||||
if (gMonPaletteTableFemale[species].data != NULL && isFemale)
|
||||
lzPaletteData = gMonPaletteTableFemale[species].data;
|
||||
else
|
||||
else if (gMonPaletteTable[species].data != NULL)
|
||||
lzPaletteData = gMonPaletteTable[species].data;
|
||||
else
|
||||
lzPaletteData = gMonPaletteTable[SPECIES_NONE].data;
|
||||
}
|
||||
|
||||
LZDecompressWram(lzPaletteData, gDecompressionBuffer);
|
||||
@ -1450,7 +1458,7 @@ static void Handle_Input_Debug_Pokemon(u8 taskId)
|
||||
ReloadPokemonSprites(data);
|
||||
ApplyOffsetSpriteValues(data);
|
||||
}
|
||||
if (JOY_NEW(SELECT_BUTTON) && (gSpeciesInfo[data->currentmonId].flags & SPECIES_FLAG_GENDER_DIFFERENCE))
|
||||
if (JOY_NEW(SELECT_BUTTON) && SpeciesHasGenderDifferences(data->currentmonId))
|
||||
{
|
||||
data->isFemale = !data->isFemale;
|
||||
PrintDigitChars(data);
|
||||
|
@ -24,9 +24,9 @@ struct MonIconSpriteTemplate
|
||||
static u8 CreateMonIconSprite(struct MonIconSpriteTemplate *, s16, s16, u8);
|
||||
static void FreeAndDestroyMonIconSprite_(struct Sprite *sprite);
|
||||
|
||||
const u8 *const gMonIconTable[] =
|
||||
const u8 *const gMonIconTable[NUM_SPECIES + 1] =
|
||||
{
|
||||
[SPECIES_NONE] = gMonIcon_Bulbasaur,
|
||||
[SPECIES_NONE] = gMonIcon_QuestionMark,
|
||||
[SPECIES_BULBASAUR] = gMonIcon_Bulbasaur,
|
||||
[SPECIES_IVYSAUR] = gMonIcon_Ivysaur,
|
||||
[SPECIES_VENUSAUR] = gMonIcon_Venusaur,
|
||||
@ -1298,87 +1298,12 @@ const u8 *const gMonIconTable[] =
|
||||
[SPECIES_EGG] = gMonIcon_Egg,
|
||||
};
|
||||
|
||||
const u8 *const gMonIconTableFemale[] =
|
||||
// Female icon palette indexes still need to be defined in gMonIconPaletteIndicesFemale, even if they are the same as males.
|
||||
const u8 *const gMonIconTableFemale[NUM_SPECIES + 1] =
|
||||
{
|
||||
[SPECIES_VENUSAUR] = gMonIcon_Venusaur,
|
||||
[SPECIES_BUTTERFREE] = gMonIcon_Butterfree,
|
||||
[SPECIES_RATTATA] = gMonIcon_Rattata,
|
||||
[SPECIES_RATICATE] = gMonIcon_Raticate,
|
||||
[SPECIES_PIKACHU] = gMonIcon_Pikachu,
|
||||
[SPECIES_RAICHU] = gMonIcon_Raichu,
|
||||
[SPECIES_ZUBAT] = gMonIcon_Zubat,
|
||||
[SPECIES_GOLBAT] = gMonIcon_Golbat,
|
||||
[SPECIES_GLOOM] = gMonIcon_Gloom,
|
||||
[SPECIES_VILEPLUME] = gMonIcon_Vileplume,
|
||||
[SPECIES_KADABRA] = gMonIcon_Kadabra,
|
||||
[SPECIES_ALAKAZAM] = gMonIcon_Alakazam,
|
||||
[SPECIES_DODUO] = gMonIcon_Doduo,
|
||||
[SPECIES_DODRIO] = gMonIcon_Dodrio,
|
||||
[SPECIES_HYPNO] = gMonIcon_Hypno,
|
||||
[SPECIES_RHYHORN] = gMonIcon_Rhyhorn,
|
||||
[SPECIES_RHYDON] = gMonIcon_Rhydon,
|
||||
[SPECIES_GOLDEEN] = gMonIcon_Goldeen,
|
||||
[SPECIES_SEAKING] = gMonIcon_Seaking,
|
||||
[SPECIES_SCYTHER] = gMonIcon_Scyther,
|
||||
[SPECIES_MAGIKARP] = gMonIcon_Magikarp,
|
||||
[SPECIES_GYARADOS] = gMonIcon_Gyarados,
|
||||
[SPECIES_EEVEE] = gMonIcon_Eevee,
|
||||
[SPECIES_MEGANIUM] = gMonIcon_Meganium,
|
||||
[SPECIES_LEDYBA] = gMonIcon_Ledyba,
|
||||
[SPECIES_LEDIAN] = gMonIcon_Ledian,
|
||||
[SPECIES_XATU] = gMonIcon_Xatu,
|
||||
[SPECIES_SUDOWOODO] = gMonIcon_Sudowoodo,
|
||||
[SPECIES_POLITOED] = gMonIcon_Politoed,
|
||||
[SPECIES_AIPOM] = gMonIcon_Aipom,
|
||||
[SPECIES_WOOPER] = gMonIcon_Wooper,
|
||||
[SPECIES_QUAGSIRE] = gMonIcon_Quagsire,
|
||||
[SPECIES_MURKROW] = gMonIcon_Murkrow,
|
||||
[SPECIES_WOBBUFFET] = gMonIcon_Wobbuffet,
|
||||
[SPECIES_GIRAFARIG] = gMonIcon_Girafarig,
|
||||
[SPECIES_GLIGAR] = gMonIcon_Gligar,
|
||||
[SPECIES_STEELIX] = gMonIcon_Steelix,
|
||||
[SPECIES_SCIZOR] = gMonIcon_Scizor,
|
||||
[SPECIES_HERACROSS] = gMonIcon_Heracross,
|
||||
[SPECIES_SNEASEL] = gMonIcon_Sneasel,
|
||||
[SPECIES_URSARING] = gMonIcon_Ursaring,
|
||||
[SPECIES_PILOSWINE] = gMonIcon_Piloswine,
|
||||
[SPECIES_OCTILLERY] = gMonIcon_Octillery,
|
||||
[SPECIES_HOUNDOOM] = gMonIcon_Houndoom,
|
||||
[SPECIES_DONPHAN] = gMonIcon_Donphan,
|
||||
[SPECIES_TORCHIC] = gMonIcon_Torchic,
|
||||
[SPECIES_COMBUSKEN] = gMonIcon_Combusken,
|
||||
[SPECIES_BLAZIKEN] = gMonIcon_Blaziken,
|
||||
[SPECIES_BEAUTIFLY] = gMonIcon_Beautifly,
|
||||
[SPECIES_DUSTOX] = gMonIcon_Dustox,
|
||||
[SPECIES_LUDICOLO] = gMonIcon_Ludicolo,
|
||||
[SPECIES_NUZLEAF] = gMonIcon_Nuzleaf,
|
||||
[SPECIES_SHIFTRY] = gMonIcon_Shiftry,
|
||||
[SPECIES_MEDITITE] = gMonIcon_Meditite,
|
||||
[SPECIES_MEDICHAM] = gMonIcon_Medicham,
|
||||
#if P_GEN_4_POKEMON == TRUE
|
||||
[SPECIES_STARLY] = gMonIcon_Starly,
|
||||
[SPECIES_STARAVIA] = gMonIcon_Staravia,
|
||||
[SPECIES_STARAPTOR] = gMonIcon_Staraptor,
|
||||
[SPECIES_BIDOOF] = gMonIcon_Bidoof,
|
||||
[SPECIES_KRICKETOT] = gMonIcon_Kricketot,
|
||||
[SPECIES_KRICKETUNE] = gMonIcon_Kricketune,
|
||||
[SPECIES_SHINX] = gMonIcon_Shinx,
|
||||
[SPECIES_COMBEE] = gMonIcon_Combee,
|
||||
[SPECIES_AMBIPOM] = gMonIcon_Ambipom,
|
||||
[SPECIES_GIBLE] = gMonIcon_Gible,
|
||||
[SPECIES_GABITE] = gMonIcon_Gabite,
|
||||
[SPECIES_GARCHOMP] = gMonIcon_Garchomp,
|
||||
#if P_HIPPO_GENDER_DIFF_ICONS == TRUE
|
||||
#if P_GEN_4_POKEMON == TRUE && P_HIPPO_GENDER_DIFF_ICONS == TRUE
|
||||
[SPECIES_HIPPOPOTAS] = gMonIcon_HippopotasF,
|
||||
[SPECIES_HIPPOWDON] = gMonIcon_HippowdonF,
|
||||
#else
|
||||
[SPECIES_HIPPOPOTAS] = gMonIcon_Hippopotas,
|
||||
[SPECIES_HIPPOWDON] = gMonIcon_Hippowdon,
|
||||
#endif
|
||||
[SPECIES_WEAVILE] = gMonIcon_Weavile,
|
||||
[SPECIES_RHYPERIOR] = gMonIcon_Rhyperior,
|
||||
[SPECIES_TANGROWTH] = gMonIcon_Tangrowth,
|
||||
[SPECIES_MAMOSWINE] = gMonIcon_Mamoswine,
|
||||
#endif
|
||||
#if P_GEN_5_POKEMON == TRUE
|
||||
[SPECIES_UNFEZANT] = gMonIcon_UnfezantF,
|
||||
@ -1388,7 +1313,6 @@ const u8 *const gMonIconTableFemale[] =
|
||||
#if P_GEN_6_POKEMON == TRUE
|
||||
[SPECIES_PYROAR] = gMonIcon_PyroarF,
|
||||
#endif
|
||||
[SPECIES_SNEASEL_HISUIAN] = gMonIcon_SneaselHisuian,
|
||||
};
|
||||
|
||||
const u8 gMonIconPaletteIndices[] =
|
||||
@ -2610,79 +2534,9 @@ const u8 gMonIconPaletteIndices[] =
|
||||
|
||||
const u8 gMonIconPaletteIndicesFemale[] =
|
||||
{
|
||||
[SPECIES_VENUSAUR] = 4,
|
||||
[SPECIES_BUTTERFREE] = 0,
|
||||
[SPECIES_RATTATA] = 2,
|
||||
[SPECIES_RATICATE] = 2,
|
||||
[SPECIES_PIKACHU] = 2,
|
||||
[SPECIES_RAICHU] = 0,
|
||||
[SPECIES_ZUBAT] = 2,
|
||||
[SPECIES_GOLBAT] = 2,
|
||||
[SPECIES_GLOOM] = 0,
|
||||
[SPECIES_VILEPLUME] = 0,
|
||||
[SPECIES_KADABRA] = 2,
|
||||
[SPECIES_ALAKAZAM] = 2,
|
||||
[SPECIES_DODUO] = 2,
|
||||
[SPECIES_DODRIO] = 2,
|
||||
[SPECIES_HYPNO] = 2,
|
||||
[SPECIES_RHYHORN] = 1,
|
||||
[SPECIES_RHYDON] = 1,
|
||||
[SPECIES_GOLDEEN] = 0,
|
||||
[SPECIES_SEAKING] = 0,
|
||||
[SPECIES_SCYTHER] = 1,
|
||||
[SPECIES_MAGIKARP] = 0,
|
||||
[SPECIES_GYARADOS] = 0,
|
||||
[SPECIES_EEVEE] = 2,
|
||||
[SPECIES_MEGANIUM] = 1,
|
||||
[SPECIES_LEDYBA] = 0,
|
||||
[SPECIES_LEDIAN] = 0,
|
||||
[SPECIES_XATU] = 1,
|
||||
[SPECIES_SUDOWOODO] = 1,
|
||||
[SPECIES_POLITOED] = 1,
|
||||
[SPECIES_AIPOM] = 2,
|
||||
[SPECIES_WOOPER] = 0,
|
||||
[SPECIES_QUAGSIRE] = 0,
|
||||
[SPECIES_MURKROW] = 2,
|
||||
[SPECIES_WOBBUFFET] = 0,
|
||||
[SPECIES_GIRAFARIG] = 1,
|
||||
[SPECIES_GLIGAR] = 0,
|
||||
[SPECIES_STEELIX] = 0,
|
||||
[SPECIES_SCIZOR] = 0,
|
||||
[SPECIES_HERACROSS] = 0,
|
||||
[SPECIES_SNEASEL] = 0,
|
||||
[SPECIES_URSARING] = 2,
|
||||
[SPECIES_PILOSWINE] = 2,
|
||||
[SPECIES_OCTILLERY] = 0,
|
||||
[SPECIES_HOUNDOOM] = 0,
|
||||
[SPECIES_DONPHAN] = 0,
|
||||
[SPECIES_TORCHIC] = 0,
|
||||
[SPECIES_COMBUSKEN] = 0,
|
||||
[SPECIES_BLAZIKEN] = 0,
|
||||
[SPECIES_BEAUTIFLY] = 0,
|
||||
[SPECIES_DUSTOX] = 5,
|
||||
[SPECIES_LUDICOLO] = 1,
|
||||
[SPECIES_NUZLEAF] = 1,
|
||||
[SPECIES_SHIFTRY] = 5,
|
||||
[SPECIES_MEDITITE] = 0,
|
||||
[SPECIES_MEDICHAM] = 0,
|
||||
#if P_GEN_4_POKEMON == TRUE
|
||||
[SPECIES_STARLY] = 0,
|
||||
[SPECIES_STARAVIA] = 0,
|
||||
[SPECIES_BIDOOF] = 2,
|
||||
[SPECIES_KRICKETOT] = 2,
|
||||
[SPECIES_KRICKETUNE] = 2,
|
||||
[SPECIES_SHINX] = 0,
|
||||
[SPECIES_COMBEE] = 0,
|
||||
[SPECIES_AMBIPOM] = 2,
|
||||
[SPECIES_GIBLE] = 0,
|
||||
[SPECIES_GABITE] = 0,
|
||||
[SPECIES_GARCHOMP] = 0,
|
||||
[SPECIES_HIPPOPOTAS] = 1,
|
||||
[SPECIES_HIPPOWDON] = 1,
|
||||
[SPECIES_WEAVILE] = 0,
|
||||
[SPECIES_RHYPERIOR] = 0,
|
||||
[SPECIES_TANGROWTH] = 0,
|
||||
[SPECIES_MAMOSWINE] = 2,
|
||||
#endif
|
||||
#if P_GEN_5_POKEMON == TRUE
|
||||
[SPECIES_UNFEZANT] = 1,
|
||||
@ -2692,10 +2546,6 @@ const u8 gMonIconPaletteIndicesFemale[] =
|
||||
#if P_GEN_6_POKEMON == TRUE
|
||||
[SPECIES_PYROAR] = 2,
|
||||
#endif
|
||||
#if P_GEN_8_POKEMON == TRUE
|
||||
[SPECIES_BASCULEGION] = 0,
|
||||
#endif
|
||||
[SPECIES_SNEASEL_HISUIAN] = 2,
|
||||
};
|
||||
|
||||
const struct SpritePalette gMonIconPaletteTable[] =
|
||||
@ -2826,7 +2676,7 @@ u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u
|
||||
|
||||
if (species > NUM_SPECIES)
|
||||
iconTemplate.paletteTag = POKE_ICON_BASE_PAL_TAG;
|
||||
else if (ShouldShowFemaleDifferences(species, personality))
|
||||
else if (gMonIconTableFemale[species] && IsPersonalityFemale(species, personality))
|
||||
iconTemplate.paletteTag = POKE_ICON_BASE_PAL_TAG + gMonIconPaletteIndicesFemale[species];
|
||||
|
||||
spriteId = CreateMonIconSprite(&iconTemplate, x, y, subpriority);
|
||||
@ -2941,7 +2791,7 @@ void LoadMonIconPalette(u16 species)
|
||||
void LoadMonIconPalettePersonality(u16 species, u32 personality)
|
||||
{
|
||||
u8 palIndex;
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
if (gMonIconTableFemale[species] != NULL && IsPersonalityFemale(species, personality))
|
||||
palIndex = gMonIconPaletteIndicesFemale[species];
|
||||
else
|
||||
palIndex = gMonIconPaletteIndices[species];
|
||||
@ -2982,10 +2832,15 @@ const u8 *GetMonIconTiles(u16 species, u32 personality)
|
||||
{
|
||||
const u8 *iconSprite;
|
||||
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
if (species > NUM_SPECIES)
|
||||
species = SPECIES_NONE;
|
||||
|
||||
if (gMonIconTableFemale[species] != NULL && IsPersonalityFemale(species, personality))
|
||||
iconSprite = gMonIconTableFemale[species];
|
||||
else
|
||||
else if (gMonIconTable[species] != NULL)
|
||||
iconSprite = gMonIconTable[species];
|
||||
else
|
||||
iconSprite = gMonIconTable[SPECIES_NONE];
|
||||
|
||||
return iconSprite;
|
||||
}
|
||||
|
@ -148,7 +148,7 @@ static void GetMonSizeRecordInfo(u16 species, u16 *sizeRecord)
|
||||
u32 size = GetMonSize(species, *sizeRecord);
|
||||
|
||||
FormatMonSizeRecord(gStringVar3, size);
|
||||
StringCopy(gStringVar1, gSpeciesNames[species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(species));
|
||||
if (*sizeRecord == DEFAULT_MAX_SIZE)
|
||||
StringCopy(gStringVar2, gText_Marco);
|
||||
else
|
||||
|
@ -5110,7 +5110,7 @@ static u16 TryLoadMonIconTiles(u16 species, u32 personality)
|
||||
u16 i, offset;
|
||||
|
||||
// Treat female mons as a seperate species as they may have a different icon than males
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
if (gMonIconTableFemale[species] != NULL && IsPersonalityFemale(species, personality))
|
||||
species |= 0x8000; // 1 << 15
|
||||
|
||||
// Search icon list for this species
|
||||
@ -5177,7 +5177,7 @@ static struct Sprite *CreateMonIconSprite(u16 species, u32 personality, s16 x, s
|
||||
struct SpriteTemplate template = sSpriteTemplate_MonIcon;
|
||||
|
||||
species = GetIconSpecies(species, personality);
|
||||
if (ShouldShowFemaleDifferences(species, personality))
|
||||
if (gMonIconTableFemale[species] != NULL && IsPersonalityFemale(species, personality))
|
||||
{
|
||||
template.paletteTag = PALTAG_MON_ICON_0 + gMonIconPaletteIndicesFemale[species];
|
||||
}
|
||||
@ -6993,7 +6993,7 @@ static void SetDisplayMonData(void *pokemon, u8 mode)
|
||||
|
||||
txtPtr = sStorage->displayMonSpeciesName;
|
||||
*(txtPtr)++ = CHAR_SLASH;
|
||||
StringCopyPadded(txtPtr, gSpeciesNames[sStorage->displayMonSpecies], CHAR_SPACE, 5);
|
||||
StringCopyPadded(txtPtr, GetSpeciesName(sStorage->displayMonSpecies), CHAR_SPACE, 5);
|
||||
|
||||
txtPtr = sStorage->displayMonGenderLvlText;
|
||||
*(txtPtr)++ = EXT_CTRL_CODE_BEGIN;
|
||||
|
@ -2863,7 +2863,7 @@ static void PrintNotEggInfo(void)
|
||||
GetMonNickname(mon, gStringVar1);
|
||||
PrintTextOnWindow(PSS_LABEL_WINDOW_PORTRAIT_NICKNAME, gStringVar1, 0, 1, 0, 1);
|
||||
strArray[0] = CHAR_SLASH;
|
||||
StringCopy(&strArray[1], &gSpeciesNames[summary->species2][0]);
|
||||
StringCopy(&strArray[1], &GetSpeciesName(summary->species2)[0]);
|
||||
PrintTextOnWindow(PSS_LABEL_WINDOW_PORTRAIT_SPECIES, strArray, 0, 1, 0, 1);
|
||||
PrintGenderSymbol(mon, summary->species2);
|
||||
PutWindowTilemap(PSS_LABEL_WINDOW_PORTRAIT_NICKNAME);
|
||||
|
@ -365,7 +365,7 @@ static u8 *CopyConditionMonNameGender(u8 *str, u16 listId, bool8 skipPadding)
|
||||
level = GetLevelFromBoxMonExp(boxMon);
|
||||
}
|
||||
|
||||
if ((species == SPECIES_NIDORAN_F || species == SPECIES_NIDORAN_M) && !StringCompare(str, gSpeciesNames[species]))
|
||||
if ((species == SPECIES_NIDORAN_F || species == SPECIES_NIDORAN_M) && !StringCompare(str, GetSpeciesName(species)))
|
||||
gender = MON_GENDERLESS;
|
||||
|
||||
str_ = str; // For some reason, a variable is needed to match.
|
||||
|
@ -1552,7 +1552,7 @@ bool8 ScrCmd_bufferspeciesname(struct ScriptContext *ctx)
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 species = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
StringCopy(sScriptStringVars[stringVarIndex], gSpeciesNames[species]);
|
||||
StringCopy(sScriptStringVars[stringVarIndex], GetSpeciesName(species));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -1563,7 +1563,7 @@ bool8 ScrCmd_bufferleadmonspeciesname(struct ScriptContext *ctx)
|
||||
u8 *dest = sScriptStringVars[stringVarIndex];
|
||||
u8 partyIndex = GetLeadMonIndex();
|
||||
u32 species = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPECIES, NULL);
|
||||
StringCopy(dest, gSpeciesNames[species]);
|
||||
StringCopy(dest, GetSpeciesName(species));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
@ -577,7 +577,7 @@ static void CreateStarterPokemonLabel(u8 selection)
|
||||
|
||||
u16 species = GetStarterPokemon(selection);
|
||||
CopyMonCategoryText(SpeciesToNationalPokedexNum(species), categoryText);
|
||||
speciesName = gSpeciesNames[species];
|
||||
speciesName = GetSpeciesName(species);
|
||||
|
||||
winTemplate = sWindowTemplate_StarterLabel;
|
||||
winTemplate.tilemapLeft = sStarterLabelCoords[selection][0];
|
||||
|
@ -1165,7 +1165,7 @@ static bool8 BufferTradeParties(void)
|
||||
GetMonData(mon, MON_DATA_NICKNAME, name);
|
||||
|
||||
if (!StringCompareWithoutExtCtrlCodes(name, sText_ShedinjaJP))
|
||||
SetMonData(mon, MON_DATA_NICKNAME, gSpeciesNames[SPECIES_SHEDINJA]);
|
||||
SetMonData(mon, MON_DATA_NICKNAME, GetSpeciesName(SPECIES_SHEDINJA));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -4541,8 +4541,8 @@ static void SpriteCB_BouncingPokeballArrive(struct Sprite *sprite)
|
||||
u16 GetInGameTradeSpeciesInfo(void)
|
||||
{
|
||||
const struct InGameTrade *inGameTrade = &sIngameTrades[gSpecialVar_0x8004];
|
||||
StringCopy(gStringVar1, gSpeciesNames[inGameTrade->requestedSpecies]);
|
||||
StringCopy(gStringVar2, gSpeciesNames[inGameTrade->species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(inGameTrade->requestedSpecies));
|
||||
StringCopy(gStringVar2, GetSpeciesName(inGameTrade->species));
|
||||
return inGameTrade->requestedSpecies;
|
||||
}
|
||||
|
||||
@ -4552,7 +4552,7 @@ static void BufferInGameTradeMonName(void)
|
||||
const struct InGameTrade *inGameTrade = &sIngameTrades[gSpecialVar_0x8004];
|
||||
GetMonData(&gPlayerParty[gSpecialVar_0x8005], MON_DATA_NICKNAME, nickname);
|
||||
StringCopy_Nickname(gStringVar1, nickname);
|
||||
StringCopy(gStringVar2, gSpeciesNames[inGameTrade->species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(inGameTrade->species));
|
||||
}
|
||||
|
||||
static void CreateInGameTradePokemonInternal(u8 whichPlayerMon, u8 whichInGameTrade)
|
||||
|
202
src/tv.c
202
src/tv.c
@ -1116,7 +1116,7 @@ void TryPutPokemonTodayOnAir(void)
|
||||
else
|
||||
{
|
||||
InitWorldOfMastersShowAttempt();
|
||||
if (!rbernoulli(1, 1) && StringCompare(gSpeciesNames[gBattleResults.caughtMonSpecies], gBattleResults.caughtMonNick))
|
||||
if (!rbernoulli(1, 1) && StringCompare(GetSpeciesName(gBattleResults.caughtMonSpecies), gBattleResults.caughtMonNick))
|
||||
{
|
||||
sCurTVShowSlot = FindFirstEmptyRecordMixTVShowSlot(gSaveBlock1Ptr->tvShows);
|
||||
if (sCurTVShowSlot != -1 && IsRecordMixShowAlreadySpawned(TVSHOW_POKEMON_TODAY_CAUGHT, FALSE) != TRUE)
|
||||
@ -2914,7 +2914,7 @@ static void InterviewBefore_FanClubLetter(void)
|
||||
TryReplaceOldTVShowOfKind(TVSHOW_FAN_CLUB_LETTER);
|
||||
if (!gSpecialVar_Result)
|
||||
{
|
||||
StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)));
|
||||
InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubLetter.words,
|
||||
ARRAY_COUNT(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubLetter.words));
|
||||
}
|
||||
@ -2935,7 +2935,7 @@ static void InterviewBefore_PkmnFanClubOpinions(void)
|
||||
TryReplaceOldTVShowOfKind(TVSHOW_PKMN_FAN_CLUB_OPINIONS);
|
||||
if (!gSpecialVar_Result)
|
||||
{
|
||||
StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, NULL)));
|
||||
GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_NICKNAME, gStringVar2);
|
||||
StringGet_Nickname(gStringVar2);
|
||||
InitializeEasyChatWordArray(gSaveBlock1Ptr->tvShows[sCurTVShowSlot].fanclubOpinions.words,
|
||||
@ -2995,7 +2995,7 @@ static bool8 IsPartyMonNicknamedOrNotEnglish(u8 monIdx)
|
||||
pokemon = &gPlayerParty[monIdx];
|
||||
GetMonData(pokemon, MON_DATA_NICKNAME, gStringVar1);
|
||||
language = GetMonData(pokemon, MON_DATA_LANGUAGE, &language);
|
||||
if (language == GAME_LANGUAGE && !StringCompare(gSpeciesNames[GetMonData(pokemon, MON_DATA_SPECIES, NULL)], gStringVar1))
|
||||
if (language == GAME_LANGUAGE && !StringCompare(GetSpeciesName(GetMonData(pokemon, MON_DATA_SPECIES, NULL)), gStringVar1))
|
||||
return FALSE;
|
||||
|
||||
return TRUE;
|
||||
@ -3059,7 +3059,7 @@ static void CompactTVShowArray(TVShow *shows)
|
||||
static u16 GetRandomDifferentSpeciesAndNameSeenByPlayer(u8 varIdx, u16 excludedSpecies)
|
||||
{
|
||||
u16 species = GetRandomDifferentSpeciesSeenByPlayer(excludedSpecies);
|
||||
StringCopy(gTVStringVarPtrs[varIdx], gSpeciesNames[species]);
|
||||
StringCopy(gTVStringVarPtrs[varIdx], GetSpeciesName(species));
|
||||
return species;
|
||||
}
|
||||
|
||||
@ -3221,24 +3221,24 @@ static void GetNicknameSubstring(u8 varIdx, u8 whichPosition, u8 charParam, u16
|
||||
}
|
||||
else
|
||||
{
|
||||
strlen = StringLength(gSpeciesNames[species]);
|
||||
strlen = StringLength(GetSpeciesName(species));
|
||||
if (charParam == 0)
|
||||
{
|
||||
buff[0] = gSpeciesNames[species][whichPosition];
|
||||
buff[0] = GetSpeciesName(species)[whichPosition];
|
||||
}
|
||||
else if (charParam == 1)
|
||||
{
|
||||
buff[0] = gSpeciesNames[species][strlen - whichPosition];
|
||||
buff[0] = GetSpeciesName(species)[strlen - whichPosition];
|
||||
}
|
||||
else if (charParam == 2)
|
||||
{
|
||||
buff[0] = gSpeciesNames[species][whichPosition];
|
||||
buff[1] = gSpeciesNames[species][whichPosition + 1];
|
||||
buff[0] = GetSpeciesName(species)[whichPosition];
|
||||
buff[1] = GetSpeciesName(species)[whichPosition + 1];
|
||||
}
|
||||
else
|
||||
{
|
||||
buff[0] = gSpeciesNames[species][strlen - (whichPosition + 2)];
|
||||
buff[1] = gSpeciesNames[species][strlen - (whichPosition + 1)];
|
||||
buff[0] = GetSpeciesName(species)[strlen - (whichPosition + 2)];
|
||||
buff[1] = GetSpeciesName(species)[strlen - (whichPosition + 1)];
|
||||
}
|
||||
}
|
||||
StringCopy(gTVStringVarPtrs[varIdx], buff);
|
||||
@ -4291,13 +4291,13 @@ static void DoTVShowBravoTrainerPokemonProfile(void)
|
||||
TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language);
|
||||
CopyContestCategoryToStringVar(1, show->bravoTrainer.contestCategory);
|
||||
CopyContestRankToStringVar(2, show->bravoTrainer.contestRank);
|
||||
if (!StringCompare(gSpeciesNames[show->bravoTrainer.species], show->bravoTrainer.pokemonNickname))
|
||||
if (!StringCompare(GetSpeciesName(show->bravoTrainer.species), show->bravoTrainer.pokemonNickname))
|
||||
sTVShowState = 8;
|
||||
else
|
||||
sTVShowState = 1;
|
||||
break;
|
||||
case 1:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->bravoTrainer.species));
|
||||
TVShowConvertInternationalString(gStringVar2, show->bravoTrainer.pokemonNickname, show->bravoTrainer.pokemonNameLanguage);
|
||||
CopyContestCategoryToStringVar(2, show->bravoTrainer.contestCategory);
|
||||
sTVShowState = 2;
|
||||
@ -4331,18 +4331,18 @@ static void DoTVShowBravoTrainerPokemonProfile(void)
|
||||
sTVShowState = 7;
|
||||
break;
|
||||
case 6:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->bravoTrainer.species));
|
||||
StringCopy(gStringVar2, gMoveNames[show->bravoTrainer.move]);
|
||||
CopyEasyChatWord(gStringVar3, show->bravoTrainer.words[1]);
|
||||
sTVShowState = 7;
|
||||
break;
|
||||
case 7:
|
||||
TVShowConvertInternationalString(gStringVar1, show->bravoTrainer.playerName, show->bravoTrainer.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainer.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->bravoTrainer.species));
|
||||
TVShowDone();
|
||||
break;
|
||||
case 8:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->bravoTrainer.species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->bravoTrainer.species));
|
||||
sTVShowState = 2;
|
||||
break;
|
||||
}
|
||||
@ -4364,7 +4364,7 @@ static void DoTVShowBravoTrainerBattleTower(void)
|
||||
{
|
||||
case BRAVOTOWER_STATE_INTRO:
|
||||
TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->bravoTrainerTower.species));
|
||||
if (show->bravoTrainerTower.numFights >= FRONTIER_STAGES_PER_CHALLENGE)
|
||||
sTVShowState = BRAVOTOWER_STATE_NEW_RECORD;
|
||||
else
|
||||
@ -4393,7 +4393,7 @@ static void DoTVShowBravoTrainerBattleTower(void)
|
||||
break;
|
||||
case BRAVOTOWER_STATE_WON:
|
||||
TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.defeatedSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->bravoTrainerTower.defeatedSpecies));
|
||||
if (show->bravoTrainerTower.interviewResponse == 0)
|
||||
sTVShowState = BRAVOTOWER_STATE_SATISFIED;
|
||||
else
|
||||
@ -4401,7 +4401,7 @@ static void DoTVShowBravoTrainerBattleTower(void)
|
||||
break;
|
||||
case BRAVOTOWER_STATE_LOST_FINAL:
|
||||
TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.pokemonName, show->bravoTrainerTower.pokemonNameLanguage);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.defeatedSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->bravoTrainerTower.defeatedSpecies));
|
||||
if (show->bravoTrainerTower.interviewResponse == 0)
|
||||
sTVShowState = BRAVOTOWER_STATE_SATISFIED;
|
||||
else
|
||||
@ -4440,7 +4440,7 @@ static void DoTVShowBravoTrainerBattleTower(void)
|
||||
break;
|
||||
case BRAVOTOWER_STATE_OUTRO:
|
||||
TVShowConvertInternationalString(gStringVar1, show->bravoTrainerTower.trainerName, show->bravoTrainerTower.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->bravoTrainerTower.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->bravoTrainerTower.species));
|
||||
TVShowDone();
|
||||
break;
|
||||
}
|
||||
@ -4555,7 +4555,7 @@ static void DoTVShowTheNameRaterShow(void)
|
||||
{
|
||||
case 0:
|
||||
TVShowConvertInternationalString(gStringVar1, show->nameRaterShow.trainerName, show->nameRaterShow.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->nameRaterShow.species));
|
||||
TVShowConvertInternationalString(gStringVar3, show->nameRaterShow.pokemonName, show->nameRaterShow.pokemonNameLanguage);
|
||||
sTVShowState = GetRandomNameRaterStateFromName(show) + 1;
|
||||
break;
|
||||
@ -4603,7 +4603,7 @@ static void DoTVShowTheNameRaterShow(void)
|
||||
break;
|
||||
case 15:
|
||||
GetNicknameSubstring(0, 0, 2, 1, 0, show);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->nameRaterShow.species));
|
||||
GetNicknameSubstring(2, 0, 3, 2, show->nameRaterShow.species, show);
|
||||
sTVShowState = 16;
|
||||
break;
|
||||
@ -4614,7 +4614,7 @@ static void DoTVShowTheNameRaterShow(void)
|
||||
break;
|
||||
case 17:
|
||||
GetNicknameSubstring(0, 0, 2, 1, 0, show);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->nameRaterShow.randomSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->nameRaterShow.randomSpecies));
|
||||
GetNicknameSubstring(2, 0, 3, 2, show->nameRaterShow.randomSpecies, show);
|
||||
sTVShowState = 18;
|
||||
break;
|
||||
@ -4641,7 +4641,7 @@ static void DoTVShowPokemonTodaySuccessfulCapture(void)
|
||||
{
|
||||
case 0:
|
||||
TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->pokemonToday.species));
|
||||
TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2);
|
||||
if (show->pokemonToday.ball == ITEM_MASTER_BALL)
|
||||
sTVShowState = 5;
|
||||
@ -4661,7 +4661,7 @@ static void DoTVShowPokemonTodaySuccessfulCapture(void)
|
||||
break;
|
||||
case 3:
|
||||
TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->pokemonToday.species));
|
||||
TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2);
|
||||
sTVShowState = 6;
|
||||
break;
|
||||
@ -4670,25 +4670,25 @@ static void DoTVShowPokemonTodaySuccessfulCapture(void)
|
||||
break;
|
||||
case 5:
|
||||
TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->pokemonToday.species));
|
||||
sTVShowState = 6;
|
||||
break;
|
||||
case 6:
|
||||
TVShowConvertInternationalString(gStringVar1, show->pokemonToday.playerName, show->pokemonToday.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->pokemonToday.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->pokemonToday.species));
|
||||
TVShowConvertInternationalString(gStringVar3, show->pokemonToday.nickname, show->pokemonToday.language2);
|
||||
sTVShowState += 1 + (Random() % 4);
|
||||
break;
|
||||
case 7:
|
||||
case 8:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->pokemonToday.species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->pokemonToday.species));
|
||||
TVShowConvertInternationalString(gStringVar2, show->pokemonToday.nickname, show->pokemonToday.language2);
|
||||
GetRandomDifferentSpeciesAndNameSeenByPlayer(2, show->pokemonToday.species);
|
||||
sTVShowState = 11;
|
||||
break;
|
||||
case 9:
|
||||
case 10:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->pokemonToday.species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->pokemonToday.species));
|
||||
TVShowConvertInternationalString(gStringVar2, show->pokemonToday.nickname, show->pokemonToday.language2);
|
||||
sTVShowState = 11;
|
||||
break;
|
||||
@ -4711,13 +4711,13 @@ static void DoTVShowPokemonTodayFailedCapture(void)
|
||||
{
|
||||
case 0:
|
||||
TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->pokemonTodayFailed.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->pokemonTodayFailed.species));
|
||||
sTVShowState = 1;
|
||||
break;
|
||||
case 1:
|
||||
TVShowConvertInternationalString(gStringVar1, show->pokemonTodayFailed.playerName, show->pokemonTodayFailed.language);
|
||||
GetMapName(gStringVar2, show->pokemonTodayFailed.location, 0);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->pokemonTodayFailed.species2]);
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->pokemonTodayFailed.species2));
|
||||
if (show->pokemonTodayFailed.outcome == 1)
|
||||
sTVShowState = 3;
|
||||
else
|
||||
@ -4757,7 +4757,7 @@ static void DoTVShowPokemonFanClubLetter(void)
|
||||
{
|
||||
case 0:
|
||||
TVShowConvertInternationalString(gStringVar1, show->fanclubLetter.playerName, show->fanclubLetter.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->fanclubLetter.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->fanclubLetter.species));
|
||||
sTVShowState = 50;
|
||||
break;
|
||||
case 1:
|
||||
@ -4845,7 +4845,7 @@ static void DoTVShowPokemonFanClubOpinions(void)
|
||||
{
|
||||
case 0:
|
||||
TVShowConvertInternationalString(gStringVar1, show->fanclubOpinions.playerName, show->fanclubOpinions.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->fanclubOpinions.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->fanclubOpinions.species));
|
||||
TVShowConvertInternationalString(gStringVar3, show->fanclubOpinions.nickname, show->fanclubOpinions.pokemonNameLanguage);
|
||||
sTVShowState = show->fanclubOpinions.questionAsked + 1;
|
||||
break;
|
||||
@ -4853,7 +4853,7 @@ static void DoTVShowPokemonFanClubOpinions(void)
|
||||
case 2:
|
||||
case 3:
|
||||
TVShowConvertInternationalString(gStringVar1, show->fanclubOpinions.playerName, show->fanclubOpinions.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->fanclubOpinions.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->fanclubOpinions.species));
|
||||
CopyEasyChatWord(gStringVar3, show->fanclubOpinions.words[0]);
|
||||
sTVShowState = 4;
|
||||
break;
|
||||
@ -4877,7 +4877,7 @@ static void DoTVShowPokemonNewsMassOutbreak(void)
|
||||
|
||||
show = &gSaveBlock1Ptr->tvShows[gSpecialVar_0x8004];
|
||||
GetMapName(gStringVar1, show->massOutbreak.locationMapNum, 0);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->massOutbreak.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->massOutbreak.species));
|
||||
TVShowDone();
|
||||
StartMassOutbreak();
|
||||
ShowFieldMessage(sTVMassOutbreakTextGroup[sTVShowState]);
|
||||
@ -4901,7 +4901,7 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
{
|
||||
case CONTESTLIVE_STATE_INTRO:
|
||||
BufferContestName(gStringVar1, show->contestLiveUpdates.category);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
TVShowConvertInternationalString(gStringVar3, show->contestLiveUpdates.winningTrainerName, show->contestLiveUpdates.winningTrainerLanguage);
|
||||
if (show->contestLiveUpdates.round1Placing == show->contestLiveUpdates.round2Placing)
|
||||
{
|
||||
@ -4920,7 +4920,7 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
}
|
||||
break;
|
||||
case CONTESTLIVE_STATE_WON_BOTH_ROUNDS:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
switch (show->contestLiveUpdates.winnerAppealFlag)
|
||||
{
|
||||
case CONTESTLIVE_FLAG_EXCITING_APPEAL:
|
||||
@ -4950,7 +4950,7 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
}
|
||||
break;
|
||||
case CONTESTLIVE_STATE_BETTER_ROUND2:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
switch (show->contestLiveUpdates.winnerAppealFlag)
|
||||
{
|
||||
case CONTESTLIVE_FLAG_EXCITING_APPEAL:
|
||||
@ -4980,7 +4980,7 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
}
|
||||
break;
|
||||
case CONTESTLIVE_STATE_EQUAL_ROUNDS:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
TVShowConvertInternationalString(gStringVar3, show->contestLiveUpdates.winningTrainerName, show->contestLiveUpdates.winningTrainerLanguage);
|
||||
switch (show->contestLiveUpdates.winnerAppealFlag)
|
||||
{
|
||||
@ -5029,7 +5029,7 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
StringCopy(gStringVar1, gText_Tough);
|
||||
break;
|
||||
}
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
switch (show->contestLiveUpdates.winnerAppealFlag)
|
||||
{
|
||||
case CONTESTLIVE_FLAG_EXCITING_APPEAL:
|
||||
@ -5059,19 +5059,19 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
}
|
||||
break;
|
||||
case CONTESTLIVE_STATE_GOT_NERVOUS:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_STARTLED_OTHER:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_USED_COMBO:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_EXCITING_APPEAL:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
switch (show->contestLiveUpdates.category)
|
||||
{
|
||||
case CONTEST_CATEGORY_COOL:
|
||||
@ -5092,27 +5092,27 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
}
|
||||
break;
|
||||
case CONTESTLIVE_STATE_COOL:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_BEAUTIFUL:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_CUTE:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_SMART:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_TOUGH:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_VERY_EXCITING_APPEAL:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
switch (show->contestLiveUpdates.category)
|
||||
{
|
||||
case CONTEST_CATEGORY_COOL:
|
||||
@ -5133,42 +5133,42 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
}
|
||||
break;
|
||||
case CONTESTLIVE_STATE_VERY_COOL:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_VERY_BEAUTIFUL:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_VERY_CUTE:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_VERY_SMART:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_VERY_TOUGH:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_TOOK_BREAK:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_GOT_STARTLED:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_USED_MOVE:
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
StringCopy(gStringVar3, gMoveNames[show->contestLiveUpdates.move]);
|
||||
sTVShowState = CONTESTLIVE_STATE_TALK_ABOUT_LOSER;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_TALK_ABOUT_LOSER:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
TVShowConvertInternationalString(gStringVar2, show->contestLiveUpdates.losingTrainerName, show->contestLiveUpdates.losingTrainerLanguage);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->contestLiveUpdates.losingSpecies]);
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->contestLiveUpdates.losingSpecies));
|
||||
switch (show->contestLiveUpdates.loserAppealFlag)
|
||||
{
|
||||
case CONTESTLIVE_FLAG_LOST:
|
||||
@ -5198,12 +5198,12 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
}
|
||||
break;
|
||||
case CONTESTLIVE_STATE_NO_APPEALS:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->contestLiveUpdates.losingSpecies]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->contestLiveUpdates.losingSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_OUTRO;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_LAST_BOTH:
|
||||
TVShowConvertInternationalString(gStringVar1, show->contestLiveUpdates.losingTrainerName, show->contestLiveUpdates.losingTrainerLanguage);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.losingSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.losingSpecies));
|
||||
sTVShowState = CONTESTLIVE_STATE_OUTRO;
|
||||
break;
|
||||
case CONTESTLIVE_STATE_NO_EXCITING_APPEALS:
|
||||
@ -5211,7 +5211,7 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
break;
|
||||
case CONTESTLIVE_STATE_LOST_SMALL_MARGIN:
|
||||
TVShowConvertInternationalString(gStringVar1, show->contestLiveUpdates.winningTrainerName, show->contestLiveUpdates.winningTrainerLanguage);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
TVShowConvertInternationalString(gStringVar3, show->contestLiveUpdates.losingTrainerName, show->contestLiveUpdates.losingTrainerLanguage);
|
||||
sTVShowState = CONTESTLIVE_STATE_OUTRO;
|
||||
break;
|
||||
@ -5224,7 +5224,7 @@ static void DoTVShowPokemonContestLiveUpdates(void)
|
||||
break;
|
||||
case CONTESTLIVE_STATE_OUTRO:
|
||||
TVShowConvertInternationalString(gStringVar1, show->contestLiveUpdates.winningTrainerName, show->contestLiveUpdates.winningTrainerLanguage);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->contestLiveUpdates.winningSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->contestLiveUpdates.winningSpecies));
|
||||
TVShowDone();
|
||||
break;
|
||||
}
|
||||
@ -5268,13 +5268,13 @@ static void DoTVShowPokemonBattleUpdate(void)
|
||||
break;
|
||||
case 2:
|
||||
TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesPlayer]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->battleUpdate.speciesPlayer));
|
||||
StringCopy(gStringVar3, gMoveNames[show->battleUpdate.move]);
|
||||
sTVShowState = 3;
|
||||
break;
|
||||
case 3:
|
||||
TVShowConvertInternationalString(gStringVar1, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesOpponent]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->battleUpdate.speciesOpponent));
|
||||
sTVShowState = 4;
|
||||
break;
|
||||
case 4:
|
||||
@ -5289,14 +5289,14 @@ static void DoTVShowPokemonBattleUpdate(void)
|
||||
break;
|
||||
case 6:
|
||||
TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->battleUpdate.speciesPlayer]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->battleUpdate.speciesPlayer));
|
||||
StringCopy(gStringVar3, gMoveNames[show->battleUpdate.move]);
|
||||
sTVShowState = 7;
|
||||
break;
|
||||
case 7:
|
||||
TVShowConvertInternationalString(gStringVar1, show->battleUpdate.playerName, show->battleUpdate.language);
|
||||
TVShowConvertInternationalString(gStringVar2, show->battleUpdate.linkOpponentName, show->battleUpdate.linkOpponentLanguage);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->battleUpdate.speciesOpponent]);
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->battleUpdate.speciesOpponent));
|
||||
TVShowDone();
|
||||
break;
|
||||
}
|
||||
@ -5430,9 +5430,9 @@ void DoTVShowInSearchOfTrainers(void)
|
||||
sTVShowState = 3;
|
||||
break;
|
||||
case 3:
|
||||
StringCopy(gStringVar1, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon1]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(gSaveBlock1Ptr->gabbyAndTyData.mon1));
|
||||
StringCopy(gStringVar2, gMoveNames[gSaveBlock1Ptr->gabbyAndTyData.lastMove]);
|
||||
StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon2]);
|
||||
StringCopy(gStringVar3, GetSpeciesName(gSaveBlock1Ptr->gabbyAndTyData.mon2));
|
||||
sTVShowState = 8;
|
||||
break;
|
||||
case 4:
|
||||
@ -5443,8 +5443,8 @@ void DoTVShowInSearchOfTrainers(void)
|
||||
break;
|
||||
case 8:
|
||||
CopyEasyChatWord(gStringVar1, gSaveBlock1Ptr->gabbyAndTyData.quote[0]);
|
||||
StringCopy(gStringVar2, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon1]);
|
||||
StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1Ptr->gabbyAndTyData.mon2]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(gSaveBlock1Ptr->gabbyAndTyData.mon1));
|
||||
StringCopy(gStringVar3, GetSpeciesName(gSaveBlock1Ptr->gabbyAndTyData.mon2));
|
||||
gSpecialVar_Result = TRUE;
|
||||
sTVShowState = 0;
|
||||
TakeGabbyAndTyOffTheAir();
|
||||
@ -5469,13 +5469,13 @@ static void DoTVShowPokemonAngler(void)
|
||||
{
|
||||
case 0:
|
||||
TVShowConvertInternationalString(gStringVar1, show->pokemonAngler.playerName, show->pokemonAngler.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->pokemonAngler.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->pokemonAngler.species));
|
||||
ConvertIntToDecimalString(2, show->pokemonAngler.nFails);
|
||||
TVShowDone();
|
||||
break;
|
||||
case 1:
|
||||
TVShowConvertInternationalString(gStringVar1, show->pokemonAngler.playerName, show->pokemonAngler.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->pokemonAngler.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->pokemonAngler.species));
|
||||
ConvertIntToDecimalString(2, show->pokemonAngler.nBites);
|
||||
TVShowDone();
|
||||
break;
|
||||
@ -5500,13 +5500,13 @@ static void DoTVShowTheWorldOfMasters(void)
|
||||
sTVShowState = 1;
|
||||
break;
|
||||
case 1:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->worldOfMasters.species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->worldOfMasters.species));
|
||||
sTVShowState = 2;
|
||||
break;
|
||||
case 2:
|
||||
TVShowConvertInternationalString(gStringVar1, show->worldOfMasters.playerName, show->worldOfMasters.language);
|
||||
GetMapName(gStringVar2, show->worldOfMasters.location, 0);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->worldOfMasters.caughtPoke]);
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->worldOfMasters.caughtPoke));
|
||||
TVShowDone();
|
||||
break;
|
||||
}
|
||||
@ -5814,14 +5814,14 @@ static void DoTVShowBreakingNewsTV(void)
|
||||
break;
|
||||
case 1:
|
||||
TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->breakingNews.lastOpponentSpecies));
|
||||
GetMapName(gStringVar3, show->breakingNews.location, 0);
|
||||
sTVShowState = 2;
|
||||
break;
|
||||
case 2:
|
||||
TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->breakingNews.lastOpponentSpecies));
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->breakingNews.poke1Species));
|
||||
sTVShowState = 3;
|
||||
break;
|
||||
case 3:
|
||||
@ -5836,14 +5836,14 @@ static void DoTVShowBreakingNewsTV(void)
|
||||
break;
|
||||
case 5:
|
||||
TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->breakingNews.lastOpponentSpecies));
|
||||
GetMapName(gStringVar3, show->breakingNews.location, 0);
|
||||
sTVShowState = 6;
|
||||
break;
|
||||
case 6:
|
||||
TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->breakingNews.lastOpponentSpecies));
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->breakingNews.poke1Species));
|
||||
switch (show->breakingNews.outcome)
|
||||
{
|
||||
case 1:
|
||||
@ -5862,13 +5862,13 @@ static void DoTVShowBreakingNewsTV(void)
|
||||
break;
|
||||
case 7:
|
||||
StringCopy(gStringVar1, gMoveNames[show->breakingNews.lastUsedMove]);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.poke1Species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->breakingNews.poke1Species));
|
||||
sTVShowState = 8;
|
||||
break;
|
||||
case 12:
|
||||
TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->breakingNews.poke1Species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->breakingNews.lastOpponentSpecies));
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->breakingNews.poke1Species));
|
||||
sTVShowState = 8;
|
||||
break;
|
||||
case 8:
|
||||
@ -5879,7 +5879,7 @@ static void DoTVShowBreakingNewsTV(void)
|
||||
case 9:
|
||||
case 10:
|
||||
TVShowConvertInternationalString(gStringVar1, show->breakingNews.playerName, show->breakingNews.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->breakingNews.lastOpponentSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->breakingNews.lastOpponentSpecies));
|
||||
GetMapName(gStringVar3, show->breakingNews.location, 0);
|
||||
sTVShowState = 11;
|
||||
break;
|
||||
@ -5960,7 +5960,7 @@ static void DoTVShowSecretBaseVisit(void)
|
||||
case 11:
|
||||
case 12:
|
||||
TVShowConvertInternationalString(gStringVar1, show->secretBaseVisit.playerName, show->secretBaseVisit.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->secretBaseVisit.species]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->secretBaseVisit.species));
|
||||
StringCopy(gStringVar3, gMoveNames[show->secretBaseVisit.move]);
|
||||
sTVShowState = 13;
|
||||
break;
|
||||
@ -6005,18 +6005,18 @@ static void DoTVShowThePokemonBattleSeminar(void)
|
||||
{
|
||||
case 0:
|
||||
TVShowConvertInternationalString(gStringVar1, show->battleSeminar.playerName, show->battleSeminar.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->battleSeminar.species]);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->battleSeminar.foeSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->battleSeminar.species));
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->battleSeminar.foeSpecies));
|
||||
sTVShowState = 1;
|
||||
break;
|
||||
case 1:
|
||||
TVShowConvertInternationalString(gStringVar1, show->battleSeminar.playerName, show->battleSeminar.language);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->battleSeminar.foeSpecies]);
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->battleSeminar.foeSpecies));
|
||||
StringCopy(gStringVar3, gMoveNames[show->battleSeminar.move]);
|
||||
sTVShowState = 2;
|
||||
break;
|
||||
case 2:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->battleSeminar.species]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->battleSeminar.species));
|
||||
switch (show->battleSeminar.nOtherMoves)
|
||||
{
|
||||
case 1:
|
||||
@ -6428,24 +6428,24 @@ static void DoTVShowPokemonNewsBattleFrontier(void)
|
||||
sTVShowState = 14;
|
||||
break;
|
||||
case 14:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->frontier.species3]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->frontier.species1));
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->frontier.species2));
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->frontier.species3));
|
||||
sTVShowState = 18;
|
||||
break;
|
||||
case 15:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->frontier.species1));
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->frontier.species2));
|
||||
sTVShowState = 18;
|
||||
break;
|
||||
case 16:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->frontier.species1]);
|
||||
StringCopy(gStringVar2, gSpeciesNames[show->frontier.species2]);
|
||||
StringCopy(gStringVar3, gSpeciesNames[show->frontier.species3]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->frontier.species1));
|
||||
StringCopy(gStringVar2, GetSpeciesName(show->frontier.species2));
|
||||
StringCopy(gStringVar3, GetSpeciesName(show->frontier.species3));
|
||||
sTVShowState = 17;
|
||||
break;
|
||||
case 17:
|
||||
StringCopy(gStringVar1, gSpeciesNames[show->frontier.species4]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(show->frontier.species4));
|
||||
sTVShowState = 18;
|
||||
break;
|
||||
case 18:
|
||||
|
@ -3050,7 +3050,7 @@ static void Task_RunUnionRoom(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
StringCopy(gStringVar1, gSpeciesNames[GetHostRfuGameData()->tradeSpecies]);
|
||||
StringCopy(gStringVar1, GetSpeciesName(GetHostRfuGameData()->tradeSpecies));
|
||||
ConvertIntToDecimalStringN(gStringVar2, GetHostRfuGameData()->tradeLevel, STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, sText_CancelRegistrationOfMon);
|
||||
}
|
||||
@ -4109,7 +4109,7 @@ static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct RfuGameData * data
|
||||
else
|
||||
{
|
||||
BlitMenuInfoIcon(windowId, type + 1, 68, y);
|
||||
PrintUnionRoomText(windowId, FONT_NORMAL, gSpeciesNames[species], 118, y, colorIdx);
|
||||
PrintUnionRoomText(windowId, FONT_NORMAL, GetSpeciesName(species), 118, y, colorIdx);
|
||||
ConvertIntToDecimalStringN(levelStr, level, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||
PrintUnionRoomText(windowId, FONT_NORMAL, levelStr, 198, y, colorIdx);
|
||||
}
|
||||
@ -4250,13 +4250,13 @@ static s32 GetChatLeaderActionRequestMessage(u8 *dst, u32 gender, u16 *activityD
|
||||
break;
|
||||
case ACTIVITY_TRADE | IN_UNION_ROOM:
|
||||
ConvertIntToDecimalStringN(uroom->activityRequestStrbufs[0], sUnionRoomTrade.playerLevel, STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringCopy(uroom->activityRequestStrbufs[1], gSpeciesNames[sUnionRoomTrade.playerSpecies]);
|
||||
StringCopy(uroom->activityRequestStrbufs[1], GetSpeciesName(sUnionRoomTrade.playerSpecies));
|
||||
for (i = 0; i < RFU_CHILD_MAX; i++)
|
||||
{
|
||||
if (gRfuLinkStatus->partner[i].serialNo == RFU_SERIAL_GAME)
|
||||
{
|
||||
ConvertIntToDecimalStringN(uroom->activityRequestStrbufs[2], activityData[2], STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringCopy(uroom->activityRequestStrbufs[3], gSpeciesNames[activityData[1]]);
|
||||
StringCopy(uroom->activityRequestStrbufs[3], GetSpeciesName(activityData[1]));
|
||||
species = activityData[1];
|
||||
break;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user