diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/constants/union_room.h | 37 | ||||
-rw-r--r-- | include/link_rfu.h | 16 | ||||
-rw-r--r-- | include/union_room.h | 22 | ||||
-rw-r--r-- | include/union_room_message.h | 32 |
4 files changed, 74 insertions, 33 deletions
diff --git a/include/constants/union_room.h b/include/constants/union_room.h index 021424773..04ffa3037 100644 --- a/include/constants/union_room.h +++ b/include/constants/union_room.h @@ -1,6 +1,43 @@ #ifndef GUARD_CONSTANTS_UNION_ROOM_H #define GUARD_CONSTANTS_UNION_ROOM_H +#define UNION_ROOM_SPAWN_NONE 0 +#define UNION_ROOM_SPAWN_IN 1 +#define UNION_ROOM_SPAWN_OUT 2 + +#define UROOM_ACTIVITY_NONE 0 +#define UROOM_ACTIVITY_BATTLE 1 +#define UROOM_ACTIVITY_DBLBATTLE 2 +#define UROOM_ACTIVITY_MLTBATTLE 3 +#define UROOM_ACTIVITY_TRADE 4 +#define UROOM_ACTIVITY_CHAT 5 +#define UROOM_ACTIVITY_WCARD 6 +#define UROOM_ACTIVITY_WNEWS 7 +#define UROOM_ACTIVITY_CARD 8 +#define UROOM_ACTIVITY_PJUMP 9 +#define UROOM_ACTIVITY_BCRUSH 10 +#define UROOM_ACTIVITY_BPICK 11 +#define UROOM_ACTIVITY_SEARCH 12 +#define UROOM_ACTIVITY_SPINTRADE 13 +#define UROOM_ACTIVITY_ITEMTRADE 14 + +// Player response +#define UROOM_ACTIVITY_ACCEPT 17 +#define UROOM_ACTIVITY_DECLINE 18 + +// Duplicate IDs? +#define UROOM_ACTIVITY_WCARD2 21 +#define UROOM_ACTIVITY_WNEWS2 22 + +// Used in UR_AddTextPrinterParameterized +#define UR_COLOR_DKE_WHT_LTE 0 +#define UR_COLOR_RED_WHT_LTR 1 +#define UR_COLOR_GRN_WHT_LTG 2 +#define UR_COLOR_WHT_WHT_LTE 3 +#define UR_COLOR_WHT_DKE_LTE 4 +#define UR_COLOR_GRN_DN6_LTB 5 +#define UR_COLOR_DN5_DN6_LTB 6 + #define LINK_GROUP_SINGLE_BATTLE 0 #define LINK_GROUP_DOUBLE_BATTLE 1 #define LINK_GROUP_MULTI_BATTLE 2 diff --git a/include/link_rfu.h b/include/link_rfu.h index 4f11d8cb6..0bcebd7ad 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -117,8 +117,10 @@ struct GFtgtGnameSub struct __attribute__((packed, aligned(2))) GFtgtGname { struct GFtgtGnameSub unk_00; - u8 unk_04[RFU_CHILD_MAX]; // u8 sprite_idx:3; - // u8 gender:1; + u8 child_sprite_gender[RFU_CHILD_MAX]; // u8 sprite_idx:3; + // u8 gender:1; + // u8 unk_4:3 + // u8 active:1 u16 species:10; u16 type:6; u8 activity:7; @@ -385,13 +387,13 @@ void var_800D_set_xB(void); struct GFtgtGname *GetHostRFUtgtGname(void); void UpdateWirelessStatusIndicatorSprite(void); void InitRFU(void); -bool32 sub_80FBA00(void); +bool32 RfuIsErrorStatus1or2(void); void RFU_queue_20_70_reset(struct UnkRfuStruct_2_Sub_124 *ptr); void RFU_queue_40_14_reset(struct UnkRfuStruct_2_Sub_9e8 *ptr); -void sub_80FB9E4(u8 a0, u16 msg); -u8 sub_80FB9F4(void); +void RfuSetErrorStatus(u8 a0, u16 msg); +u8 RfuGetErrorStatus(void); void RFU_queue_20_70_recv(struct UnkRfuStruct_2_Sub_124 *q1, u8 *q2); bool8 RFU_queue_40_14_send(struct UnkRfuStruct_2_Sub_9e8 *q1, u8 *q2); bool8 RFU_queue_2_14_send(struct UnkRfuStruct_2_Sub_c1c *q1, u8 *q2); @@ -410,14 +412,14 @@ bool32 sub_80F8F7C(bool32 a0); bool32 sub_80FA634(u16 trainerId, const u8 *trainerName); void sub_80FA670(u8 a0, u16 a1, const u8 *a2); u32 sub_80FA6FC(u16 a0, const u8 *a1); -void SetHostRFUtgtGname(u8 a0, u32 a1, u32 a2); +void SetHostRFUtgtGname(u8 activity, u32 child_sprite_genders, u32 a2); void sub_80FBB8C(u32 a0); void sub_80FBD4C(const u8 *trainerName, u16 trainerId); void LinkRfu3_SetGnameUnameFromStaticBuffers(struct GFtgtGname *gname, u8 *uname); void sub_80FBBD8(void); void sub_80FA6BC(void); void sub_80FBF54(const u8 *src, u16 trainerId); -void sub_80FB008(u8 a0, u32 a1, u32 a2); +void sub_80FB008(u8 activity, u32 child_sprite_genders, u32 a2); void RecordMixTrainerNames(void); void sub_80F8CFC(); void sub_80F8D14(); diff --git a/include/union_room.h b/include/union_room.h index 0600d9cc0..f5a1ecf04 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -25,7 +25,7 @@ struct UnkStruct_x20 { struct UnkStruct_Shared unk; u16 field_18; - u8 tradeStatus:2; + u8 groupScheduledAnim:2; u8 field_1A_1:1; u8 field_1B; u8 field_1D; @@ -114,19 +114,21 @@ struct UnkStruct_URoom /* 0x018 */ u8 field_18; /* 0x019 */ u8 field_19; /* 0x01A */ u8 field_1A; - /* 0x01B */ u8 field_1B; - /* 0x01C */ u8 field_1C; - /* 0x01D */ u8 field_1D; - /* 0x01E */ u8 field_1E; + /* 0x01B */ u8 topListMenuWindowId; + /* 0x01C */ u8 topListMenuListMenuId; + /* 0x01D */ u8 tradeBoardSelectWindowId; + /* 0x01E */ u8 tradeBoardDetailsWindowId; /* 0x01F */ u8 field_1F; /* 0x020 */ u8 field_20; /* 0x021 */ u8 spriteIds[40]; /* 0x049 */ u8 field_49; - /* 0x04A */ u8 field_4A; - /* 0x04C */ u16 field_4C[6]; - /* 0x058 */ u8 field_58[4][11]; - /* 0x084 */ u16 field_98; - /* 0x086 */ u16 field_9A[3]; + /* 0x04A */ u8 tradeBoardListMenuId; + + // For communication with potential link partners + /* 0x04C */ u16 playerSendBuffer[6]; + /* 0x058 */ u8 activityRequestStrbufs[4][11]; + /* 0x084 */ u16 partnerYesNoResponse; + /* 0x086 */ u16 recvActivityRequest[3]; // activity[, species, level] /* 0x08C */ struct UnionObj unionObjs[8]; /* 0x0AC */ u8 trainerCardStrbufs[12][15]; /* 0x160 */ u8 field_174[48]; diff --git a/include/union_room_message.h b/include/union_room_message.h index b7de673ba..3ebf66252 100644 --- a/include/union_room_message.h +++ b/include/union_room_message.h @@ -3,7 +3,7 @@ #include "global.h" -extern const u8 gUnknown_84571AC[]; +extern const u8 gUnionRoomActivity_Blank[]; extern const u8 gUnknown_84571B0[]; extern const u8 gUnknown_84571B4[]; extern const u8 gUnknown_84571B8[]; @@ -46,7 +46,7 @@ extern const u8 gUnknown_8457E44[]; extern const u8 gUnknown_8457E60[]; extern const u8 *const gUnknown_8457F80[][2]; extern const u8 gUnknown_8457F90[]; -extern const u8 *const gUnknown_84580F4[][4]; +extern const u8 *const gResponseToURoomActivityInviteStringPtrs[][4]; extern const u8 *const gUnknown_8458230[][2][3]; extern const u8 *const gUnknown_8458314[]; extern const u8 *const gUnknown_84583B4[]; @@ -91,20 +91,20 @@ extern const u8 gUnknown_8459360[]; extern const u8 gUnknown_8459368[]; extern const u8 gUnknown_8459370[]; extern const u8 gUnknown_8459378[]; -extern const u8 gUnknown_8459394[]; -extern const u8 gUnknown_84593A4[]; -extern const u8 gUnknown_84593B4[]; -extern const u8 gUnknown_84593C4[]; -extern const u8 gUnknown_84593D4[]; -extern const u8 gUnknown_84593E4[]; -extern const u8 gUnknown_84593F4[]; -extern const u8 gUnknown_84593DC[]; -extern const u8 gUnknown_8459400[]; -extern const u8 gUnknown_8459410[]; -extern const u8 gUnknown_845941C[]; -extern const u8 gUnknown_845942C[]; -extern const u8 gUnknown_8459434[]; -extern const u8 gUnknown_8459440[]; +extern const u8 gUnionRoomActivity_SingleBattle[]; +extern const u8 gUnionRoomActivity_DoubleBattle[]; +extern const u8 gUnionRoomActivity_MultiBattle[]; +extern const u8 gUnionRoomActivity_PokemonTrades[]; +extern const u8 gUnionRoomActivity_Chat[]; +extern const u8 gUnionRoomActivity_WonderCards[]; +extern const u8 gunionRoomActivity_WonderNews[]; +extern const u8 gUnionRoomActivity_Cards[]; +extern const u8 gUnionRoomActivity_PokemonJump[]; +extern const u8 gUnionRoomActivity_BerryCrush[]; +extern const u8 gUnionRoomActivity_BerryPicking[]; +extern const u8 gUnionRoomActivity_Search[]; +extern const u8 gUnionRoomActivity_SpinTradeJP[]; +extern const u8 gUnionRoomActivity_ItemTradeJP[]; extern const u8 *const gUnknown_84594B0[]; extern const u8 gUnknown_84594C4[]; extern const u8 gUnknown_8459504[]; |