Merge branch 'master' into document-gyms2
This commit is contained in:
+45
-45
@@ -151,7 +151,7 @@ void sub_80A78AC(struct Sprite *sprite);
|
||||
void sub_80A6BFC(struct BattleAnimBgData *unk, u8 unused);
|
||||
u8 sub_80A8394(u16 species, bool8 isBackpic, u8 a3, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battlerId, u32 a10);
|
||||
void sub_80A749C(struct Sprite *sprite);
|
||||
void sub_80A6DEC(struct Sprite *sprite);
|
||||
void TradeMenuBouncePartySprites(struct Sprite *sprite);
|
||||
void DestroyAnimVisualTaskAndDisableBlend(u8 taskId);
|
||||
void DestroySpriteAndFreeResources_(struct Sprite *sprite);
|
||||
void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId);
|
||||
@@ -237,50 +237,50 @@ u32 UnpackSelectedBattleAnimPalettes(s16);
|
||||
|
||||
u8 GetBattlerSpriteFinal_Y(u8, u16, u8);
|
||||
|
||||
extern const struct OamData gUnknown_08524944;
|
||||
extern const struct OamData gUnknown_08524A8C;
|
||||
extern const struct OamData gUnknown_08524904;
|
||||
extern const struct OamData gUnknown_085249C4;
|
||||
extern const struct OamData gUnknown_0852490C;
|
||||
extern const struct OamData gUnknown_08524934;
|
||||
extern const struct OamData gUnknown_08524974;
|
||||
extern const struct OamData gUnknown_0852499C;
|
||||
extern const struct OamData gUnknown_085249CC;
|
||||
extern const struct OamData gUnknown_08524914;
|
||||
extern const struct OamData gUnknown_0852496C;
|
||||
extern const struct OamData gUnknown_08524A34;
|
||||
extern const struct OamData gUnknown_08524A3C;
|
||||
extern const struct OamData gUnknown_08524A94;
|
||||
extern const struct OamData gUnknown_08524954;
|
||||
extern const struct OamData gUnknown_08524AE4;
|
||||
extern const struct OamData gUnknown_085249D4;
|
||||
extern const struct OamData gUnknown_08524A9C;
|
||||
extern const struct OamData gUnknown_08524ADC;
|
||||
extern const struct OamData gUnknown_08524B14;
|
||||
extern const struct OamData gUnknown_08524A54;
|
||||
extern const struct OamData gUnknown_08524A14;
|
||||
extern const struct OamData gUnknown_08524A1C;
|
||||
extern const struct OamData gUnknown_085249BC;
|
||||
extern const struct OamData gUnknown_08524AF4;
|
||||
extern const struct OamData gUnknown_085249DC;
|
||||
extern const struct OamData gUnknown_08524AFC;
|
||||
extern const struct OamData gUnknown_08524B1C;
|
||||
extern const struct OamData gUnknown_08524A04;
|
||||
extern const struct OamData gUnknown_08524A2C;
|
||||
extern const struct OamData gUnknown_08524AEC;
|
||||
extern const struct OamData gUnknown_08524964;
|
||||
extern const struct OamData gUnknown_08524B24;
|
||||
extern const struct OamData gUnknown_08524A24;
|
||||
extern const struct OamData gUnknown_08524AC4;
|
||||
extern const struct OamData gUnknown_08524A84;
|
||||
extern const struct OamData gUnknown_08524A64;
|
||||
extern const struct OamData gUnknown_0852491C;
|
||||
extern const struct OamData gUnknown_0852495C;
|
||||
extern const struct OamData gUnknown_0852497C;
|
||||
extern const struct OamData gUnknown_085249F4;
|
||||
extern const struct OamData gUnknown_0852493C;
|
||||
extern const struct OamData gUnknown_08524A5C;
|
||||
extern const struct OamData gUnknown_08524A74;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_8x16;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjBlend_16x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_8x8;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjNormal_8x8;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_16x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_32x16;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjNormal_32x32;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjNormal_64x32;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjNormal_16x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_32x32;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjNormal_16x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjBlend_32x32;
|
||||
extern const struct OamData gOamData_AffineOff_ObjBlend_64x64;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjBlend_32x32;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_16x32;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjBlend_8x8;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjNormal_32x32;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjBlend_64x64;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjBlend_32x64;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjBlend_32x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjBlend_32x16;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjNormal_16x32;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjNormal_32x64;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjNormal_32x64;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjBlend_32x32;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjNormal_64x64;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjBlend_64x64;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjBlend_64x32;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjNormal_8x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjBlend_16x16;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjBlend_16x16;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjNormal_8x8;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjBlend_8x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjBlend_8x8;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjBlend_8x16;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjBlend_8x8;
|
||||
extern const struct OamData gOamData_AffineOff_ObjBlend_8x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_64x64;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_32x64;
|
||||
extern const struct OamData gOamData_AffineNormal_ObjNormal_64x64;
|
||||
extern const struct OamData gOamData_AffineDouble_ObjNormal_32x16;
|
||||
extern const struct OamData gOamData_AffineOff_ObjNormal_64x32;
|
||||
extern const struct OamData gOamData_AffineOff_ObjBlend_64x32;
|
||||
extern const struct OamData gOamData_AffineOff_ObjBlend_16x32;
|
||||
|
||||
extern const struct CompressedSpriteSheet gBattleAnimPicTable[];
|
||||
extern const struct CompressedSpritePalette gBattleAnimPaletteTable[];
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_PIKE_H
|
||||
#define GUARD_CONSTANTS_BATTLE_PIKE_H
|
||||
|
||||
#define PIKE_ROOM_SINGLE_BATTLE 0
|
||||
#define PIKE_ROOM_HEAL_FULL 1
|
||||
#define PIKE_ROOM_NPC 2
|
||||
#define PIKE_ROOM_STATUS 3
|
||||
#define PIKE_ROOM_HEAL_PART 4
|
||||
#define PIKE_ROOM_WILD_MONS 5
|
||||
#define PIKE_ROOM_HARD_BATTLE 6
|
||||
#define PIKE_ROOM_DOUBLE_BATTLE 7
|
||||
#define PIKE_ROOM_BRAIN 8
|
||||
|
||||
// For the room with a status effect.
|
||||
#define PIKE_STATUS_KIRLIA 0
|
||||
#define PIKE_STATUS_DUSCLOPS 1
|
||||
|
||||
// Function IDs for sBattlePikeFunctions / CallBattlePikeFunction
|
||||
#define BATTLE_PIKE_FUNC_SET_ROOM_TYPE 0
|
||||
#define BATTLE_PIKE_FUNC_GET_DATA 1
|
||||
#define BATTLE_PIKE_FUNC_SET_DATA 2
|
||||
#define BATTLE_PIKE_FUNC_IN_FINAL_ROOM 3
|
||||
#define BATTLE_PIKE_FUNC_SET_UP_ROOM_OBJECTS 4
|
||||
#define BATTLE_PIKE_FUNC_GET_ROOM_TYPE 5
|
||||
#define BATTLE_PIKE_FUNC_6 6
|
||||
#define BATTLE_PIKE_FUNC_7 7
|
||||
#define BATTLE_PIKE_FUNC_8 8
|
||||
#define BATTLE_PIKE_FUNC_NULL_9 9
|
||||
#define BATTLE_PIKE_FUNC_NULL_10 10
|
||||
#define BATTLE_PIKE_FUNC_GET_ROOM_STATUS 11
|
||||
#define BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON 12
|
||||
#define BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS 13
|
||||
#define BATTLE_PIKE_FUNC_BUFFER_NPC_MSG 14
|
||||
#define BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE 15
|
||||
#define BATTLE_PIKE_FUNC_IS_IN 16
|
||||
#define BATTLE_PIKE_FUNC_SET_HINT_ROOM 17
|
||||
#define BATTLE_PIKE_FUNC_SET_HINT_ROOM_ID 18
|
||||
#define BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT 19
|
||||
#define BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS 20
|
||||
#define BATTLE_PIKE_FUNC_BUFFER_RECORD_MIX_MSG 21
|
||||
#define BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE 22
|
||||
#define BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN 23
|
||||
#define BATTLE_PIKE_FUNC_SET_HEALING_ROOMS_DISABLED 24
|
||||
#define BATTLE_PIKE_FUNC_CAN_PARTY_BE_HEALED 25
|
||||
#define BATTLE_PIKE_FUNC_SAVE_MON_HELD_ITEMS 26
|
||||
#define BATTLE_PIKE_FUNC_LOAD_MON_HELD_ITEMS 27
|
||||
#define BATTLE_PIKE_FUNC_INIT_CHALLENGE 28
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_PIKE_H
|
||||
@@ -0,0 +1,49 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_PYRAMID_H
|
||||
#define GUARD_CONSTANTS_BATTLE_PYRAMID_H
|
||||
|
||||
#define TOTAL_ROUNDS 20
|
||||
#define PICKUP_ITEMS_PER_ROUND 10
|
||||
|
||||
#define FLOOR_WALKABLE_METATILE 0x28D
|
||||
#define FLOOR_EXIT_METATILE 0x28E
|
||||
|
||||
#define HINT_EXIT_DIRECTION 0
|
||||
#define HINT_REMAINING_ITEMS 1
|
||||
#define HINT_REMAINING_TRAINERS 2
|
||||
#define HINT_EXIT_SHORT_REMAINING_TRAINERS 3
|
||||
#define HINT_EXIT_SHORT_REMAINING_ITEMS 4
|
||||
#define HINT_EXIT_MEDIUM_REMAINING_TRAINERS 5
|
||||
#define HINT_EXIT_MEDIUM_REMAINING_ITEMS 6
|
||||
#define HINT_EXIT_FAR_REMAINING_TRAINERS 7
|
||||
#define HINT_EXIT_FAR_REMAINING_ITEMS 8
|
||||
|
||||
#define OBJ_TRAINERS 0
|
||||
#define OBJ_ITEMS 1
|
||||
|
||||
#define OBJ_POSITIONS_UNIFORM 0
|
||||
#define OBJ_POSITIONS_IN_AND_NEAR_ENTRANCE 1
|
||||
#define OBJ_POSITIONS_IN_AND_NEAR_EXIT 2
|
||||
#define OBJ_POSITIONS_NEAR_ENTRANCE 3
|
||||
#define OBJ_POSITIONS_NEAR_EXIT 4
|
||||
|
||||
// Functions IDs for sBattlePyramidFunctions / CallBattlePyramidFunction
|
||||
#define BATTLE_PYRAMID_FUNC_INIT_CHALLENGE 0
|
||||
#define BATTLE_PYRAMID_FUNC_GET_DATA 1
|
||||
#define BATTLE_PYRAMID_FUNC_SET_DATA 2
|
||||
#define BATTLE_PYRAMID_FUNC_3 3
|
||||
#define BATTLE_PYRAMID_FUNC_SET_REWARD 4
|
||||
#define BATTLE_PYRAMID_FUNC_GIVE_REWARD 5
|
||||
#define BATTLE_PYRAMID_FUNC_SEED_FLOOR 6
|
||||
#define BATTLE_PYRAMID_FUNC_SET_ITEM 7
|
||||
#define BATTLE_PYRAMID_FUNC_HIDE_ITEM 8
|
||||
#define BATTLE_PYRAMID_FUNC_INIT_TRAINERS 9
|
||||
#define BATTLE_PYRAMID_FUNC_SHOW_HINT_TEXT 10
|
||||
#define BATTLE_PYRAMID_FUNC_UPDATE_STREAK 11
|
||||
#define BATTLE_PYRAMID_FUNC_IS_IN 12
|
||||
#define BATTLE_PYRAMID_FUNC_UPDATE_LIGHT 13
|
||||
#define BATTLE_PYRAMID_FUNC_CLEAR_HELD_ITEMS 14
|
||||
#define BATTLE_PYRAMID_FUNC_SET_FLOOR_PALETTE 15
|
||||
#define BATTLE_PYRAMID_FUNC_16 16
|
||||
#define BATTLE_PYRAMID_FUNC_RESTORE_PARTY 17
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_PYRAMID_H
|
||||
@@ -0,0 +1,15 @@
|
||||
#ifndef GUARD_CONSTANTS_CABLE_CLUB_H
|
||||
#define GUARD_CONSTANTS_CABLE_CLUB_H
|
||||
|
||||
// States for VAR_CABLE_CLUB_STATE
|
||||
#define USING_SINGLE_BATTLE 1
|
||||
#define USING_DOUBLE_BATTLE 2
|
||||
#define USING_TRADE_CENTER 3
|
||||
#define USING_RECORD_CORNER 4
|
||||
#define USING_MULTI_BATTLE 5
|
||||
#define USING_UNION_ROOM 6
|
||||
#define USING_BERRY_CRUSH 7
|
||||
#define USING_MINIGAME 8
|
||||
#define USING_BATTLE_TOWER 9
|
||||
|
||||
#endif //GUARD_CONSTANTS_CABLE_CLUB_H
|
||||
@@ -179,8 +179,8 @@
|
||||
#define MOVEMENT_ACTION_CLEAR_FIXED_PRIORITY 0x5D
|
||||
#define MOVEMENT_ACTION_INIT_AFFINE_ANIM 0x5E
|
||||
#define MOVEMENT_ACTION_CLEAR_AFFINE_ANIM 0x5F
|
||||
#define MOVEMENT_ACTION_UNKNOWN1 0x60
|
||||
#define MOVEMENT_ACTION_UNKNOWN2 0x61
|
||||
#define MOVEMENT_ACTION_HIDE_REFLECTION 0x60
|
||||
#define MOVEMENT_ACTION_SHOW_REFLECTION 0x61
|
||||
#define MOVEMENT_ACTION_WALK_DOWN_START_AFFINE 0x62
|
||||
#define MOVEMENT_ACTION_WALK_DOWN_AFFINE 0x63
|
||||
#define MOVEMENT_ACTION_ACRO_WHEELIE_FACE_DOWN 0x64
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
#ifndef GUARD_CONSTANTS_FIELD_POISON_H
|
||||
#define GUARD_CONSTANTS_FIELD_POISON_H
|
||||
|
||||
#define FLDPSN_NONE 0
|
||||
#define FLDPSN_PSN 1
|
||||
#define FLDPSN_FNT 2
|
||||
|
||||
#define FLDPSN_NO_WHITEOUT 0
|
||||
#define FLDPSN_WHITEOUT 1
|
||||
#define FLDPSN_FRONTIER_WHITEOUT 2
|
||||
|
||||
#endif //GUARD_CONSTANTS_FIELD_POISON_H
|
||||
@@ -925,7 +925,7 @@
|
||||
#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN 0x3C7
|
||||
#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_BELDUM_POKEBALL 0x3C8
|
||||
#define FLAG_HIDE_FORTREE_CITY_KECLEON 0x3C9
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_1 0x3CA
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_BRIDGE_INVISIBLE 0x3CA
|
||||
#define FLAG_HIDE_LILYCOVE_CITY_RIVAL 0x3CB
|
||||
#define FLAG_HIDE_ROUTE_120_STEVEN 0x3CC
|
||||
#define FLAG_HIDE_SOOTOPOLIS_CITY_STEVEN 0x3CD
|
||||
@@ -936,14 +936,14 @@
|
||||
#define FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_2 0x3D2
|
||||
#define FLAG_HIDE_OLDALE_TOWN_RIVAL 0x3D3
|
||||
#define FLAG_HIDE_UNDERWATER_SEA_FLOOR_CAVERN_STOLEN_SUBMARINE 0x3D4
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_BRIDGE 0x3D5
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_2 0x3D6
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_BRIDGE_VISIBLE 0x3D5
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_1 0x3D6
|
||||
#define FLAG_HIDE_RUSTURF_TUNNEL_LOVER_WOMAN 0x3D7
|
||||
#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_LOVER_WOMAN 0x3D8
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_3 0x3D9
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_4 0x3DA
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_5 0x3DB
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_6 0x3DC
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_2 0x3D9
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_3 0x3DA
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_4 0x3DB
|
||||
#define FLAG_HIDE_ROUTE_120_KECLEON_5 0x3DC
|
||||
#define FLAG_HIDE_ROUTE_119_KECLEON_1 0x3DD
|
||||
#define FLAG_HIDE_ROUTE_119_KECLEON_2 0x3DE
|
||||
#define FLAG_HIDE_ROUTE_101_BOY 0x3DF
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
#ifndef GUARD_CONSTANTS_PARTY_MENU_H
|
||||
#define GUARD_CONSTANTS_PARTY_MENU_H
|
||||
|
||||
#define AILMENT_NONE 0
|
||||
#define AILMENT_PSN 1
|
||||
#define AILMENT_PRZ 2
|
||||
#define AILMENT_SLP 3
|
||||
#define AILMENT_FRZ 4
|
||||
#define AILMENT_BRN 5
|
||||
#define AILMENT_PKRS 6
|
||||
#define AILMENT_FNT 7
|
||||
|
||||
#define PARTY_CHOOSE_MON 0
|
||||
#define PARTY_MUST_CHOOSE_MON 1
|
||||
#define PARTY_CANT_SWITCH 2
|
||||
#define PARTY_USE_ITEM_ON 3
|
||||
#define PARTY_ABILITY_PREVENTS 4
|
||||
#define PARTY_GIVE_ITEM 5
|
||||
|
||||
#define TUTOR_MOVE_MEGA_PUNCH 0
|
||||
#define TUTOR_MOVE_SWORDS_DANCE 1
|
||||
#define TUTOR_MOVE_MEGA_KICK 2
|
||||
#define TUTOR_MOVE_BODY_SLAM 3
|
||||
#define TUTOR_MOVE_DOUBLE_EDGE 4
|
||||
#define TUTOR_MOVE_COUNTER 5
|
||||
#define TUTOR_MOVE_SEISMIC_TOSS 6
|
||||
#define TUTOR_MOVE_MIMIC 7
|
||||
#define TUTOR_MOVE_METRONOME 8
|
||||
#define TUTOR_MOVE_SOFT_BOILED 9
|
||||
#define TUTOR_MOVE_DREAM_EATER 10
|
||||
#define TUTOR_MOVE_THUNDER_WAVE 11
|
||||
#define TUTOR_MOVE_EXPLOSION 12
|
||||
#define TUTOR_MOVE_ROCK_SLIDE 13
|
||||
#define TUTOR_MOVE_SUBSTITUTE 14
|
||||
#define TUTOR_MOVE_DYNAMIC_PUNCH 15
|
||||
#define TUTOR_MOVE_ROLLOUT 16
|
||||
#define TUTOR_MOVE_PSYCH_UP 17
|
||||
#define TUTOR_MOVE_SNORE 18
|
||||
#define TUTOR_MOVE_ICY_WIND 19
|
||||
#define TUTOR_MOVE_ENDURE 20
|
||||
#define TUTOR_MOVE_MUD_SLAP 21
|
||||
#define TUTOR_MOVE_ICE_PUNCH 22
|
||||
#define TUTOR_MOVE_SWAGGER 23
|
||||
#define TUTOR_MOVE_SLEEP_TALK 24
|
||||
#define TUTOR_MOVE_SWIFT 25
|
||||
#define TUTOR_MOVE_DEFENSE_CURL 26
|
||||
#define TUTOR_MOVE_THUNDER_PUNCH 27
|
||||
#define TUTOR_MOVE_FIRE_PUNCH 28
|
||||
#define TUTOR_MOVE_FURY_CUTTER 29
|
||||
#define TUTOR_MOVE_COUNT 30
|
||||
|
||||
#endif // GUARD_CONSTANTS_PARTY_MENU_H
|
||||
@@ -177,6 +177,7 @@
|
||||
#define MON_DATA_SPATK2 87
|
||||
#define MON_DATA_SPDEF2 88
|
||||
|
||||
#define MIN_LEVEL 1
|
||||
#define MAX_LEVEL 100
|
||||
|
||||
#define OT_ID_PLAYER_ID 0
|
||||
|
||||
@@ -0,0 +1,116 @@
|
||||
#ifndef GUARD_CONSTANTS_TRADE_H
|
||||
#define GUARD_CONSTANTS_TRADE_H
|
||||
|
||||
#define TRADE_PLAYER 0
|
||||
#define TRADE_PARTNER 1
|
||||
|
||||
#define LINK_TRADE_TIMEOUT 300
|
||||
|
||||
// In-game Trade IDs
|
||||
#define INGAME_TRADE_SEEDOT 0
|
||||
#define INGAME_TRADE_PLUSLE 1
|
||||
#define INGAME_TRADE_HORSEA 2
|
||||
#define INGAME_TRADE_MEOWTH 3
|
||||
|
||||
// Flag IDs for sending link data
|
||||
#define INITIATE_TRADE 1
|
||||
#define CANCEL_TRADE 2
|
||||
#define WANTS_TO_TRADE 1
|
||||
#define WANTS_TO_CANCEL 2
|
||||
#define READY_FINISH_TRADE 1
|
||||
#define FINISH_TRADE 2
|
||||
|
||||
// Return values for CanTradeSelectedMon and CanTradeSelectedPartyMenuMon
|
||||
#define CAN_TRADE_MON 0
|
||||
#define CANT_TRADE_LAST_MON 1
|
||||
#define CANT_TRADE_NATIONAL 2
|
||||
#define CANT_TRADE_EGG 3
|
||||
#define CANT_TRADE_INVALID_MON 4
|
||||
#define CANT_TRADE_EGG2 5
|
||||
|
||||
// Return values for CheckValidityOfTradeMons
|
||||
#define PLAYER_MON_INVALID 0
|
||||
#define BOTH_MONS_VALID 1
|
||||
#define PARTNER_MON_INVALID 2
|
||||
|
||||
// Return values for GetGameProgressForLinkTrade
|
||||
#define TRADE_BOTH_PLAYERS_READY 0
|
||||
#define TRADE_PLAYER_NOT_READY 1
|
||||
#define TRADE_PARTNER_NOT_READY 2
|
||||
|
||||
// Indexes for sTradeActionTexts
|
||||
#define TRADE_TEXT_CANCEL 0
|
||||
#define TRADE_TEXT_CHOOSE_MON 1
|
||||
#define TRADE_TEXT_SUMMARY 2
|
||||
#define TRADE_TEXT_TRADE 3
|
||||
#define TRADE_TEXT_CANCEL_TRADE 4
|
||||
#define TRADE_TEXT_JP_QUIT 5
|
||||
|
||||
// Checked to confirm DrawTradeMenuParty has reached final state
|
||||
#define DRAW_PARTY_FINISH 5
|
||||
|
||||
// Message indexes for sTradeMessages
|
||||
#define TRADE_MSG_STANDBY 0
|
||||
#define TRADE_MSG_CANCELED 1
|
||||
#define TRADE_MSG_ONLY_MON1 2
|
||||
#define TRADE_MSG_ONLY_MON2 3
|
||||
#define TRADE_MSG_WAITING_FOR_FRIEND 4
|
||||
#define TRADE_MSG_FRIEND_WANTS_TO_TRADE 5
|
||||
#define TRADE_MSG_MON_CANT_BE_TRADED 6
|
||||
#define TRADE_MSG_EGG_CANT_BE_TRADED 7
|
||||
#define TRADE_MSG_FRIENDS_MON_CANT_BE_TRADED 8
|
||||
|
||||
// IDs for QueueAction
|
||||
#define QUEUE_SEND_DATA 0
|
||||
#define QUEUE_STANDBY 1
|
||||
#define QUEUE_ONLY_MON1 2
|
||||
#define QUEUE_ONLY_MON2 3
|
||||
#define QUEUE_UNUSED1 4
|
||||
#define QUEUE_UNUSED2 5
|
||||
#define QUEUE_MON_CANT_BE_TRADED 6
|
||||
#define QUEUE_EGG_CANT_BE_TRADED 7
|
||||
#define QUEUE_FRIENDS_MON_CANT_BE_TRADED 8
|
||||
|
||||
#define QUEUE_DELAY_MSG 3
|
||||
#define QUEUE_DELAY_DATA 5
|
||||
|
||||
// IDs for CallTradeMenuFunc
|
||||
#define TRADEMENUFUNC_MAIN_MENU 0
|
||||
#define TRADEMENUFUNC_SELECTED_MON 1
|
||||
#define TRADEMENUFUNC_SHOW_MON_SUMMARY 2
|
||||
#define TRADEMENUFUNC_CONFIRM_OR_CANCEL_TRADE 3
|
||||
#define TRADEMENUFUNC_CANCEL_TRADE_PROMPT 4
|
||||
#define TRADEMENUFUNC_UNUSED_5 5
|
||||
#define TRADEMENUFUNC_BOTH_MONS_SELECTED 6
|
||||
#define TRADEMENUFUNC_CONFIRM_TRADE_PROMPT 7
|
||||
#define TRADEMENUFUNC_REDRAW_MAIN_MENU 8
|
||||
#define TRADEMENUFUNC_LINK_TRADE_FADE_OUT 9
|
||||
#define TRADEMENUFUNC_LINK_TRADE_WAIT_FADE 10
|
||||
#define TRADEMENUFUNC_CANCEL_TRADE_1 11
|
||||
#define TRADEMENUFUNC_CANCEL_TRADE_2 12
|
||||
#define TRADEMENUFUNC_START_LINK_TRADE 13
|
||||
#define TRADEMENUFUNC_DELAY_TRADE_CONFIRM 14
|
||||
#define TRADEMENUFUNC_UNUSED_15 15
|
||||
#define TRADEMENUFUNC_LINK_TRADE_WAIT_QUEUE 16
|
||||
#define TRADEMENUFUNC_PARTNER_MON_INVALID 17
|
||||
#define TRADEMENUFUNC_STANDBY 100
|
||||
|
||||
// Message indexes for sUnionRoomTradeMessages
|
||||
#define UR_TRADE_MSG_NONE 0
|
||||
#define UR_TRADE_MSG_NOT_MON_PARTNER_WANTS 1
|
||||
#define UR_TRADE_MSG_NOT_EGG 2
|
||||
#define UR_TRADE_MSG_MON_CANT_BE_TRADED_1 3
|
||||
#define UR_TRADE_MSG_MON_CANT_BE_TRADED_2 4
|
||||
#define UR_TRADE_MSG_PARTNERS_MON_CANT_BE_TRADED 5
|
||||
#define UR_TRADE_MSG_EGG_CANT_BE_TRADED 6
|
||||
#define UR_TRADE_MSG_PARTNER_CANT_ACCEPT_MON 7
|
||||
#define UR_TRADE_MSG_CANT_TRADE_WITH_PARTNER_1 8
|
||||
#define UR_TRADE_MSG_CANT_TRADE_WITH_PARTNER_2 9
|
||||
|
||||
// Return values for CanRegisterMonForTradingBoard
|
||||
#define CAN_REGISTER_MON 0
|
||||
#define CANT_REGISTER_MON 1
|
||||
#define CANT_REGISTER_EGG 2
|
||||
|
||||
|
||||
#endif //GUARD_CONSTANTS_TRADE_H
|
||||
@@ -11,7 +11,7 @@
|
||||
#define TRAINER_HILL_FUNC_7 7
|
||||
#define TRAINER_HILL_FUNC_8 8
|
||||
#define TRAINER_HILL_FUNC_9 9
|
||||
#define TRAINER_HILL_FUNC_10 10
|
||||
#define TRAINER_HILL_FUNC_IS_IN 10
|
||||
#define TRAINER_HILL_FUNC_11 11
|
||||
#define TRAINER_HILL_FUNC_12 12
|
||||
#define TRAINER_HILL_FUNC_13 13
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
#ifndef GUARD_CONSTANTS_TV_H
|
||||
#define GUARD_CONSTANTS_TV_H
|
||||
|
||||
#define POKENEWS_NONE 0
|
||||
#define POKENEWS_SLATEPORT 1
|
||||
#define POKENEWS_GAME_CORNER 2
|
||||
#define POKENEWS_LILYCOVE 3
|
||||
#define POKENEWS_BLENDMASTER 4
|
||||
|
||||
#define TVSHOW_OFF_AIR 0
|
||||
#define TVSHOW_FAN_CLUB_LETTER 1
|
||||
#define TVSHOW_RECENT_HAPPENINGS 2
|
||||
#define TVSHOW_PKMN_FAN_CLUB_OPINIONS 3
|
||||
#define TVSHOW_UNKN_SHOWTYPE_04 4
|
||||
#define TVSHOW_NAME_RATER_SHOW 5
|
||||
#define TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE 6
|
||||
#define TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE 7
|
||||
#define TVSHOW_CONTEST_LIVE_UPDATES 8
|
||||
#define TVSHOW_3_CHEERS_FOR_POKEBLOCKS 9
|
||||
#define TVSHOW_BATTLE_UPDATE 10
|
||||
#define TVSHOW_FAN_CLUB_SPECIAL 11
|
||||
#define TVSHOW_CONTEST_LIVE_UPDATES_2 12
|
||||
// //
|
||||
#define TVSHOW_POKEMON_TODAY_CAUGHT 21
|
||||
#define TVSHOW_SMART_SHOPPER 22
|
||||
#define TVSHOW_POKEMON_TODAY_FAILED 23
|
||||
#define TVSHOW_FISHING_ADVICE 24
|
||||
#define TVSHOW_WORLD_OF_MASTERS 25
|
||||
#define TVSHOW_TODAYS_RIVAL_TRAINER 26
|
||||
#define TVSHOW_TREND_WATCHER 27
|
||||
#define TVSHOW_TREASURE_INVESTIGATORS 28
|
||||
#define TVSHOW_FIND_THAT_GAMER 29
|
||||
#define TVSHOW_BREAKING_NEWS 30
|
||||
#define TVSHOW_SECRET_BASE_VISIT 31
|
||||
#define TVSHOW_LOTTO_WINNER 32
|
||||
#define TVSHOW_BATTLE_SEMINAR 33
|
||||
#define TVSHOW_TRAINER_FAN_CLUB 34
|
||||
#define TVSHOW_CUTIES 35
|
||||
#define TVSHOW_FRONTIER 36
|
||||
#define TVSHOW_NUMBER_ONE 37
|
||||
#define TVSHOW_SECRET_BASE_SECRETS 38
|
||||
#define TVSHOW_SAFARI_FAN_CLUB 39
|
||||
// //
|
||||
#define TVSHOW_MASS_OUTBREAK 41
|
||||
|
||||
#endif //GUARD_CONSTANTS_TV_H
|
||||
@@ -77,7 +77,7 @@
|
||||
#define VAR_REGICE_STEPS_2 0x403C
|
||||
#define VAR_REGICE_STEPS_3 0x403D
|
||||
#define VAR_ALTERING_CAVE_WILD_SET 0x403E
|
||||
#define VAR_ALWAYS_ZERO_0x403F 0x403F // This var is read and written, but is always zero.
|
||||
#define VAR_DISTRIBUTE_EON_TICKET 0x403F // This var is read and written, but is always zero. The only way to obtain the Eon Ticket in Emerald is via Record Mixing
|
||||
#define VAR_DAYS 0x4040
|
||||
#define VAR_FANCLUB_UNKNOWN_1 0x4041
|
||||
#define VAR_FANCLUB_UNKNOWN_2 0x4042
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#define GUARD_DODRIO_BERRY_PICKING_H
|
||||
|
||||
void sub_802493C(u16 a0, void (*callback)(void));
|
||||
void sub_8027A5C(void);
|
||||
void sub_8027AAC(void);
|
||||
void IsDodrioInParty(void);
|
||||
void ShowDodrioBerryPickingRecords(void);
|
||||
|
||||
#endif // GUARD_DODRIO_BERRY_PICKING_H
|
||||
|
||||
@@ -548,17 +548,17 @@ extern const u8 EventScript_UseDive[];
|
||||
extern const u8 EventScript_UseDiveUnderwater[];
|
||||
extern const u8 EventScript_FallDownHole[];
|
||||
extern const u8 BattleFrontier_BattlePyramidEmptySquare_EventScript_252BE8[];
|
||||
extern const u8 EventScript_Poison[];
|
||||
extern const u8 EventScript_FieldPoison[];
|
||||
extern const u8 EventScript_EggHatch[];
|
||||
extern const u8 UnusualWeather_EventScript_EndEventAndCleanup_1[];
|
||||
extern const u8 IslandCave_EventScript_238EAF[];
|
||||
extern const u8 MauvilleCity_EventScript_1DF7BA[];
|
||||
extern const u8 Route119_EventScript_1F49EC[];
|
||||
extern const u8 LittlerootTown_ProfessorBirchsLab_EventScript_1FA4D6[];
|
||||
extern const u8 RustboroCity_Gym_EventScript_21307B[];
|
||||
extern const u8 RustboroCity_Gym_EventScript_RegisterRoxanne[];
|
||||
extern const u8 MossdeepCity_SpaceCenter_2F_EventScript_224175[];
|
||||
extern const u8 SSTidalCorridor_EventScript_23C050[];
|
||||
extern const u8 gUnknown_082A8350[];
|
||||
extern const u8 EventScript_FallDownHoleMtPyre[];
|
||||
|
||||
// Secret Base
|
||||
extern const u8 SecretBase_EventScript_PC[];
|
||||
|
||||
@@ -7,13 +7,7 @@
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
enum {
|
||||
FLDPSN_NONE,
|
||||
FLDPSN_PSN,
|
||||
FLDPSN_FNT
|
||||
};
|
||||
|
||||
void ExecuteWhiteOut(void);
|
||||
void TryFieldPoisonWhiteOut(void);
|
||||
s32 DoPoisonFieldEffect(void);
|
||||
|
||||
#endif //GUARD_FIELD_POISON_H
|
||||
|
||||
@@ -33,7 +33,7 @@ void sub_80AF8B8(void);
|
||||
void sub_80AF948(void);
|
||||
void sub_80AF9F8(void);
|
||||
void sub_80AFC60(void);
|
||||
void sub_80B009C(u8 flashLevel);
|
||||
void AnimateFlash(u8 flashLevel);
|
||||
void WriteBattlePyramidViewScanlineEffectBuffer(void);
|
||||
void sub_80B0244(void);
|
||||
void sub_80B0268(void);
|
||||
|
||||
+23
-18
@@ -65,7 +65,7 @@ struct EventObjectTemplate
|
||||
/*0x0E*/ u16 trainerRange_berryTreeId;
|
||||
/*0x10*/ const u8 *script;
|
||||
/*0x14*/ u16 flagId;
|
||||
}; /*size = 0x18*/
|
||||
};
|
||||
|
||||
struct WarpEvent
|
||||
{
|
||||
@@ -82,7 +82,6 @@ struct CoordEvent
|
||||
u8 elevation;
|
||||
u16 trigger;
|
||||
u16 index;
|
||||
u8 filler_A[0x2];
|
||||
u8 *script;
|
||||
};
|
||||
|
||||
@@ -90,20 +89,14 @@ struct BgEvent
|
||||
{
|
||||
u16 x, y;
|
||||
u8 elevation;
|
||||
u8 kind;
|
||||
union { // carried over from diego's FR/LG work, seems to be the same struct
|
||||
// in gen 3, "kind" (0x3 in BgEvent struct) determines the method to read the union.
|
||||
u8 kind; // The "kind" field determines how to access bgUnion union below.
|
||||
union {
|
||||
u8 *script;
|
||||
|
||||
// hidden item type
|
||||
struct {
|
||||
u16 item;
|
||||
u16 hiddenItemId; // flag offset to determine flag lookup
|
||||
u16 hiddenItemId;
|
||||
} hiddenItem;
|
||||
|
||||
// secret base type
|
||||
u32 secretBaseId;
|
||||
|
||||
} bgUnion;
|
||||
};
|
||||
|
||||
@@ -113,7 +106,6 @@ struct MapEvents
|
||||
u8 warpCount;
|
||||
u8 coordEventCount;
|
||||
u8 bgEventCount;
|
||||
|
||||
struct EventObjectTemplate *eventObjects;
|
||||
struct WarpEvent *warps;
|
||||
struct CoordEvent *coordEvents;
|
||||
@@ -122,10 +114,10 @@ struct MapEvents
|
||||
|
||||
struct MapConnection
|
||||
{
|
||||
/*0x00*/ u8 direction;
|
||||
/*0x01*/ u32 offset;
|
||||
/*0x05*/ u8 mapGroup;
|
||||
/*0x06*/ u8 mapNum;
|
||||
u8 direction;
|
||||
u32 offset;
|
||||
u8 mapGroup;
|
||||
u8 mapNum;
|
||||
};
|
||||
|
||||
struct MapConnections
|
||||
@@ -180,7 +172,7 @@ struct EventObject
|
||||
/*0x03*/ u32 spriteAffineAnimPausedBackup:1;
|
||||
u32 disableJumpLandingGroundEffect:1;
|
||||
u32 fixedPriority:1;
|
||||
u32 unk3_3:1;
|
||||
u32 hideReflection:1;
|
||||
/*0x04*/ u8 spriteId;
|
||||
/*0x05*/ u8 graphicsId;
|
||||
/*0x06*/ u8 movementType;
|
||||
@@ -267,7 +259,20 @@ enum
|
||||
|
||||
enum
|
||||
{
|
||||
COLLISION_LEDGE_JUMP = 6
|
||||
COLLISION_NONE,
|
||||
COLLISION_OUTSIDE_RANGE,
|
||||
COLLISION_IMPASSABLE,
|
||||
COLLISION_ELEVATION_MISMATCH,
|
||||
COLLISION_EVENT_OBJECT,
|
||||
COLLISION_STOP_SURFING,
|
||||
COLLISION_LEDGE_JUMP,
|
||||
COLLISION_PUSHED_BOULDER,
|
||||
COLLISION_ROTATING_GATE,
|
||||
COLLISION_WHEELIE_HOP,
|
||||
COLLISION_ISOLATED_VERTICAL_RAIL,
|
||||
COLLISION_ISOLATED_HORIZONTAL_RAIL,
|
||||
COLLISION_VERTICAL_RAIL,
|
||||
COLLISION_HORIZONTAL_RAIL,
|
||||
};
|
||||
|
||||
// player running states
|
||||
|
||||
@@ -1,45 +1,6 @@
|
||||
#ifndef GUARD_GLOBAL_TV_H
|
||||
#define GUARD_GLOBAL_TV_H
|
||||
|
||||
enum
|
||||
{
|
||||
TVSHOW_OFF_AIR,
|
||||
TVSHOW_FAN_CLUB_LETTER,
|
||||
TVSHOW_RECENT_HAPPENINGS,
|
||||
TVSHOW_PKMN_FAN_CLUB_OPINIONS,
|
||||
TVSHOW_UNKN_SHOWTYPE_04,
|
||||
TVSHOW_NAME_RATER_SHOW,
|
||||
TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE,
|
||||
TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE,
|
||||
TVSHOW_CONTEST_LIVE_UPDATES,
|
||||
TVSHOW_3_CHEERS_FOR_POKEBLOCKS,
|
||||
TVSHOW_BATTLE_UPDATE,
|
||||
TVSHOW_FAN_CLUB_SPECIAL,
|
||||
TVSHOW_CONTEST_LIVE_UPDATES_2,
|
||||
|
||||
TVSHOW_POKEMON_TODAY_CAUGHT = 21,
|
||||
TVSHOW_SMART_SHOPPER,
|
||||
TVSHOW_POKEMON_TODAY_FAILED,
|
||||
TVSHOW_FISHING_ADVICE,
|
||||
TVSHOW_WORLD_OF_MASTERS,
|
||||
TVSHOW_TODAYS_RIVAL_TRAINER,
|
||||
TVSHOW_TREND_WATCHER,
|
||||
TVSHOW_TREASURE_INVESTIGATORS,
|
||||
TVSHOW_FIND_THAT_GAMER,
|
||||
TVSHOW_BREAKING_NEWS,
|
||||
TVSHOW_SECRET_BASE_VISIT,
|
||||
TVSHOW_LOTTO_WINNER,
|
||||
TVSHOW_BATTLE_SEMINAR,
|
||||
TVSHOW_TRAINER_FAN_CLUB,
|
||||
TVSHOW_CUTIES,
|
||||
TVSHOW_FRONTIER,
|
||||
TVSHOW_NUMBER_ONE,
|
||||
TVSHOW_SECRET_BASE_SECRETS,
|
||||
TVSHOW_SAFARI_FAN_CLUB,
|
||||
|
||||
TVSHOW_MASS_OUTBREAK = 41,
|
||||
};
|
||||
|
||||
typedef union // size = 0x24
|
||||
{
|
||||
// Common
|
||||
@@ -495,14 +456,6 @@ typedef union // size = 0x24
|
||||
} massOutbreak;
|
||||
} TVShow;
|
||||
|
||||
enum {
|
||||
POKENEWS_NONE,
|
||||
POKENEWS_SLATEPORT,
|
||||
POKENEWS_GAME_CORNER,
|
||||
POKENEWS_LILYCOVE,
|
||||
POKENEWS_BLENDMASTER
|
||||
};
|
||||
|
||||
typedef struct // 2b50
|
||||
{
|
||||
u8 kind;
|
||||
|
||||
+4
-4
@@ -4848,13 +4848,13 @@ extern const u32 gCableCarCord_Gfx[];
|
||||
extern const u16 gCableCar_Pal[];
|
||||
|
||||
// Trade
|
||||
extern const u16 gUnknown_08DDB3E4[];
|
||||
extern const u8 gUnknown_08DDB464[];
|
||||
extern const u16 gTradeMenu_Pal[];
|
||||
extern const u8 gTradeMenu_Gfx[];
|
||||
extern const u16 gUnknown_08DDCF04[];
|
||||
extern const u16 gTradeGba2_Pal[];
|
||||
extern const u8 gTradeGba_Gfx[];
|
||||
extern const u16 gUnknown_08DDD704[];
|
||||
extern const u8 gUnknown_08DDC6E4[];
|
||||
extern const u16 gTradeMenuMonBox_Tilemap[];
|
||||
extern const u8 gTradeButtons_Gfx[];
|
||||
extern const u16 gUnknown_08DDB444[];
|
||||
|
||||
// Party menu
|
||||
|
||||
+5
-5
@@ -76,10 +76,10 @@ struct UnkLinkRfuStruct_02022B14Substruct
|
||||
u16 unk_00_4:1;
|
||||
u16 unk_00_5:1;
|
||||
u16 unk_00_6:1;
|
||||
u16 unk_00_7:1;
|
||||
u16 unk_01_0:1;
|
||||
u16 unk_01_1:1;
|
||||
u16 unk_01_2:4;
|
||||
u16 isChampion:1;
|
||||
u16 hasNationalDex:1;
|
||||
u16 gameClear:1; // never read, redundant with isChampion
|
||||
u16 unk_01_2:4; // always 3?
|
||||
u16 unk_01_6:2;
|
||||
u8 playerTrainerId[2];
|
||||
};
|
||||
@@ -93,7 +93,7 @@ struct __attribute__((packed, aligned(2))) UnkLinkRfuStruct_02022B14
|
||||
u8 unk_0a_0:7;
|
||||
u8 unk_0a_7:1;
|
||||
u8 playerGender:1;
|
||||
u8 unk_0b_1:7;
|
||||
u8 level:7;
|
||||
u8 unk_0c;
|
||||
};
|
||||
|
||||
|
||||
+52
-17
@@ -48,20 +48,52 @@
|
||||
#define EXTRACT_LINK_ERRORS(status) \
|
||||
(((status) & LINK_STAT_ERRORS) >> LINK_STAT_ERRORS_SHIFT)
|
||||
|
||||
#define LINKCMD_SEND_LINK_TYPE 0x2222
|
||||
#define LINKCMD_0x2FFE 0x2FFE
|
||||
#define LINKCMD_SEND_HELD_KEYS 0x4444
|
||||
#define LINKCMD_0x5555 0x5555
|
||||
#define LINKCMD_0x5566 0x5566
|
||||
#define LINKCMD_0x5FFF 0x5FFF
|
||||
#define LINKCMD_0x6666 0x6666
|
||||
#define LINKCMD_0x7777 0x7777
|
||||
#define LINKCMD_CONT_BLOCK 0x8888
|
||||
#define LINKCMD_0xAAAA 0xAAAA
|
||||
#define LINKCMD_0xAAAB 0xAAAB
|
||||
#define LINKCMD_INIT_BLOCK 0xBBBB
|
||||
#define LINKCMD_SEND_HELD_KEYS_2 0xCAFE
|
||||
#define LINKCMD_0xCCCC 0xCCCC
|
||||
#define LINKCMD_SEND_LINK_TYPE 0x2222
|
||||
#define LINKCMD_0x2FFE 0x2FFE
|
||||
#define LINKCMD_SEND_HELD_KEYS 0x4444
|
||||
#define LINKCMD_0x5555 0x5555
|
||||
#define LINKCMD_0x5566 0x5566
|
||||
#define LINKCMD_0x5FFF 0x5FFF
|
||||
#define LINKCMD_0x6666 0x6666
|
||||
#define LINKCMD_0x7777 0x7777
|
||||
#define LINKCMD_CONT_BLOCK 0x8888
|
||||
#define LINKCMD_0xAAAA 0xAAAA
|
||||
#define LINKCMD_0xAAAB 0xAAAB
|
||||
#define LINKCMD_READY_TO_TRADE 0xAABB
|
||||
#define LINKCMD_READY_FINISH_TRADE 0xABCD
|
||||
#define LINKCMD_INIT_BLOCK 0xBBBB
|
||||
#define LINKCMD_READY_CANCEL_TRADE 0xBBCC
|
||||
#define LINKCMD_SEND_HELD_KEYS_2 0xCAFE
|
||||
#define LINKCMD_0xCCCC 0xCCCC
|
||||
#define LINKCMD_START_TRADE 0xCCDD
|
||||
#define LINKCMD_CONFIRM_FINISH_TRADE 0xDCBA
|
||||
#define LINKCMD_SET_MONS_TO_TRADE 0xDDDD
|
||||
#define LINKCMD_0xDDEE 0xDDEE
|
||||
#define LINKCMD_REQUEST_CANCEL 0xEEAA
|
||||
#define LINKCMD_CANCEL_TRADE 0xEEBB
|
||||
#define LINKCMD_0xEECC 0xEECC
|
||||
|
||||
#define LINKTYPE_0x1111 0x1111 // trade
|
||||
#define LINKTYPE_0x1122 0x1122 // trade
|
||||
#define LINKTYPE_0x1133 0x1133 // trade
|
||||
#define LINKTYPE_0x1144 0x1144 // trade
|
||||
#define LINKTYPE_BATTLE 0x2211
|
||||
#define LINKTYPE_0x2222 0x2222 // unused battle?
|
||||
#define LINKTYPE_SINGLE_BATTLE 0x2233
|
||||
#define LINKTYPE_DOUBLE_BATTLE 0x2244
|
||||
#define LINKTYPE_MULTI_BATTLE 0x2255
|
||||
#define LINKTYPE_BATTLE_TOWER_50 0x2266
|
||||
#define LINKTYPE_BATTLE_TOWER_OPEN 0x2277
|
||||
#define LINKTYPE_0x2288 0x2288 // battle?
|
||||
#define LINKTYPE_0x3311 0x3311
|
||||
#define LINKTYPE_0x3322 0x3322
|
||||
#define LINKTYPE_0x4411 0x4411
|
||||
#define LINKTYPE_BERRY_BLENDER 0x4422
|
||||
#define LINKTYPE_0x5501 0x5501 // mystery event
|
||||
#define LINKTYPE_0x5502 0x5502 // unused?
|
||||
#define LINKTYPE_0x5503 0x5503 // eReader
|
||||
#define LINKTYPE_0x6601 0x6601
|
||||
#define LINKTYPE_0x6602 0x6602
|
||||
|
||||
struct LinkStatus
|
||||
{
|
||||
@@ -95,8 +127,8 @@ enum
|
||||
EXCHANGE_COMPLETE,
|
||||
EXCHANGE_TIMED_OUT,
|
||||
EXCHANGE_IN_PROGRESS,
|
||||
EXCHANGE_STAT_4,
|
||||
EXCHANGE_STAT_5,
|
||||
EXCHANGE_PLAYER_NOT_READY,
|
||||
EXCHANGE_PARTNER_NOT_READY,
|
||||
EXCHANGE_STAT_6,
|
||||
EXCHANGE_STAT_7
|
||||
};
|
||||
@@ -120,7 +152,10 @@ struct LinkPlayer
|
||||
/* 0x00 */ u16 version;
|
||||
/* 0x02 */ u16 lp_field_2;
|
||||
/* 0x04 */ u32 trainerId;
|
||||
/* 0x08 */ u8 name[11];
|
||||
/* 0x08 */ u8 name[PLAYER_NAME_LENGTH + 1];
|
||||
/* 0x10 */ u8 progressFlags; // (& 0x0F) is hasNationalDex, (& 0xF0) is hasClearedGame
|
||||
/* 0x11 */ u8 neverRead;
|
||||
/* 0x12 */ u8 progressFlagsCopy;
|
||||
/* 0x13 */ u8 gender;
|
||||
/* 0x14 */ u32 linkType;
|
||||
/* 0x18 */ u16 id; // battler id in battles
|
||||
|
||||
+3
-3
@@ -128,7 +128,7 @@ struct UnkRfuStruct_Sub_Unused
|
||||
|
||||
struct UnkRfuStruct_2
|
||||
{
|
||||
/* 0x000 */ void (*unk_00)(void);
|
||||
/* 0x000 */ void (*linkRfuCallback)(void);
|
||||
/* 0x004 */ u16 unk_04;
|
||||
/* 0x006 */ u8 filler_06[4];
|
||||
/* 0x00a */ u16 unk_0a;
|
||||
@@ -224,11 +224,11 @@ void sub_800F804(void);
|
||||
void sub_800F850(void);
|
||||
u8 sub_800FCD8(void);
|
||||
bool32 sub_800FE84(const u8 *src, size_t size);
|
||||
void Rfu_set_zero(void);
|
||||
void ClearLinkRfuCallback(void);
|
||||
u8 sub_80104F4(void);
|
||||
u8 rfu_get_multiplayer_id(void);
|
||||
bool8 sub_8010100(u8 a0);
|
||||
bool8 sub_8010500(void);
|
||||
bool8 IsLinkRfuTaskFinished(void);
|
||||
bool8 Rfu_IsMaster(void);
|
||||
void task_add_05_task_del_08FA224_when_no_RfuFunc(void);
|
||||
void sub_8010434(void);
|
||||
|
||||
+7
-61
@@ -4,62 +4,7 @@
|
||||
#include "main.h"
|
||||
#include "task.h"
|
||||
|
||||
enum
|
||||
{
|
||||
AILMENT_NONE,
|
||||
AILMENT_PSN,
|
||||
AILMENT_PRZ,
|
||||
AILMENT_SLP,
|
||||
AILMENT_FRZ,
|
||||
AILMENT_BRN,
|
||||
AILMENT_PKRS,
|
||||
AILMENT_FNT
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
PARTY_CHOOSE_MON,
|
||||
PARTY_MUST_CHOOSE_MON,
|
||||
PARTY_CANT_SWITCH,
|
||||
PARTY_USE_ITEM_ON,
|
||||
PARTY_ABILITY_PREVENTS,
|
||||
PARTY_GIVE_ITEM,
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
TUTOR_MOVE_MEGA_PUNCH,
|
||||
TUTOR_MOVE_SWORDS_DANCE,
|
||||
TUTOR_MOVE_MEGA_KICK,
|
||||
TUTOR_MOVE_BODY_SLAM,
|
||||
TUTOR_MOVE_DOUBLE_EDGE,
|
||||
TUTOR_MOVE_COUNTER,
|
||||
TUTOR_MOVE_SEISMIC_TOSS,
|
||||
TUTOR_MOVE_MIMIC,
|
||||
TUTOR_MOVE_METRONOME,
|
||||
TUTOR_MOVE_SOFT_BOILED,
|
||||
TUTOR_MOVE_DREAM_EATER,
|
||||
TUTOR_MOVE_THUNDER_WAVE,
|
||||
TUTOR_MOVE_EXPLOSION,
|
||||
TUTOR_MOVE_ROCK_SLIDE,
|
||||
TUTOR_MOVE_SUBSTITUTE,
|
||||
TUTOR_MOVE_DYNAMIC_PUNCH,
|
||||
TUTOR_MOVE_ROLLOUT,
|
||||
TUTOR_MOVE_PSYCH_UP,
|
||||
TUTOR_MOVE_SNORE,
|
||||
TUTOR_MOVE_ICY_WIND,
|
||||
TUTOR_MOVE_ENDURE,
|
||||
TUTOR_MOVE_MUD_SLAP,
|
||||
TUTOR_MOVE_ICE_PUNCH,
|
||||
TUTOR_MOVE_SWAGGER,
|
||||
TUTOR_MOVE_SLEEP_TALK,
|
||||
TUTOR_MOVE_SWIFT,
|
||||
TUTOR_MOVE_DEFENSE_CURL,
|
||||
TUTOR_MOVE_THUNDER_PUNCH,
|
||||
TUTOR_MOVE_FIRE_PUNCH,
|
||||
TUTOR_MOVE_FURY_CUTTER,
|
||||
TUTOR_MOVE_COUNT
|
||||
};
|
||||
#include "constants/party_menu.h"
|
||||
|
||||
struct Struct203CEC8
|
||||
{
|
||||
@@ -93,17 +38,17 @@ u8 GetCursorSelectionMonId(void);
|
||||
u8 sub_81B1360(void);
|
||||
void sub_81B1370(u8 taskId);
|
||||
u8* GetMonNickname(struct Pokemon *mon, u8 *dest);
|
||||
u8 sub_81B1B5C(const u8* str, u8 b);
|
||||
u8 DisplayPartyMenuMessage(const u8* str, u8 b);
|
||||
bool8 sub_81B1BD4(void);
|
||||
void sub_81B1F18(u8 taskId, u8 slot, s8 c, s16 HPDifference, TaskFunc func);
|
||||
u8 pokemon_ailments_get_primary(u32 status);
|
||||
u8 GetMonAilment(struct Pokemon *mon);
|
||||
void display_pokemon_menu_message(u32 stringID);
|
||||
void DisplayPartyMenuStdMessage(u32 stringID);
|
||||
void sub_81B47E0(u8 taskId);
|
||||
bool8 FieldCallback_PrepareFadeInFromMenu(void);
|
||||
void sub_81B58A8(void);
|
||||
void LoadHeldItemIcons(void);
|
||||
void sub_81B5D4C(u8 *a, u8 *b, u8 c);
|
||||
void DrawHeldItemIconsForTrade(u8 *a, u8 *b, u8 c);
|
||||
void sub_81B617C(void);
|
||||
void ItemUseCB_Medicine(u8 taskId, TaskFunc task);
|
||||
void sub_81B67C8(u8 taskId, TaskFunc task);
|
||||
@@ -123,8 +68,9 @@ void sub_81B8448(void);
|
||||
void InitChooseHalfPartyForBattle(u8 unused);
|
||||
void sub_81B8558(void);
|
||||
void sub_81B8904(u8 initArg, MainCallback callback);
|
||||
void sub_81B892C(void);
|
||||
void sub_81B8958(void);
|
||||
void OpenPartyMenuForMoveTutor(void);
|
||||
void ChooseMonForWirelessMinigame(void);
|
||||
void ChooseMonForWirelessMinigame(void);
|
||||
void OpenPartyMenuInBattle(u8 arg);
|
||||
void sub_81B89F0(void);
|
||||
void sub_81B8C68(void);
|
||||
|
||||
+1
-1
@@ -25,7 +25,7 @@ extern const struct SpriteTemplate gBallSpriteTemplates[];
|
||||
|
||||
u8 DoPokeballSendOutAnimation(s16 pan, u8 kindOfThrow);
|
||||
void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 battler, u8 x, u8 y, u8 oamPriority, u8 subpriortiy, u8 g, u32 h, u16 species);
|
||||
u8 sub_807671C(u8 a, u8 b, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 g, u32 h);
|
||||
u8 CreateTradePokeballSprite(u8 a, u8 b, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 g, u32 h);
|
||||
void sub_8076918(u8 battler);
|
||||
void DoHitAnimHealthboxEffect(u8 battler);
|
||||
void LoadBallGfx(u8 ballId);
|
||||
|
||||
@@ -21,8 +21,8 @@ u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u
|
||||
u8 UpdateMonIconFrame(struct Sprite *sprite);
|
||||
void LoadMonIconPalette(u16 species);
|
||||
void sub_80D328C(struct Sprite *sprite);
|
||||
void sub_80D3014(struct Sprite *sprite);
|
||||
void sub_80D32C8(struct Sprite *sprite, u8 animNum);
|
||||
void UpdateTradeMonIconFrame(struct Sprite *sprite);
|
||||
void SetPartyHPBarSprite(struct Sprite *sprite, u8 animNum);
|
||||
u8 GetMonIconPaletteIndexFromSpecies(u16 species);
|
||||
|
||||
#endif // GUARD_POKEMON_ICON_H
|
||||
|
||||
@@ -4,10 +4,10 @@
|
||||
#include "main.h"
|
||||
|
||||
void sub_802A9A8(u16 monId, MainCallback callback);
|
||||
bool32 sub_802C908(u16 species);
|
||||
void sub_802C920(void);
|
||||
bool32 IsSpeciesAllowedInPokemonJump(u16 species);
|
||||
void IsPokemonJumpSpeciesInParty(void);
|
||||
void ResetPokeJumpResults(void);
|
||||
void sub_802E3C4(void);
|
||||
void ShowPokemonJumpRecords(void);
|
||||
void sub_802EB24(s16 tileTag, s16 palTag, s16 x, s16 y, u8 subpriority);
|
||||
bool32 sub_802EB84(void);
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ struct PokemonStorage
|
||||
|
||||
extern struct PokemonStorage *gPokemonStoragePtr;
|
||||
|
||||
void sub_80C6D80(const u8 *string, void *dst, u8 arg2, u8 arg3, s32 arg4);
|
||||
void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 arg2, u8 arg3, s32 bytesToBuffer);
|
||||
u8 CountMonsInBox(u8 boxId);
|
||||
s16 GetFirstFreeBoxSpot(u8 boxId);
|
||||
u8 CountPartyAliveNonEggMonsExcept(u8 slotToIgnore);
|
||||
|
||||
+14
-13
@@ -2,25 +2,26 @@
|
||||
#define GUARD_TRADE_H
|
||||
|
||||
#include "link_rfu.h"
|
||||
#include "constants/trade.h"
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
extern struct MailStruct gUnknown_020321C0[PARTY_SIZE];
|
||||
extern u8 gUnknown_02032298[2];
|
||||
extern struct MailStruct gTradeMail[PARTY_SIZE];
|
||||
extern u8 gSelectedTradeMonPositions[2];
|
||||
|
||||
// Exported ROM declarations
|
||||
extern const struct WindowTemplate gUnknown_0833900C;
|
||||
extern const struct WindowTemplate gTradeEvolutionSceneYesNoWindowTemplate;
|
||||
|
||||
s32 sub_807A728(void);
|
||||
void sub_80773AC(void);
|
||||
void sub_807AE50(void);
|
||||
int sub_807A8D0(struct UnkLinkRfuStruct_02022B14Substruct a0, u16, u16, u8);
|
||||
int sub_807A7E0(struct UnkLinkRfuStruct_02022B14Substruct a0, struct UnkLinkRfuStruct_02022B14Substruct a1, u16 a2, u16 a3, u8 a4, u16 a5, u8 a6);
|
||||
int sub_807A918(struct Pokemon*, u16);
|
||||
void sub_807B140(void);
|
||||
void sub_807B154(void);
|
||||
void sub_807F19C(void);
|
||||
void sub_807F1A8(u8, const u8 *, u8);
|
||||
s32 GetGameProgressForLinkTrade(void);
|
||||
void CB2_StartCreateTradeMenu(void);
|
||||
void CB2_LinkTrade(void);
|
||||
int CanRegisterMonForTradingBoard(struct UnkLinkRfuStruct_02022B14Substruct a0, u16, u16, u8);
|
||||
int GetUnionRoomTradeMessageId(struct UnkLinkRfuStruct_02022B14Substruct a0, struct UnkLinkRfuStruct_02022B14Substruct a1, u16 a2, u16 a3, u8 a4, u16 a5, u8 a6);
|
||||
int CanTradeSelectedPartyMenuMon(struct Pokemon*, u16);
|
||||
void InitTradeSequenceBgGpuRegs(void);
|
||||
void LinkTradeDrawWindow(void);
|
||||
void InitTradeBg(void);
|
||||
void DrawTextOnTradeWindow(u8, const u8 *, u8);
|
||||
|
||||
#endif //GUARD_TRADE_H
|
||||
|
||||
@@ -57,7 +57,7 @@ u8 GetTrainerHillTrainerFrontSpriteId(u16 trainerId);
|
||||
void InitTrainerHillBattleStruct(void);
|
||||
void FreeTrainerHillBattleStruct(void);
|
||||
void CopyTrainerHillTrainerText(u8 which, u16 trainerId);
|
||||
bool8 sub_81D5C18(void);
|
||||
bool8 InTrainerHillChallenge(void);
|
||||
void nullsub_129(void);
|
||||
void PrintOnTrainerHillRecordsWindow(void);
|
||||
void sub_81D5DF8(void);
|
||||
|
||||
@@ -135,7 +135,7 @@ union UnkUnion_Main
|
||||
struct UnkStruct_URoom *uRoom;
|
||||
};
|
||||
|
||||
struct TradeUnkStruct
|
||||
struct UnionRoomTrade
|
||||
{
|
||||
u16 field_0;
|
||||
u16 type;
|
||||
@@ -156,8 +156,8 @@ extern u8 gUnknown_02022C2C;
|
||||
extern union UnkUnion_Main gUnknown_02022C30;
|
||||
extern struct UnkLinkRfuStruct_02022B14Substruct gUnknown_02022C38;
|
||||
|
||||
extern u16 gUnknown_02022C3C;
|
||||
extern u8 gUnknown_02022C3E;
|
||||
extern u16 gUnionRoomOfferedSpecies;
|
||||
extern u8 gUnionRoomRequestedMonType;
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
|
||||
Reference in New Issue
Block a user