Merge branch 'master' into clone-union
This commit is contained in:
+5
-5
@@ -188,7 +188,7 @@ struct ProtectStruct
|
||||
u32 confusionSelfDmg:1;
|
||||
u32 targetNotAffected:1;
|
||||
u32 chargingTurn:1;
|
||||
u32 fleeFlag:2; // for RunAway and Smoke Ball
|
||||
u32 fleeType:2; // for RunAway and Smoke Ball
|
||||
u32 usedImprisonedMove:1;
|
||||
u32 loveImmobility:1;
|
||||
u32 usedDisabledMove:1;
|
||||
@@ -361,7 +361,7 @@ struct BattleResults
|
||||
|
||||
extern struct BattleResults gBattleResults;
|
||||
|
||||
struct LinkPartnerHeader
|
||||
struct LinkBattlerHeader
|
||||
{
|
||||
u8 versionSignatureLo;
|
||||
u8 versionSignatureHi;
|
||||
@@ -452,7 +452,7 @@ struct BattleStruct
|
||||
u8 field_182;
|
||||
// align 4
|
||||
union {
|
||||
struct LinkPartnerHeader linkPartnerHeader;
|
||||
struct LinkBattlerHeader linkBattlerHeader;
|
||||
struct MultiBattlePokemonTx multiBattleMons[3];
|
||||
} multiBuffer;
|
||||
u8 padding_1E4[0x1C];
|
||||
@@ -681,8 +681,8 @@ extern u8 gActionSelectionCursor[MAX_BATTLERS_COUNT];
|
||||
extern void (*gPreBattleCallback1)(void);
|
||||
extern bool8 gDoingBattleAnim;
|
||||
extern struct PokedudeBattlerState *gPokedudeBattlerStates[MAX_BATTLERS_COUNT];
|
||||
extern u8 *gBattleAnimMons_BgTilesBuffer;
|
||||
extern u8 *gBattleAnimMons_BgTilemapBuffer;
|
||||
extern u8 *gBattleAnimBgTileBuffer;
|
||||
extern u8 *gBattleAnimBgTilemapBuffer;
|
||||
extern void (*gBattleMainFunc)(void);
|
||||
extern u8 gMoveSelectionCursor[MAX_BATTLERS_COUNT];
|
||||
extern u32 gUnknown_2022B54;
|
||||
|
||||
@@ -101,6 +101,8 @@ enum {
|
||||
|
||||
#define INSTANT_HP_BAR_DROP 0x7FFF
|
||||
|
||||
#define PARTY_SUMM_SKIP_DRAW_DELAY (1 << 7)
|
||||
|
||||
// Special return values in gBattleBufferB from Battle Controller functions.
|
||||
#define RET_VALUE_LEVELED_UP 11
|
||||
|
||||
|
||||
@@ -73,10 +73,10 @@ u32 GetBattleBgTemplateData(u8 arrayId, u8 caseId);
|
||||
void SpriteCB_EnemyMon(struct Sprite *sprite);
|
||||
void SpriteCallbackDummy_2(struct Sprite *sprite);
|
||||
void SpriteCB_FaintOpponentMon(struct Sprite *sprite);
|
||||
void SpriteCb_ShowAsMoveTarget(struct Sprite *sprite);
|
||||
void SpriteCb_HideAsMoveTarget(struct Sprite *sprite);
|
||||
void SpriteCB_ShowAsMoveTarget(struct Sprite *sprite);
|
||||
void SpriteCB_HideAsMoveTarget(struct Sprite *sprite);
|
||||
void SpriteCB_AllyMon(struct Sprite *sprite);
|
||||
void SpriteCB_SetToDummy3(struct Sprite *sprite);
|
||||
void SetIdleSpriteCallback(struct Sprite *sprite);
|
||||
void SpriteCB_FaintSlideAnim(struct Sprite *sprite);
|
||||
void DoBounceEffect(u8 battler, u8 which, s8 delta, s8 amplitude);
|
||||
void EndBounceEffect(u8 battler, u8 which);
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
#define MOVE_LIMITATION_TORMENTED (1 << 3)
|
||||
#define MOVE_LIMITATION_TAUNT (1 << 4)
|
||||
#define MOVE_LIMITATION_IMPRISON (1 << 5)
|
||||
#define MOVE_LIMITATIONS_ALL 0xFF
|
||||
|
||||
#define ABILITYEFFECT_ON_SWITCHIN 0
|
||||
#define ABILITYEFFECT_ENDTURN 1
|
||||
@@ -38,9 +39,12 @@
|
||||
#define ABILITY_ON_FIELD(abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, abilityId, 0, 0))
|
||||
#define ABILITY_ON_FIELD2(abilityId)(AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, abilityId, 0, 0))
|
||||
|
||||
#define ITEMEFFECT_ON_SWITCH_IN 0x0
|
||||
#define ITEMEFFECT_MOVE_END 0x3
|
||||
#define ITEMEFFECT_KINGSROCK_SHELLBELL 0x4
|
||||
// For the first argument of ItemBattleEffects, to deteremine which block of item effects to try
|
||||
#define ITEMEFFECT_ON_SWITCH_IN 0
|
||||
#define ITEMEFFECT_NORMAL 1
|
||||
#define ITEMEFFECT_DUMMY 2 // Unused, empty
|
||||
#define ITEMEFFECT_MOVE_END 3
|
||||
#define ITEMEFFECT_KINGSROCK_SHELLBELL 4
|
||||
|
||||
#define WEATHER_HAS_EFFECT ((!AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, ABILITY_CLOUD_NINE, 0, 0) && !AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, ABILITY_AIR_LOCK, 0, 0)))
|
||||
#define WEATHER_HAS_EFFECT2 ((!AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, ABILITY_CLOUD_NINE, 0, 0) && !AbilityBattleEffects(ABILITYEFFECT_FIELD_SPORT, 0, ABILITY_AIR_LOCK, 0, 0)))
|
||||
@@ -58,7 +62,6 @@ u8 GetBattlerForBattleScript(u8 caseId);
|
||||
void PressurePPLose(u8 target, u8 attacker, u16 move);
|
||||
void PressurePPLoseOnUsingImprison(u8 attacker);
|
||||
void PressurePPLoseOnUsingPerishSong(u8 attacker);
|
||||
void MarkAllBattlersForControllerExec(void);
|
||||
void MarkBattlerForControllerExec(u8 battlerId);
|
||||
void MarkBattlerReceivedLinkData(u8 battlerId);
|
||||
void CancelMultiTurnMoves(u8 battler);
|
||||
|
||||
@@ -316,6 +316,9 @@
|
||||
#define NUM_CASTFORM_FORMS 4
|
||||
#define CASTFORM_SUBSTITUTE (1 << 7)
|
||||
|
||||
#define FLEE_ITEM 1
|
||||
#define FLEE_ABILITY 2
|
||||
|
||||
// Return value for IsRunningFromBattleImpossible.
|
||||
#define BATTLE_RUN_SUCCESS 0
|
||||
#define BATTLE_RUN_FORBIDDEN 1
|
||||
@@ -351,4 +354,7 @@
|
||||
#define B_TEXT_FLAG_NPC_CONTEXT_FONT (1 << 6)
|
||||
#define B_TEXT_FLAG_WINDOW_CLEAR (1 << 7)
|
||||
|
||||
// Indicator for the party summary bar to display an empty slot.
|
||||
#define HP_EMPTY_SLOT 0xFFFF
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_H
|
||||
|
||||
@@ -79,9 +79,9 @@
|
||||
#define MOVEMENT_TYPE_JOG_IN_PLACE_LEFT 0x4A
|
||||
#define MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT 0x4B
|
||||
#define MOVEMENT_TYPE_INVISIBLE 0x4C
|
||||
#define MOVEMENT_TYPE_VS_SEEKER_4D 0x4D
|
||||
#define MOVEMENT_TYPE_VS_SEEKER_4E 0x4E
|
||||
#define MOVEMENT_TYPE_VS_SEEKER_4F 0x4F
|
||||
#define MOVEMENT_TYPE_RAISE_HAND_AND_STOP 0x4D
|
||||
#define MOVEMENT_TYPE_RAISE_HAND_AND_JUMP 0x4E
|
||||
#define MOVEMENT_TYPE_RAISE_HAND_AND_SWIM 0x4F
|
||||
#define MOVEMENT_TYPE_WANDER_AROUND_SLOWER 0x50
|
||||
#define MOVEMENT_TYPES_COUNT 0x51
|
||||
|
||||
@@ -130,18 +130,18 @@
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FAST_UP 0x2A
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FAST_LEFT 0x2B
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FAST_RIGHT 0x2C
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_DOWN 0x2D
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_UP 0x2E
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_LEFT 0x2F
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTEST_RIGHT 0x30
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_DOWN 0x2D
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_UP 0x2E
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_LEFT 0x2F
|
||||
#define MOVEMENT_ACTION_WALK_IN_PLACE_FASTER_RIGHT 0x30
|
||||
#define MOVEMENT_ACTION_RIDE_WATER_CURRENT_DOWN 0x31
|
||||
#define MOVEMENT_ACTION_RIDE_WATER_CURRENT_UP 0x32
|
||||
#define MOVEMENT_ACTION_RIDE_WATER_CURRENT_LEFT 0x33
|
||||
#define MOVEMENT_ACTION_RIDE_WATER_CURRENT_RIGHT 0x34
|
||||
#define MOVEMENT_ACTION_WALK_FASTEST_DOWN 0x35
|
||||
#define MOVEMENT_ACTION_WALK_FASTEST_UP 0x36
|
||||
#define MOVEMENT_ACTION_WALK_FASTEST_LEFT 0x37
|
||||
#define MOVEMENT_ACTION_WALK_FASTEST_RIGHT 0x38
|
||||
#define MOVEMENT_ACTION_WALK_FASTER_DOWN 0x35
|
||||
#define MOVEMENT_ACTION_WALK_FASTER_UP 0x36
|
||||
#define MOVEMENT_ACTION_WALK_FASTER_LEFT 0x37
|
||||
#define MOVEMENT_ACTION_WALK_FASTER_RIGHT 0x38
|
||||
#define MOVEMENT_ACTION_SLIDE_DOWN 0x39
|
||||
#define MOVEMENT_ACTION_SLIDE_UP 0x3A
|
||||
#define MOVEMENT_ACTION_SLIDE_LEFT 0x3B
|
||||
@@ -240,18 +240,18 @@
|
||||
#define MOVEMENT_ACTION_SPIN_UP 0x95
|
||||
#define MOVEMENT_ACTION_SPIN_LEFT 0x96
|
||||
#define MOVEMENT_ACTION_SPIN_RIGHT 0x97
|
||||
#define MOVEMENT_ACTION_0x98 0x98
|
||||
#define MOVEMENT_ACTION_0x99 0x99
|
||||
#define MOVEMENT_ACTION_0x9A 0x9A
|
||||
#define MOVEMENT_ACTION_RAISE_HAND_AND_STOP 0x98
|
||||
#define MOVEMENT_ACTION_RAISE_HAND_AND_JUMP 0x99
|
||||
#define MOVEMENT_ACTION_RAISE_HAND_AND_SWIM 0x9A
|
||||
#define MOVEMENT_ACTION_WALK_SLOWEST_DOWN 0x9B
|
||||
#define MOVEMENT_ACTION_WALK_SLOWEST_UP 0x9C
|
||||
#define MOVEMENT_ACTION_WALK_SLOWEST_LEFT 0x9D
|
||||
#define MOVEMENT_ACTION_WALK_SLOWEST_RIGHT 0x9E
|
||||
#define MOVEMENT_ACTION_SHAKE_HEAD_OR_WALK_IN_PLACE 0x9F
|
||||
#define MOVEMENT_ACTION_0xA0 0xA0
|
||||
#define MOVEMENT_ACTION_0xA1 0xA1
|
||||
#define MOVEMENT_ACTION_0xA2 0xA2
|
||||
#define MOVEMENT_ACTION_0xA3 0xA3
|
||||
#define MOVEMENT_ACTION_GLIDE_DOWN 0xA0
|
||||
#define MOVEMENT_ACTION_GLIDE_UP 0xA1
|
||||
#define MOVEMENT_ACTION_GLIDE_LEFT 0xA2
|
||||
#define MOVEMENT_ACTION_GLIDE_RIGHT 0xA3
|
||||
#define MOVEMENT_ACTION_FLY_UP 0xA4
|
||||
#define MOVEMENT_ACTION_FLY_DOWN 0xA5
|
||||
#define MOVEMENT_ACTION_JUMP_SPECIAL_WITH_EFFECT_DOWN 0xA6
|
||||
|
||||
@@ -12,4 +12,8 @@
|
||||
|
||||
#define MAP(map) MAP_GROUP(map), MAP_NUM(map)
|
||||
|
||||
// Used to indicate an invalid warp id, for dummy warps or when a warp should
|
||||
// use the given coordinates rather than the coordinates of a target warp.
|
||||
#define WARP_ID_NONE (-1)
|
||||
|
||||
#endif // GUARD_CONSTANTS_MAPS_H
|
||||
|
||||
@@ -224,7 +224,6 @@
|
||||
#define EV_ITEM_RAISE_LIMIT 100
|
||||
|
||||
#define PARTY_SIZE 6
|
||||
#define UNOWN_FORM_COUNT 28
|
||||
#define BOX_NAME_LENGTH 8
|
||||
|
||||
#define EVO_MODE_NORMAL 0
|
||||
|
||||
@@ -334,4 +334,11 @@
|
||||
|
||||
#define SPECIAL_VARS_END 0x8014
|
||||
|
||||
// Text color ids for VAR_TEXT_COLOR / VAR_PREV_TEXT_COLOR
|
||||
#define NPC_TEXT_COLOR_MALE 0 // Blue, for male NPCs
|
||||
#define NPC_TEXT_COLOR_FEMALE 1 // Red, for female NPCs
|
||||
#define NPC_TEXT_COLOR_MON 2 // Black, for Pokémon
|
||||
#define NPC_TEXT_COLOR_NEUTRAL 3 // Black, for inanimate objects and messages from the game
|
||||
#define NPC_TEXT_COLOR_DEFAULT 255 // If an NPC is selected, use the color specified by GetColorFromTextColorTable, otherwise use Neutral.
|
||||
|
||||
#endif // GUARD_CONSTANTS_VARS_H
|
||||
|
||||
+8
-13
@@ -16,10 +16,6 @@ struct MonCoords
|
||||
|
||||
extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1];
|
||||
extern const u8 gMoveNames[][13];
|
||||
extern const u16 gUnknown_8251CB8[];
|
||||
extern const u16 gUnknown_8251FEE[];
|
||||
extern const u16 gUnknown_8252324[];
|
||||
extern const u16 gUnknown_82539D4[];
|
||||
|
||||
extern const u8 gTrainerClassNames[][13];
|
||||
|
||||
@@ -32,6 +28,7 @@ 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 CompressedSpriteSheet gTrainerBackPicTable[];
|
||||
extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[];
|
||||
extern const union AnimCmd *const *const gTrainerBackAnimsPtrTable[];
|
||||
extern const struct MonCoords gTrainerBackPicCoords[];
|
||||
@@ -45,15 +42,13 @@ extern const u8 gEnemyMonElevation[NUM_SPECIES];
|
||||
extern const u8 *const gBattleAnims_General[];
|
||||
extern const u8 *const gBattleAnims_Special[];
|
||||
|
||||
extern const struct OamData gUnknown_824F010;
|
||||
extern const struct OamData gUnknown_824F018;
|
||||
extern const union AnimCmd *const gSpriteAnimTable_82349BC[];
|
||||
extern const union AffineAnimCmd *const gSpriteAffineAnimTable_BattlerPlayer[];
|
||||
extern const union AffineAnimCmd *const gSpriteAffineAnimTable_BattlerOpponent[];
|
||||
extern const struct SpriteFrameImage gSpriteImages_BattlerPlayerLeft[];
|
||||
extern const struct SpriteFrameImage gSpriteImages_BattlerOpponentLeft[];
|
||||
extern const struct SpriteFrameImage gSpriteImages_BattlerPlayerRight[];
|
||||
extern const struct SpriteFrameImage gSpriteImages_BattlerOpponentRight[];
|
||||
extern const union AnimCmd *const gAnims_MonPic[];
|
||||
extern const union AffineAnimCmd *const gAffineAnims_BattleSpritePlayerSide[];
|
||||
extern const union AffineAnimCmd *const gAffineAnims_BattleSpriteOpponentSide[];
|
||||
extern const struct SpriteFrameImage gBattlerPicTable_PlayerLeft[];
|
||||
extern const struct SpriteFrameImage gBattlerPicTable_OpponentLeft[];
|
||||
extern const struct SpriteFrameImage gBattlerPicTable_PlayerRight[];
|
||||
extern const struct SpriteFrameImage gBattlerPicTable_OpponentRight[];
|
||||
extern const struct SpriteFrameImage gTrainerBackPicTable_Red[];
|
||||
extern const struct SpriteFrameImage gTrainerBackPicTable_Leaf[];
|
||||
extern const struct SpriteFrameImage gTrainerBackPicTable_Pokedude[];
|
||||
|
||||
@@ -1,106 +1,64 @@
|
||||
#ifndef GUARD_DODRIO_BERRY_PICKING_H
|
||||
#define GUARD_DODRIO_BERRY_PICKING_H
|
||||
|
||||
struct DodrioSubstruct_0160
|
||||
{
|
||||
/*0x0000 : 0x3000*/ u16 ALIGNED(4) tilemapBuffers[3][BG_SCREEN_SIZE];
|
||||
/*0x3000 : 0x3160*/ bool32 finished;
|
||||
/*0x3004 : 0x3164*/ u8 ALIGNED(4) unk3004;
|
||||
/*0x3008 : 0x3168*/ u8 ALIGNED(4) unk3008[10];
|
||||
/*0x3014 : 0x3174*/ u8 ALIGNED(4) state;
|
||||
/*0x3018 : 0x3178*/ u8 ALIGNED(4) unk3018;
|
||||
/*0x301C : 0x317C*/ u16 ALIGNED(4) unk301C;
|
||||
/*0x3020 : 0x3180*/ u8 ALIGNED(4) unk3020;
|
||||
/*0x3024 : 0x3184*/ u8 ALIGNED(4) unk3024;
|
||||
/*0x3024 : 0x3184*/ void (*unk3028)(void);
|
||||
}; // size = 0x302C
|
||||
// Berries fall in predefined columns.
|
||||
// A total of 10 are available, though fewer will be used with < 5 players
|
||||
// The 11th column is a repeat of the 1st column wrapped around, so only
|
||||
// the values 0-9 are unique 'valid' columns
|
||||
#define NUM_BERRY_COLUMNS 11
|
||||
|
||||
struct DodrioSubstruct_318C
|
||||
struct DodrioGame_Berries
|
||||
{
|
||||
bool8 isShiny;
|
||||
u8 ids[NUM_BERRY_COLUMNS];
|
||||
u8 fallDist[NUM_BERRY_COLUMNS];
|
||||
};
|
||||
|
||||
struct DodrioSubstruct_31A0_14
|
||||
struct DodrioGame_PlayerCommData
|
||||
{
|
||||
u8 unk0[11];
|
||||
u8 unkB[11];
|
||||
u8 pickState;
|
||||
bool8 ALIGNED(4) ateBerry;
|
||||
bool8 ALIGNED(4) missedBerry;
|
||||
};
|
||||
|
||||
struct DodrioSubstruct_31A0_2C
|
||||
struct DodrioGame_Player
|
||||
{
|
||||
u8 unk0;
|
||||
u8 ALIGNED(4) unk4;
|
||||
u8 ALIGNED(4) unk8;
|
||||
};
|
||||
|
||||
struct DodrioSubstruct_31A0
|
||||
{
|
||||
u8 name[0x10];
|
||||
u32 unk10;
|
||||
struct DodrioSubstruct_31A0_14 unk14;
|
||||
struct DodrioSubstruct_31A0_2C unk2C;
|
||||
u8 filler_35[4];
|
||||
u8 name[16];
|
||||
bool32 receivedGameStatePacket; // Never read
|
||||
struct DodrioGame_Berries berries;
|
||||
struct DodrioGame_PlayerCommData comm;
|
||||
u32 unused;
|
||||
}; // size = 0x3C
|
||||
|
||||
struct DodrioSubstruct_3308
|
||||
{
|
||||
u8 unk0;
|
||||
u32 unk4;
|
||||
};
|
||||
|
||||
void StartDodrioBerryPicking(u16 species, MainCallback callback);
|
||||
|
||||
u32 sub_815A950(u32 unused, struct DodrioSubstruct_31A0 *arg0, struct DodrioSubstruct_31A0_2C *arg1, struct DodrioSubstruct_31A0_2C *arg2, struct DodrioSubstruct_31A0_2C *arg3, struct DodrioSubstruct_31A0_2C *arg4, struct DodrioSubstruct_31A0_2C *arg5, u8 *arg6, u32 *arg7, u32 *arg8);
|
||||
u32 sub_815AB04(u32 arg0, u8 *arg1);
|
||||
bool32 sub_815AB60(u32 a0);
|
||||
void sub_815A61C(struct DodrioSubstruct_31A0 *arg0, struct DodrioSubstruct_31A0_2C *arg1, struct DodrioSubstruct_31A0_2C *arg2, struct DodrioSubstruct_31A0_2C *arg3, struct DodrioSubstruct_31A0_2C *arg4, struct DodrioSubstruct_31A0_2C *arg5, u8 arg6, u32 arg7, u32 arg8);
|
||||
void sub_815A5BC(s32 a0);
|
||||
void sub_815AAD8(u8 a0);
|
||||
void sub_815AB3C(u32 a0);
|
||||
u8 sub_815A5E8(s32 a0);
|
||||
u32 IncrementWithLimit(u32, u32);
|
||||
void sub_8153A9C(void);
|
||||
void sub_8153AFC(struct DodrioSubstruct_318C * unk318C, u8 a1, u8 a2, u8 a3);
|
||||
void sub_8153BC0(u8 a0);
|
||||
void sub_8153BF8(u8 a0);
|
||||
void sub_8153D08(u8 playerCount);
|
||||
u8 sub_8155E8C(void);
|
||||
u8 sub_81533B4(void);
|
||||
void sub_8153DA8(u8 a0, u8 a1);
|
||||
void sub_8153D80(bool8 a0, u8 a1);
|
||||
void sub_8153FC8(u8 a0);
|
||||
void sub_8153DD8(void);
|
||||
void sub_8153E28(void);
|
||||
void sub_8153ED8(void);
|
||||
bool32 sub_8153F1C(void);
|
||||
void sub_81540DC(bool8 a0);
|
||||
void sub_8154128(void);
|
||||
void sub_815417C(void);
|
||||
void sub_8154274(void);
|
||||
void sub_81542EC(u8 a0, u8 a1);
|
||||
void sub_8154370(u8 a0, u8 a1);
|
||||
void sub_8154398(u16 a0, u8 a1);
|
||||
void sub_8154438(void);
|
||||
void sub_81544F0(void);
|
||||
void sub_8154540(void);
|
||||
void sub_8154578(void);
|
||||
void sub_81545BC(bool8 a0);
|
||||
void sub_81546C0(void);
|
||||
void sub_8154730(void);
|
||||
void sub_8154968(struct DodrioSubstruct_0160 * unk0160);
|
||||
void sub_81549D4(u8 a0);
|
||||
u8 *sub_81533C4(u8 id);
|
||||
u8 sub_81537AC(u8 id);
|
||||
void sub_81536A0(struct DodrioSubstruct_3308 *dst, u8 id);
|
||||
u32 sub_81534AC(void);
|
||||
u32 Min(u32 x, u32 y);
|
||||
u16 sub_8153404(u8 arg0, u8 arg1);
|
||||
u32 sub_81534F0(u8 arg0);
|
||||
u32 sub_81535B0(void);
|
||||
u16 sub_8153390(void);
|
||||
u8 sub_815372C(void);
|
||||
bool32 sub_8155E68(void);
|
||||
// dodrio_berry_picking.c
|
||||
void StartDodrioBerryPicking(u16 partyId, MainCallback exitCallback);
|
||||
void ShowDodrioBerryPickingRecords(void);
|
||||
void IsDodrioInParty(void);
|
||||
|
||||
// dodrio_berry_picking_comm.c
|
||||
void SendPacket_ReadyToStart(bool32 ready);
|
||||
bool8 RecvPacket_ReadyToStart(s32 playerId);
|
||||
void SendPacket_GameState(struct DodrioGame_Player *player,
|
||||
struct DodrioGame_PlayerCommData *player1,
|
||||
struct DodrioGame_PlayerCommData *player2,
|
||||
struct DodrioGame_PlayerCommData *player3,
|
||||
struct DodrioGame_PlayerCommData *player4,
|
||||
struct DodrioGame_PlayerCommData *player5,
|
||||
u8 numGraySquares,
|
||||
bool32 berriesFalling,
|
||||
bool32 allReadyToEnd);
|
||||
bool32 RecvPacket_GameState(u32 playerId,
|
||||
struct DodrioGame_Player *player,
|
||||
struct DodrioGame_PlayerCommData *player1,
|
||||
struct DodrioGame_PlayerCommData *player2,
|
||||
struct DodrioGame_PlayerCommData *player3,
|
||||
struct DodrioGame_PlayerCommData *player4,
|
||||
struct DodrioGame_PlayerCommData *player5,
|
||||
u8 *numGraySquares,
|
||||
bool32 *berriesFalling,
|
||||
bool32 *allReadyToEnd);
|
||||
void SendPacket_PickState(u8 pickState);
|
||||
bool32 RecvPacket_PickState(u32 playerId, u8 *pickState);
|
||||
void SendPacket_ReadyToEnd(bool32 readyToEnd);
|
||||
bool32 RecvPacket_ReadyToEnd(u32 playerId);
|
||||
|
||||
#endif //GUARD_DODRIO_BERRY_PICKING_H
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
|
||||
#include "global.h"
|
||||
|
||||
bool8 NativeScript_WaitPlayerStopMoving(void);
|
||||
void ScriptFreezeObjectEvents(void);
|
||||
bool8 NativeScript_WaitPlayerAndTargetNPCStopMoving(void);
|
||||
void LockSelectedObjectEvent(void);
|
||||
bool8 IsFreezePlayerFinished(void);
|
||||
void FreezeObjects_WaitForPlayer(void);
|
||||
bool8 IsFreezeSelectedObjectAndPlayerFinished(void);
|
||||
void FreezeObjects_WaitForPlayerAndSelected(void);
|
||||
void ClearPlayerHeldMovementAndUnfreezeObjectEvents(void);
|
||||
bool8 walkrun_is_standing_still(void);
|
||||
void UnionRoom_UnlockPlayerAndChatPartner(void);
|
||||
|
||||
@@ -76,7 +76,7 @@ void SetSpritePosToOffsetMapCoords(s16 *, s16 *, s16, s16);
|
||||
void ObjectEventClearHeldMovement(struct ObjectEvent *);
|
||||
void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *);
|
||||
void SpawnObjectEventsInView(s16, s16);
|
||||
u8 sprite_new(u8, u8, s16, s16, u8, u8);
|
||||
u8 CreateVirtualObject(u8, u8, s16, s16, u8, u8);
|
||||
u8 AddPseudoObjectEvent(u16, SpriteCallback, s16, s16, u8);
|
||||
u8 TrySpawnObjectEvent(u8 localId, u8 mapNum, u8 mapGroup);
|
||||
int SpawnSpecialObjectEventParameterized(u8, u8, u8, s16, s16, u8);
|
||||
@@ -88,11 +88,11 @@ void ObjectEventTurn(struct ObjectEvent *, u8);
|
||||
void ObjectEventTurnByLocalIdAndMap(u8, u8, u8, u8);
|
||||
void ObjectEventForceSetHeldMovement(struct ObjectEvent *, u8);
|
||||
const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8);
|
||||
void ShowOrHideObjectByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 state);
|
||||
void SetObjectInvisibility(u8 localId, u8 mapNum, u8 mapGroup, u8 state);
|
||||
void FreeAndReserveObjectSpritePalettes(void);
|
||||
void SetObjectPositionByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y);
|
||||
void UnfixObjectPriorityByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup);
|
||||
void SetObjectPriorityByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 subpriority);
|
||||
void ResetObjectSubpriority(u8 localId, u8 mapNum, u8 mapGroup);
|
||||
void SetObjectSubpriority(u8 localId, u8 mapNum, u8 mapGroup, u8 subpriority);
|
||||
void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup);
|
||||
void ShiftObjectEventCoords(struct ObjectEvent *, s16, s16);
|
||||
void TryOverrideObjectEventTemplateCoords(u8, u8, u8);
|
||||
@@ -138,7 +138,7 @@ bool8 UpdateWalkSlowerAnim(struct Sprite *sprite);
|
||||
void SetJumpSpriteData(struct Sprite *, u8, u8, u8);
|
||||
u8 DoJumpSpriteMovement(struct Sprite *);
|
||||
u8 DoJumpSpecialSpriteMovement(struct Sprite *);
|
||||
void TurnObjectEvent(u8, u8);
|
||||
void TurnVirtualObject(u8, u8);
|
||||
const u8 *GetObjectEventScriptPointerByObjectEventId(u8 objectEventId);
|
||||
u8 GetFirstInactiveObjectEventId(void);
|
||||
u8 GetCollisionFlagsAtCoords(struct ObjectEvent * objectEvent, s16 x, s16 y, u8 direction);
|
||||
|
||||
@@ -113,11 +113,11 @@ extern struct Weather *const gWeatherPtr;
|
||||
|
||||
void FadeScreen(u8 mode, s8 delay);
|
||||
|
||||
void SetSav1Weather(u32);
|
||||
void SetSavedWeather(u32);
|
||||
u8 GetSav1Weather(void);
|
||||
|
||||
void DoCurrentWeather(void);
|
||||
void SetSav1WeatherFromCurrMapHeader(void);
|
||||
void SetSavedWeatherFromCurrMapHeader(void);
|
||||
void SlightlyDarkenPalsInWeather(u16 *, u16 *, u32);
|
||||
void PlayRainStoppingSoundEffect(void);
|
||||
bool8 IsWeatherNotFadingIn(void);
|
||||
|
||||
@@ -12,6 +12,14 @@
|
||||
#define MAX_MAP_DATA_SIZE 0x2800
|
||||
#define VIRTUAL_MAP_SIZE (MAX_MAP_DATA_SIZE)
|
||||
|
||||
// Map coordinates are offset by 7 when using the map
|
||||
// buffer because it needs to load sufficient border
|
||||
// metatiles to fill the player's view (the player has
|
||||
// 7 metatiles of view horizontally in either direction).
|
||||
#define MAP_OFFSET 7
|
||||
#define MAP_OFFSET_W (MAP_OFFSET * 2 + 1)
|
||||
#define MAP_OFFSET_H (MAP_OFFSET * 2)
|
||||
|
||||
extern struct BackupMapLayout VMap;
|
||||
extern const struct MapLayout Route1_Layout;
|
||||
|
||||
|
||||
+19
-19
@@ -4902,26 +4902,26 @@ extern const u32 gEasyChatSelectGroupHelp_Tiles[];
|
||||
extern const u32 gEasyChatModeIcons_Tiles[];
|
||||
|
||||
// naming_screen
|
||||
extern const u32 gUnknown_8E982BC[];
|
||||
extern const u32 gUnknown_8E98458[];
|
||||
extern const u32 gUnknown_8E98398[];
|
||||
extern const u32 gUnknown_8E98518[];
|
||||
extern const u32 gNamingScreenBackground_Tilemap[];
|
||||
extern const u32 gNamingScreenKeyboardLower_Tilemap[];
|
||||
extern const u32 gNamingScreenKeyboardUpper_Tilemap[];
|
||||
extern const u32 gNamingScreenKeyboardSymbols_Tilemap[];
|
||||
extern const u32 gNamingScreenMenu_Gfx[];
|
||||
extern const u16 gUnknown_8E98004[];
|
||||
extern const u16 gUnknown_8E97FE4[];
|
||||
extern const u16 gNamingScreenMenu_Pal[];
|
||||
extern const u16 gUnknown_8E98858[];
|
||||
extern const u16 gUnknown_8E98A38[];
|
||||
extern const u16 gUnknown_8E985D8[];
|
||||
extern const u16 gUnknown_8E98FD8[];
|
||||
extern const u16 gUnknown_8E98C18[];
|
||||
extern const u16 gUnknown_8E98CB8[];
|
||||
extern const u16 gUnknown_8E98D58[];
|
||||
extern const u16 gUnknown_8E98DF8[];
|
||||
extern const u16 gUnknown_8E98E98[];
|
||||
extern const u16 gUnknown_8E98F38[];
|
||||
extern const u16 gUnknown_8E990D8[];
|
||||
extern const u16 gUnknown_8E990F8[];
|
||||
extern const u16 gNamingScreenRival_Pal[];
|
||||
extern const u16 gNamingScreenKeyboard_Pal[];
|
||||
extern const u16 gNamingScreenMenu_Pal[6][16];
|
||||
extern const u16 gNamingScreenBackButton_Gfx[];
|
||||
extern const u16 gNamingScreenOKButton_Gfx[];
|
||||
extern const u16 gNamingScreenPageSwapFrame_Gfx[];
|
||||
extern const u16 gNamingScreenPageSwapButton_Gfx[];
|
||||
extern const u16 gNamingScreenPageSwapUpper_Gfx[];
|
||||
extern const u16 gNamingScreenPageSwapLower_Gfx[];
|
||||
extern const u16 gNamingScreenPageSwapOthers_Gfx[];
|
||||
extern const u16 gNamingScreenCursor_Gfx[];
|
||||
extern const u16 gNamingScreenCursorSquished_Gfx[];
|
||||
extern const u16 gNamingScreenCursorFilled_Gfx[];
|
||||
extern const u16 gNamingScreenInputArrow_Gfx[];
|
||||
extern const u16 gNamingScreenUnderscore_Gfx[];
|
||||
|
||||
// pokemon_storage_system
|
||||
extern const u32 gPSSMenu_Gfx[];
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
#define NAMING_SCREEN_PLAYER 0
|
||||
#define NAMING_SCREEN_BOX 1
|
||||
#define NAMING_SCREEN_CAUGHT_MON 2
|
||||
#define NAMING_SCREEN_NAME_RATER 3
|
||||
#define NAMING_SCREEN_NICKNAME 3
|
||||
#define NAMING_SCREEN_RIVAL 4
|
||||
|
||||
void DoNamingScreen(u8 templateNum, u8 *destBuffer, u16 monSpecies, u16 monGender, u32 monPersonality, MainCallback returnCallback);
|
||||
|
||||
+3
-3
@@ -60,8 +60,8 @@ extern u8 gLocalLinkPlayerId;
|
||||
|
||||
void IncrementGameStat(u8 index);
|
||||
|
||||
void Overworld_SetMapObjTemplateCoords(u8, s16, s16);
|
||||
void Overworld_SetObjEventTemplateMovementType(u8, u8);
|
||||
void SetObjEventTemplateCoords(u8, s16, s16);
|
||||
void SetObjEventTemplateMovementType(u8, u8);
|
||||
|
||||
void SetWarpDestination(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y);
|
||||
|
||||
@@ -77,7 +77,7 @@ u8 IsMapTypeOutdoors(u8 mapType);
|
||||
void Overworld_ClearSavedMusic(void);
|
||||
bool32 Overworld_MusicCanOverrideMapMusic(u16 song);
|
||||
|
||||
void Overworld_SetFlashLevel(s32 a1);
|
||||
void SetFlashLevel(s32 a1);
|
||||
u8 Overworld_GetFlashLevel(void);
|
||||
|
||||
void Overworld_SetSavedMusic(u16);
|
||||
|
||||
@@ -314,6 +314,15 @@ struct Evolution
|
||||
|
||||
#define EVOS_PER_MON 5
|
||||
|
||||
#define NUM_UNOWN_FORMS 28
|
||||
|
||||
#define GET_UNOWN_LETTER(personality) (( \
|
||||
(((personality) & 0x03000000) >> 18) \
|
||||
| (((personality) & 0x00030000) >> 12) \
|
||||
| (((personality) & 0x00000300) >> 6) \
|
||||
| (((personality) & 0x00000003) >> 0) \
|
||||
) % NUM_UNOWN_FORMS)
|
||||
|
||||
extern u8 gPlayerPartyCount;
|
||||
extern struct Pokemon gPlayerParty[PARTY_SIZE];
|
||||
extern u8 gEnemyPartyCount;
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
#include "main.h"
|
||||
|
||||
extern const u8 * const gMoveDescriptionPointers[];
|
||||
extern const u8 * const gNatureNamePointers[];
|
||||
extern const u8 *const gMoveDescriptionPointers[];
|
||||
extern const u8 *const gNatureNamePointers[];
|
||||
|
||||
void ShowSelectMovePokemonSummaryScreen(struct Pokemon *, u8, u8, MainCallback, u16);
|
||||
u8 GetMoveSlotToReplace(void);
|
||||
|
||||
+1
-1
@@ -61,7 +61,7 @@ bool8 InitRamScript(u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objec
|
||||
const u8 *GetRamScript(u8 objectId, const u8 *script);
|
||||
bool32 ValidateRamScript(void);
|
||||
void MEventSetRamScript(u8 * script, u16 scriptSize);
|
||||
u8 * sub_8069E48(void);
|
||||
u8 * GetSavedRamScriptIfValid(void);
|
||||
void RegisterQuestLogInput(u8 var);
|
||||
void ClearMsgBoxCancelableState(void);
|
||||
void SetQuestLogInputIsDpadFlag(void);
|
||||
|
||||
@@ -13,7 +13,7 @@ bool8 ScriptMenu_ShowPokemonPic(u16 var1, u8 var2, u8 var3);
|
||||
bool8 CreatePCMenu(void);
|
||||
void ScriptMenu_DisplayPCStartupPrompt(void);
|
||||
|
||||
bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void);
|
||||
bool8 (*ScriptMenu_HidePokemonPic(void))(void);
|
||||
void QLPlaybackCB_DestroyScriptMenuMonPicSprites(void);
|
||||
void PicboxCancel(void);
|
||||
|
||||
|
||||
+1
-1
@@ -169,7 +169,7 @@ enum {
|
||||
FONT_3,
|
||||
FONT_4,
|
||||
FONT_5,
|
||||
FONT_6,
|
||||
FONT_BRAILLE,
|
||||
};
|
||||
|
||||
enum
|
||||
|
||||
Reference in New Issue
Block a user