Merge branch 'master' of github.com:pret/pokefirered into trade

This commit is contained in:
PikalaxALT
2019-10-27 20:52:55 -04:00
1365 changed files with 99717 additions and 70397 deletions
+22 -236
View File
@@ -18,14 +18,6 @@
0x2 bit is responsible for the id of sent out pokemon. 0 means it's the first sent out pokemon, 1 it's the second one. (Triple battle didn't exist at the time yet.)
*/
#define IDENTITY_PLAYER_MON1 0
#define IDENTITY_OPPONENT_MON1 1
#define IDENTITY_PLAYER_MON2 2
#define IDENTITY_OPPONENT_MON2 3
#define SIDE_PLAYER 0x0
#define SIDE_OPPONENT 0x1
#define GET_BATTLER_POSITION(battler)((gBattlerPositions[battler]))
#define GET_BATTLER_SIDE(battler)((GetBattlerPosition(battler) & BIT_SIDE))
#define GET_BATTLER_SIDE2(battler)((GET_BATTLER_POSITION(battler) & BIT_SIDE))
@@ -36,40 +28,6 @@
#define STEVEN_PARTNER_ID 0xC03
#define SECRET_BASE_OPPONENT 0x400
#define BATTLE_WON 0x1
#define BATTLE_LOST 0x2
#define BATTLE_DREW 0x3
#define BATTLE_RAN 0x4
#define BATTLE_PLAYER_TELEPORTED 0x5
#define BATTLE_POKE_FLED 0x6
#define BATTLE_CAUGHT 0x7
#define BATTLE_SAFARI_OUT_OF_BALLS 0x8
#define BATTLE_FORFEITED 0x9
#define BATTLE_OPPONENT_TELEPORTED 0xA
#define OUTCOME_LINK_BATTLE_RUN 0x80
#define STATUS_NONE 0x0
#define STATUS_SLEEP 0x7
#define STATUS_POISON 0x8
#define STATUS_BURN 0x10
#define STATUS_FREEZE 0x20
#define STATUS_PARALYSIS 0x40
#define STATUS_TOXIC_POISON 0x80
#define STATUS_TOXIC_COUNTER 0xF00
#define STATUS_PSN_ANY ((STATUS_POISON | STATUS_TOXIC_POISON))
#define STATUS_ANY ((STATUS_SLEEP | STATUS_POISON | STATUS_BURN | STATUS_FREEZE | STATUS_PARALYSIS | STATUS_TOXIC_POISON))
#define SIDE_STATUS_REFLECT (1 << 0)
#define SIDE_STATUS_LIGHTSCREEN (1 << 1)
#define SIDE_STATUS_X4 (1 << 2)
#define SIDE_STATUS_SPIKES (1 << 4)
#define SIDE_STATUS_SAFEGUARD (1 << 5)
#define SIDE_STATUS_FUTUREATTACK (1 << 6)
#define SIDE_STATUS_MIST (1 << 8)
#define SIDE_STATUS_SPIKES_DAMAGED (1 << 9)
#define B_ACTION_USE_MOVE 0
#define B_ACTION_USE_ITEM 1
#define B_ACTION_SWITCH 2
@@ -79,7 +37,7 @@
#define B_ACTION_SAFARI_POKEBLOCK 6
#define B_ACTION_SAFARI_GO_NEAR 7
#define B_ACTION_SAFARI_RUN 8
#define B_ACTION_9 9
#define B_ACTION_OLDMAN_THROW 9
#define B_ACTION_EXEC_SCRIPT 10
#define B_ACTION_TRY_FINISH 11
#define B_ACTION_FINISHED 12
@@ -87,31 +45,9 @@
#define B_ACTION_NOTHING_FAINTED 13 // when choosing an action
#define B_ACTION_NONE 0xFF
#define MOVESTATUS_MISSED (1 << 0)
#define MOVESTATUS_SUPEREFFECTIVE (1 << 1)
#define MOVESTATUS_NOTVERYEFFECTIVE (1 << 2)
#define MOVESTATUS_NOTAFFECTED (1 << 3)
#define MOVESTATUS_ONEHITKO (1 << 4)
#define MOVESTATUS_FAILED (1 << 5)
#define MOVESTATUS_ENDURED (1 << 6)
#define MOVESTATUS_HUNGON (1 << 7)
#define MOVESTATUS_NOEFFECT ((MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED))
#define MAX_TRAINER_ITEMS 4
#define MAX_MON_MOVES 4
#define BATTLE_TERRAIN_GRASS 0
#define BATTLE_TERRAIN_LONG_GRASS 1
#define BATTLE_TERRAIN_SAND 2
#define BATTLE_TERRAIN_UNDERWATER 3
#define BATTLE_TERRAIN_WATER 4
#define BATTLE_TERRAIN_POND 5
#define BATTLE_TERRAIN_ROCK 6
#define BATTLE_TERRAIN_CAVE 7
#define BATTLE_TERRAIN_INSIDE 8
#define BATTLE_TERRAIN_PLAIN 9
// array entries for battle communication
#define MULTIUSE_STATE 0x0
#define CURSOR_POSITION 0x1
@@ -133,29 +69,6 @@
#define MOVE_TARGET_FOES_AND_ALLY 0x20
#define MOVE_TARGET_OPPONENTS_FIELD 0x40
// defines for the u8 array gTypeEffectiveness
#define TYPE_EFFECT_ATK_TYPE(i)((gTypeEffectiveness[i + 0]))
#define TYPE_EFFECT_DEF_TYPE(i)((gTypeEffectiveness[i + 1]))
#define TYPE_EFFECT_MULTIPLIER(i)((gTypeEffectiveness[i + 2]))
// defines for the gTypeEffectiveness multipliers
#define TYPE_MUL_NO_EFFECT 0
#define TYPE_MUL_NOT_EFFECTIVE 5
#define TYPE_MUL_NORMAL 10
#define TYPE_MUL_SUPER_EFFECTIVE 20
// special type table Ids
#define TYPE_FORESIGHT 0xFE
#define TYPE_ENDTABLE 0xFF
// for battle script commands
#define CMP_EQUAL 0x0
#define CMP_NOT_EQUAL 0x1
#define CMP_GREATER_THAN 0x2
#define CMP_LESS_THAN 0x3
#define CMP_COMMON_BITS 0x4
#define CMP_NO_COMMON_BITS 0x5
struct TrainerMonNoItemDefaultMoves
{
u16 iv;
@@ -190,10 +103,10 @@ struct TrainerMonItemCustomMoves
union TrainerMonPtr
{
struct TrainerMonNoItemDefaultMoves *NoItemDefaultMoves;
struct TrainerMonNoItemCustomMoves *NoItemCustomMoves;
struct TrainerMonItemDefaultMoves *ItemDefaultMoves;
struct TrainerMonItemCustomMoves *ItemCustomMoves;
const struct TrainerMonNoItemDefaultMoves *NoItemDefaultMoves;
const struct TrainerMonNoItemCustomMoves *NoItemCustomMoves;
const struct TrainerMonItemDefaultMoves *ItemDefaultMoves;
const struct TrainerMonItemCustomMoves *ItemCustomMoves;
};
struct Trainer
@@ -207,16 +120,11 @@ struct Trainer
/*0x18*/ bool8 doubleBattle;
/*0x1C*/ u32 aiFlags;
/*0x20*/ u8 partySize;
/*0x24*/ union TrainerMonPtr party;
/*0x24*/ const union TrainerMonPtr party;
};
#define PARTY_FLAG_CUSTOM_MOVES 0x1
#define PARTY_FLAG_HAS_ITEM 0x2
extern const struct Trainer gTrainers[];
#define TRAINER_ENCOUNTER_MUSIC(trainer)((gTrainers[trainer].encounterMusic_gender & 0x7F))
struct ResourceFlags
{
u32 flags[4];
@@ -373,22 +281,6 @@ extern u8 gActiveBattler;
extern u8 gBattlerTarget;
extern u8 gAbsentBattlerFlags;
// script's table id to bit
#define AI_SCRIPT_CHECK_BAD_MOVE (1 << 0)
#define AI_SCRIPT_TRY_TO_FAINT (1 << 1)
#define AI_SCRIPT_CHECK_VIABILITY (1 << 2)
#define AI_SCRIPT_SETUP_FIRST_TURN (1 << 3)
#define AI_SCRIPT_RISKY (1 << 4)
#define AI_SCRIPT_PREFER_STRONGEST_MOVE (1 << 5)
#define AI_SCRIPT_PREFER_BATON_PASS (1 << 6)
#define AI_SCRIPT_DOUBLE_BATTLE (1 << 7)
#define AI_SCRIPT_HP_AWARE (1 << 8)
#define AI_SCRIPT_UNKNOWN (1 << 9)
// 10 - 28 are not used
#define AI_SCRIPT_ROAMING (1 << 29)
#define AI_SCRIPT_SAFARI (1 << 30)
#define AI_SCRIPT_FIRST_BATTLE (1 << 31)
extern struct BattlePokemon gBattleMons[MAX_BATTLERS_COUNT];
struct UsedMoves
@@ -437,10 +329,6 @@ struct BattleResources
extern struct BattleResources *gBattleResources;
#define BATTLESCRIPTS_STACK (gBattleResources->battleScriptsStack)
#define BATTLE_CALLBACKS_STACK (gBattleResources->battleCallbackStack)
#define BATTLE_LVLUP_STATS (gBattleResources->statsBeforeLvlUp)
struct BattleResults
{
u8 playerFaintCounter; // 0x0
@@ -521,22 +409,20 @@ struct BattleStruct
u8 expGetterBattlerId;
u8 field_90;
u8 field_91;
u8 AI_monToSwitchIntoId[MAX_BATTLERS_COUNT];
u8 AI_monToSwitchIntoId[2];
u8 field_94;
u8 field_95;
u8 field_96;
u8 field_97;
u8 lastTakenMove[MAX_BATTLERS_COUNT * 2 * 2]; // ask gamefreak why they declared it that way
u16 hpOnSwitchout[2];
u8 abilityPreventingSwitchout;
u8 hpScale;
u8 field_AE;
u8 field_AF;
u8 field_B0;
u8 field_B1;
u8 field_B2;
u8 field_B3;
u16 savedBattleTypeFlags;
void (*savedCallback)(void);
u8 synchronizeMoveEffect;
u8 field_B5;
u8 field_B6;
u8 multiplayerId;
u8 overworldWeatherDone;
u8 atkCancellerTracker;
u16 usedHeldItems[MAX_BATTLERS_COUNT];
u8 chosenItem[4]; // why is this an u8?
@@ -556,7 +442,12 @@ struct BattleStruct
u8 wishPerishSongBattlerId;
u8 field_182;
u8 field_183;
u8 field_184[124]; // currently unknown
u8 field_184;
u8 field_185;
u8 field_186;
u8 field_187;
struct BattleEnigmaBerry battleEnigmaBerry;
u8 field_1A4[0x5C]; // currently unknown
}; // size == 0x200 bytes
extern struct BattleStruct *gBattleStruct;
@@ -579,72 +470,6 @@ extern struct BattleStruct *gBattleStruct;
gBattleMons[battlerId].type2 = type; \
}
#define MOVE_EFFECT_SLEEP 0x1
#define MOVE_EFFECT_POISON 0x2
#define MOVE_EFFECT_BURN 0x3
#define MOVE_EFFECT_FREEZE 0x4
#define MOVE_EFFECT_PARALYSIS 0x5
#define MOVE_EFFECT_TOXIC 0x6
#define MOVE_EFFECT_CONFUSION 0x7
#define MOVE_EFFECT_FLINCH 0x8
#define MOVE_EFFECT_TRI_ATTACK 0x9
#define MOVE_EFFECT_UPROAR 0xA
#define MOVE_EFFECT_PAYDAY 0xB
#define MOVE_EFFECT_CHARGING 0xC
#define MOVE_EFFECT_WRAP 0xD
#define MOVE_EFFECT_RECOIL_25 0xE
#define MOVE_EFFECT_ATK_PLUS_1 0xF
#define MOVE_EFFECT_DEF_PLUS_1 0x10
#define MOVE_EFFECT_SPD_PLUS_1 0x11
#define MOVE_EFFECT_SP_ATK_PLUS_1 0x12
#define MOVE_EFFECT_SP_DEF_PLUS_1 0x13
#define MOVE_EFFECT_ACC_PLUS_1 0x14
#define MOVE_EFFECT_EVS_PLUS_1 0x15
#define MOVE_EFFECT_ATK_MINUS_1 0x16
#define MOVE_EFFECT_DEF_MINUS_1 0x17
#define MOVE_EFFECT_SPD_MINUS_1 0x18
#define MOVE_EFFECT_SP_ATK_MINUS_1 0x19
#define MOVE_EFFECT_SP_DEF_MINUS_1 0x1A
#define MOVE_EFFECT_ACC_MINUS_1 0x1B
#define MOVE_EFFECT_EVS_MINUS_1 0x1C
#define MOVE_EFFECT_RECHARGE 0x1D
#define MOVE_EFFECT_RAGE 0x1E
#define MOVE_EFFECT_STEAL_ITEM 0x1F
#define MOVE_EFFECT_PREVENT_ESCAPE 0x20
#define MOVE_EFFECT_NIGHTMARE 0x21
#define MOVE_EFFECT_ALL_STATS_UP 0x22
#define MOVE_EFFECT_RAPIDSPIN 0x23
#define MOVE_EFFECT_REMOVE_PARALYSIS 0x24
#define MOVE_EFFECT_ATK_DEF_DOWN 0x25
#define MOVE_EFFECT_RECOIL_33_PARALYSIS 0x26
#define MOVE_EFFECT_ATK_PLUS_2 0x27
#define MOVE_EFFECT_DEF_PLUS_2 0x28
#define MOVE_EFFECT_SPD_PLUS_2 0x29
#define MOVE_EFFECT_SP_ATK_PLUS_2 0x2A
#define MOVE_EFFECT_SP_DEF_PLUS_2 0x2B
#define MOVE_EFFECT_ACC_PLUS_2 0x2C
#define MOVE_EFFECT_EVS_PLUS_2 0x2D
#define MOVE_EFFECT_ATK_MINUS_2 0x2E
#define MOVE_EFFECT_DEF_MINUS_2 0x2F
#define MOVE_EFFECT_SPD_MINUS_2 0x30
#define MOVE_EFFECT_SP_ATK_MINUS_2 0x31
#define MOVE_EFFECT_SP_DEF_MINUS_2 0x32
#define MOVE_EFFECT_ACC_MINUS_2 0x33
#define MOVE_EFFECT_EVS_MINUS_2 0x34
#define MOVE_EFFECT_THRASH 0x35
#define MOVE_EFFECT_KNOCK_OFF 0x36
#define MOVE_EFFECT_NOTHING_37 0x37
#define MOVE_EFFECT_NOTHING_38 0x38
#define MOVE_EFFECT_NOTHING_39 0x39
#define MOVE_EFFECT_NOTHING_3A 0x3A
#define MOVE_EFFECT_SP_ATK_TWO_DOWN 0x3B
#define MOVE_EFFECT_NOTHING_3C 0x3C
#define MOVE_EFFECT_NOTHING_3D 0x3D
#define MOVE_EFFECT_NOTHING_3E 0x3E
#define MOVE_EFFECT_NOTHING_3F 0x3F
#define MOVE_EFFECT_AFFECTS_USER 0x40
#define MOVE_EFFECT_CERTAIN 0x80
#define GET_STAT_BUFF_ID(n)((n & 0xF)) // first four bits 0x1, 0x2, 0x4, 0x8
#define GET_STAT_BUFF_VALUE2(n)((n & 0xF0))
#define GET_STAT_BUFF_VALUE(n)(((n >> 4) & 7)) // 0x10, 0x20, 0x40
@@ -654,32 +479,6 @@ extern struct BattleStruct *gBattleStruct;
#define SET_STATCHANGER(statId, stage, goesDown)(gBattleScripting.statChanger = (statId) + (stage << 4) + (goesDown << 7))
// used in many battle files, it seems as though Hisashi Sogabe wrote
// some sort of macro to replace the use of actually calling memset.
// Perhaps it was thought calling memset was much slower?
// The compiler wont allow us to locally declare ptr in this macro; some
// functions that invoke this macro will not match without this egregeous
// assumption about the variable names, so in order to avoid this assumption,
// we opt to pass the variables themselves, even though it is likely that
// Sogabe assumed the variables were named src and dest. Trust me: I tried to
// avoid assuming variable names, but the ROM just will not match without the
// assumptions. Therefore, these macros are bad practice, but I'm putting them
// here anyway.
#define MEMSET_ALT(data, c, size, var, dest) \
{ \
dest = (u8 *)data; \
for(var = 0; var < (u32)size; var++) \
dest[var] = c; \
} \
#define MEMCPY_ALT(data, dest, size, var, src) \
{ \
src = (u8 *)data; \
for(var = 0; var < (u32)size; var++) \
dest[var] = src[var]; \
} \
struct BattleScripting
{
s32 painSplitHp;
@@ -708,17 +507,6 @@ struct BattleScripting
u8 field_23;
};
// functions
// battle_1
void LoadBattleTextboxAndBackground(void);
void LoadBattleEntryBackground(void);
void ApplyPlayerChosenFrameToBattleMenu(void);
bool8 LoadChosenBattleElement(u8 caseId);
void DrawMainBattleBackground(void);
void task00_0800F6FC(u8 taskId);
void sub_800F324(void);
enum
{
BACK_PIC_BRENDAN,
@@ -731,11 +519,6 @@ enum
BACK_PIC_STEVEN
};
// rom_80A5C6C
u8 GetBattlerSide(u8 bank);
u8 GetBattlerPosition(u8 bank);
u8 GetBattlerAtPosition(u8 bank);
struct BattleSpriteInfo
{
u16 invisible : 1; // 0x1
@@ -929,5 +712,8 @@ extern u16 gLastPrintedMoves[MAX_BATTLERS_COUNT];
extern u8 gActionsByTurnOrder[MAX_BATTLERS_COUNT];
extern u8 gChosenActionByBattler[MAX_BATTLERS_COUNT];
extern u8 gBattleTerrain;
extern struct UnknownPokemonStruct4 gUnknown_2022B58[3];
extern u16 *gUnknown_2022BC0;
extern u16 gRandomTurnNumber;
#endif // GUARD_BATTLE_H
+8 -3
View File
@@ -2,8 +2,9 @@
#define GUARD_BATTLE_ANIM_H
#include "battle.h"
#include "constants/battle_anim.h"
#include "data.h"
#include "task.h"
#include "constants/battle_anim.h"
enum
{
@@ -166,8 +167,12 @@ void LaunchStatusAnimation(u8 bank, u8 statusAnimId);
u8 ItemIdToBallId(u16 itemId);
u8 LaunchBallStarsTask(u8 x, u8 y, u8 kindOfStars, u8 arg3, u8 ballId);
u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 battlerId, u32 arg2, u8 ballId);
void sub_80EEFC8(u8 *, u8 *, u8 battlerId);
void sub_80EF0E0(u8 batterId);
// battle_anim_mons.c
extern const struct MonCoords gCastformFrontSpriteCoords[];
u8 GetBattlerSpriteCoord(u8 battlerId, u8 coordType);
u8 GetBattlerSpriteCoord2(u8 battlerId, u8 coordType);
u8 GetBattlerSpriteDefault_Y(u8 battlerId);
@@ -237,9 +242,9 @@ void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor);
u32 sub_8075BE8(u8 battleBackground, u8 attacker, u8 target, u8 attackerPartner, u8 targetPartner, u8 a6, u8 a7);
u32 sub_8075CB8(u8 a1, u8 a2, u8 a3, u8 a4);
u8 sub_8075D80(u8 a1);
void sub_8075D9C(struct Sprite *sprite);
void AnimSpriteOnMonPos(struct Sprite *sprite);
void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite);
void sub_8075E80(struct Sprite *sprite);
void AnimThrowProjectile(struct Sprite *sprite);
void sub_8075F0C(struct Sprite *sprite);
s16 CloneBattlerSpriteWithBlend(u8 animBattler);
void obj_delete_but_dont_free_vram(struct Sprite *sprite);
+9
View File
@@ -1,6 +1,15 @@
#ifndef GUARD_BATTLE_BG_H
#define GUARD_BATTLE_BG_H
#include "bg.h"
extern const struct BgTemplate gBattleBgTemplates[];
void sub_800F34C(void);
void DrawBattleEntryBackground(void);
void sub_800F6FC(u8 taskId);
void LoadBattleMenuWindowGfx(void);
void LoadBattleTextboxAndBackground(void);
void sub_800F324(void);
#endif // GUARD_BATTLE_BG_H
+5 -3
View File
@@ -260,16 +260,18 @@ void SetControllerToPlayerPartner(void);
void SetControllerToSafari(void);
// pokedude controller
void SetControllerToPokedude(void);
void SetControllerToPokeDude(void);
// oak controller
void SetControllerToOakOrOldman(void);
// oak and old man controller
void SetControllerToOakOrOldMan(void);
bool8 sub_80EB2E0(u8);
void sub_80EB2F4(u8);
void sub_80E8570(void);
void sub_80E85C0(void);
void sub_80E8598(void);
void sub_80E7988(void);
void sub_80EB30C(void);
void sub_80EB524(void);
// link opponent
void SetControllerToLinkOpponent(void);
+42 -47
View File
@@ -1,6 +1,8 @@
#ifndef GUARD_BATTLE_MAIN_H
#define GUARD_BATTLE_MAIN_H
#include "constants/abilities.h"
struct TrainerMoney
{
u8 classId;
@@ -43,50 +45,10 @@ struct UnknownPokemonStruct4
#define BOUNCE_MON 0x0
#define BOUNCE_HEALTHBOX 0x1
void CB2_InitBattle(void);
void BattleMainCB2(void);
void CB2_QuitRecordedBattle(void);
void sub_8038528(struct Sprite* sprite);
void sub_8038A04(void); // unused
void VBlankCB_Battle(void);
void sub_801182C(struct Sprite *sprite);
void sub_8011A1C(void);
u32 sub_80391E0(u8 arrayId, u8 caseId);
u32 sub_80397C4(u32 setId, u32 tableId);
void oac_poke_opponent(struct Sprite *sprite);
void SpriteCallbackDummy_2(struct Sprite *sprite);
void sub_8039934(struct Sprite *sprite);
void sub_8012098(struct Sprite *sprite);
void sub_8012044(struct Sprite *sprite);
void sub_8039B58(struct Sprite *sprite);
void sub_8039BB4(struct Sprite *sprite);
void sub_80105DC(struct Sprite *sprite);
void sub_8012110(struct Sprite *sprite);
void DoBounceEffect(u8 bank, u8 b, s8 c, s8 d);
void EndBounceEffect(u8 bank, bool8 b);
void sub_8039E44(struct Sprite *sprite);
void sub_8039E60(struct Sprite *sprite);
void sub_8039E84(struct Sprite *sprite);
void sub_801236C(struct Sprite *sprite);
void BeginBattleIntro(void);
void SwitchInClearSetData(void);
void FaintClearSetData(void);
void sub_803B3AC(void); // unused
void sub_803B598(void); // unused
void BattleTurnPassed(void);
u8 IsRunningFromBattleImpossible(void);
void sub_8013F6C(u8 battlerId);
void SwapTurnOrder(u8 id1, u8 id2);
u8 GetWhoStrikesFirst(u8 bank1, u8 bank2, bool8 ignoreChosenMoves);
void RunBattleScriptCommands_PopCallbacksStack(void);
void RunBattleScriptCommands(void);
bool8 TryRunFromBattle(u8 bank);
void sub_800FD9C(void);
void sub_80120C4(struct Sprite *);
void sub_8012100(struct Sprite *);
void nullsub_12(void);
void SpriteCB_FaintOpponentMon(struct Sprite *sprite);
extern const struct SpriteTemplate gUnknown_824EFF0;
extern const struct OamData gOamData_824F010;
extern const struct OamData gOamData_824F018;
extern const u8 gTypeNames[][TYPE_NAME_LENGTH + 1];
extern const u8 gStatusConditionString_PoisonJpn[8];
extern const u8 gStatusConditionString_SleepJpn[8];
extern const u8 gStatusConditionString_ParalysisJpn[8];
@@ -94,10 +56,43 @@ extern const u8 gStatusConditionString_BurnJpn[8];
extern const u8 gStatusConditionString_IceJpn[8];
extern const u8 gStatusConditionString_ConfusionJpn[8];
extern const u8 gStatusConditionString_LoveJpn[8];
extern const u8 * const gStatusConditionStringsTable[7][2];
extern const u8 *const gStatusConditionStringsTable[7][2];
extern const u8 gTypeEffectiveness[336];
extern const struct TrainerMoney gTrainerMoneyTable[];
extern const u8 *const gAbilityDescriptionPointers[ABILITIES_COUNT];
extern const u8 gAbilityNames[ABILITIES_COUNT][ABILITY_NAME_LENGTH + 1];
void CB2_InitBattle(void);
void BattleMainCB2(void);
void FreeRestoreBattleData(void);
void VBlankCB_Battle(void);
void nullsub_9(struct Sprite *sprite);
void sub_801182C(struct Sprite *sprite);
void sub_8011A1C(void);
u32 sub_8011C44(u8 arrayId, u8 caseId);
void SpriteCB_WildMon(struct Sprite *sprite);
void SpriteCallbackDummy2(struct Sprite *sprite);
void SpriteCB_FaintOpponentMon(struct Sprite *sprite);
void sub_8012044(struct Sprite *sprite);
void sub_8012098(struct Sprite *sprite);
void sub_80120C4(struct Sprite *sprite);
void sub_8012100(struct Sprite *sprite);
void sub_8012110(struct Sprite *sprite);
void DoBounceEffect(u8 battler, u8 which, s8 delta, s8 amplitude);
void EndBounceEffect(u8 battler, u8 which);
void sub_8012354(struct Sprite *sprite);
void sub_801236C(struct Sprite *sprite);
void nullsub_12(void);
void BeginBattleIntro(void);
void SwitchInClearSetData(void);
void FaintClearSetData(void);
void BattleTurnPassed(void);
u8 IsRunningFromBattleImpossible(void);
void sub_8013F6C(u8 battler);
void SwapTurnOrder(u8 id1, u8 id2);
u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves);
void RunBattleScriptCommands_PopCallbacksStack(void);
void RunBattleScriptCommands(void);
bool8 TryRunFromBattle(u8 battler);
#endif // GUARD_BATTLE_MAIN_H
+8
View File
@@ -238,4 +238,12 @@ extern const u8* const gStatNamesTable2[];
extern const u16 gMissStringIds[];
extern const u16 gTrappingMoves[];
extern const u8 gText_Sleep[];
extern const u8 gText_Poison[];
extern const u8 gText_Burn[];
extern const u8 gText_Paralysis[];
extern const u8 gText_Ice[];
extern const u8 gText_Confusion[];
extern const u8 gText_Love[];
#endif // GUARD_BATTLE_MESSAGE_H
-7
View File
@@ -7,13 +7,6 @@
#define NO_ACC_CALC_CHECK_LOCK_ON 0xFFFF
#define ACC_CURR_MOVE 0
#define CMP_EQUAL 0x0
#define CMP_NOT_EQUAL 0x1
#define CMP_GREATER_THAN 0x2
#define CMP_LESS_THAN 0x3
#define CMP_COMMON_BITS 0x4
#define CMP_NO_COMMON_BITS 0x5
#define ATK48_STAT_NEGATIVE 0x1
#define ATK48_STAT_BY_TWO 0x2
#define ATK48_BIT_x4 0x4
+8
View File
@@ -227,5 +227,13 @@ extern const u8 BattleScript_FlushMessageBox[];
extern const u8 BattleScript_SpikesOnFaintedBattler[];
extern const u8 BattleScript_GhostBallDodge[];
extern const u8 gUnknown_81D9A88[];
extern const u8 gUnknown_81D91A1[]; // knizz: silph scope unveil
extern const u8 gUnknown_81D88D7[];
extern const u8 *const gBattleScriptsForMoveEffects[];
extern const u8 *const gBattlescriptsForBallThrow[];
extern const u8 *const gBattlescriptsForRunningByItem[];
extern const u8 *const gBattlescriptsForUsingItem[];
extern const u8 *const gBattlescriptsForSafariActions[];
#endif // GUARD_BATTLE_SCRIPTS_H
+28 -12
View File
@@ -3,20 +3,36 @@
#include "global.h"
void BattleSetup_StartScriptedWildBattle(void);
u8 BattleSetup_GetTerrainId(void);
u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data);
void BattleSetup_StartBattlePikeWildBattle(void);
void BattleSetup_StartWildBattle(void);
void BattleSetup_StartRoamerBattle(void);
u8 HasTrainerAlreadyBeenFought(u16);
void SetTrainerFlag(u16);
void ClearTrainerFlag(u16);
void BattleSetup_StartTrainerBattle(void);
u8 *BattleSetup_GetScriptAddrAfterBattle(void);
u8 *BattleSetup_GetTrainerPostBattleScript(void);
void sub_80803FC(void);
void ScrSpecial_StartOldManTutorialBattle(void);
void BattleSetup_StartScriptedWildBattle(void);
void ScrSpecial_StartMarowakBattle(void);
void ScrSpecial_StartSouthernIslandBattle(void);
void Special_StartLegendaryBattle(void);
void Special_StartGroudonKyogreBattle(void);
void Special_StartRegiBattle(void);
u8 BattleSetup_GetTerrainId(void);
u8 sub_8080060(void);
const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data);
void ConfigureAndSetUpOneTrainerBattle(u8 trainerEventObjId, const u8 *trainerScript);
bool32 GetTrainerFlagFromScriptPointer(const u8 *data);
void SetUpTrainerMovement(void);
u8 ScrSpecial_GetTrainerBattleMode(void);
u16 sub_80803D8(void);
u16 ScrSpecial_HasTrainerBeenFought(void);
void SetBattledTrainerFlag(void);
bool8 HasTrainerBeenFought(u16 trainerId);
void SetTrainerFlag(u16 trainerId);
void ClearTrainerFlag(u16 trainerId);
void BattleSetup_StartTrainerBattle(void);
void ScrSpecial_StartTrainerEyeRematch(void);
void ScrSpecial_ShowTrainerIntroSpeech(void);
const u8 *BattleSetup_GetScriptAddrAfterBattle(void);
const u8 *BattleSetup_GetTrainerPostBattleScript(void);
void ScrSpecial_ShowTrainerNonBattlingSpeech(void);
void PlayTrainerEncounterMusic(void);
const u8 *GetTrainerALoseText(void);
const u8 *GetTrainerWonSpeech(void);
#endif // GUARD_BATTLE_SETUP_H
+2 -1
View File
@@ -4,9 +4,10 @@
#include "global.h"
u16 sub_8164FCC(u8, u8);
void sub_80E7524(u32 *);
void sub_80E7524(struct BattleTowerEReaderTrainer *);
void ValidateEReaderTrainer(void);
u8 GetBattleTowerTrainerFrontSpriteId(void);
u8 GetEreaderTrainerFrontSpriteId(void);
void CopyEReaderTrainerName5(u8 *dest);
#endif //GUARD_BATTLE_TOWER_H
+1 -1
View File
@@ -63,7 +63,7 @@ void FieldObjectInteractionRemoveBerryTree(void);
u8 PlayerHasBerries(void);
void ResetBerryTreeSparkleFlags(void);
void sub_809C794(void);
const struct Berry * sub_809C8A0(u8 berryIdx);
const struct Berry * GetBerryInfo(u8 berryIdx);
extern const struct Berry gBerries[];
+20 -20
View File
@@ -3,25 +3,25 @@
#include "global.h"
struct TrainerTowerTrainer_004
{
/* 0x000 */ u8 unk_000[11];
/* 0x00B */ u8 unk_00B;
/* 0x00C */ u8 unk_00C;
/* 0x00E */ u16 unk_00E[6];
/* 0x01A */ u16 unk_01A[6];
/* 0x026 */ u16 unk_026[6];
/* 0x032 */ u16 unk_032[6];
/* 0x040 */ struct BattleTowerPokemon unk_040[PARTY_SIZE];
}; // size: 328
struct TrainerTowerTrainer
{
/* 0x000 */ u8 name[11];
/* 0x00B */ u8 facilityClass;
/* 0x00C */ u8 gender;
/* 0x00E */ u16 speechBefore[6];
/* 0x01A */ u16 speechWin[6];
/* 0x026 */ u16 speechLose[6];
/* 0x032 */ u16 speechAfter[6];
/* 0x040 */ struct BattleTowerPokemon mons[PARTY_SIZE];
}; // size: 328
struct TrainerTowerFloor
{
/* 0x000 */ u8 unk_000;
/* 0x000 */ u8 unk_001;
/* 0x002 */ u8 unk_002;
/* 0x003 */ u8 unk_003;
/* 0x004 */ struct TrainerTowerTrainer_004 unk_004[3];
/* 0x001 */ u8 floorIdx;
/* 0x002 */ u8 challengeType;
/* 0x003 */ u8 prize;
/* 0x004 */ struct TrainerTowerTrainer trainers[3];
/* 0x3DC */ u32 checksum;
};
@@ -32,16 +32,16 @@ struct Unk_203F458_Header
u32 unk4;
};
struct TrainerTowerData
struct EReaderTrainerHillSet
{
u8 count;
u8 id;
u16 dummy;
u32 checksum;
struct TrainerTowerTrainer trainers[8];
struct TrainerTowerFloor floors[8];
};
bool32 ValidateTrainerTowerData(struct TrainerTowerData * a0);
bool32 CEReaderTool_SaveTrainerTower(struct TrainerTowerData * a0);
bool32 ValidateTrainerTowerData(struct EReaderTrainerHillSet * a0);
bool32 CEReaderTool_SaveTrainerTower(struct EReaderTrainerHillSet * a0);
#endif //GUARD_CEREADER_TOOL_H
+2
View File
@@ -80,4 +80,6 @@
#define ABILITY_CACOPHONY 76
#define ABILITY_AIR_LOCK 77
#define ABILITIES_COUNT 78
#endif // GUARD_CONSTANTS_ABILITIES_H
+37 -32
View File
@@ -44,38 +44,38 @@
#define BIT_FLANK 2
// Battle Type Flags
#define BATTLE_TYPE_DOUBLE 0x0001
#define BATTLE_TYPE_LINK 0x0002
#define BATTLE_TYPE_IS_MASTER 0x0004 // In not-link battles, it's always set.
#define BATTLE_TYPE_TRAINER 0x0008
#define BATTLE_TYPE_FIRST_BATTLE 0x0010
#define BATTLE_TYPE_20 0x0020
#define BATTLE_TYPE_MULTI 0x0040
#define BATTLE_TYPE_SAFARI 0x0080
#define BATTLE_TYPE_BATTLE_TOWER 0x0100
#define BATTLE_TYPE_OLDMAN_TUTORIAL 0x0200
#define BATTLE_TYPE_ROAMER 0x0400
#define BATTLE_TYPE_EREADER_TRAINER 0x0800
#define BATTLE_TYPE_KYOGRE_GROUDON 0x1000
#define BATTLE_TYPE_LEGENDARY 0x2000
#define BATTLE_TYPE_REGI 0x4000
#define BATTLE_TYPE_GHOST 0x8000
#define BATTLE_TYPE_POKEDUDE 0x10000
#define BATTLE_TYPE_PALACE 0x20000
#define BATTLE_TYPE_ARENA 0x40000
#define BATTLE_TYPE_TRAINER_TOWER 0x80000
#define BATTLE_TYPE_PIKE 0x100000
#define BATTLE_TYPE_PYRAMID 0x200000
#define BATTLE_TYPE_INGAME_PARTNER 0x400000
#define BATTLE_TYPE_x800000 0x800000
#define BATTLE_TYPE_RECORDED 0x1000000
#define BATTLE_TYPE_x2000000 0x2000000
#define BATTLE_TYPE_TRAINER_HILL 0x4000000
#define BATTLE_TYPE_SECRET_BASE 0x8000000
#define BATTLE_TYPE_GROUDON 0x10000000
#define BATTLE_TYPE_KYOGRE 0x20000000
#define BATTLE_TYPE_RAYQUAZA 0x40000000
#define BATTLE_TYPE_x80000000 0x80000000
#define BATTLE_TYPE_DOUBLE 0x0001
#define BATTLE_TYPE_LINK 0x0002
#define BATTLE_TYPE_IS_MASTER 0x0004 // In not-link battles, it's always set.
#define BATTLE_TYPE_TRAINER 0x0008
#define BATTLE_TYPE_FIRST_BATTLE 0x0010
#define BATTLE_TYPE_20 0x0020
#define BATTLE_TYPE_MULTI 0x0040
#define BATTLE_TYPE_SAFARI 0x0080
#define BATTLE_TYPE_BATTLE_TOWER 0x0100
#define BATTLE_TYPE_OLD_MAN_TUTORIAL 0x0200
#define BATTLE_TYPE_ROAMER 0x0400
#define BATTLE_TYPE_EREADER_TRAINER 0x0800
#define BATTLE_TYPE_KYOGRE_GROUDON 0x1000
#define BATTLE_TYPE_LEGENDARY 0x2000
#define BATTLE_TYPE_REGI 0x4000
#define BATTLE_TYPE_GHOST 0x8000
#define BATTLE_TYPE_POKEDUDE 0x10000
#define BATTLE_TYPE_PALACE 0x20000
#define BATTLE_TYPE_ARENA 0x40000
#define BATTLE_TYPE_TRAINER_TOWER 0x80000
#define BATTLE_TYPE_PIKE 0x100000
#define BATTLE_TYPE_PYRAMID 0x200000
#define BATTLE_TYPE_INGAME_PARTNER 0x400000
#define BATTLE_TYPE_x800000 0x800000
#define BATTLE_TYPE_RECORDED 0x1000000
#define BATTLE_TYPE_x2000000 0x2000000
#define BATTLE_TYPE_TRAINER_HILL 0x4000000
#define BATTLE_TYPE_SECRET_BASE 0x8000000
#define BATTLE_TYPE_GROUDON 0x10000000
#define BATTLE_TYPE_KYOGRE 0x20000000
#define BATTLE_TYPE_RAYQUAZA 0x40000000
#define BATTLE_TYPE_x80000000 0x80000000
#define BATTLE_TYPE_FRONTIER (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_PIKE | BATTLE_TYPE_PYRAMID)
#define BATTLE_TYPE_FRONTIER_NO_PYRAMID (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_PIKE)
@@ -293,4 +293,9 @@
#define BATTLE_TERRAIN_BUILDING 8
#define BATTLE_TERRAIN_PLAIN 9
// Return value for IsRunningFromBattleImpossible.
#define BATTLE_RUN_SUCCESS 0
#define BATTLE_RUN_FORBIDDEN 1
#define BATTLE_RUN_FAILURE 2
#endif // GUARD_CONSTANTS_BATTLE_H
+15
View File
@@ -0,0 +1,15 @@
#ifndef GUARD_CONSTANTS_BATTLE_SETUP_H
#define GUARD_CONSTANTS_BATTLE_SETUP_H
#define TRAINER_BATTLE_SINGLE 0
#define TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC 1
#define TRAINER_BATTLE_CONTINUE_SCRIPT 2
#define TRAINER_BATTLE_SINGLE_NO_INTRO_TEXT 3
#define TRAINER_BATTLE_DOUBLE 4
#define TRAINER_BATTLE_REMATCH 5
#define TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE 6
#define TRAINER_BATTLE_REMATCH_DOUBLE 7
#define TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC 8
#define TRAINER_BATTLE_TUTORIAL 9
#endif // GUARD_CONSTANTS_BATTLE_SETUP_H
+26
View File
@@ -0,0 +1,26 @@
#ifndef GUARD_CONSTANTS_FAME_CHECKER_H
#define GUARD_CONSTANTS_FAME_CHECKER_H
#define FAMECHECKER_OAK 0
#define FAMECHECKER_DAISY 1
#define FAMECHECKER_BROCK 2
#define FAMECHECKER_MISTY 3
#define FAMECHECKER_LTSURGE 4
#define FAMECHECKER_ERIKA 5
#define FAMECHECKER_KOGA 6
#define FAMECHECKER_SABRINA 7
#define FAMECHECKER_BLAINE 8
#define FAMECHECKER_LORELEI 9
#define FAMECHECKER_BRUNO 10
#define FAMECHECKER_AGATHA 11
#define FAMECHECKER_LANCE 12
#define FAMECHECKER_BILL 13
#define FAMECHECKER_MRFUJI 14
#define FAMECHECKER_GIOVANNI 15
#define NUM_FAMECHECKER_PERSONS 16
#define FCPICKSTATE_NO_DRAW 0
#define FCPICKSTATE_SILHOUETTE 1
#define FCPICKSTATE_COLORED 2
#endif //GUARD_CONSTANTS_FAME_CHECKER_H
+73
View File
@@ -0,0 +1,73 @@
#ifndef GUARD_CONSTANTS_FIELD_EFFECTS_H
#define GUARD_CONSTANTS_FIELD_EFFECTS_H
#define FLDEFF_EXCLAMATION_MARK_ICON_1 0
#define FLDEFF_USE_CUT_ON_GRASS 1
#define FLDEFF_USE_CUT_ON_TREE 2
#define FLDEFF_SHADOW 3
#define FLDEFF_TALL_GRASS 4
#define FLDEFF_RIPPLE 5
#define FLDEFF_FIELD_MOVE_SHOW_MON 6
#define FLDEFF_ASH 7
#define FLDEFF_SURF_BLOB 8
#define FLDEFF_USE_SURF 9
#define FLDEFF_DUST 10
#define FLDEFF_USE_SECRET_POWER_CAVE 11
#define FLDEFF_JUMP_TALL_GRASS 12
#define FLDEFF_SAND_FOOTPRINTS 13
#define FLDEFF_JUMP_BIG_SPLASH 14
#define FLDEFF_SPLASH 15
#define FLDEFF_JUMP_SMALL_SPLASH 16
#define FLDEFF_LONG_GRASS 17
#define FLDEFF_JUMP_LONG_GRASS 18
#define FLDEFF_UNKNOWN_19 19
#define FLDEFF_UNKNOWN_20 20
#define FLDEFF_UNKNOWN_21 21
#define FLDEFF_UNKNOWN_22 22
#define FLDEFF_BERRY_TREE_GROWTH_SPARKLE 23
#define FLDEFF_DEEP_SAND_FOOTPRINTS 24
#define FLDEFF_POKECENTER_HEAL 25
#define FLDEFF_USE_SECRET_POWER_TREE 26
#define FLDEFF_USE_SECRET_POWER_SHRUB 27
#define FLDEFF_TREE_DISGUISE 28
#define FLDEFF_MOUNTAIN_DISGUISE 29
#define FLDEFF_NPCFLY_OUT 30
#define FLDEFF_USE_FLY 31
#define FLDEFF_FLY_IN 32
#define FLDEFF_EXCLAMATION_MARK_ICON_2 33
#define FLDEFF_FEET_IN_FLOWING_WATER 34
#define FLDEFF_BIKE_TIRE_TRACKS 35
#define FLDEFF_SAND_DISGUISE 36
#define FLDEFF_USE_ROCK_SMASH 37
#define FLDEFF_USE_DIG 38
#define FLDEFF_SAND_PILE 39
#define FLDEFF_USE_STRENGTH 40
#define FLDEFF_SHORT_GRASS 41
#define FLDEFF_HOT_SPRINGS_WATER 42
#define FLDEFF_USE_WATERFALL 43
#define FLDEFF_USE_DIVE 44
#define FLDEFF_POKEBALL 45
#define FLDEFF_HEART_ICON 46
#define FLDEFF_NOP_47 47
#define FLDEFF_NOP_48 48
#define FLDEFF_POP_OUT_OF_ASH 49
#define FLDEFF_LAVARIDGE_GYM_WARP 50
#define FLDEFF_SWEET_SCENT 51
#define FLDEFF_SAND_PILLAR 52
#define FLDEFF_BUBBLES 53
#define FLDEFF_SPARKLE 54
#define FLDEFF_SECRET_POWER_CAVE 55
#define FLDEFF_SECRET_POWER_TREE 56
#define FLDEFF_SECRET_POWER_SHRUB 57
#define FLDEFF_CUT_GRASS 58
#define FLDEFF_FIELD_MOVE_SHOW_MON_INIT 59
#define FLDEFF_USE_FLY_ANCIENT_TOMB 60
#define FLDEFF_PCTURN_ON 61
#define FLDEFF_HALL_OF_FAME_RECORD 62
#define FLDEFF_USE_TELEPORT 63
#define FLDEFF_UNK_40 64
#define FLDEFF_UNK_41 65 // TODO: related to vs_seeker
#define FLDEFF_UNK_43 67 // TODO: related to deoxys
#define FLDEFF_UNK_45 69 // TODO: related to fame checker photos
#endif // GUARD_CONSTANTS_FIELD_EFFECTS_H
+976 -1209
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -301,7 +301,7 @@
#define LAYOUT_ONE_ISLAND_POKEMON_CENTER_2F 316
#define LAYOUT_SIX_ISLAND_PATTERN_BUSH 317
#define LAYOUT_THREE_ISLAND_DUNSPARCE_TUNNEL 318
#define LAYOUT_UNUSED_LAYOUT_83453C0 319
#define LAYOUT_THREE_ISLAND_DUNSPARCE_TUNNEL_2 319
#define LAYOUT_FIVE_ISLAND_LOST_CAVE_ENTRANCE 320
#define LAYOUT_FIVE_ISLAND_LOST_CAVE_ROOM1 321
#define LAYOUT_FIVE_ISLAND_LOST_CAVE_ROOM2 322
@@ -323,7 +323,7 @@
#define LAYOUT_SEVEN_ISLAND_TANOBY_RUINS_DILFORD_CHAMBER 338
#define LAYOUT_SEVEN_ISLAND_TANOBY_RUINS_SCUFIB_CHAMBER 339
#define LAYOUT_SIX_ISLAND_ALTERING_CAVE 340
#define LAYOUT_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY 341
#define LAYOUT_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY 341
#define LAYOUT_BIRTH_ISLAND_EXTERIOR 342
#define LAYOUT_NAVEL_ROCK_EXTERIOR 343
#define LAYOUT_NAVEL_ROCK_1F 344
+1 -1
View File
@@ -169,7 +169,7 @@
#define MAP_SEVEN_ISLAND_TANOBY_RUINS_RIXY_CHAMBER (32 | (2 << 8))
#define MAP_SEVEN_ISLAND_TANOBY_RUINS_VIAPOIS_CHAMBER (33 | (2 << 8))
#define MAP_THREE_ISLAND_DUNSPARCE_TUNNEL (34 | (2 << 8))
#define MAP_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY (35 | (2 << 8))
#define MAP_SEVEN_ISLAND_SEVAULT_CANYON_TANOBY_KEY (35 | (2 << 8))
#define MAP_NAVEL_ROCK_1F (36 | (2 << 8))
#define MAP_NAVEL_ROCK_SUMMIT (37 | (2 << 8))
#define MAP_NAVEL_ROCK_BASE (38 | (2 << 8))
+169 -246
View File
@@ -1,252 +1,175 @@
#ifndef GUARD_CONSTANTS_MAP_OBJECTS_H
#define GUARD_CONSTANTS_MAP_OBJECTS_H
#define MAP_OBJ_GFX_BRENDAN_NORMAL 0
#define MAP_OBJ_GFX_BRENDAN_MACH_BIKE 1
#define MAP_OBJ_GFX_BRENDAN_SURFING 2
#define MAP_OBJ_GFX_BRENDAN_FIELD_MOVE 3
#define MAP_OBJ_GFX_QUINTY_PLUMP 4
#define MAP_OBJ_GFX_LITTLE_BOY_1 5
#define MAP_OBJ_GFX_LITTLE_GIRL_1 6
#define MAP_OBJ_GFX_BOY_1 7
#define MAP_OBJ_GFX_GIRL_1 8
#define MAP_OBJ_GFX_BOY_2 9
#define MAP_OBJ_GFX_GIRL_2 10
#define MAP_OBJ_GFX_LITTLE_BOY_2 11
#define MAP_OBJ_GFX_LITTLE_GIRL_2 12
#define MAP_OBJ_GFX_BOY_3 13
#define MAP_OBJ_GFX_GIRL_3 14
#define MAP_OBJ_GFX_BOY_4 15
#define MAP_OBJ_GFX_WOMAN_1 16
#define MAP_OBJ_GFX_FAT_MAN 17
#define MAP_OBJ_GFX_WOMAN_2 18
#define MAP_OBJ_GFX_MAN_1 19
#define MAP_OBJ_GFX_WOMAN_3 20
#define MAP_OBJ_GFX_OLD_MAN_1 21
#define MAP_OBJ_GFX_OLD_WOMAN_1 22
#define MAP_OBJ_GFX_MAN_2 23
#define MAP_OBJ_GFX_WOMAN_4 24
#define MAP_OBJ_GFX_MAN_3 25
#define MAP_OBJ_GFX_WOMAN_5 26
#define MAP_OBJ_GFX_COOK 27
#define MAP_OBJ_GFX_WOMAN_6 28
#define MAP_OBJ_GFX_OLD_MAN_2 29
#define MAP_OBJ_GFX_OLD_WOMAN_2 30
#define MAP_OBJ_GFX_CAMPER 31
#define MAP_OBJ_GFX_PICNICKER 32
#define MAP_OBJ_GFX_MAN_4 33
#define MAP_OBJ_GFX_WOMAN_7 34
#define MAP_OBJ_GFX_YOUNGSTER 35
#define MAP_OBJ_GFX_BUG_CATCHER 36
#define MAP_OBJ_GFX_PSYCHIC_M 37
#define MAP_OBJ_GFX_SCHOOL_KID_M 38
#define MAP_OBJ_GFX_MANIAC 39
#define MAP_OBJ_GFX_HEX_MANIAC 40
#define MAP_OBJ_GFX_RAYQUAZA_1 41
#define MAP_OBJ_GFX_SWIMMER_M 42
#define MAP_OBJ_GFX_SWIMMER_F 43
#define MAP_OBJ_GFX_BLACK_BELT 44
#define MAP_OBJ_GFX_BEAUTY 45
#define MAP_OBJ_GFX_SCIENTIST_1 46
#define MAP_OBJ_GFX_LASS 47
#define MAP_OBJ_GFX_GENTLEMAN 48
#define MAP_OBJ_GFX_SAILOR 49
#define MAP_OBJ_GFX_FISHERMAN 50
#define MAP_OBJ_GFX_RUNNING_TRIATHLETE_M 51
#define MAP_OBJ_GFX_RUNNING_TRIATHLETE_F 52
#define MAP_OBJ_GFX_TUBER_F 53
#define MAP_OBJ_GFX_TUBER_M 54
#define MAP_OBJ_GFX_HIKER 55
#define MAP_OBJ_GFX_CYCLING_TRIATHLETE_M 56
#define MAP_OBJ_GFX_CYCLING_TRIATHLETE_F 57
#define MAP_OBJ_GFX_NURSE 58
#define MAP_OBJ_GFX_ITEM_BALL 59
#define MAP_OBJ_GFX_BERRY_TREE 60
#define MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES 61
#define MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES 62
#define MAP_OBJ_GFX_BRENDAN_ACRO_BIKE 63
#define MAP_OBJ_GFX_PROF_BIRCH 64
#define MAP_OBJ_GFX_MAN_5 65
#define MAP_OBJ_GFX_MAN_6 66
#define MAP_OBJ_GFX_REPORTER_M 67
#define MAP_OBJ_GFX_REPORTER_F 68
#define MAP_OBJ_GFX_BARD 69
#define MAP_OBJ_GFX_ANABEL 70
#define MAP_OBJ_GFX_TUCKER 71
#define MAP_OBJ_GFX_GRETA 72
#define MAP_OBJ_GFX_SPENSER 73
#define MAP_OBJ_GFX_NOLAND 74
#define MAP_OBJ_GFX_LUCY 75
#define MAP_OBJ_GFX_UNUSED_NATU_DOLL 76
#define MAP_OBJ_GFX_UNUSED_MAGNEMITE_DOLL 77
#define MAP_OBJ_GFX_UNUSED_SQUIRTLE_DOLL 78
#define MAP_OBJ_GFX_UNUSED_WOOPER_DOLL 79
#define MAP_OBJ_GFX_UNUSED_PIKACHU_DOLL 80
#define MAP_OBJ_GFX_UNUSED_PORYGON2_DOLL 81
#define MAP_OBJ_GFX_CUTTABLE_TREE 82
#define MAP_OBJ_GFX_MART_EMPLOYEE 83
#define MAP_OBJ_GFX_ROOFTOP_SALE_WOMAN 84
#define MAP_OBJ_GFX_TEALA 85
#define MAP_OBJ_GFX_BREAKABLE_ROCK 86
#define MAP_OBJ_GFX_PUSHABLE_BOULDER 87
#define MAP_OBJ_GFX_MR_BRINEYS_BOAT 88
#define MAP_OBJ_GFX_MAY_NORMAL 89
#define MAP_OBJ_GFX_MAY_MACH_BIKE 90
#define MAP_OBJ_GFX_MAY_ACRO_BIKE 91
#define MAP_OBJ_GFX_MAY_SURFING 92
#define MAP_OBJ_GFX_MAY_FIELD_MOVE 93
#define MAP_OBJ_GFX_TRUCK 94
#define MAP_OBJ_GFX_VIGAROTH_CARRYING_BOX 95
#define MAP_OBJ_GFX_VIGAROTH_FACING_AWAY 96
#define MAP_OBJ_GFX_BIRCHS_BAG 97
#define MAP_OBJ_GFX_ZIGZAGOON_1 98
#define MAP_OBJ_GFX_ARTIST 99
#define MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL 100
#define MAP_OBJ_GFX_RIVAL_BRENDAN_MACH_BIKE 101
#define MAP_OBJ_GFX_RIVAL_BRENDAN_ACRO_BIKE 102
#define MAP_OBJ_GFX_RIVAL_BRENDAN_SURFING 103
#define MAP_OBJ_GFX_RIVAL_BRENDAN_FIELD_MOVE 104
#define MAP_OBJ_GFX_RIVAL_MAY_NORMAL 105
#define MAP_OBJ_GFX_RIVAL_MAY_MACH_BIKE 106
#define MAP_OBJ_GFX_RIVAL_MAY_ACRO_BIKE 107
#define MAP_OBJ_GFX_RIVAL_MAY_SURFING 108
#define MAP_OBJ_GFX_RIVAL_MAY_FIELD_MOVE 109
#define MAP_OBJ_GFX_CAMERAMAN 110
#define MAP_OBJ_GFX_BRENDAN_UNDERWATER 111
#define MAP_OBJ_GFX_MAY_UNDERWATER 112
#define MAP_OBJ_GFX_MOVING_BOX 113
#define MAP_OBJ_GFX_CABLE_CAR 114
#define MAP_OBJ_GFX_SCIENTIST_2 115
#define MAP_OBJ_GFX_MAN_7 116
#define MAP_OBJ_GFX_AQUA_MEMBER_M 117
#define MAP_OBJ_GFX_AQUA_MEMBER_F 118
#define MAP_OBJ_GFX_MAGMA_MEMBER_M 119
#define MAP_OBJ_GFX_MAGMA_MEMBER_F 120
#define MAP_OBJ_GFX_SIDNEY 121
#define MAP_OBJ_GFX_PHOEBE 122
#define MAP_OBJ_GFX_GLACIA 123
#define MAP_OBJ_GFX_DRAKE 124
#define MAP_OBJ_GFX_ROXANNE 125
#define MAP_OBJ_GFX_BRAWLY 126
#define MAP_OBJ_GFX_WATTSON 127
#define MAP_OBJ_GFX_FLANNERY 128
#define MAP_OBJ_GFX_NORMAN 129
#define MAP_OBJ_GFX_WINONA 130
#define MAP_OBJ_GFX_LIZA 131
#define MAP_OBJ_GFX_TATE 132
#define MAP_OBJ_GFX_WALLACE 133
#define MAP_OBJ_GFX_STEVEN 134
#define MAP_OBJ_GFX_WALLY 135
#define MAP_OBJ_GFX_LITTLE_BOY_3 136
#define MAP_OBJ_GFX_BRENDAN_FISHING 137
#define MAP_OBJ_GFX_MAY_FISHING 138
#define MAP_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN 139
#define MAP_OBJ_GFX_SS_TIDAL 140
#define MAP_OBJ_GFX_SUBMARINE_SHADOW 141
#define MAP_OBJ_GFX_PICHU_DOLL 142
#define MAP_OBJ_GFX_PIKACHU_DOLL 143
#define MAP_OBJ_GFX_MARILL_DOLL 144
#define MAP_OBJ_GFX_TOGEPI_DOLL 145
#define MAP_OBJ_GFX_CYNDAQUIL_DOLL 146
#define MAP_OBJ_GFX_CHIKORITA_DOLL 147
#define MAP_OBJ_GFX_TOTODILE_DOLL 148
#define MAP_OBJ_GFX_JIGGLYPUFF_DOLL 149
#define MAP_OBJ_GFX_MEOWTH_DOLL 150
#define MAP_OBJ_GFX_CLEFAIRY_DOLL 151
#define MAP_OBJ_GFX_DITTO_DOLL 152
#define MAP_OBJ_GFX_SMOOCHUM_DOLL 153
#define MAP_OBJ_GFX_TREECKO_DOLL 154
#define MAP_OBJ_GFX_TORCHIC_DOLL 155
#define MAP_OBJ_GFX_MUDKIP_DOLL 156
#define MAP_OBJ_GFX_DUSKULL_DOLL 157
#define MAP_OBJ_GFX_WYNAUT_DOLL 158
#define MAP_OBJ_GFX_BALTOY_DOLL 159
#define MAP_OBJ_GFX_KECLEON_DOLL 160
#define MAP_OBJ_GFX_AZURILL_DOLL 161
#define MAP_OBJ_GFX_SKITTY_DOLL 162
#define MAP_OBJ_GFX_SWABLU_DOLL 163
#define MAP_OBJ_GFX_GULPIN_DOLL 164
#define MAP_OBJ_GFX_LOTAD_DOLL 165
#define MAP_OBJ_GFX_SEEDOT_DOLL 166
#define MAP_OBJ_GFX_PIKA_CUSHION 167
#define MAP_OBJ_GFX_ROUND_CUSHION 168
#define MAP_OBJ_GFX_KISS_CUSHION 169
#define MAP_OBJ_GFX_ZIGZAG_CUSHION 170
#define MAP_OBJ_GFX_SPIN_CUSHION 171
#define MAP_OBJ_GFX_DIAMOND_CUSHION 172
#define MAP_OBJ_GFX_BALL_CUSHION 173
#define MAP_OBJ_GFX_GRASS_CUSHION 174
#define MAP_OBJ_GFX_FIRE_CUSHION 175
#define MAP_OBJ_GFX_WATER_CUSHION 176
#define MAP_OBJ_GFX_BIG_SNORLAX_DOLL 177
#define MAP_OBJ_GFX_BIG_RHYDON_DOLL 178
#define MAP_OBJ_GFX_BIG_LAPRAS_DOLL 179
#define MAP_OBJ_GFX_BIG_VENUSAUR_DOLL 180
#define MAP_OBJ_GFX_BIG_CHARIZARD_DOLL 181
#define MAP_OBJ_GFX_BIG_BLASTOISE_DOLL 182
#define MAP_OBJ_GFX_BIG_WAILMER_DOLL 183
#define MAP_OBJ_GFX_BIG_REGIROCK_DOLL 184
#define MAP_OBJ_GFX_BIG_REGICE_DOLL 185
#define MAP_OBJ_GFX_BIG_REGISTEEL_DOLL 186
#define MAP_OBJ_GFX_LATIAS 187
#define MAP_OBJ_GFX_LATIOS 188
#define MAP_OBJ_GFX_BOY_5 189
#define MAP_OBJ_GFX_CONTEST_JUDGE 190
#define MAP_OBJ_GFX_BRENDAN_WATERING 191
#define MAP_OBJ_GFX_MAY_WATERING 192
#define MAP_OBJ_GFX_BRENDAN_DECORATING 193
#define MAP_OBJ_GFX_MAY_DECORATING 194
#define MAP_OBJ_GFX_ARCHIE 195
#define MAP_OBJ_GFX_MAXIE 196
#define MAP_OBJ_GFX_KYOGRE_1 197
#define MAP_OBJ_GFX_GROUDON_1 198
#define MAP_OBJ_GFX_FOSSIL 199
#define MAP_OBJ_GFX_REGIROCK 200
#define MAP_OBJ_GFX_REGICE 201
#define MAP_OBJ_GFX_REGISTEEL 202
#define MAP_OBJ_GFX_SKITTY 203
#define MAP_OBJ_GFX_KECLEON_1 204
#define MAP_OBJ_GFX_KYOGRE_2 205
#define MAP_OBJ_GFX_GROUDON_2 206
#define MAP_OBJ_GFX_RAYQUAZA_2 207
#define MAP_OBJ_GFX_ZIGZAGOON_2 208
#define MAP_OBJ_GFX_PIKACHU 209
#define MAP_OBJ_GFX_AZUMARILL 210
#define MAP_OBJ_GFX_WINGULL 211
#define MAP_OBJ_GFX_KECLEON_2 212
#define MAP_OBJ_GFX_TUBER_M_SWIMMING 213
#define MAP_OBJ_GFX_AZURILL 214
#define MAP_OBJ_GFX_MOM 215
#define MAP_OBJ_GFX_LINK_BRENDAN 216
#define MAP_OBJ_GFX_LINK_MAY 217
#define MAP_OBJ_GFX_JUAN 218
#define MAP_OBJ_GFX_SCOTT 219
#define MAP_OBJ_GFX_POOCHYENA 220
#define MAP_OBJ_GFX_KYOGRE_3 221
#define MAP_OBJ_GFX_GROUDON_3 222
#define MAP_OBJ_GFX_MYSTERY_GIFT_MAN 223
#define MAP_OBJ_GFX_TRICK_HOUSE_STATUE 224
#define MAP_OBJ_GFX_KIRLIA 225
#define MAP_OBJ_GFX_DUSCLOPS 226
#define MAP_OBJ_GFX_UNION_ROOM_NURSE 227
#define MAP_OBJ_GFX_SUDOWOODO 228
#define MAP_OBJ_GFX_MEW 229
#define MAP_OBJ_GFX_RED 230
#define MAP_OBJ_GFX_LEAF 231
#define MAP_OBJ_GFX_DEOXYS 232
#define MAP_OBJ_GFX_DEOXYS_TRIANGLE 233
#define MAP_OBJ_GFX_BRANDON 234
#define MAP_OBJ_GFX_LINK_RS_BRENDAN 235
#define MAP_OBJ_GFX_LINK_RS_MAY 236
#define MAP_OBJ_GFX_LUGIA 237
#define MAP_OBJ_GFX_HOOH 238
#define MAP_OBJ_GFX_BARD_2 239
#define MAP_OBJ_GFX_HIPSTER 240
#define MAP_OBJ_GFX_TRADER 241
#define MAP_OBJ_GFX_STORYTELLER 242
#define MAP_OBJ_GFX_GIDDY 243
#define MAP_OBJ_GFX_PLACEHOLDER_1 244
#define MAP_OBJ_GFX_PLACEHOLDER_2 245
#define MAP_OBJ_GFX_RED_NORMAL 0
#define MAP_OBJ_GFX_RED_BIKE 1
#define MAP_OBJ_GFX_RED_RUN 2
#define MAP_OBJ_GFX_RED_ITEM 3
#define MAP_OBJ_GFX_RED_FISH 4
#define MAP_OBJ_GFX_RED_ITEM_COPY 5
#define MAP_OBJ_GFX_RED_VS_SEEKER 6
#define MAP_OBJ_GFX_GREEN_NORMAL 7
#define MAP_OBJ_GFX_GREEN_BIKE 8
#define MAP_OBJ_GFX_GREEN_RUN 9
#define MAP_OBJ_GFX_GREEN_ITEM 10
#define MAP_OBJ_GFX_GREEN_FISH 11
#define MAP_OBJ_GFX_GREEN_ITEM_COPY 12
#define MAP_OBJ_GFX_GREEN_VS_SEEKER 13
#define MAP_OBJ_GFX_RS_BRENDAN 14
#define MAP_OBJ_GFX_RS_MAY 15
#define MAP_OBJ_GFX_LITTLE_BOY 16
#define MAP_OBJ_GFX_LITTLE_GIRL 17
#define MAP_OBJ_GFX_YOUNGSTER 18
#define MAP_OBJ_GFX_BOY 19
#define MAP_OBJ_GFX_BUG_CATCHER 20
#define MAP_OBJ_GFX_SITTING_BOY 21
#define MAP_OBJ_GFX_LASS 22
#define MAP_OBJ_GFX_WOMAN_1 23
#define MAP_OBJ_GFX_BATTLE_GIRL 24
#define MAP_OBJ_GFX_MAN 25
#define MAP_OBJ_GFX_ROCKER 26
#define MAP_OBJ_GFX_FAT_MAN 27
#define MAP_OBJ_GFX_WOMAN_2 28
#define MAP_OBJ_GFX_BEAUTY 29
#define MAP_OBJ_GFX_BALDING_MAN 30
#define MAP_OBJ_GFX_WOMAN_3 31
#define MAP_OBJ_GFX_OLD_MAN_1 32
#define MAP_OBJ_GFX_OLD_MAN_2 33
#define MAP_OBJ_GFX_VIRIDIAN_DRUNK 34
#define MAP_OBJ_GFX_OLD_WOMAN 35
#define MAP_OBJ_GFX_TUBER_M_1 36
#define MAP_OBJ_GFX_TUBER_F 37
#define MAP_OBJ_GFX_TUBER_M_2 38
#define MAP_OBJ_GFX_CAMPER 39
#define MAP_OBJ_GFX_PICNICKER 40
#define MAP_OBJ_GFX_COOLTRAINER_M 41
#define MAP_OBJ_GFX_COOLTRAINER_F 42
#define MAP_OBJ_GFX_SWIMMER_M_WATER 43
#define MAP_OBJ_GFX_SWIMMER_F_WATER 44
#define MAP_OBJ_GFX_SWIMMER_M_LAND 45
#define MAP_OBJ_GFX_SWIMMER_F_LAND 46
#define MAP_OBJ_GFX_WORKER_M 47
#define MAP_OBJ_GFX_WORKER_F 48
#define MAP_OBJ_GFX_ROCKET_M 49
#define MAP_OBJ_GFX_ROCKET_F 50
#define MAP_OBJ_GFX_GBA_KID 51
#define MAP_OBJ_GFX_SUPER_NERD 52
#define MAP_OBJ_GFX_BIKER 53
#define MAP_OBJ_GFX_BLACKBELT 54
#define MAP_OBJ_GFX_SCIENTIST 55
#define MAP_OBJ_GFX_HIKER 56
#define MAP_OBJ_GFX_FISHER 57
#define MAP_OBJ_GFX_CHANNELER 58
#define MAP_OBJ_GFX_CHEF 59
#define MAP_OBJ_GFX_POLICEMAN 60
#define MAP_OBJ_GFX_GENTLEMAN 61
#define MAP_OBJ_GFX_SAILOR 62
#define MAP_OBJ_GFX_CAPTAIN 63
#define MAP_OBJ_GFX_NURSE 64
#define MAP_OBJ_GFX_CABLE_CLUB_RECEPTIONIST 65
#define MAP_OBJ_GFX_UNION_ROOM_RECEPTIONIST 66
#define MAP_OBJ_GFX_UNUSED_MALE_RECEPTIONIST 67
#define MAP_OBJ_GFX_CLERK 68
#define MAP_OBJ_GFX_MG_DELIVERYMAN 69
#define MAP_OBJ_GFX_TRAINER_TOWER_DUDE 70
#define MAP_OBJ_GFX_PROF_OAK 71
#define MAP_OBJ_GFX_BLUE 72
#define MAP_OBJ_GFX_BILL 73
#define MAP_OBJ_GFX_LANCE 74
#define MAP_OBJ_GFX_AGATHA 75
#define MAP_OBJ_GFX_DAISY 76
#define MAP_OBJ_GFX_LORELEI 77
#define MAP_OBJ_GFX_MR_FUJI 78
#define MAP_OBJ_GFX_BRUNO 79
#define MAP_OBJ_GFX_BROCK 80
#define MAP_OBJ_GFX_MISTY 81
#define MAP_OBJ_GFX_LT_SURGE 82
#define MAP_OBJ_GFX_ERIKA 83
#define MAP_OBJ_GFX_KOGA 84
#define MAP_OBJ_GFX_SABRINA 85
#define MAP_OBJ_GFX_BLAINE 86
#define MAP_OBJ_GFX_GIOVANNI 87
#define MAP_OBJ_GFX_MOM 88
#define MAP_OBJ_GFX_CELIO 89
#define MAP_OBJ_GFX_TEACHY_TV_HOST 90
#define MAP_OBJ_GFX_GYM_GUY 91
#define MAP_OBJ_GFX_ITEM_BALL 92
#define MAP_OBJ_GFX_TOWN_MAP 93
#define MAP_OBJ_GFX_POKEDEX 94
#define MAP_OBJ_GFX_CUT_TREE 95
#define MAP_OBJ_GFX_ROCK_SMASH_ROCK 96
#define MAP_OBJ_GFX_STRENGTH_BOULDER 97
#define MAP_OBJ_GFX_FOSSIL 98
#define MAP_OBJ_GFX_RUBY 99
#define MAP_OBJ_GFX_SAPPHIRE 100
#define MAP_OBJ_GFX_OLD_AMBER 101
#define MAP_OBJ_GFX_GYM_SIGN 102
#define MAP_OBJ_GFX_SIGN 103
#define MAP_OBJ_GFX_TRAINER_TIPS 104
#define MAP_OBJ_GFX_CLIPBOARD 105
#define MAP_OBJ_GFX_METEORITE 106
#define MAP_OBJ_GFX_LAPRAS_DOLL 107
#define MAP_OBJ_GFX_SEAGALLOP 108
#define MAP_OBJ_GFX_SNORLAX 109
#define MAP_OBJ_GFX_SPEAROW 110
#define MAP_OBJ_GFX_CUBONE 111
#define MAP_OBJ_GFX_POLIWRATH 112
#define MAP_OBJ_GFX_CLEFAIRY 113
#define MAP_OBJ_GFX_PIDGEOT 114
#define MAP_OBJ_GFX_JIGGLYPUFF 115
#define MAP_OBJ_GFX_PIDGEY 116
#define MAP_OBJ_GFX_CHANSEY 117
#define MAP_OBJ_GFX_OMANYTE 118
#define MAP_OBJ_GFX_KANGASKHAN 119
#define MAP_OBJ_GFX_PIKACHU 120
#define MAP_OBJ_GFX_PSYDUCK 121
#define MAP_OBJ_GFX_NIDORAN_F 122
#define MAP_OBJ_GFX_NIDORAN_M 123
#define MAP_OBJ_GFX_NIDORINO 124
#define MAP_OBJ_GFX_MEOWTH 125
#define MAP_OBJ_GFX_SEEL 126
#define MAP_OBJ_GFX_VOLTORB 127
#define MAP_OBJ_GFX_SLOWPOKE 128
#define MAP_OBJ_GFX_SLOWBRO 129
#define MAP_OBJ_GFX_MACHOP 130
#define MAP_OBJ_GFX_WIGGLYTUFF 131
#define MAP_OBJ_GFX_DODUO 132
#define MAP_OBJ_GFX_FEAROW 133
#define MAP_OBJ_GFX_MACHOKE 134
#define MAP_OBJ_GFX_LAPRAS 135
#define MAP_OBJ_GFX_ZAPDOS 136
#define MAP_OBJ_GFX_MOLTRES 137
#define MAP_OBJ_GFX_ARTICUNO 138
#define MAP_OBJ_GFX_MEWTWO 139
#define MAP_OBJ_GFX_MEW 140
#define MAP_OBJ_GFX_ENTEI 141
#define MAP_OBJ_GFX_SUICUNE 142
#define MAP_OBJ_GFX_RAIKOU 143
#define MAP_OBJ_GFX_LUGIA 144
#define MAP_OBJ_GFX_HO_OH 145
#define MAP_OBJ_GFX_CELEBI 146
#define MAP_OBJ_GFX_KABUTO 147
#define MAP_OBJ_GFX_DEOXYS_D 148
#define MAP_OBJ_GFX_DEOXYS_A 149
#define MAP_OBJ_GFX_DEOXYS_N 150
#define MAP_OBJ_GFX_SS_ANNE 151
#define MAP_OBJ_GFX_VAR_0 240
#define MAP_OBJ_GFX_VAR_1 241
#define MAP_OBJ_GFX_VAR_2 242
#define MAP_OBJ_GFX_VAR_3 243
#define MAP_OBJ_GFX_VAR_4 244
#define MAP_OBJ_GFX_VAR_5 245
#define MAP_OBJ_GFX_VAR_6 246
#define MAP_OBJ_GFX_VAR_7 247
#define MAP_OBJ_GFX_VAR_8 248
#define MAP_OBJ_GFX_VAR_9 249
#define MAP_OBJ_GFX_VAR_A 250
#define MAP_OBJ_GFX_VAR_B 251
#define MAP_OBJ_GFX_VAR_C 252
#define MAP_OBJ_GFX_VAR_D 253
#define MAP_OBJ_GFX_VAR_E 254
#define MAP_OBJ_GFX_VAR_F 255
#define SHADOW_SIZE_S 0
#define SHADOW_SIZE_M 1
+15
View File
@@ -0,0 +1,15 @@
#ifndef GUARD_CONSTANTS_MAP_TYPES_H
#define GUARD_CONSTANTS_MAP_TYPES_H
#define MAP_TYPE_0 0
#define MAP_TYPE_TOWN 1
#define MAP_TYPE_CITY 2
#define MAP_TYPE_ROUTE 3
#define MAP_TYPE_UNDERGROUND 4
#define MAP_TYPE_UNDERWATER 5
#define MAP_TYPE_OCEAN_ROUTE 6
#define MAP_TYPE_7 7
#define MAP_TYPE_INDOOR 8
#define MAP_TYPE_SECRET_BASE 9
#endif // GUARD_CONSTANTS_MAP_TYPES_H
+73
View File
@@ -0,0 +1,73 @@
#ifndef GUARD_CONSTANTS_MENU_H
#define GUARD_CONSTANTS_MENU_H
#define SCR_MENU_CANCEL 127
#define SCR_MENU_UNSET 255
#define MULTICHOICE_YES_NO 0
#define MULTICHOICE_EEVEELUTIONS 1
#define MULTICHOICE_TRAINER_CARD_ICON_TINT 2
#define MULTICHOICE_HOF_QUIT 3
#define MULTICHOICE_EGGS_QUIT 4
#define MULTICHOICE_VICTORIES_QUIT 5
#define MULTICHOICE_HOF_EGGS_QUIT 6
#define MULTICHOICE_HOF_VICTORIES_QUIT 7
#define MULTICHOICE_EGGS_VICTORIES_QUIT 8
#define MULTICHOICE_HOF_EGGS_VICTORIES_QUIT 9
#define MULTICHOICE_EXIT 10
#define MULTICHOICE_EXIT_2 11
#define MULTICHOICE_EXIT_3 12
#define MULTICHOICE_BIKE_SHOP 13
#define MULTICHOICE_GAME_CORNER_POKEMON_PRIZES 14
#define MULTICHOICE_TRAINER_SCHOOL_WHITEBOARD 15
#define MULTICHOICE_YES_NO_INFO 16
#define MULTICHOICE_SINGLE_DOUBLE_MULTI_INFO_EXIT 17
#define MULTICHOICE_YES_NO_INFO_2 18
#define MULTICHOICE_CHALLENGE_INFO_EXIT 19
#define MULTICHOICE_ROOFTOP_B1F 20
#define MULTICHOICE_HELIX 21
#define MULTICHOICE_DOME 22
#define MULTICHOICE_AMBER 23
#define MULTICHOICE_HELIX_AMBER 24
#define MULTICHOICE_DOME_AMBER 25
#define MULTICHOICE_CELADON_VENDING_MACHINE 26
#define MULTICHOICE_GAME_CORNER_COIN_PURCHASE_COUNTER 27
#define MULTICHOICE_EXCELLENT_NOT_SO_BAD 28
#define MULTICHOICE_RIGHT_LEFT 29
#define MULTICHOICE_GAME_CORNER_TMPRIZES 30
#define MULTICHOICE_DEPT_STORE_ELEVATOR 31
#define MULTICHOICE_THIRSTY_GIRL_FRESH_WATER 32
#define MULTICHOICE_THIRSTY_GIRL_SODA_POP 33
#define MULTICHOICE_THIRSTY_GIRL_FRESH_WATER_SODA_POP 34
#define MULTICHOICE_THIRSTY_GIRL_LEMONADE 35
#define MULTICHOICE_THIRSTY_GIRL_FRESH_WATER_LEMONADE 36
#define MULTICHOICE_THIRSTY_GIRL_SODA_POP_LEMONADE 37
#define MULTICHOICE_THIRSTY_GIRL_FRESH_WATER_SODA_POP_LEMONADE 38
#define MULTICHOICE_TRADE_CENTER_COLOSSEUM 39
#define MULTICHOICE_LINK_WIRELESS 40
#define MULTICHOICE_GAME_CORNER_BATTLE_ITEM_PRIZES 41
#define MULTICHOICE_ROCKET_HIDEOUT_ELEVATOR 42
#define MULTICHOICE_LINKED_DIRECT_UNION 43
#define MULTICHOICE_ISLAND_23 44
#define MULTICHOICE_ISLAND_13 45
#define MULTICHOICE_ISLAND_12 46
#define MULTICHOICE_TRADE_COLOSSEUM_CRUSH 47
#define MULTICHOICE_48 48
#define MULTICHOICE_POKEJUMP_DODRIO 49
#define MULTICHOICE_TRADE_COLOSSEUM_2 50
#define MULTICHOICE_MUSHROOMS 51
#define MULTICHOICE_TRADE_COLOSSEUM_BLANK_CRUSH 52
#define MULTICHOICE_TRADE_COLOSSEUM_BLANK 53
#define MULTICHOICE_SEVII_NAVEL 54
#define MULTICHOICE_SEVII_BIRTH 55
#define MULTICHOICE_SEVII_NAVEL_BIRTH 56
#define MULTICHOICE_SEAGALLOP_123 57
#define MULTICHOICE_SEAGALLOP_V23 58
#define MULTICHOICE_SEAGALLOP_V13 59
#define MULTICHOICE_SEAGALLOP_V12 60
#define MULTICHOICE_SEAGALLOP_VERMILION 61
#define MULTICHOICE_62 62
#define MULTICHOICE_JOIN_OR_LEAD 63
#define MULTICHOICE_TRAINER_TOWER_MODE 64
#endif //GUARD_CONSTANTS_MENU_H
+19
View File
@@ -361,4 +361,23 @@
#define MOVES_COUNT 355
#define MOVETUTOR_MEGA_PUNCH 0
#define MOVETUTOR_SWORDS_DANCE 1
#define MOVETUTOR_MEGA_KICK 2
#define MOVETUTOR_BODY_SLAM 3
#define MOVETUTOR_DOUBLE_EDGE 4
#define MOVETUTOR_COUNTER 5
#define MOVETUTOR_SEISMIC_TOSS 6
#define MOVETUTOR_MIMIC 7
#define MOVETUTOR_METRONOME 8
#define MOVETUTOR_SOFT_BOILED 9
#define MOVETUTOR_DREAM_EATER 10
#define MOVETUTOR_THUNDER_WAVE 11
#define MOVETUTOR_EXPLOSION 12
#define MOVETUTOR_ROCK_SLIDE 13
#define MOVETUTOR_SUBSTITUTE 14
#define MOVETUTOR_FRENZY_PLANT 15
#define MOVETUTOR_BLAST_BURN 16
#define MOVETUTOR_HYDRO_CANNON 17
#endif // GUARD_CONSTANTS_MOVES_H
+18
View File
@@ -0,0 +1,18 @@
#ifndef GUARD_CONSTANTS_SEAGALLOP_H
#define GUARD_CONSTANTS_SEAGALLOP_H
#define SEAGALLOP_VERMILION_CITY 0
#define SEAGALLOP_ONE_ISLAND 1
#define SEAGALLOP_TWO_ISLAND 2
#define SEAGALLOP_THREE_ISLAND 3
#define SEAGALLOP_FOUR_ISLAND 4
#define SEAGALLOP_FIVE_ISLAND 5
#define SEAGALLOP_SIX_ISLAND 6
#define SEAGALLOP_SEVEN_ISLAND 7
#define SEAGALLOP_CINNABAR_ISLAND 8
#define SEAGALLOP_NAVEL_ROCK 9
#define SEAGALLOP_BIRTH_ISLAND 10
#define SEAGALLOP_MORE 254
#endif //GUARD_CONSTANTS_SEAGALLOP_H
File diff suppressed because it is too large Load Diff
+183 -142
View File
@@ -3,149 +3,189 @@
#define VAR_0x3F20 0x3F20
#define VAR_0x4000 0x4000
#define VAR_0x4001 0x4001
#define VAR_0x4002 0x4002
#define VAR_0x4003 0x4003
#define VAR_0x4004 0x4004
#define VAR_0x4005 0x4005
#define VAR_0x4006 0x4006
#define VAR_0x4007 0x4007
#define VAR_0x4008 0x4008
#define VAR_0x4009 0x4009
#define VAR_0x400A 0x400A
#define VAR_0x400B 0x400B
#define VAR_0x400C 0x400C
#define VAR_0x400D 0x400D
#define VAR_0x400E 0x400E
#define VAR_0x400F 0x400F
#define VAR_0x4010 0x4010
#define VAR_0x4011 0x4011
#define VAR_0x4012 0x4012
#define VAR_0x4013 0x4013
#define VAR_0x4014 0x4014
#define VAR_0x4015 0x4015
#define VAR_0x4016 0x4016
#define VAR_0x4017 0x4017
#define VAR_0x4018 0x4018
#define VAR_0x4019 0x4019
#define VAR_0x401A 0x401A
#define VAR_0x401B 0x401B
#define VAR_0x401C 0x401C
#define VAR_0x401D 0x401D
#define VAR_0x401E 0x401E
#define VAR_0x401F 0x401F
#define VAR_REPEL_STEP_COUNT 0x4020
#define VAR_0x4021 0x4021
#define VAR_ICE_STEP_COUNT 0x4022
#define VAR_0x4023 0x4023
#define VAR_0x4024 0x4024
#define VAR_0x4025 0x4025
#define VAR_SECRET_BASE_MAP 0x4026
#define VAR_0x4027 0x4027
#define VAR_0x4028 0x4028
#define VAR_0x4029 0x4029
#define VAR_HAPPINESS_STEP_COUNTER 0x402A
#define VAR_POISON_STEP_COUNTER 0x402B
#define VAR_RESET_RTC_ENABLE 0x402C
#define VAR_0x402D 0x402D
#define VAR_0x402E 0x402E
#define VARS_START 0x4000
#define VAR_0x402F 0x402F
// Temporary variables. Reset on map load.
#define VAR_0x4000 0x4000
#define VAR_0x4001 0x4001
#define VAR_0x4002 0x4002
#define VAR_0x4003 0x4003
#define VAR_0x4004 0x4004
#define VAR_0x4005 0x4005
#define VAR_0x4006 0x4006
#define VAR_0x4007 0x4007
#define VAR_0x4008 0x4008
#define VAR_0x4009 0x4009
#define VAR_0x400A 0x400A
#define VAR_0x400B 0x400B
#define VAR_0x400C 0x400C
#define VAR_0x400D 0x400D
#define VAR_0x400E 0x400E
#define VAR_0x400F 0x400F
// Object event graphics IDs which can be changed by
// script commands.
#define VAR_OBJ_GFX_ID_0 0x4010
#define VAR_OBJ_GFX_ID_1 0x4011
#define VAR_OBJ_GFX_ID_2 0x4012
#define VAR_OBJ_GFX_ID_3 0x4013
#define VAR_OBJ_GFX_ID_4 0x4014
#define VAR_OBJ_GFX_ID_5 0x4015
#define VAR_OBJ_GFX_ID_6 0x4016
#define VAR_OBJ_GFX_ID_7 0x4017
#define VAR_OBJ_GFX_ID_8 0x4018
#define VAR_OBJ_GFX_ID_9 0x4019
#define VAR_OBJ_GFX_ID_A 0x401A
#define VAR_OBJ_GFX_ID_B 0x401B
#define VAR_OBJ_GFX_ID_C 0x401C
#define VAR_OBJ_GFX_ID_D 0x401D
#define VAR_OBJ_GFX_ID_E 0x401E
#define VAR_OBJ_GFX_ID_F 0x401F
// If nonzero, counts down by one every step.
// When it hits zero, repel's effect wears off.
#define VAR_REPEL_STEP_COUNT 0x4020
// Counts up every step. Wraps around at 128.
// When wraparound occurs, the friendship of
// every party poke gets a slight boost.
#define VAR_FRIENDSHIP_STEP_COUNT 0x4021
// Maybe unused?
#define VAR_ICE_STEP_COUNT 0x4022
// Step counter. Caps at 1500. If you enter a map with
// renewable hidden items and this counter is capped,
// the counter resets to 0 and all renewable hidden
// item flags are resampled.
#define VAR_RENEWABLE_ITEM_STEP_COUNTER 0x4023
// Determines which wild encounter set to use in the
// Altering Cave. Incremented by Mystery Event.
// Wraps around at 10.
#define VAR_ALTERING_CAVE_WILD_SET 0x4024
// Step counter set to 500 at game start. When you get
// a massage from Daisy, it resets to 0. Caps at 500.
#define VAR_MASSAGE_COOLDOWN_STEP_COUNTER 0x4025
// Step counter. Wraps around at 100. Used to
// determine whether the player has reached the
// triangle in time.
#define VAR_DEOXYS_INTERACTION_STEP_COUNTER 0x4026
// Bits 0-11 are the number of mons in all boxes
// with the species sanity bit set.
// Bits 12-15 are the same for the player's party.
// Used by Quest Log.
#define VAR_QUEST_LOG_MON_COUNTS 0x4027
#define VAR_MENEWS_JISAN_STEP_COUNTER 0x4028
#define VAR_0x4029 0x4029
#define VAR_HAPPINESS_STEP_COUNTER 0x402A
#define VAR_POISON_STEP_COUNTER 0x402B
#define VAR_RESET_RTC_ENABLE 0x402C
#define VAR_0x402D 0x402D
#define VAR_0x402E 0x402E
#define VAR_0x402F 0x402F
#define VAR_0x4030 0x4030
#define VAR_STARTER_MON 0x4031
#define VAR_0x4032 0x4032
#define VAR_ENIGMA_BERRY_AVAILABLE 0x4033
#define VAR_0x4034 0x4034
#define VAR_RESORT_GOREGEOUS_STEP_COUNTER 0x4035
#define VAR_RESORT_GORGEOUS_REQUESTED_MON 0x4036
#define VAR_0x4037 0x4037
#define VAR_0x4038 0x4038
#define VAR_0x4039 0x4039
#define VAR_ELEVATOR_FLOOR 0x403A
#define VAR_RESORT_GORGEOUS_REWARD 0x403B
#define VAR_0x403C 0x403C
#define VAR_HERACROSS_SIZE_RECORD 0x403D
#define VAR_DEOXYS_INTERACTION_NUM 0x403E
#define VAR_0x403F 0x403F
#define VAR_MAGIKARP_SIZE_RECORD 0x4040
#define VAR_0x4041 0x4041
#define VAR_TRAINER_CARD_MON_ICON_TINT_IDX 0x4042
#define VAR_TRAINER_CARD_MON_ICON_1 0x4043
#define VAR_TRAINER_CARD_MON_ICON_2 0x4044
#define VAR_TRAINER_CARD_MON_ICON_3 0x4045
#define VAR_TRAINER_CARD_MON_ICON_4 0x4046
#define VAR_TRAINER_CARD_MON_ICON_5 0x4047
#define VAR_TRAINER_CARD_MON_ICON_6 0x4048
#define VAR_HOF_BRAG_STATE 0x4049
#define VAR_EGG_BRAG_STATE 0x404A
#define VAR_LINK_WIN_BRAG_STATE 0x404B
#define VAR_POKELOT_RND2 0x404C
#define VAR_0x404D 0x404D
#define VAR_0x404E 0x404E
#define VAR_LOTAD_SIZE_RECORD 0x404F
// Map Scene
#define VAR_MAP_SCENE_PALLET_TOWN_OAK 0x4050
#define VAR_MAP_SCENE_VIRIDIAN_CITY_OLD_MAN 0x4051
#define VAR_MAP_SCENE_CERULEAN_CITY_RIVAL 0x4052
#define VAR_VERMILION_CITY_TICKET_CHECK_TRIGGER 0x4053
#define VAR_MAP_SCENE_ROUTE22 0x4054
#define VAR_MAP_SCENE_PALLET_TOWN_PROFESSOR_OAKS_LAB 0x4055
#define VAR_MAP_SCENE_PALLET_TOWN_PLAYERS_HOUSE_2F 0x4056
#define VAR_MAP_SCENE_VIRIDIAN_CITY_MART 0x4057
#define VAR_MAP_SCENE_PALLET_TOWN_GARYS_HOUSE 0x4058
#define VAR_MAP_SCENE_POKEMON_TOWER_6F 0x4059
#define VAR_MAP_SCENE_VIRIDIAN_CITY_GYM_DOOR 0x405A
#define VAR_MAP_SCENE_S_S_ANNE_2F_CORRIDOR 0x405B
#define VAR_MAP_SCENE_SILPH_CO_7F 0x405C
#define VAR_MAP_SCENE_POKEMON_TOWER_2F 0x405D
#define VAR_MAP_SCENE_ROUTE16 0x405E
#define VAR_MAP_SCENE_ROUTE23 0x405F
#define VAR_MAP_SCENE_SILPH_CO_11F 0x4060
#define VAR_MAP_SCENE_PEWTER_CITY_MUSEUM_1F 0x4061
#define VAR_MAP_SCENE_ROUTE5_ROUTE6_ROUTE7_ROUTE8_GATES 0x4062
#define VAR_MAP_SCENE_SEAFOAM_ISLANDS_B4F 0x4063
#define VAR_MAP_SCENE_VICTORY_ROAD_1F 0x4064
#define VAR_MAP_SCENE_VICTORY_ROAD_2F_BOULDER1 0x4065
#define VAR_MAP_SCENE_VICTORY_ROAD_2F_BOULDER2 0x4066
#define VAR_MAP_SCENE_VICTORY_ROAD_3F 0x4067
#define VAR_MAP_SCENE_POKEMON_LEAGUE 0x4068
#define VAR_MAP_SCENE_CINNABAR_ISLAND_POKEMON_LAB_EXPERIMENT_ROOM_WHICH_FOSSIL 0x4069
#define VAR_MAP_SCENE_CINNABAR_ISLAND_POKEMON_LAB_EXPERIMENT_ROOM_REVIVE_STATE 0x406A
#define VAR_MAP_SCENE_ROUTE24 0x406B
#define VAR_MAP_SCENE_PEWTER_CITY 0x406C
#define VAR_0x406D 0x406D
#define VAR_MAP_SCENE_FUCHSIA_CITY_SAFARI_ZONE_ENTRANCE 0x406E
#define VAR_0x406F 0x406F
#define VAR_MAP_SCENE_PALLET_TOWN_SIGN_LADY 0x4070
#define VAR_MAP_SCENE_CINNABAR_ISLAND 0x4071
#define VAR_0x4072 0x4072
#define VAR_MAP_SCENE_SAFFRON_CITY_POKEMON_TRAINER_FAN_CLUB 0x4073
#define VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1 0x4074
#define VAR_MAP_SCENE_ONE_ISLAND_HARBOR 0x4075
#define VAR_MAP_SCENE_ONE_ISLAND_POKEMON_CENTER_1F 0x4076
#define VAR_0x4077 0x4077
#define VAR_MAP_SCENE_TWO_ISLAND 0x4078
#define VAR_MAP_SCENE_TWO_ISLAND_JOYFUL_GAME_CORNER 0x4079
#define VAR_0x407A 0x407A
#define VAR_MAP_SCENE_THREE_ISLAND 0x407B
#define VAR_MAP_SCENE_POKEMON_CENTER_TEALA 0x407C
#define VAR_MAP_SCENE_CERULEAN_CITY_ROCKET 0x407D
#define VAR_MAP_SCENE_VERMILION_CITY 0x407E
#define VAR_MAP_SCENE_MT_EMBER_EXTERIOR 0x407F
#define VAR_MAP_SCENE_ICEFALL_CAVE_BACK 0x4080
#define VAR_MAP_SCENE_SAFFRON_CITY_DOJO 0x4081
#define VAR_MAP_SCENE_TRAINER_TOWER 0x4082
#define VAR_MAP_SCENE_FIVE_ISLAND_LOST_CAVE_ROOM10 0x4083
#define VAR_MAP_SCENE_FIVE_ISLAND_RESORT_GORGEOUS 0x4084
#define VAR_MAP_SCENE_INDIGO_PLATEAU_EXTERIOR 0x4085
#define VAR_MAP_SCENE_FOUR_ISLAND 0x4086
#define VAR_0x4087 0x4087
#define VAR_MAP_SCENE_ROCKET_WAREHOUSE 0x4088
#define VAR_MAP_SCENE_SIX_ISLAND_POKEMON_CENTER_1F 0x4089
#define VAR_MAP_SCENE_CINNABAR_ISLAND_2 0x408A
#define VAR_MAP_SCENE_MT_MOON_B2F 0x408B
#define VAR_0x4030 0x4030
#define VAR_STARTER_MON 0x4031
#define VAR_0x4032 0x4032
#define VAR_ENIGMA_BERRY_AVAILABLE 0x4033
#define VAR_0x4034 0x4034
#define VAR_0x4035 0x4035
#define VAR_STORAGE_UNKNOWN 0x4036
#define VAR_0x4037 0x4037
#define VAR_0x4038 0x4038
#define VAR_0x4039 0x4039
#define VAR_0x403A 0x403A
#define VAR_0x403B 0x403B
#define VAR_0x403C 0x403C
#define VAR_0x403D 0x403D
#define VAR_ALTERING_CAVE_WILD_SET 0x403E
#define VAR_0x403F 0x403F
#define VAR_DAYS 0x4040
#define VAR_0x4041 0x4041
#define VAR_0x4042 0x4042
#define VAR_DEPT_STORE_FLOOR 0x4043
#define VAR_0x4044 0x4044
#define VAR_POKELOT_PRIZE 0x4045
#define VAR_NATIONAL_DEX 0x4046
#define VAR_SEEDOT_SIZE_RECORD 0x4047
#define VAR_ASH_GATHER_COUNT 0x4048
#define VAR_BIRCH_STATE 0x4049
#define VAR_CRUISE_STEP_COUNT 0x404A
#define VAR_POKELOT_RND1 0x404B
#define VAR_POKELOT_RND2 0x404C
#define VAR_0x404D 0x404D
#define VAR_0x404E 0x404E
#define VAR_LOTAD_SIZE_RECORD 0x404F
#define VAR_MAP_SCENE_PALLET_TOWN 0x4050
#define VAR_0x4051 0x4051
#define VAR_0x4052 0x4052
#define VAR_VERMILION_CITY_TICKET_CHECK_TRIGGER 0x4053
#define VAR_0x4054 0x4054
#define VAR_MAP_SCENE_PALLET_TOWN_PROFESSOR_OAKS_LAB 0x4055
#define VAR_MAP_SCENE_PALLET_TOWN_PLAYERS_HOUSE_2F 0x4056
#define VAR_MAP_SCENE_VIRIDIAN_CITY_MART 0x4057
#define VAR_0x4058 0x4058
#define VAR_0x4059 0x4059
#define VAR_0x405A 0x405A
#define VAR_0x405B 0x405B
#define VAR_0x405C 0x405C
#define VAR_0x405D 0x405D
#define VAR_MAP_SCENE_ROUTE16 0x405E
#define VAR_0x405F 0x405F
#define VAR_0x4060 0x4060
#define VAR_0x4061 0x4061
#define VAR_0x4062 0x4062
#define VAR_MAP_SCENE_SEAFOAM_ISLANDS_B4F 0x4063
#define VAR_0x4064 0x4064
#define VAR_0x4065 0x4065
#define VAR_0x4066 0x4066
#define VAR_0x4067 0x4067
#define VAR_0x4068 0x4068
#define VAR_0x4069 0x4069
#define VAR_0x406A 0x406A
#define VAR_0x406B 0x406B
#define VAR_0x406C 0x406C
#define VAR_0x406D 0x406D
#define VAR_MAP_SCENE_FUCHSIA_CITY_SAFARI_ZONE_ENTRANCE 0x406E
#define VAR_0x406F 0x406F
#define VAR_0x4070 0x4070
#define VAR_0x4071 0x4071
#define VAR_0x4072 0x4072
#define VAR_MAP_SCENE_SAFFRON_CITY_POKEMON_TRAINER_FAN_CLUB 0x4073
#define VAR_MAP_SCENE_SEVEN_ISLAND_HOUSE_ROOM1 0x4074
#define VAR_MAP_SCENE_ONE_ISLAND_HARBOR 0x4075
#define VAR_MAP_SCENE_ONE_ISLAND_POKEMON_CENTER_1F 0x4076
#define VAR_0x4077 0x4077
#define VAR_0x4078 0x4078
#define VAR_MAP_SCENE_TWO_ISLAND_JOYFUL_GAME_CORNER 0x4079
#define VAR_0x407A 0x407A
#define VAR_0x407B 0x407B
#define VAR_0x407C 0x407C
#define VAR_0x407D 0x407D
#define VAR_MAP_SCENE_VERMILION_CITY 0x407E
#define VAR_0x407F 0x407F
#define VAR_0x4080 0x4080
#define VAR_0x4081 0x4081
#define VAR_0x4082 0x4082
#define VAR_MAP_SCENE_FIVE_ISLAND_LOST_CAVE_ROOM10 0x4083
#define VAR_MAP_SCENE_FIVE_ISLAND_RESORT_GORGEOUS 0x4084
#define VAR_MAP_SCENE_INDIGO_PLATEAU_EXTERIOR 0x4085
#define VAR_MAP_SCENE_FOUR_ISLAND 0x4086
#define VAR_0x4087 0x4087
#define VAR_0x4088 0x4088
#define VAR_MAP_SCENE_SIX_ISLAND_POKEMON_CENTER_1F 0x4089
#define VAR_MAP_SCENE_CINNABAR_ISLAND 0x408A
#define VAR_0x408B 0x408B
#define VAR_0x408C 0x408C
#define VAR_0x408D 0x408D
#define VAR_0x408E 0x408E
@@ -187,7 +227,7 @@
#define VAR_0x40B2 0x40B2
#define VAR_0x40B3 0x40B3
#define VAR_PORTHOLE 0x40B4
#define VAR_0x40B5 0x40B5
#define VAR_EVENT_PICHU_SLOT 0x40B5
#define VAR_0x40B6 0x40B6
#define VAR_0x40B7 0x40B7
#define VAR_0x40B8 0x40B8
@@ -263,6 +303,7 @@
#define VAR_0x40FE 0x40FE
#define VAR_0x40FF 0x40FF
#define SPECIAL_VARS_START 0x8000
#define VAR_0x8000 0x8000
#define VAR_0x8001 0x8001
#define VAR_0x8002 0x8002
@@ -283,6 +324,6 @@
#define VAR_CONTEST_CATEGORY 0x8011
#define VAR_MON_BOX_ID 0x8012
#define VAR_MON_BOX_POS 0x8013
#define VAR_0x8014 0x8014
#define VAR_TEXT_COLOR 0x8014
#endif // GUARD_CONSTANTS_VARS_H
+18 -19
View File
@@ -4,6 +4,9 @@
#include "global.h"
#include "constants/species.h"
#define SPECIES_SHINY_TAG 500
#define TRAINER_ENCOUNTER_MUSIC(trainer)((gTrainers[trainer].encounterMusic_gender & 0x7F))
struct MonCoords
{
// This would use a bitfield, but some function
@@ -12,27 +15,26 @@ struct MonCoords
u8 y_offset;
};
extern struct MonCoords gTrainerBackPicCoords[];
extern struct MonCoords gTrainerFrontPicCoords[];
extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1];
extern const u8 gMoveNames[][13];
extern const u8 gAbilityNames[][13];
extern const u8 gTypeNames[][7];
extern const u16 gUnknown_8251CB8[];
extern const u16 gUnknown_8251FEE[];
extern const u16 gUnknown_8252324[];
extern const u16 gUnknown_82539D4[];
extern const struct MonCoords gMonFrontPicCoords[];
extern const struct CompressedSpriteSheet gMonFrontPicTable[];
extern const struct MonCoords gMonBackPicCoords[];
extern const struct CompressedSpriteSheet gMonBackPicTable[];
extern const struct CompressedSpritePalette gMonPaletteTable[];
extern const struct CompressedSpritePalette gMonShinyPaletteTable[];
extern const union AnimCmd *const *const gTrainerFrontAnimsPtrTable[];
extern const struct MonCoords gTrainerFrontPicCoords[];
extern const struct CompressedSpriteSheet gTrainerFrontPicTable[];
extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[];
extern const union AnimCmd *const *const gTrainerBackAnimsPtrTable[];
extern const struct MonCoords gTrainerBackPicCoords[];
extern const struct CompressedSpritePalette gTrainerBackPicPaletteTable[];
extern const struct MonCoords gMonFrontPicCoords[];
extern const struct MonCoords gMonBackPicCoords[];
extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow;
extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow;
@@ -42,23 +44,20 @@ extern const u8 gEnemyMonElevation[NUM_SPECIES];
extern const u8 *const gBattleAnims_General[];
extern const u8 *const gBattleAnims_Special[];
extern const union AnimCmd *const *const gTrainerBackAnimsPtrTable[];
extern const union AnimCmd *const *const gTrainerFrontAnimsPtrTable[];
extern const struct OamData gUnknown_824F010;
extern const struct OamData gUnknown_824F018;
extern const union AnimCmd *const gUnknown_82349BC[];
extern const union AffineAnimCmd *const gUnknown_82348C8[];
extern const union AffineAnimCmd *const gUnknown_8234944[];
extern const union AnimCmd *const gSpriteAnimTable_82349BC[];
extern const union AffineAnimCmd *const gSpriteAffineAnimTable_82348C8[];
extern const union AffineAnimCmd *const gSpriteAffineAnimTable_8234944[];
extern const struct SpriteFrameImage gUnknown_8234698[];
extern const struct SpriteFrameImage gUnknown_82346B8[];
extern const struct SpriteFrameImage gUnknown_82346D8[];
extern const struct SpriteFrameImage gUnknown_82346F8[];
extern const struct SpriteFrameImage gUnknown_8234718[];
extern const struct SpriteFrameImage gUnknown_8234740[];
extern const struct SpriteFrameImage gUnknown_8234768[];
extern const struct SpriteFrameImage gUnknown_8234788[];
extern const struct SpriteFrameImage gUnknown_82347A8[];
extern const struct SpriteFrameImage gUnknown_82347C8[];
extern const struct SpriteFrameImage gTrainerBackPicTable_Red[];
extern const struct SpriteFrameImage gTrainerBackPicTable_Leaf[];
extern const struct SpriteFrameImage gTrainerBackPicTable_PokeDude[];
extern const struct SpriteFrameImage gTrainerBackPicTable_OldMan[];
extern const struct SpriteFrameImage gTrainerBackPicTable_RSBrendan[];
extern const struct SpriteFrameImage gTrainerBackPicTable_RSMay[];
#endif // GUARD_DATA_H
+22 -26
View File
@@ -6,6 +6,26 @@
#include "constants/flags.h"
#include "constants/vars.h"
extern u16 gSpecialVar_0x8000;
extern u16 gSpecialVar_0x8001;
extern u16 gSpecialVar_0x8002;
extern u16 gSpecialVar_0x8003;
extern u16 gSpecialVar_0x8004;
extern u16 gSpecialVar_0x8005;
extern u16 gSpecialVar_0x8006;
extern u16 gSpecialVar_0x8007;
extern u16 gSpecialVar_0x8008;
extern u16 gSpecialVar_0x8009;
extern u16 gSpecialVar_0x800A;
extern u16 gSpecialVar_0x800B;
extern u16 gSpecialVar_Facing;
extern u16 gSpecialVar_Result;
extern u16 gSpecialVar_LastTalked;
extern u16 gSpecialVar_MonBoxId;
extern u16 gSpecialVar_MonBoxPos;
extern u16 gSpecialVar_TextColor;
extern u16 gSpecialVar_PrevTextColor;
void InitEventData(void);
void ClearTempFieldEventData(void);
void ClearUpperFlags(void);
@@ -32,35 +52,11 @@ u8 FlagSet(u16 id);
u8 FlagClear(u16 id);
bool8 FlagGet(u16 id);
u16 * GetVarPointer(u16 id);
bool32 Flag_0x839_IsSet(void);
void sub_806E6FC(void);
bool32 IsMysteryGiftEnabled(void);
void ResetSpecialVars(void);
void sub_806E2D0(void);
void sub_806E370(void);
bool32 IsNationalPokedexEnabled(void);
void sub_806E190(void);
extern u16 gSpecialVar_0x8000;
extern u16 gSpecialVar_0x8001;
extern u16 gSpecialVar_0x8002;
extern u16 gSpecialVar_0x8003;
extern u16 gSpecialVar_0x8004;
extern u16 gSpecialVar_0x8005;
extern u16 gSpecialVar_0x8006;
extern u16 gSpecialVar_0x8007;
extern u16 gSpecialVar_0x8008;
extern u16 gSpecialVar_0x8009;
extern u16 gSpecialVar_0x800A;
extern u16 gSpecialVar_0x800B;
extern u16 gSpecialVar_Result;
extern u16 gSpecialVar_LastTalked;
extern u16 gSpecialVar_Facing;
extern u16 gSpecialVar_MonBoxId;
extern u16 gSpecialVar_MonBoxPos;
extern u16 gSpecialVar_0x8014;
extern u16 gSpecialVar_Result;
extern u16 gSpecialVar_0x8004;
extern u16 gUnknown_20370DA;
extern u16 gUnknown_20370DC;
#endif // GUARD_EVENT_DATA_H
+18
View File
@@ -1155,6 +1155,15 @@ extern const u8 EventScript_SafariOutOfBalls[];
extern const u8 EventScript_ItemfinderDigUpUnderfootItem[];
// battle_setup
extern const u8 EventScript_DoTrainerBattle[];
extern const u8 EventScript_TryDoDoubleTrainerBattle[];
extern const u8 EventScript_TryDoNormalTrainerBattle[];
extern const u8 EventScript_TryDoDoubleRematchBattle[];
extern const u8 EventScript_TryDoRematchBattle[];
extern const u8 gUnknown_81A4EB4[];
extern const u8 EventScript_1C555B[];
// new_game
extern const u8 EventScript_ResetAllMapFlags[];
@@ -1168,4 +1177,13 @@ extern const u8 gText_SavingDontTurnOffThePower[];
extern const u8 gText_PlayerSavedTheGame[];
extern const u8 gText_DifferentGameFile[];
// script_menu
extern const u8 EventScript_1A7AE0[];
extern const u8 Text_1BC388[];
extern const u8 Text_1BC3C7[];
extern const u8 Text_1BCB42[];
extern const u8 Text_1BCA95[];
extern const u8 Text_1BCACB[];
extern const u8 Text_1BCAF2[];
#endif //GUARD_EVENT_SCRIPTS_H
+2 -2
View File
@@ -3,8 +3,8 @@
#include "global.h"
void BeginEvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, bool8 canStopEvo, u8 partyID);
void EvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, bool8 canStopEvo, u8 partyID);
void BeginEvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, u8, u8 partyID);
void EvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, u8, u8 partyID);
void TradeEvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, u8 preEvoSpriteID, u8 partyID);
extern void (*gCB2_AfterEvolution)(void);
+1 -26
View File
@@ -2,32 +2,7 @@
#define GUARD_FAME_CHECKER_H
#include "main.h"
enum {
FAMECHECKER_OAK,
FAMECHECKER_DAISY,
FAMECHECKER_BROCK,
FAMECHECKER_MISTY,
FAMECHECKER_LTSURGE,
FAMECHECKER_ERIKA,
FAMECHECKER_KOGA,
FAMECHECKER_SABRINA,
FAMECHECKER_BLAINE,
FAMECHECKER_LORELEI,
FAMECHECKER_BRUNO,
FAMECHECKER_AGATHA,
FAMECHECKER_LANCE,
FAMECHECKER_BILL,
FAMECHECKER_MRFUJI,
FAMECHECKER_GIOVANNI,
NUM_FAMECHECKER_PERSONS
};
enum {
FCPICKSTATE_NO_DRAW,
FCPICKSTATE_SILHOUETTE,
FCPICKSTATE_COLORED
};
#include "constants/fame_checker.h"
enum {
FCWINDOWID_LIST,
+3
View File
@@ -27,5 +27,8 @@ extern u16 gUnknown_03005DE8;
void DrawWholeMapView(void);
void CurrentMapDrawMetatileAt(int x, int y);
void sub_805A658(s16 *x, s16 *y);
void SetCameraPanningCallback(void (*cb)(void));
void SetCameraPanning(s16 x, s16 y);
void InstallCameraPanAheadCallback(void);
#endif //GUARD_FIELD_CAMERA_H
+3
View File
@@ -5,4 +5,7 @@
extern u32 gUnknown_3005078;
void RestartWildEncounterImmunitySteps(void);
void ClearPoisonStepCounter(void);
#endif //GUARD_FIELD_CONTROL_AVATAR_H
+4 -70
View File
@@ -2,76 +2,7 @@
#define GUARD_FIELD_EFFECTS_H
#include "global.h"
enum FieldEffectScriptIdx
{
FLDEFF_EXCLAMATION_MARK_ICON_1,
FLDEFF_USE_CUT_ON_GRASS,
FLDEFF_USE_CUT_ON_TREE,
FLDEFF_SHADOW,
FLDEFF_TALL_GRASS,
FLDEFF_RIPPLE,
FLDEFF_FIELD_MOVE_SHOW_MON,
FLDEFF_ASH,
FLDEFF_SURF_BLOB,
FLDEFF_USE_SURF,
FLDEFF_DUST,
FLDEFF_USE_SECRET_POWER_CAVE,
FLDEFF_JUMP_TALL_GRASS,
FLDEFF_SAND_FOOTPRINTS,
FLDEFF_JUMP_BIG_SPLASH,
FLDEFF_SPLASH,
FLDEFF_JUMP_SMALL_SPLASH,
FLDEFF_LONG_GRASS,
FLDEFF_JUMP_LONG_GRASS,
FLDEFF_UNKNOWN_19,
FLDEFF_UNKNOWN_20,
FLDEFF_UNKNOWN_21,
FLDEFF_UNKNOWN_22,
FLDEFF_BERRY_TREE_GROWTH_SPARKLE,
FLDEFF_DEEP_SAND_FOOTPRINTS,
FLDEFF_POKECENTER_HEAL,
FLDEFF_USE_SECRET_POWER_TREE,
FLDEFF_USE_SECRET_POWER_SHRUB,
FLDEFF_TREE_DISGUISE,
FLDEFF_MOUNTAIN_DISGUISE,
FLDEFF_NPCFLY_OUT,
FLDEFF_USE_FLY,
FLDEFF_FLY_IN,
FLDEFF_EXCLAMATION_MARK_ICON_2,
FLDEFF_FEET_IN_FLOWING_WATER,
FLDEFF_BIKE_TIRE_TRACKS,
FLDEFF_SAND_DISGUISE,
FLDEFF_USE_ROCK_SMASH,
FLDEFF_USE_DIG,
FLDEFF_SAND_PILE,
FLDEFF_USE_STRENGTH,
FLDEFF_SHORT_GRASS,
FLDEFF_HOT_SPRINGS_WATER,
FLDEFF_USE_WATERFALL,
FLDEFF_USE_DIVE,
FLDEFF_POKEBALL,
FLDEFF_HEART_ICON,
FLDEFF_NOP_47,
FLDEFF_NOP_48,
FLDEFF_POP_OUT_OF_ASH,
FLDEFF_LAVARIDGE_GYM_WARP,
FLDEFF_SWEET_SCENT,
FLDEFF_SAND_PILLAR,
FLDEFF_BUBBLES,
FLDEFF_SPARKLE,
FLDEFF_SECRET_POWER_CAVE,
FLDEFF_SECRET_POWER_TREE,
FLDEFF_SECRET_POWER_SHRUB,
FLDEFF_CUT_GRASS,
FLDEFF_FIELD_MOVE_SHOW_MON_INIT,
FLDEFF_USE_FLY_ANCIENT_TOMB,
FLDEFF_PCTURN_ON,
FLDEFF_HALL_OF_FAME_RECORD,
FLDEFF_USE_TELEPORT,
FLDEFF_UNK_40,
FLDEFF_UNK_41 // TODO: related to vs_seeker
};
#include "constants/field_effects.h"
extern u32 gFieldEffectArguments[8];
extern void (*gPostMenuFieldCallback)(void);
@@ -89,5 +20,8 @@ void sub_8084454(void);
void sub_8084784(u8 a0, u8 a1);
void sub_8084F2C(u8 a0);
void sub_80853CC(u8 a0);
void sub_8083598(u8 a0);
void sub_8083A5C(struct Sprite * sprite, u8 spriteId);
u8 sub_8083970(u16 species, s16 x, s16 y, bool8 unused);
#endif //GUARD_FIELD_EFFECTS_H
+3 -1
View File
@@ -85,7 +85,7 @@ void sub_8063E28(struct MapObject *, struct Sprite *);
void FieldObjectSetHeldMovement(struct MapObject *, u8);
void npc_coords_shift_still(struct MapObject *);
void sub_805FE7C(struct MapObject *, u8);
void npc_set_running_behaviour_etc(struct MapObject *, u8);
void SetTrainerMovementType(struct MapObject *, u8);
u8 sub_80634F0(u8 direction);
u8 sub_8063500(u8 a0);
void EventObjectSetGraphicsId(struct MapObject *mapObject, u8 a1);
@@ -94,6 +94,8 @@ void npc_paltag_set_load(u8 mode);
bool8 FieldObjectIsMovementOverridden(struct MapObject *mapObject);
u8 FieldObjectCheckHeldMovementStatus(struct MapObject *mapObject);
u8 sub_8063F84(u8 direction);
u8 GetTrainerFacingDirectionMovementType(u8 direction);
void CameraObjectSetFollowedObjectId(u8 spriteId);
// Exported data declarations
+2 -2
View File
@@ -13,8 +13,8 @@ u8 player_get_direction_upper_nybble(void);
u8 player_get_x22(void);
void sub_808D074(u8);
void sub_805C270();
void sub_805C780();
void sub_805C270(void);
void sub_805C780(void);
void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr);
u8 sub_805C808(u8);
void SetPlayerAvatarStateMask(u8 mask);
+4 -3
View File
@@ -12,17 +12,18 @@ enum HiddenItemAttr
};
u8 GetLeadMonIndex(void);
u8 CountDigits(u16 number);
s32 CountDigits(s32 number);
void TV_PrintIntToStringVar(u8, int);
u16 ScrSpecial_GetStarter(void);
void sub_80CCB68(void);
void StopPokemonLeagueLightingEffectTask(void);
void nullsub_60(void);
void nullsub_61(void);
u8 ContextNpcGetTextColor(void);
void set_unknown_box_id(u8);
u16 get_unknown_box_id(void);
bool8 sub_80CC7B4(void);
u16 GetHiddenItemAttr(struct HiddenItemStruct hiddenItem, u8 attr);
u16 GetHiddenItemAttr(u32 hiddenItem, u8 attr);
u8 GetUnlockedSeviiAreas(void);
u32 GetPlayerTrainerId(void);
#endif // GUARD_FIELD_SPECIALS_H
+1
View File
@@ -25,6 +25,7 @@ bool32 CanCameraMoveInDirection(s32);
u32 GetBehaviorByMetatileIdAndMapData(struct MapData *mapData, u16 metatile, u8 attr);
const struct MapHeader * mapconnection_get_mapheader(struct MapConnection * connection);
struct MapConnection * GetMapConnectionAtPos(s16 x, s16 y);
void sub_8059948(u8 a0, u8 a1);
void save_serialize_map(void);
+3 -31
View File
@@ -13,35 +13,6 @@ enum
CONNECTION_EMERGE
};
// map types
enum
{
MAP_TYPE_0,
MAP_TYPE_TOWN,
MAP_TYPE_CITY,
MAP_TYPE_ROUTE,
MAP_TYPE_UNDERGROUND,
MAP_TYPE_UNDERWATER,
MAP_TYPE_6,
MAP_TYPE_7,
MAP_TYPE_INDOOR,
MAP_TYPE_SECRET_BASE
};
// map battle scenes
enum
{
MAP_BATTLE_SCENE_NORMAL, // 0
MAP_BATTLE_SCENE_GYM, // 1
MAP_BATTLE_SCENE_MAGMA, // 2
MAP_BATTLE_SCENE_AQUA, // 3
MAP_BATTLE_SCENE_SIDNEY, // 4
MAP_BATTLE_SCENE_PHOEBE, // 5
MAP_BATTLE_SCENE_GLACIA, // 6
MAP_BATTLE_SCENE_DRAKE, // 7
MAP_BATTLE_SCENE_BATTLE_TOWER, // 8
};
typedef void (*TilesetCB)(void);
struct Tileset
@@ -134,7 +105,8 @@ union BgUnion
u8 *script;
// hidden item type probably
struct HiddenItemStruct hiddenItem;
struct HiddenItemStruct hiddenItemStr;
u32 hiddenItem;
// secret base type
u32 secretBaseId;
@@ -241,7 +213,7 @@ struct MapObject
/*0x0C*/ struct Coords16 coords1;
/*0x10*/ struct Coords16 coords2;
/*0x14*/ struct Coords16 coords3;
/*0x18*/ u8 mapobj_unk_18:4; //current direction?
/*0x18*/ u8 facingDirection:4; //current direction?
/*0x18*/ u8 placeholder18:4;
/*0x19*/ union MapObjectRange range;
/*0x1A*/ u8 mapobj_unk_1A;
+31 -11
View File
@@ -32,6 +32,13 @@
// GF's lingo
#define NELEMS ARRAY_COUNT
#define SWAP(a, b, temp) \
{ \
temp = a; \
a = b; \
b = temp; \
}
// useful math macros
// Converts a number to Q8.8 fixed-point format
@@ -127,7 +134,7 @@ struct Pokedex
/*0x00*/ u8 order;
/*0x01*/ u8 unknown1;
/*0x02*/ u8 nationalMagic; // must equal 0xDA in order to have National mode
/*0x03*/ u8 unknown2;
/*0x03*/ u8 unknown2; // set to 0xB9 when national dex is first enabled
/*0x04*/ u32 unownPersonality; // set when you first see Unown
/*0x08*/ u32 spindaPersonality; // set when you first see Spinda
/*0x0C*/ u32 unknown3;
@@ -194,6 +201,11 @@ struct LinkBattleRecords
u8 languages[LINK_B_RECORDS_COUNT];
};
#include "constants/game_stat.h"
#include "global.fieldmap.h"
#include "global.berry.h"
#include "pokemon.h"
struct UnknownSaveBlock2Struct
{
u8 field_0;
@@ -214,6 +226,20 @@ struct UnknownSaveBlock2Struct
u8 field_EB;
}; // sizeof = 0xEC
struct BattleTowerEReaderTrainer
{
/*0x4A0 0x3F0 0x00*/ u8 unk0;
/*0x4A1 0x3F1 0x01*/ u8 facilityClass;
/*0x4A2 0x3F2 0x02*/ u16 winStreak;
/*0x4A4 0x3F4 0x04*/ u8 name[8];
/*0x4AC 0x3FC 0x0C*/ u8 trainerId[4];
/*0x4B0 0x400 0x10*/ u16 greeting[6];
/*0x4BC 0x40C 0x1C*/ u16 farewellPlayerLost[6];
/*0x4C8 0x418 0x28*/ u16 farewellPlayerWon[6];
/*0x4D4 0x424 0x34*/ struct BattleTowerPokemon party[3];
/*0x558 0x4A8 0xB8*/ u32 checksum;
};
struct UnkSaveBlock2Substruct_55C
{
/* 0x000:0x55C */ u8 unk_00_0:1;
@@ -232,7 +258,7 @@ struct UnkSaveBlock2Substruct_55C
struct UnkSaveBlock2Substruct_B0
{
/* 0x000:0x0B0 */ u8 field_0[0x3F0];
/* 0x3F0:0x4A0 */ u32 field_3F0[0x2F];
/* 0x3F0:0x4A0 */ struct BattleTowerEReaderTrainer field_3F0;
/* 0x4AC:0x55C */ struct UnkSaveBlock2Substruct_55C field_4AC;
/* 0x4C4:0x574 */ u8 field_4C4[0x324];
}; // size: 0x7E8
@@ -261,7 +287,6 @@ struct SaveBlock2
/*0x0A8*/ u32 field_A8;
/*0x0AC*/ u8 field_AC;
/*0x0AD*/ u8 field_AD;
/*0x0AE*/ u8 filler_AE[0x2];
/*0x0B0*/ struct UnkSaveBlock2Substruct_B0 unk_B0;
/*0x898*/ u16 mapView[0x100];
/*0xA98*/ struct LinkBattleRecords linkBattleRecords;
@@ -304,11 +329,6 @@ struct SecretBaseRecord
/*0x1AD0*/ struct SecretBaseParty party;
};
#include "constants/game_stat.h"
#include "global.fieldmap.h"
#include "global.berry.h"
#include "pokemon.h"
struct WarpData
{
s8 mapGroup;
@@ -493,12 +513,12 @@ struct RecordMixingDayCareMail
bool16 holdsItem[DAYCARE_MON_COUNT];
};
struct MysteryEventStruct
struct MENewsJisanStruct
{
u8 unk_0_0:2;
u8 unk_0_2:3;
u8 unk_0_5:3;
u8 unk_1;
u8 berry;
};
struct QuestLogNPCData
@@ -674,7 +694,7 @@ struct MEventBuffers
/*0x1c0 0x32e0*/ struct MEventBuffer_32E0 buffer_1c0;
/*0x310 0x3430*/ struct MEventBuffer_3430 buffer_310;
/*0x338 0x3458*/ u16 unk_338[4];
/*0x340 0x3460*/ struct MysteryEventStruct unk_340;
/*0x340 0x3460*/ struct MENewsJisanStruct unk_340;
/*0x344 0x3464*/ u32 unk_344[2][5];
}; // 0x36C 0x348C
+3179 -1
View File
File diff suppressed because it is too large Load Diff
-1
View File
@@ -37,7 +37,6 @@ void CopyItemNameHandlePlural(u16 itemId, u8 *string, u32 quantity);
bool8 IsBagPocketNonEmpty(u8 pocket);
bool8 CheckBagHasItem(u16 itemId, u16 count);
bool8 CheckBagHasSpace(u16 itemId, u16 count);
bool8 AddBagItem(u16 itemId, u16 count);
bool8 RemoveBagItem(u16 itemId, u16 count);
u8 GetPocketByItemId(u16 itemId);
void ClearItemSlots(struct ItemSlot *itemSlots, u8 b);
+1
View File
@@ -36,6 +36,7 @@ void ItemMenu_SetExitCallback(void (*)(void));
void DisplayItemMessageInBag(u8 taskId, u8 bgId, const u8 * string, TaskFunc followUpFunc);
void sub_810A1F8(u8 taskId);
void sub_8107ECC(void);
void sub_810AF74(void);
void sub_8108DC8(u8 pocketId);
void sub_81089F4(u8 pocketId);
void sub_8107DB4(u8 menuType, u8 pocket, MainCallback callback);
+1 -1
View File
@@ -11,7 +11,7 @@ bool32 MG_PrintTextOnWindow1AndWaitButton(u8 * cmdPtr, const u8 * src);
void sub_80FA190(void);
void MG_DrawCheckerboardPattern(void);
void task_add_05_task_del_08FA224_when_no_RfuFunc(void);
bool8 IsRfuTaskFinished(void);
bool8 IsLinkRfuTaskFinished(void);
void DestroyWirelessStatusIndicatorSprite(void);
void MEvent_CreateTask_CardOrNewsWithFriend(u8);
void MEvent_CreateTask_CardOrNewsOverWireless(u8);
+4 -1
View File
@@ -18,7 +18,10 @@
|| itemId == ITEM_FAB_MAIL \
|| itemId == ITEM_RETRO_MAIL))
#define FIRST_MAIL_IDX ITEM_ORANGE_MAIL
void sub_80BEBEC(struct MailStruct * mail, void (* callback)(void), u8 a2);
#define ITEM_TO_MAIL(itemId) (itemId - FIRST_MAIL_IDX)
void ReadMail(struct MailStruct * mail, void (*savedCallback)(void), bool8 messageExists);
#endif // GUARD_MAIL_H
+1 -1
View File
@@ -3,7 +3,7 @@
#include "global.h"
void player_bitmagic(void);
void FreezeEventObjects(void);
void FreezeMapObject(struct MapObject *);
void FreezeMapObjectsExceptOne(u8 mapObjectId);
+3 -3
View File
@@ -3,8 +3,8 @@
#include "global.h"
void GenerateRandomNews(u32 a0);
void sub_8146C88(void);
void sub_8146CA4(void);
void MENewsJisan_SetRandomReward(u32 a0);
void MENewsJisanReset(void);
void MENewsJisanStepCounter(void);
#endif //GUARD_MENEWS_JISAN_H
+6 -6
View File
@@ -10,7 +10,7 @@ bool8 MetatileBehavior_IsJumpNorth(u8 metatileBehavior);
bool8 MetatileBehavior_IsJumpSouth(u8 metatileBehavior);
bool8 MetatileBehavior_IsTallGrass(u8 metatileBehavior);
bool8 MetatileBehavior_IsMB21OrSand(u8 metatileBehavior);
bool8 MetatileBehavior_IsMB21OrWaterfallBottom(u8 metatileBehavior);
bool8 MetatileBehavior_IsSandOrDeepSand(u8 metatileBehavior);
bool8 MetatileBehavior_ReturnFalse(u8 metatileBehavior);
bool8 MetatileBehavior_IsReflective(u8 metatileBehavior);
bool8 MetatileBehavior_IsIce(u8 metatileBehavior);
@@ -53,15 +53,15 @@ bool8 MetatileBehavior_IsPC(u8 metatileBehavior);
bool8 MetatileBehavior_IsPondWaterOrPuddle(u8 metatileBehavior);
bool8 MetatileBehavior_IsPuddle(u8 metatileBehavior);
bool8 MetatileBehavior_IsTallGrass_2(u8 metatileBehavior);
bool8 MetatileBehavior_ReturnFalse_3(u8 metatileBehavior);
bool8 MetatileBehavior_IsLongGrass(u8 metatileBehavior);
bool8 MetatileBehavior_ReturnFalse_4(u8 metatileBehavior);
bool8 MetatileBehavior_ReturnFalse_5(u8 metatileBehavior);
bool8 MetatileBehavior_ReturnFalse_6(u8 metatileBehavior);
bool8 MetatileBehavior_ReturnFalse_7(u8 metatileBehavior);
bool8 MetatileBehavior_IsBridge(u8 metatileBehavior);
bool8 MetatileBehavior_GetBridgeType(u8 metatileBehavior);
bool8 MetatileBehavior_UnusedIsMB_01(u8 metatileBehavior);
bool8 MetatileBehavior_UnusedIsTallGrass(u8 metatileBehavior);
bool8 MetatileBehavior_IsMB0B(u8 metatileBehavior);
bool8 MetatileBehavior_IsMB0C(u8 metatileBehavior);
bool8 MetatileBehavior_IsIndoorEncounter(u8 metatileBehavior);
bool8 MetatileBehavior_IsMountain(u8 metatileBehavior);
bool8 MetatileBehavior_IsDeepOrSemiDeepWater(u8 metatileBehavior);
bool8 MetatileBehavior_IsMB19(u8 metatileBehavior);
bool8 MetatileBehavior_IsWaterfallBottom(u8 metatileBehavior);
+2 -1
View File
@@ -36,7 +36,7 @@ struct MEvent_Str_2
struct MEventBuffer_3120_Sub * GetSavedWonderNews(void);
struct MEventBuffer_32E0_Sub * GetSavedWonderCard(void);
struct MEventBuffer_3430_Sub * sav1_get_mevent_buffer_2(void);
struct MysteryEventStruct * sub_8143D94(void);
struct MENewsJisanStruct * GetMENewsJisanStructPtr(void);
bool32 sub_8143DC8(const struct MEventBuffer_3120_Sub * src);
bool32 ValidateReceivedWonderNews(void);
bool32 ValidateReceivedWonderCard(void);
@@ -67,5 +67,6 @@ bool32 WonderNews_Test_Unk_02(void);
bool32 WonderCard_Test_Unk_08_6(void);
u32 MENews_GetInput(u16 input);
void sub_8143D24(void);
u16 sub_81445C0(u32 command);
#endif //GUARD_MEVENT_H
+4 -2
View File
@@ -35,6 +35,7 @@ extern struct UCoords32 gDirectionToVectors[];
extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4];
extern MainCallback gFieldCallback;
extern struct WarpData gUnknown_2031DB4;
extern struct WarpData gUnknown_2031DBC;
extern u8 gUnknown_2031DE0;
@@ -61,7 +62,7 @@ void sub_8084EBC(s16, s16);
void player_avatar_init_params_reset(void);
void Overworld_SetFlashLevel(s32 a1);
//u8 Overworld_GetFlashLevel(void);
u8 Overworld_GetFlashLevel(void);
void sub_8085524(u16);
void Overworld_SetSavedMusic(u16);
@@ -104,7 +105,7 @@ void SetWarpDestinationToFixedHoleWarp(s16 x, s16 y);
void ResetInitialPlayerAvatarState(void);
void sub_8055D40(u16 mapDataId);
void CleanupOverworldWindowsAndTilemaps(void);
u32 sub_8054C04(void);
u32 ComputeWhiteOutMoneyLoss(void);
extern u8 gDisableMapMusicChangeOnMapLoad;
extern u8 gUnknown_2036E28;
@@ -140,5 +141,6 @@ bool32 Overworld_DoScrollSceneForCredits(u8 *, const struct CreditsOverworldCmd
bool32 sub_8058318(void);
void CB2_ReturnToStartMenu(void);
void CB2_WhiteOut(void);
#endif //GUARD_OVERWORLD_H
+2
View File
@@ -85,5 +85,7 @@ void sub_8126EDC(void);
void sub_812256C(u8 *partyCount, u8 *icons, u8 side);
void PartyMenuInit_FromPlayerPc(void);
void CB2_PartyMenuFromStartMenu(void);
void sub_8128198(void);
void sub_8127FF4(u8 slot, u8 slot2);
#endif // GUARD_PARTY_MENU_H
+1
View File
@@ -19,6 +19,7 @@ struct PlayerPCItemPageStruct
};
// Exported RAM declarations
extern struct PlayerPCItemPageStruct gPlayerPcMenuManager;
// Exported ROM declarations
+3 -32
View File
@@ -169,35 +169,6 @@ enum
EGG_GROUP_UNDISCOVERED
};
enum
{
NATURE_HARDY,
NATURE_LONELY,
NATURE_BRAVE,
NATURE_ADAMANT,
NATURE_NAUGHTY,
NATURE_BOLD,
NATURE_DOCILE,
NATURE_RELAXED,
NATURE_IMPISH,
NATURE_LAX,
NATURE_TIMID,
NATURE_HASTY,
NATURE_SERIOUS,
NATURE_JOLLY,
NATURE_NAIVE,
NATURE_MODEST,
NATURE_MILD,
NATURE_QUIET,
NATURE_BASHFUL,
NATURE_RASH,
NATURE_CALM,
NATURE_GENTLE,
NATURE_SASSY,
NATURE_CAREFUL,
NATURE_QUIRKY,
};
struct PokemonSubstruct0
{
u16 species;
@@ -346,7 +317,7 @@ struct BattleTowerPokemon
u32 gap:1;
u32 abilityNum:1;
/*0x1C*/ u32 personality;
/*0x20*/ u8 nickname[POKEMON_NAME_LENGTH + 1];
/*0x20*/ u8 nickname[11];
/*0x2B*/ u8 friendship;
};
@@ -629,10 +600,10 @@ u8 GetTrainerEncounterMusicId(u16 trainer);
void AdjustFriendship(struct Pokemon *mon, u8 event);
void MonGainEVs(struct Pokemon *mon, u16 defeatedSpecies);
u16 GetMonEVCount(struct Pokemon *mon);
void sub_8043A68(void);
void RandomlyGivePartyPokerus(struct Pokemon *party);
u8 CheckPartyPokerus(struct Pokemon *party, u8 selection);
u8 CheckPartyHasHadPokerus(struct Pokemon *party, u8 selection);
void sub_8043B40(void);
void PartySpreadPokerus(struct Pokemon *party);
bool8 TryIncrementMonLevel(struct Pokemon *mon);
u32 CanMonLearnTMHM(struct Pokemon *mon, u8 tm);
u8 GetMoveRelearnerMoves(struct Pokemon *mon, u16 *moves);
+8 -5
View File
@@ -4,6 +4,7 @@
#include "global.h"
const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo);
const u8 *GetMonIconTiles(u16 iconSpecies, bool32 extra);
const u16 *GetValidMonIconPalettePtr(u16 speciesId);
u16 sub_80D2E84(u16 speciesId);
void sub_80D2F68(u16 iconId);
@@ -12,12 +13,14 @@ void sub_80D2FF0(u16 iconId);
void sub_80D2EF8(struct Sprite *sprite);
void LoadMonIconPalettes(void);
void FreeMonIconPalettes(void);
u16 sub_8096FD4(u16);
u8 sub_8096ECC(u16, void (*)(struct Sprite *), s16, s16, u8, bool32);
void sub_8097070(struct Sprite *);
u16 MailSpeciesToIconSpecies(u16);
u8 CreateMonIcon_HandleDeoxys(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, bool32 extra);
void DestroyMonIcon(struct Sprite *);
u16 GetUnownLetterByPersonality(u32 personality);
void sub_809718C(void);
u8 CreateMonIcon(u16 species, void (*callback)(void), s16 x, s16 y, u8 subpriority, u32 personality, bool32 extra);
void SpriteCB_MonIcon(struct Sprite *);
u8 CreateMonIcon(u16 species, SpriteCallback callback, s16 x, s16 y, u8 subpriority, u32 personality, bool32 extra);
u8 UpdateMonIconFrame(struct Sprite *sprite);
void LoadMonIconPalette(u16 iconId);
void FreeMonIconPalette(u16 iconId);
#endif // GUARD_POKEMON_ICON_H
+8 -2
View File
@@ -2,6 +2,7 @@
#define GUARD_QUEST_LOG_H
#include "global.h"
#include "quest_log_battle.h"
struct UnkStruct_3005E90
{
@@ -14,8 +15,9 @@ struct UnkStruct_3005E90
u8 unk_2;
};
extern u8 gUnknown_203ADFA;
extern u8 gUnknown_3005E88;
extern u16 gUnknown_3005E8C;
extern u16 sNumQuestLogs;
extern struct UnkStruct_3005E90 gUnknown_3005E90;
extern struct UnkStruct_203AE98 * gUnknown_3005E94;
extern const u16 gUnknown_84566A8[];
@@ -25,7 +27,7 @@ void sub_8113550(u16, const u16 *);
void sub_811539C(void);
void sub_8115748(u16);
u8 sub_8112CAC(void);
bool8 sub_81119D4(void (*func)(void));
bool8 QuestLog_SchedulePlaybackCB(void (*func)(void));
void sub_8111F38(u16, u16);
void sub_8111134(void);
void DestroyHelpMessageWindow(u8 a0);
@@ -40,6 +42,10 @@ void sub_8112450(void);
void sub_8112364(void);
u8 sub_8112CAC(void);
void sub_81138F8(void);
void sub_811231C(void);
void sub_81139BC(void);
void *QuestLogGetFlagOrVarPtr(bool8 isFlag, u16 idx);
void QuestLogSetFlagOrVar(bool8 isFlag, u16 idx, u16 value);
extern u8 gUnknown_203ADFA;
+9
View File
@@ -0,0 +1,9 @@
#ifndef GUARD_QUEST_LOG_BATTLE_H
#define GUARD_QUEST_LOG_BATTLE_H
#include "global.h"
void sub_812BFDC(void);
void sub_812C224(void);
#endif // GUARD_QUEST_LOG_BATTLE_H
+9
View File
@@ -0,0 +1,9 @@
#ifndef GUARD_RENEWABLE_HIDDEN_ITEMS_H
#define GUARD_RENEWABLE_HIDDEN_ITEMS_H
bool32 sub_815D834(void);
void IncrementRenewableHiddenItemStepCounter(void);
void TryRegenerateRenewableHiddenItems(void);
void SetAllRenewableItemFlags(void);
#endif //GUARD_RENEWABLE_HIDDEN_ITEMS_H
+2
View File
@@ -16,4 +16,6 @@ void ExitSafariMode(void);
bool8 SafariZoneTakeStep(void);
void SafariZoneRetirePrompt(void);
void CB2_EndSafariBattle(void);
#endif // GUARD_SAFARI_ZONE_H
+4 -3
View File
@@ -3,17 +3,18 @@
#include "global.h"
extern const u8 *const gStdStringPtrs[9];
extern const u8 *const gStdStringPtrs[];
bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 var3, u8 var4);
bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 var3, u8 var4, u8 var5);
bool8 ScriptMenu_YesNo(u8 var1, u8 var2);
bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, u8 a4, u8 columnCount);
bool8 ScriptMenu_ShowPokemonPic(u16 var1, u8 var2, u8 var3);
bool32 ScrSpecial_CreatePCMenu(void);
bool8 ScrSpecial_CreatePCMenu(void);
void ScriptMenu_DisplayPCStartupPrompt(void);
bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void);
void sub_809D6D4(void);
void QLPlaybackCB_DestroyScriptMenuMonPicSprites(void);
void sub_809D424(void);
#endif //GUARD_SCRIPT_MENU_H
+1
View File
@@ -4,5 +4,6 @@
bool8 ScriptGiveMon(u16 species, u8 level, u16 item, u32 unk1, u32 unk2, u8 unk3);
bool8 ScriptGiveEgg(u16 species);
void ScriptSetMonMoveSlot(u8 partyIdx, u16 move, u8 slot);
void sp000_heal_pokemon(void);
#endif //GUARD_SCRIPT_POKEMON_UTIL_80A0058_H
+2 -15
View File
@@ -1,21 +1,8 @@
#ifndef GUARD_SEAGALLOP_H
#define GUARD_SEAGALLOP_H
enum SeaGallopDestinations
{
SEAGALLOP_VERMILION_CITY,
SEAGALLOP_ONE_ISLAND,
SEAGALLOP_TWO_ISLAND,
SEAGALLOP_THREE_ISLAND,
SEAGALLOP_FOUR_ISLAND,
SEAGALLOP_FIVE_ISLAND,
SEAGALLOP_SIX_ISLAND,
SEAGALLOP_SEVEN_ISLAND,
SEAGALLOP_CINNABAR_ISLAND,
SEAGALLOP_NAVEL_ROCK,
SEAGALLOP_BIRTH_ISLAND
};
#include "constants/seagallop.h"
void ScrSpecial_SeaGallopFerry(void);
void ScrSpecial_SeagallopFerry(void);
#endif //GUARD_SEAGALLOP_H
+205 -17
View File
@@ -91,7 +91,6 @@ extern const u8 gText_PkmnFainted3[];
extern const u8 gText_Coins[];
extern const u8 gText_EggNickname[];
extern const u8 gStartMenuText_Pokemon[];
extern const u8 gText_PkmnFainted3[];
extern const u8 gOtherText_Use[];
extern const u8 gOtherText_Toss[];
@@ -99,7 +98,6 @@ extern const u8 gOtherText_Give[];
extern const u8 gOtherText_Exit[];
extern const u8 gText_ThreeHyphens[];
extern const u8 gOtherText_UnkF9_08_Clear_01[];
extern const u8 gFameCheckerText_ListMenuCursor[];
extern const u8 gText_TimesStrVar1[];
extern const u8 gText_IsSelected[];
extern const u8 gText_ThereIsNoPokemon[];
@@ -116,6 +114,16 @@ extern const u8 gText_TurnedOverItemsWorthYen[];
extern const u8 gPokeDudeText_TMTypes[];
extern const u8 gPokeDudeText_ReadTMDescription[];
extern const u8 gFameCheckerText_Cancel[];
extern const u8 gFameCheckerText_ListMenuCursor[];
extern const u8 gFameCheckerText_FameCheckerWillBeClosed[];
extern const u8 gFameCheckerText_ClearTextbox[];
extern const u8 gFameCheckerText_MainScreenUI[]; // "{KEYGFX_DPAD_ANY}PICK {KEYGFX_DPAD_UP_DOWN}SELECT {KEYGFX_A_BUTTON}OK$"
extern const u8 gFameCheckerText_PickScreenUI[]; // "{KEYGFX_DPAD_ANY}PICK {KEYGFX_DPAD_UP_DOWN}SELECT {KEYGFX_B_BUTTON}CANCEL$"
extern const u8 gFameCheckerText_FlavorTextUI[]; // "{KEYGFX_START_BUTTON}PICK {KEYGFX_A_BUTTON}READ {KEYGFX_B_BUTTON}CANCEL$"
extern const u8 gFameCheckerOakName[]; // "OAK$"
extern const u8 gFameCheckerDaisyName[]; // "DAISY$"
extern const u8 gFameCheckerBillName[]; // "BILL$"
extern const u8 gFameCheckerMrFujiName[]; // "FUJI$"
// teachy_tv
extern const u8 gTeachyTvString_TeachBattle[];
@@ -151,8 +159,6 @@ extern const u8 gString_Someone[];
extern const u8 gString_Help[];
extern const u8 gString_HelpSystem_ClearTo8[];
extern const u8 gOtherText_Give[];
extern const u8 gFameCheckerText_Cancel[];
extern const u8 gOtherText_StrVar1[];
extern const u8 gOtherText_WhereShouldTheStrVar1BePlaced[];
extern const u8 gOtherText_Powder[];
@@ -185,7 +191,6 @@ extern const u8 BattleText_Rose[];
extern const u8 BattleText_UnknownString3[];
extern const u8 BattleText_GetPumped[];
extern const u8 BattleText_MistShroud[];
extern const u8 gText_EggNickname[];
extern const u8 gText_BadEgg[];
extern const u8 gText_PkmnsXPreventsSwitching[];
extern u8 *gUnknown_83FD5D0[];
@@ -218,7 +223,6 @@ extern const u8 gUnknown_83FE6E6[];
extern const u8 gText_BattleSwitchWhich[];
extern const u8 gUnknown_83FE770[];
extern const u8 gText_MoveInterfacePP[];
extern const u8 gUnknown_83FE770[];
extern const u8 gText_MoveInterfaceType[];
extern const u8 gText_LinkStandby[];
extern const u8 gUnknown_83FE725[];
@@ -227,6 +231,18 @@ extern const u8 gText_WhatWillPkmnDo[];
// battle_script_commands
extern const u8 gText_BattleYesNoChoice[];
// battle_controller_oak_old_man
extern const u8 gUnknown_83FDAE2[];
extern const u8 gUnknown_83FDB92[];
extern const u8 gUnknown_83FDBEF[];
extern const u8 gUnknown_83FDC58[];
extern const u8 gUnknown_83FDC95[];
extern const u8 gUnknown_83FDD23[];
extern const u8 gUnknown_83FDD64[];
extern const u8 gUnknown_83FDDEB[];
extern const u8 gUnknown_83FDCD2[];
extern const u8 gUnknown_83FE6FA[];
// credits
extern const u8 gString_Dummy[];
extern const u8 gString_PokemonFireRed_Staff[]; // FR
@@ -344,14 +360,6 @@ extern const u8 gText_NewGame[];
extern const u8 gText_Continue[];
extern const u8 gText_MysteryGift[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_WirelessAdapterIsNotConnected[];
extern const u8 gText_MysteryGiftCantBeUsedWhileWirelessAdapterIsAttached[];
extern const u8 gText_Player[];
extern const u8 gText_Time[];
@@ -381,7 +389,6 @@ extern const u8 gText_WonderNews[];
extern const u8 gText_Exit3[];
extern const u8 gText_WirelessCommunication[];
extern const u8 gText_Friend2[];
extern const u8 gFameCheckerText_Cancel[];
extern const u8 gText_Receive[];
extern const u8 gText_Send[];
extern const u8 gText_Toss[];
@@ -448,7 +455,6 @@ extern const u8 gText_MailReturnedToBagMessageErased[];
// start_menu
extern const u8 gStartMenuText_Pokedex[];
extern const u8 gStartMenuText_Pokemon[];
extern const u8 gStartMenuText_Bag[];
extern const u8 gStartMenuText_Player[];
extern const u8 gStartMenuText_Save[];
@@ -459,7 +465,6 @@ extern const u8 gUnknown_84162A9[];
extern const u8 gStartMenuDesc_Pokedex[];
extern const u8 gStartMenuDesc_Pokemon[];
extern const u8 gStartMenuDesc_Bag[];
extern const u8 gStartMenuDesc_Player[];
extern const u8 gStartMenuDesc_Save[];
extern const u8 gStartMenuDesc_Option[];
extern const u8 gStartMenuDesc_Exit[];
@@ -472,4 +477,187 @@ extern const u8 gSaveStatName_Badges[];
extern const u8 gSaveStatName_Pokedex[];
extern const u8 gSaveStatName_Time[];
// mail
extern const u8 gText_From[];
// field_specials
extern const u8 gText_BigGuy[];
extern const u8 gText_BigGirl[];
extern const u8 gText_Son[];
extern const u8 gText_Daughter[];
extern const u8 gText_NowOn[];
extern const u8 gText_B4F[];
extern const u8 gText_B3F[];
extern const u8 gText_B2F[];
extern const u8 gText_B1F[];
extern const u8 gText_1F[];
extern const u8 gText_2F[];
extern const u8 gText_3F[];
extern const u8 gText_4F[];
extern const u8 gText_5F[];
extern const u8 gText_6F[];
extern const u8 gText_7F[];
extern const u8 gText_8F[];
extern const u8 gText_9F[];
extern const u8 gText_10F[];
extern const u8 gText_11F[];
extern const u8 gText_Rooftop[];
extern const u8 gText_BoulderBadge[];
extern const u8 gText_CascadeBadge[];
extern const u8 gText_ThunderBadge[];
extern const u8 gText_RainbowBadge[];
extern const u8 gText_SoulBadge[];
extern const u8 gText_MarshBadge[];
extern const u8 gText_VolcanoBadge[];
extern const u8 gText_EarthBadge[];
extern const u8 gText_LinkedGamePlay[];
extern const u8 gText_DirectCorner[];
extern const u8 gText_UnionRoom[];
extern const u8 gOtherText_Quit[];
extern const u8 gText_Energypowder_50[];
extern const u8 gText_EnergyRoot_80[];
extern const u8 gText_HealPowder_50[];
extern const u8 gText_RevivalHerb_300[];
extern const u8 gText_Protein_1000[];
extern const u8 gText_Iron_1000[];
extern const u8 gText_Carbos_1000[];
extern const u8 gText_Calcium_1000[];
extern const u8 gText_Zinc_1000[];
extern const u8 gText_HpUp_1000[];
extern const u8 gText_PpUp_3000[];
// script_menu
extern const u8 gText_SomeoneSPc[];
extern const u8 gText_BillSPc[];
extern const u8 gText_SPc[];
extern const u8 gText_HallOfFame_2[];
extern const u8 gText_LogOff[];
extern const u8 gText_ProfOakSPc[];
extern const u8 gText_Other[];
extern const u8 gUnknown_81A508A[];
extern const u8 gOtherText_Double[];
extern const u8 gOtherText_Knockout[];
extern const u8 gOtherText_Mixed[];
extern const u8 gOtherText_Single[];
extern const u8 gText_Info[];
extern const u8 gText_Eggs[];
extern const u8 gText_HallOfFame[];
extern const u8 gText_Victories[];
extern const u8 gText_Quit[];
extern const u8 gText_Psn[];
extern const u8 gText_Par[];
extern const u8 gText_Slp[];
extern const u8 gText_Brn[];
extern const u8 gText_Frz[];
extern const u8 gText_Yes[];
extern const u8 gText_No[];
extern const u8 gText_SingleBattle[];
extern const u8 gText_DoubleBattle[];
extern const u8 gText_MultiBattle[];
extern const u8 gText_MakeAChallenge[];
extern const u8 gText_Info_2[];
extern const u8 gText_FreshWater_200[];
extern const u8 gText_SodaPop_300[];
extern const u8 gText_Lemonade_350[];
extern const u8 gText_50Coins_1000[];
extern const u8 gText_500Coins_10000[];
extern const u8 gText_Excellent[];
extern const u8 gText_NotSoBad[];
extern const u8 gText_RedShard[];
extern const u8 gText_YellowShard[];
extern const u8 gText_BlueShard[];
extern const u8 gText_GreenShard[];
extern const u8 gText_Right[];
extern const u8 gText_Left[];
extern const u8 gText_Tm13_4000Coins[];
extern const u8 gText_Tm23_3500Coins[];
extern const u8 gText_Tm24_4000Coins[];
extern const u8 gText_Tm30_4500Coins[];
extern const u8 gText_Tm35_4000Coins[];
extern const u8 gText_1F_2[];
extern const u8 gText_2F_2[];
extern const u8 gText_3F_2[];
extern const u8 gText_4F_2[];
extern const u8 gText_5F_2[];
extern const u8 gText_Normal[];
extern const u8 gText_Black[];
extern const u8 gText_Pink[];
extern const u8 gText_Sepia[];
extern const u8 gText_Eevee[];
extern const u8 gText_Flareon[];
extern const u8 gText_Jolteon[];
extern const u8 gText_Vaporeon[];
extern const u8 gText_QuitLooking[];
extern const u8 gText_FreshWater[];
extern const u8 gText_SodaPop[];
extern const u8 gText_Lemonade[];
extern const u8 gText_Bicycle_1000000[];
extern const u8 gText_NoThanks[];
extern const u8 gText_Abra_180Coins[];
extern const u8 gText_Clefairy_500Coins[];
extern const u8 gText_Dratini_2800Coins[];
extern const u8 gText_Scyther_5500Coins[];
extern const u8 gText_Porygon_9999Coins[];
extern const u8 gText_NoThanks_2[];
extern const u8 gText_HelixFossil[];
extern const u8 gText_DomeFossil[];
extern const u8 gText_OldAmber[];
extern const u8 gText_TradeCenter[];
extern const u8 gText_Colosseum[];
extern const u8 gText_GameLinkCable[];
extern const u8 gText_Wireless[];
extern const u8 gText_OneIsland[];
extern const u8 gText_TwoIsland[];
extern const u8 gText_ThreeIsland[];
extern const u8 gText_Vermilion[];
extern const u8 gText_Colosseum_2[];
extern const u8 gText_BerryCrush[];
extern const u8 gText_Dummy_8417E66[];
extern const u8 gText_Dummy_8417E67[];
extern const u8 gText_Dummy_8417E71[];
extern const u8 gText_PokemonJump[];
extern const u8 gText_DodrioBerryPicking[];
extern const u8 gText_2Tinymushrooms[];
extern const u8 gText_1BigMushroom[];
extern const u8 gText_SeviiIslands[];
extern const u8 gText_NavelRock[];
extern const u8 gText_BirthIsland[];
extern const u8 gText_MiracleSeed_1000Coins[];
extern const u8 gText_Charcoal_1000Coins[];
extern const u8 gText_MysticWater_1000Coins[];
extern const u8 gText_YellowFlute_1600Coins[];
extern const u8 gText_SmokeBall_800Coins[];
extern const u8 gText_Dummy_8417F67[];
extern const u8 gText_Dummy_8417F68[];
extern const u8 gText_BecomeLeader[];
extern const u8 gText_JoinGroup[];
extern const u8 gText_Cool_2[];
extern const u8 gText_Beauty_2[];
extern const u8 gText_Cute_2[];
extern const u8 gText_Smart_2[];
extern const u8 gText_Tough_2[];
extern const u8 gText_Items[];
extern const u8 gText_KeyItems[];
extern const u8 gText_PokeBalls[];
extern const u8 gText_TmsgUnknown_8417B2CHms[];
extern const u8 gText_Berries[];
extern const u8 gText_Boulderbadge[];
extern const u8 gText_Cascadebadge[];
extern const u8 gText_Thunderbadge[];
extern const u8 gText_Rainbowbadge[];
extern const u8 gText_Soulbadge[];
extern const u8 gText_Marshbadge[];
extern const u8 gText_Volcanobadge[];
extern const u8 gText_Earthbadge[];
extern const u8 gText_Coins_2[];
extern const u8 gText_ItemsPocket[];
extern const u8 gText_KeyItemsPocket[];
extern const u8 gText_PokeBallsPocket[];
extern const u8 gText_TmCase[];
extern const u8 gText_BerryPouch_2[];
extern const u8 gText_FourIsland[];
extern const u8 gText_FiveIsland[];
extern const u8 gText_SixIsland[];
extern const u8 gText_SevenIsland[];
#endif //GUARD_STRINGS_H
-1
View File
@@ -5,7 +5,6 @@ void PrintTrainerTowerRecords(void);
void InitTrainerTowerBattleStruct(void);
void FreeTrainerTowerBattleStruct(void);
u8 GetTrainerTowerTrainerFrontSpriteId(void);
void sub_815D838(void);
void ResetTrainerTowerResults(void);
#endif //GUARD_TRAINER_TOWER_H
+1 -1
View File
@@ -3,7 +3,7 @@
#include "global.h"
void sub_8159F40(void);
void InitPokedudePartyAndOpponent(void);
void sub_815A008(struct QuestLog *);
void sub_815A1F8(struct QuestLog *, struct MapObjectTemplate *);
+2 -1
View File
@@ -6,9 +6,10 @@
void Task_VsSeeker_0(u8 taskId);
void sub_810CB90(void);
void sub_810CDE8(void);
int sub_810CE64(u16 a0);
int GetRematchTrainerId(u16 a0);
bool8 sub_810CF04(u8 a0);
u8 sub_810CF54();
void sub_810D0D0(void);
void sub_810CB90(void);
#endif //GUARD_VS_SEEKER_H