Merge remote-tracking branch 'pret/master' into RHH/pr/pretmerge_20220909

# Conflicts:
#	src/battle_controller_link_opponent.c
#	src/battle_controller_opponent.c
#	src/battle_controller_recorded_opponent.c
#	src/battle_controllers.c
#	src/data/pokemon_graphics/back_pic_coordinates.h
#	src/data/pokemon_graphics/front_pic_coordinates.h
#	src/pokemon.c
This commit is contained in:
Eduardo Quezada 2022-09-10 00:17:03 -04:00
commit 4b1aca19cb
33 changed files with 2926 additions and 12954 deletions

View File

@ -325,9 +325,6 @@
#define FORM_BATTLE_BEGIN 5
#define FORM_BATTLE_END 6
#define NUM_MALE_LINK_FACILITY_CLASSES 8
#define NUM_FEMALE_LINK_FACILITY_CLASSES 8
#define MON_PIC_WIDTH 64
#define MON_PIC_HEIGHT 64
#define MON_PIC_SIZE (MON_PIC_WIDTH * MON_PIC_HEIGHT / 2)

View File

@ -13,6 +13,10 @@
#define UNION_ROOM_MAX_LEVEL 30
// The number of possible trainer classes for a trainer of a given gender in the Union Room.
// This value is necessarily a power of 2 because of the way it's treated in GetUnionRoomTrainerPic / GetUnionRoomTrainerClass
#define NUM_UNION_ROOM_CLASSES (1 << 3) // 8
#define ACTIVITY_NONE 0
#define ACTIVITY_BATTLE_SINGLE 1
#define ACTIVITY_BATTLE_DOUBLE 2

View File

@ -10,24 +10,24 @@
* toolchains. If this is not done, the ClearSav functions will end up erasing
* the wrong memory leading to various glitches.
*/
struct SaveBlock2DMA {
struct SaveBlock2ASLR {
struct SaveBlock2 block;
u8 dma[SAVEBLOCK_MOVE_RANGE];
u8 aslr[SAVEBLOCK_MOVE_RANGE];
};
struct SaveBlock1DMA {
struct SaveBlock1ASLR {
struct SaveBlock1 block;
u8 dma[SAVEBLOCK_MOVE_RANGE];
u8 aslr[SAVEBLOCK_MOVE_RANGE];
};
struct PokemonStorageDMA {
struct PokemonStorageASLR {
struct PokemonStorage block;
u8 dma[SAVEBLOCK_MOVE_RANGE];
u8 aslr[SAVEBLOCK_MOVE_RANGE];
};
extern struct SaveBlock1DMA gSaveblock1;
extern struct SaveBlock2DMA gSaveblock2;
extern struct PokemonStorageDMA gPokemonStorage;
extern struct SaveBlock1ASLR gSaveblock1;
extern struct SaveBlock2ASLR gSaveblock2;
extern struct PokemonStorageASLR gPokemonStorage;
extern bool32 gFlashMemoryPresent;
extern struct SaveBlock1 *gSaveBlock1Ptr;

View File

@ -405,7 +405,7 @@ extern const u8 gPPUpGetMask[];
extern const u8 gPPUpClearMask[];
extern const u8 gPPUpAddValues[];
extern const u8 gStatStageRatios[MAX_STAT_STAGE + 1][2];
extern const u16 gLinkPlayerFacilityClasses[];
extern const u16 gUnionRoomFacilityClasses[];
extern const struct SpriteTemplate gBattlerSpriteTemplates[];
extern const s8 gNatureStatTable[][5];
extern const u16 *const gFormSpeciesIdTables[NUM_SPECIES];

View File

@ -2154,9 +2154,7 @@ extern const u8 gText_Switch2[];
extern const u8 gText_Item[];
extern const u8 gText_NotPkmnOtherTrainerWants[];
extern const u8 gText_ThatIsntAnEgg[];
extern const u8 gText_PkmnCantBeTradedNow[];
extern const u8 gText_OtherTrainersPkmnCantBeTraded[];
extern const u8 gText_EggCantBeTradedNow[];
extern const u8 gText_OtherTrainerCantAcceptPkmn[];
extern const u8 gText_CantTradeWithTrainer[];

View File

@ -54,7 +54,7 @@ struct TrainerCard
/*0x4C*/ bool8 shouldDrawStickers; // FRLG only
/*0x4D*/ u8 unused;
/*0x4E*/ u8 monIconTint; // FRLG only
/*0x4F*/ u8 facilityClass;
/*0x4F*/ u8 unionRoomClass;
/*0x50*/ u8 stickers[TRAINER_CARD_STICKER_TYPES]; // FRLG only
/*0x54*/ u16 monSpecies[PARTY_SIZE]; // FRLG only
// Note: Link players use linkHasAllFrontierSymbols, not the field below,

View File

@ -388,13 +388,9 @@ static void CompleteOnHealthbarDone(void)
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
if (hpValue != -1)
{
UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], HP_CURRENT, hpValue, gBattleMons[gActiveBattler].maxHP);
}
else
{
LinkOpponentBufferExecCompleted();
}
}
static void HideHealthboxAfterMonFaint(void)

View File

@ -409,9 +409,7 @@ static void CompleteOnHealthbarDone(void)
s16 hpValue = MoveBattleBar(gActiveBattler, gHealthboxSpriteIds[gActiveBattler], HEALTH_BAR, 0);
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
if (hpValue != -1)
{
UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], HP_CURRENT, hpValue, gBattleMons[gActiveBattler].maxHP);
}
else
OpponentBufferExecCompleted();
}

View File

@ -375,13 +375,9 @@ static void CompleteOnHealthbarDone(void)
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
if (hpValue != -1)
{
UpdateHpTextInHealthbox(gHealthboxSpriteIds[gActiveBattler], HP_CURRENT, hpValue, gBattleMons[gActiveBattler].maxHP);
}
else
{
RecordedOpponentBufferExecCompleted();
}
}
static void HideHealthboxAfterMonFaint(void)

View File

@ -670,18 +670,12 @@ static void PrepareBufferDataTransfer(u8 bufferId, u8 *data, u16 size)
switch (bufferId)
{
case BUFFER_A:
for (i = 0; i < size; i++)
{
for (i = 0; i < size; data++, i++)
gBattleResources->bufferA[gActiveBattler][i] = *data;
data++;
}
break;
case BUFFER_B:
for (i = 0; i < size; i++)
{
for (i = 0; i < size; data++, i++)
gBattleResources->bufferB[gActiveBattler][i] = *data;
data++;
}
break;
}
}
@ -818,8 +812,7 @@ static void Task_HandleSendLinkBuffersData(u8 taskId)
}
break;
case 5:
gTasks[taskId].data[13]--;
if (gTasks[taskId].data[13] == 0)
if (--gTasks[taskId].data[13] == 0)
{
gTasks[taskId].data[13] = 1;
gTasks[taskId].data[11] = 3;
@ -834,7 +827,7 @@ void TryReceiveLinkBattleData(void)
s32 j;
u8 *recvBuffer;
if (gReceivedRemoteLinkPlayers != 0 && (gBattleTypeFlags & BATTLE_TYPE_LINK_IN_BATTLE))
if (gReceivedRemoteLinkPlayers && (gBattleTypeFlags & BATTLE_TYPE_LINK_IN_BATTLE))
{
DestroyTask_RfuIdle();
for (i = 0; i < GetLinkPlayerCount(); i++)

View File

@ -868,7 +868,7 @@ static void CB2_HandleStartBattle(void)
case 1:
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
{
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
if (IsLinkTaskFinished())
{
@ -1075,7 +1075,7 @@ static void CB2_HandleStartMultiPartnerBattle(void)
case 1:
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
{
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
u8 language;
@ -1342,7 +1342,7 @@ static void CB2_PreInitMultiBattle(void)
switch (gBattleCommunication[MULTIUSE_STATE])
{
case 0:
if (gReceivedRemoteLinkPlayers != 0 && IsLinkTaskFinished())
if (gReceivedRemoteLinkPlayers && IsLinkTaskFinished())
{
sMultiPartnerPartyBuffer = Alloc(sizeof(gMultiPartnerParty));
SetMultiPartnerMenuParty(0);
@ -1478,7 +1478,7 @@ static void CB2_HandleStartMultiBattle(void)
case 1:
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
{
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
if (IsLinkTaskFinished())
{
@ -5306,7 +5306,7 @@ static void ReturnFromBattleToOverworld(void)
PartySpreadPokerus(gPlayerParty);
}
if (gBattleTypeFlags & BATTLE_TYPE_LINK && gReceivedRemoteLinkPlayers != 0)
if (gBattleTypeFlags & BATTLE_TYPE_LINK && gReceivedRemoteLinkPlayers)
return;
gSpecialVar_Result = gBattleOutcome;

View File

@ -2679,7 +2679,7 @@ static void LoadLinkMultiOpponentsData(void)
gTrainerBattleOpponent_B = gSaveBlock2Ptr->frontier.trainerIds[battleNum * 2 + 1];
SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0);
SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_B, 1);
if (gReceivedRemoteLinkPlayers != 0 && gWirelessCommType == 0)
if (gReceivedRemoteLinkPlayers && gWirelessCommType == 0)
gSpecialVar_Result = 4;
else
gSpecialVar_Result = 6;

View File

@ -3428,7 +3428,7 @@ static u32 Cmd_CloseLink(struct BerryCrushGame *game, u8 *args)
SetCloseLinkCallback();
break;
case 2:
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
return 0;
game->nextCmd = CMD_QUIT;
RunOrScheduleCommand(CMD_HIDE_GAME, SCHEDULE_CMD, NULL);

View File

@ -1,67 +1,67 @@
// Also used by early Pkmn Breeder, Collector, and Beauty trainers
#define FRONTIER_MONS_YOUNGSTER_LASS_1 \
FRONTIER_MON_SUNKERN, \
FRONTIER_MON_AZURILL, \
FRONTIER_MON_CATERPIE, \
FRONTIER_MON_WEEDLE, \
FRONTIER_MON_WURMPLE, \
FRONTIER_MON_RALTS, \
FRONTIER_MON_MAGIKARP, \
FRONTIER_MON_FEEBAS, \
FRONTIER_MON_PICHU, \
FRONTIER_MON_IGGLYBUFF, \
FRONTIER_MON_WOOPER, \
FRONTIER_MON_TYROGUE, \
FRONTIER_MON_SENTRET, \
FRONTIER_MON_CLEFFA, \
FRONTIER_MON_SEEDOT, \
FRONTIER_MON_LOTAD, \
FRONTIER_MON_POOCHYENA, \
FRONTIER_MON_SHEDINJA, \
FRONTIER_MON_MAKUHITA, \
FRONTIER_MON_WHISMUR, \
FRONTIER_MON_ZIGZAGOON, \
FRONTIER_MON_ZUBAT, \
FRONTIER_MON_TOGEPI, \
FRONTIER_MON_SPINARAK, \
FRONTIER_MON_MARILL, \
FRONTIER_MON_HOPPIP, \
FRONTIER_MON_SLUGMA, \
FRONTIER_MON_SWINUB, \
FRONTIER_MON_SMEARGLE, \
FRONTIER_MON_PIDGEY, \
FRONTIER_MON_RATTATA, \
FRONTIER_MON_WYNAUT, \
FRONTIER_MON_SKITTY, \
FRONTIER_MON_SPEAROW, \
FRONTIER_MON_HOOTHOOT, \
FRONTIER_MON_DIGLETT, \
FRONTIER_MON_LEDYBA, \
FRONTIER_MON_NINCADA, \
FRONTIER_MON_SURSKIT, \
FRONTIER_MON_JIGGLYPUFF, \
FRONTIER_MON_TAILLOW, \
FRONTIER_MON_WINGULL, \
FRONTIER_MON_NIDORAN_M, \
FRONTIER_MON_NIDORAN_F, \
FRONTIER_MON_KIRLIA, \
FRONTIER_MON_MAREEP, \
FRONTIER_MON_MEDITITE, \
FRONTIER_MON_SLAKOTH, \
FRONTIER_MON_PARAS, \
FRONTIER_MON_EKANS, \
FRONTIER_MON_DITTO, \
FRONTIER_MON_BARBOACH, \
FRONTIER_MON_MEOWTH, \
FRONTIER_MON_PINECO, \
FRONTIER_MON_TRAPINCH, \
FRONTIER_MON_SPHEAL, \
FRONTIER_MON_HORSEA, \
FRONTIER_MON_SHROOMISH, \
FRONTIER_MON_SHUPPET, \
FRONTIER_MON_DUSKULL, \
FRONTIER_MON_ELECTRIKE, \
FRONTIER_MON_VULPIX, \
FRONTIER_MON_SUNKERN, \
FRONTIER_MON_AZURILL, \
FRONTIER_MON_CATERPIE, \
FRONTIER_MON_WEEDLE, \
FRONTIER_MON_WURMPLE, \
FRONTIER_MON_RALTS, \
FRONTIER_MON_MAGIKARP, \
FRONTIER_MON_FEEBAS, \
FRONTIER_MON_PICHU, \
FRONTIER_MON_IGGLYBUFF, \
FRONTIER_MON_WOOPER, \
FRONTIER_MON_TYROGUE, \
FRONTIER_MON_SENTRET, \
FRONTIER_MON_CLEFFA, \
FRONTIER_MON_SEEDOT, \
FRONTIER_MON_LOTAD, \
FRONTIER_MON_POOCHYENA, \
FRONTIER_MON_SHEDINJA, \
FRONTIER_MON_MAKUHITA, \
FRONTIER_MON_WHISMUR, \
FRONTIER_MON_ZIGZAGOON, \
FRONTIER_MON_ZUBAT, \
FRONTIER_MON_TOGEPI, \
FRONTIER_MON_SPINARAK, \
FRONTIER_MON_MARILL, \
FRONTIER_MON_HOPPIP, \
FRONTIER_MON_SLUGMA, \
FRONTIER_MON_SWINUB, \
FRONTIER_MON_SMEARGLE, \
FRONTIER_MON_PIDGEY, \
FRONTIER_MON_RATTATA, \
FRONTIER_MON_WYNAUT, \
FRONTIER_MON_SKITTY, \
FRONTIER_MON_SPEAROW, \
FRONTIER_MON_HOOTHOOT, \
FRONTIER_MON_DIGLETT, \
FRONTIER_MON_LEDYBA, \
FRONTIER_MON_NINCADA, \
FRONTIER_MON_SURSKIT, \
FRONTIER_MON_JIGGLYPUFF, \
FRONTIER_MON_TAILLOW, \
FRONTIER_MON_WINGULL, \
FRONTIER_MON_NIDORAN_M, \
FRONTIER_MON_NIDORAN_F, \
FRONTIER_MON_KIRLIA, \
FRONTIER_MON_MAREEP, \
FRONTIER_MON_MEDITITE, \
FRONTIER_MON_SLAKOTH, \
FRONTIER_MON_PARAS, \
FRONTIER_MON_EKANS, \
FRONTIER_MON_DITTO, \
FRONTIER_MON_BARBOACH, \
FRONTIER_MON_MEOWTH, \
FRONTIER_MON_PINECO, \
FRONTIER_MON_TRAPINCH, \
FRONTIER_MON_SPHEAL, \
FRONTIER_MON_HORSEA, \
FRONTIER_MON_SHROOMISH, \
FRONTIER_MON_SHUPPET, \
FRONTIER_MON_DUSKULL, \
FRONTIER_MON_ELECTRIKE, \
FRONTIER_MON_VULPIX, \
-1
// Also used by early Pkmn Breeder, Collector, and Beauty trainers
@ -113,43 +113,43 @@
-1
#define FRONTIER_MONS_RICH_BOY_LADY_1 \
FRONTIER_MON_RALTS, \
FRONTIER_MON_POOCHYENA, \
FRONTIER_MON_SHEDINJA, \
FRONTIER_MON_ZUBAT, \
FRONTIER_MON_SPINARAK, \
FRONTIER_MON_WYNAUT, \
FRONTIER_MON_NIDORAN_M, \
FRONTIER_MON_NIDORAN_F, \
FRONTIER_MON_KIRLIA, \
FRONTIER_MON_MEDITITE, \
FRONTIER_MON_EKANS, \
FRONTIER_MON_SHUPPET, \
FRONTIER_MON_DUSKULL, \
FRONTIER_MON_BELLSPROUT, \
FRONTIER_MON_BALTOY, \
FRONTIER_MON_BELDUM, \
FRONTIER_MON_GULPIN, \
FRONTIER_MON_VENONAT, \
FRONTIER_MON_SMOOCHUM, \
FRONTIER_MON_ABRA, \
FRONTIER_MON_GASTLY, \
FRONTIER_MON_SLOWPOKE, \
FRONTIER_MON_BULBASAUR, \
FRONTIER_MON_ODDISH, \
FRONTIER_MON_NATU, \
FRONTIER_MON_GRIMER, \
FRONTIER_MON_EXEGGCUTE, \
FRONTIER_MON_DROWZEE, \
FRONTIER_MON_HOUNDOUR, \
FRONTIER_MON_SPOINK, \
FRONTIER_MON_TENTACOOL, \
FRONTIER_MON_KOFFING, \
FRONTIER_MON_NIDORINA, \
FRONTIER_MON_NIDORINO, \
FRONTIER_MON_BEEDRILL, \
FRONTIER_MON_DUSTOX, \
FRONTIER_MON_ARIADOS, \
FRONTIER_MON_RALTS, \
FRONTIER_MON_POOCHYENA, \
FRONTIER_MON_SHEDINJA, \
FRONTIER_MON_ZUBAT, \
FRONTIER_MON_SPINARAK, \
FRONTIER_MON_WYNAUT, \
FRONTIER_MON_NIDORAN_M, \
FRONTIER_MON_NIDORAN_F, \
FRONTIER_MON_KIRLIA, \
FRONTIER_MON_MEDITITE, \
FRONTIER_MON_EKANS, \
FRONTIER_MON_SHUPPET, \
FRONTIER_MON_DUSKULL, \
FRONTIER_MON_BELLSPROUT, \
FRONTIER_MON_BALTOY, \
FRONTIER_MON_BELDUM, \
FRONTIER_MON_GULPIN, \
FRONTIER_MON_VENONAT, \
FRONTIER_MON_SMOOCHUM, \
FRONTIER_MON_ABRA, \
FRONTIER_MON_GASTLY, \
FRONTIER_MON_SLOWPOKE, \
FRONTIER_MON_BULBASAUR, \
FRONTIER_MON_ODDISH, \
FRONTIER_MON_NATU, \
FRONTIER_MON_GRIMER, \
FRONTIER_MON_EXEGGCUTE, \
FRONTIER_MON_DROWZEE, \
FRONTIER_MON_HOUNDOUR, \
FRONTIER_MON_SPOINK, \
FRONTIER_MON_TENTACOOL, \
FRONTIER_MON_KOFFING, \
FRONTIER_MON_NIDORINA, \
FRONTIER_MON_NIDORINO, \
FRONTIER_MON_BEEDRILL, \
FRONTIER_MON_DUSTOX, \
FRONTIER_MON_ARIADOS, \
-1
// Also used by early Pkmn Breeder, Collector, and Beauty trainers

View File

@ -1,40 +1,40 @@
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall;
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium;
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge;
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge;
const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass;
const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple;
const struct SpriteTemplate gFieldEffectObjectTemplate_Ash;
const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob;
const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow;
const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust;
const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass;
const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints;
const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash;
const struct SpriteTemplate gFieldEffectObjectTemplate_Splash;
const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash;
const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass;
const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass;
const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass;
const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2;
const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand;
const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing;
const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion;
const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle;
const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints;
const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise;
const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise;
const struct SpriteTemplate gFieldEffectObjectTemplate_Bird;
const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks;
const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder;
const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile;
const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass;
const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater;
const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff;
const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch;
const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles;
const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle;
const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_Ash;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_Splash;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_Bird;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle;
extern const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza;
const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[] = {
[FLDEFFOBJ_SHADOW_S] = &gFieldEffectObjectTemplate_ShadowSmall,

View File

@ -1,249 +1,249 @@
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1;
const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanNormal;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanMachBike;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanSurfing;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFieldMove;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_QuintyPlump;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NinjaBoy;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Twin;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy1;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl1;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy2;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl2;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy3;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Girl3;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RichBoy;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man1;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ExpertF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man2;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PokefanM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman4;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cook;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkReceptionist;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man3;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman5;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PsychicM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SchoolKidM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maniac;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HexManiac;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RayquazaStill;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BlackBelt;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist1;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisherman;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RunningTriathleteF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyclingTriathleteF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTree;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeEarlyStages;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BerryTreeLateStages;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanAcroBike;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfBirch;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man4;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man5;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ReporterF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Anabel;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tucker;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Greta;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spenser;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Noland;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lucy;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedNatuDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMagnemiteDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedSquirtleDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWooperDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPikachuDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedPorygon2Doll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CuttableTree;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MartEmployee;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RooftopSaleWoman;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Teala;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BreakableRock;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PushableBoulder;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrBrineysBoat;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayNormal;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayMachBike;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayAcroBike;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MaySurfing;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFieldMove;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Truck;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothCarryingBox;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_VigorothFacingAway;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirchsBag;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_EnemyZigzagoon;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Artist;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanNormal;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanMachBike;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanAcroBike;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanSurfing;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalBrendanFieldMove;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayNormal;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayMachBike;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayAcroBike;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMaySurfing;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RivalMayFieldMove;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cameraman;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanUnderwater;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayUnderwater;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MovingBox;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableCar;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist2;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DevonEmployee;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AquaMemberF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberM;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MagmaMemberF;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sidney;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Phoebe;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Glacia;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Drake;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Roxanne;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brawly;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wattson;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Flannery;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Norman;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Winona;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Liza;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Tate;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wallace;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Steven;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wally;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireLittleBoy;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanFishing;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayFishing;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HotSpringsOldWoman;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSTidal;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SubmarineShadow;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PichuDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikachuDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MarillDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TogepiDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CyndaquilDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ChikoritaDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TotodileDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_JigglypuffDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MeowthDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ClefairyDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DittoDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SmoochumDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TreeckoDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TorchicDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MudkipDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DuskullDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WynautDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaltoyDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_AzurillDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SkittyDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwabluDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GulpinDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LotadDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SeedotDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_PikaCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RoundCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KissCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ZigzagCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SpinCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DiamondCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BallCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GrassCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FireCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WaterCushion;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigSnorlaxDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRhydonDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigLaprasDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigVenusaurDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigCharizardDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigBlastoiseDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigWailmerDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegirockDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegiceDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BigRegisteelDoll;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latias;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Latios;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GameboyKid;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ContestJudge;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanWatering;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayWatering;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BrendanDecorating;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MayDecorating;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Archie;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Maxie;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreFront;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonFront;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regirock;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Regice;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Registeel;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Skitty;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kecleon;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreAsleep;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonAsleep;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rayquaza;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zigzagoon;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azumarill;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wingull;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KecleonBridgeShadow;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMSwimming;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Azurill;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkBrendan;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LinkMay;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Juan;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scott;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poochyena;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_KyogreSide;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GroudonSide;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MysteryEventDeliveryman;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Statue;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kirlia;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Dusclops;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomAttendant;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sudowoodo;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Red;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Leaf;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Deoxys;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BirthIslandStone;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brandon;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireBrendan;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RubySapphireMay;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bard;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hipster;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Trader;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Storyteller;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giddy;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan1;
extern const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMauvilleOldMan2;
const struct ObjectEventGraphicsInfo *const gObjectEventGraphicsInfoPointers[NUM_OBJ_EVENT_GFX] = {

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -665,7 +665,7 @@ void StartDodrioBerryPicking(u16 partyId, void (*exitCallback)(void))
{
sExitingGame = FALSE;
if (gReceivedRemoteLinkPlayers != 0 && (sGame = AllocZeroed(sizeof(*sGame))))
if (gReceivedRemoteLinkPlayers && (sGame = AllocZeroed(sizeof(*sGame))))
{
ResetTasksAndSprites();
InitDodrioGame(sGame);
@ -775,7 +775,7 @@ static void Task_StartDodrioGame(u8 taskId)
case 3:
if (IsLinkTaskFinished())
{
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
LoadWirelessStatusIndicatorSpriteGfx();
CreateWirelessStatusIndicatorSprite(0, 0);

View File

@ -1115,7 +1115,7 @@ static void RfuHandleReceiveCommand(u8 unused)
{
gRfu.recvBlock[i].receiving = RECV_STATE_FINISHED;
Rfu_SetBlockReceivedFlag(i);
if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && gReceivedRemoteLinkPlayers != 0 && gRfu.parentChild == MODE_CHILD)
if (GetHostRfuGameData()->activity == (ACTIVITY_CHAT | IN_UNION_ROOM) && gReceivedRemoteLinkPlayers && gRfu.parentChild == MODE_CHILD)
ValidateAndReceivePokemonSioInfo(gBlockRecvBuffer);
}
}

View File

@ -29,9 +29,9 @@ struct LoadedSaveData
};
// EWRAM DATA
EWRAM_DATA struct SaveBlock2DMA gSaveblock2 = {0};
EWRAM_DATA struct SaveBlock1DMA gSaveblock1 = {0};
EWRAM_DATA struct PokemonStorageDMA gPokemonStorage = {0};
EWRAM_DATA struct SaveBlock2ASLR gSaveblock2 = {0};
EWRAM_DATA struct SaveBlock1ASLR gSaveblock1 = {0};
EWRAM_DATA struct PokemonStorageASLR gPokemonStorage = {0};
EWRAM_DATA struct LoadedSaveData gLoadedSaveData = {0};
EWRAM_DATA u32 gLastEncryptionKey = 0;
@ -58,12 +58,12 @@ void CheckForFlashMemory(void)
void ClearSav2(void)
{
CpuFill16(0, &gSaveblock2, sizeof(struct SaveBlock2DMA));
CpuFill16(0, &gSaveblock2, sizeof(struct SaveBlock2ASLR));
}
void ClearSav1(void)
{
CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1DMA));
CpuFill16(0, &gSaveblock1, sizeof(struct SaveBlock1ASLR));
}
// Offset is the sum of the trainer id bytes

View File

@ -315,7 +315,7 @@ static void Task_StaticCountdown_Run(u8 taskId)
u16 packet[RFU_PACKET_SIZE];
s16 *data = gTasks[taskId].data;
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
// Read link timer
if (gRecvCmds[0][1] == LINKCMD_COUNTDOWN)

View File

@ -201,7 +201,7 @@ static void CB2_MysteryEventMenu(void)
case 6:
if (IsLinkConnectionEstablished())
{
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
if (GetLinkPlayerDataExchangeStatusTimed(2, 2) == EXCHANGE_DIFF_SELECTIONS)
{

View File

@ -1232,7 +1232,7 @@ static void Task_MysteryGift(u8 taskId)
data->state = MG_STATE_CLIENT_LINK_WAIT;
break;
case MG_STATE_CLIENT_LINK_WAIT:
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
ClearScreenInBg0(TRUE);
data->state = MG_STATE_CLIENT_COMMUNICATING;
@ -1528,7 +1528,7 @@ static void Task_MysteryGift(u8 taskId)
}
break;
case MG_STATE_SERVER_LINK_WAIT:
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
ClearScreenInBg0(TRUE);
data->state = MG_STATE_SERVER_LINK_START;

View File

@ -1167,6 +1167,8 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite)
}
}
#undef HIBYTE
static void SpriteCB_ReleaseMon2FromBall(struct Sprite *sprite)
{
if (sprite->data[0]++ > 24)

View File

@ -39,6 +39,7 @@
#include "trainer_hill.h"
#include "util.h"
#include "constants/abilities.h"
#include "constants/battle_config.h"
#include "constants/battle_frontier.h"
#include "constants/battle_move_effects.h"
#include "constants/battle_script_commands.h"
@ -49,8 +50,8 @@
#include "constants/moves.h"
#include "constants/songs.h"
#include "constants/trainers.h"
#include "constants/union_room.h"
#include "constants/weather.h"
#include "constants/battle_config.h"
struct SpeciesItem
{
@ -2978,7 +2979,9 @@ const u8 gStatStageRatios[MAX_STAT_STAGE + 1][2] =
{40, 10}, // +6, MAX_STAT_STAGE
};
const u16 gLinkPlayerFacilityClasses[NUM_MALE_LINK_FACILITY_CLASSES + NUM_FEMALE_LINK_FACILITY_CLASSES] =
// The classes used by other players in the Union Room.
// These should correspond with the overworld graphics in sUnionRoomObjGfxIds
const u16 gUnionRoomFacilityClasses[NUM_UNION_ROOM_CLASSES * GENDER_COUNT] =
{
// Male classes
FACILITY_CLASS_COOLTRAINER_M,
@ -2989,7 +2992,7 @@ const u16 gLinkPlayerFacilityClasses[NUM_MALE_LINK_FACILITY_CLASSES + NUM_FEMALE
FACILITY_CLASS_BUG_CATCHER,
FACILITY_CLASS_PKMN_BREEDER_M,
FACILITY_CLASS_GUITARIST,
// Female Classes
// Female classes
FACILITY_CLASS_COOLTRAINER_F,
FACILITY_CLASS_HEX_MANIAC,
FACILITY_CLASS_PICNICKER,
@ -3827,9 +3830,9 @@ u16 GetUnionRoomTrainerPic(void)
else
linkId = GetMultiplayerId() ^ 1;
arrId = gLinkPlayers[linkId].trainerId & 7;
arrId |= gLinkPlayers[linkId].gender << 3;
return FacilityClassToPicIndex(gLinkPlayerFacilityClasses[arrId]);
arrId = gLinkPlayers[linkId].trainerId % NUM_UNION_ROOM_CLASSES;
arrId |= gLinkPlayers[linkId].gender * NUM_UNION_ROOM_CLASSES;
return FacilityClassToPicIndex(gUnionRoomFacilityClasses[arrId]);
}
u16 GetUnionRoomTrainerClass(void)
@ -3842,9 +3845,9 @@ u16 GetUnionRoomTrainerClass(void)
else
linkId = GetMultiplayerId() ^ 1;
arrId = gLinkPlayers[linkId].trainerId & 7;
arrId |= gLinkPlayers[linkId].gender << 3;
return gFacilityClassToTrainerClass[gLinkPlayerFacilityClasses[arrId]];
arrId = gLinkPlayers[linkId].trainerId % NUM_UNION_ROOM_CLASSES;
arrId |= gLinkPlayers[linkId].gender * NUM_UNION_ROOM_CLASSES;
return gFacilityClassToTrainerClass[gUnionRoomFacilityClasses[arrId]];
}
void CreateEventLegalEnemyMon(void)

View File

@ -444,7 +444,7 @@ static void Task_MixingRecordsRecv(u8 taskId)
}
break;
case 1: // wait for handshake
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
ConvertIntToDecimalStringN(gStringVar1, GetMultiplayerId_(), STR_CONV_MODE_LEADING_ZEROS, 2);
task->tState = 5;

View File

@ -149,7 +149,7 @@ static void CB2_ReshowBattleScreenAfterMenu(void)
ActionSelectionCreateCursorAt(gActionSelectionCursor[gBattlerInMenuId], 0);
if (gWirelessCommType != 0 && gReceivedRemoteLinkPlayers != 0)
if (gWirelessCommType != 0 && gReceivedRemoteLinkPlayers)
{
LoadWirelessStatusIndicatorSpriteGfx();
CreateWirelessStatusIndicatorSprite(0, 0);

View File

@ -328,7 +328,7 @@ bool16 ScriptMenu_CreatePCMultichoice(void)
static void CreatePCMultichoice(void)
{
u8 y = 8;
u8 x = 8;
u32 pixelWidth = 0;
u8 width;
u8 numChoices;
@ -353,25 +353,25 @@ static void CreatePCMultichoice(void)
numChoices = 4;
windowId = CreateWindowFromRect(0, 0, width, 8);
SetStandardWindowBorderStyle(windowId, FALSE);
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, y, 33, TEXT_SKIP_DRAW, NULL);
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 49, TEXT_SKIP_DRAW, NULL);
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_HallOfFame, x, 33, TEXT_SKIP_DRAW, NULL);
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, x, 49, TEXT_SKIP_DRAW, NULL);
}
else
{
numChoices = 3;
windowId = CreateWindowFromRect(0, 0, width, 6);
SetStandardWindowBorderStyle(windowId, FALSE);
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, y, 33, TEXT_SKIP_DRAW, NULL);
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LogOff, x, 33, TEXT_SKIP_DRAW, NULL);
}
// Change PC name if player has met Lanette
if (FlagGet(FLAG_SYS_PC_LANETTE))
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, y, 1, TEXT_SKIP_DRAW, NULL);
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_LanettesPC, x, 1, TEXT_SKIP_DRAW, NULL);
else
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, y, 1, TEXT_SKIP_DRAW, NULL);
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_SomeonesPC, x, 1, TEXT_SKIP_DRAW, NULL);
StringExpandPlaceholders(gStringVar4, gText_PlayersPC);
PrintPlayerNameOnWindow(windowId, gStringVar4, y, 17);
PrintPlayerNameOnWindow(windowId, gStringVar4, x, 17);
InitMenuInUpperLeftCornerNormal(windowId, numChoices, 0);
CopyWindowToVram(windowId, COPYWIN_FULL);
InitMultichoiceCheckWrap(FALSE, numChoices, windowId, MULTI_PC);

View File

@ -2387,7 +2387,7 @@ s32 GetGameProgressForLinkTrade(void)
s32 isGameFrLg;
u16 version;
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
isGameFrLg = 0;
version = (gLinkPlayers[GetMultiplayerId() ^ 1].version & 0xFF);

View File

@ -31,6 +31,7 @@
#include "constants/battle_frontier.h"
#include "constants/rgb.h"
#include "constants/trainers.h"
#include "constants/union_room.h"
struct TrainerCardData
{
@ -761,9 +762,9 @@ static void TrainerCard_GenerateCardForPlayer(struct TrainerCard *trainerCard)
trainerCard->stars++;
if (trainerCard->gender == FEMALE)
trainerCard->facilityClass = gLinkPlayerFacilityClasses[(trainerCard->trainerId % NUM_FEMALE_LINK_FACILITY_CLASSES) + NUM_MALE_LINK_FACILITY_CLASSES];
trainerCard->unionRoomClass = gUnionRoomFacilityClasses[(trainerCard->trainerId % NUM_UNION_ROOM_CLASSES) + NUM_UNION_ROOM_CLASSES];
else
trainerCard->facilityClass = gLinkPlayerFacilityClasses[trainerCard->trainerId % NUM_MALE_LINK_FACILITY_CLASSES];
trainerCard->unionRoomClass = gUnionRoomFacilityClasses[trainerCard->trainerId % NUM_UNION_ROOM_CLASSES];
}
void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard)
@ -777,9 +778,9 @@ void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard)
trainerCard->stars++;
if (trainerCard->gender == FEMALE)
trainerCard->facilityClass = gLinkPlayerFacilityClasses[(trainerCard->trainerId % NUM_FEMALE_LINK_FACILITY_CLASSES) + NUM_MALE_LINK_FACILITY_CLASSES];
trainerCard->unionRoomClass = gUnionRoomFacilityClasses[(trainerCard->trainerId % NUM_UNION_ROOM_CLASSES) + NUM_UNION_ROOM_CLASSES];
else
trainerCard->facilityClass = gLinkPlayerFacilityClasses[trainerCard->trainerId % NUM_MALE_LINK_FACILITY_CLASSES];
trainerCard->unionRoomClass = gUnionRoomFacilityClasses[trainerCard->trainerId % NUM_UNION_ROOM_CLASSES];
}
void CopyTrainerCardData(struct TrainerCard *dst, struct TrainerCard *src, u8 gameVersion)
@ -1876,7 +1877,7 @@ static void CreateTrainerCardTrainerPic(void)
{
if (InUnionRoom() == TRUE && gReceivedRemoteLinkPlayers == 1)
{
CreateTrainerCardTrainerPicSprite(FacilityClassToPicIndex(sData->trainerCard.facilityClass),
CreateTrainerCardTrainerPicSprite(FacilityClassToPicIndex(sData->trainerCard.unionRoomClass),
TRUE,
sTrainerPicOffset[sData->isHoenn][sData->trainerCard.gender][0],
sTrainerPicOffset[sData->isHoenn][sData->trainerCard.gender][1],

View File

@ -702,7 +702,7 @@ static void Task_TryBecomeLinkLeader(u8 taskId)
}
else
{
if (gReceivedRemoteLinkPlayers != 0)
if (gReceivedRemoteLinkPlayers)
{
if (IsActivityWithVariableGroupSize(gPlayerCurrActivity))
GetOtherPlayersInfoFlags();
@ -2047,7 +2047,7 @@ static void Task_SendMysteryGift(u8 taskId)
{
data->state = 13;
}
else if (gReceivedRemoteLinkPlayers != 0)
else if (gReceivedRemoteLinkPlayers)
{
UpdateGameData_GroupLockedIn(TRUE);
data->state++;

View File

@ -24,7 +24,8 @@ static u32 IsUnionRoomPlayerInvisible(u32, u32);
static void SetUnionRoomObjectFacingDirection(s32, s32, u8);
// + 2 is just to match, those elements are empty and never read
static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][MAX_UNION_ROOM_LEADERS + 2] = {
// Graphics ids should correspond with the classes in gUnionRoomFacilityClasses
static const u8 sUnionRoomObjGfxIds[GENDER_COUNT][NUM_UNION_ROOM_CLASSES + 2] = {
[MALE] = {
OBJ_EVENT_GFX_MAN_3,
OBJ_EVENT_GFX_BLACK_BELT,
@ -132,7 +133,7 @@ static bool32 IsPlayerStandingStill(void)
// Gender and trainer id are used to determine which sprite a player appears as
static u8 GetUnionRoomPlayerGraphicsId(u32 gender, u32 id)
{
return sUnionRoomObjGfxIds[gender][id % MAX_UNION_ROOM_LEADERS];
return sUnionRoomObjGfxIds[gender][id % NUM_UNION_ROOM_CLASSES];
}
static void GetUnionRoomPlayerCoords(u32 leaderId, u32 memberId, s32 * x, s32 * y)