I'm so original with these commit names

This commit is contained in:
PikalaxALT
2020-02-03 16:41:25 -05:00
parent d522588538
commit 7bd0a83d35
15 changed files with 367 additions and 366 deletions
+3 -3
View File
@@ -334,8 +334,8 @@ sub_80FEE24: @ 80FEE24
bx r0 bx r0
thumb_func_end sub_80FEE24 thumb_func_end sub_80FEE24
thumb_func_start sub_80FEE44 thumb_func_start ShowEasyChatScreen
sub_80FEE44: @ 80FEE44 ShowEasyChatScreen: @ 80FEE44
push {lr} push {lr}
ldr r0, _080FEE58 @ =gSpecialVar_0x8004 ldr r0, _080FEE58 @ =gSpecialVar_0x8004
ldrh r0, [r0] ldrh r0, [r0]
@@ -431,7 +431,7 @@ _080FEF1C: .4byte gSpecialVar_0x8005
_080FEF20: .4byte 0x00002cd0 _080FEF20: .4byte 0x00002cd0
_080FEF24: .4byte gSpecialVar_0x8004 _080FEF24: .4byte gSpecialVar_0x8004
_080FEF28: .4byte sub_80568C4 _080FEF28: .4byte sub_80568C4
thumb_func_end sub_80FEE44 thumb_func_end ShowEasyChatScreen
thumb_func_start sub_80FEF2C thumb_func_start sub_80FEF2C
sub_80FEF2C: @ 80FEF2C sub_80FEF2C: @ 80FEF2C
+5 -4
View File
@@ -30,6 +30,7 @@
#include "constants/trade.h" #include "constants/trade.h"
#include "constants/quest_log.h" #include "constants/quest_log.h"
#include "constants/daycare.h" #include "constants/daycare.h"
#include "constants/easy_chat.h"
.include "asm/macros.inc" .include "asm/macros.inc"
.include "asm/macros/event.inc" .include "asm/macros/event.inc"
.set FALSE, 0 .set FALSE, 0
@@ -1170,9 +1171,9 @@ EventScript_ResetEliteFour:: @ 81A6551
.include "data/scripts/pc.inc" .include "data/scripts/pc.inc"
@ DoEasyChatScreen? @ DoEasyChatScreen?
EventScript_1A6AC0:: @ 81A6AC0 Common_ShowEasyChatScreen:: @ 81A6AC0
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
special sub_80FEE44 special ShowEasyChatScreen
fadescreen FADE_FROM_BLACK fadescreen FADE_FROM_BLACK
return return
@@ -1332,8 +1333,8 @@ gUnknown_81A7702:: @ 81A7702
msgbox Text_FillOutQuestionnaire, MSGBOX_YESNO msgbox Text_FillOutQuestionnaire, MSGBOX_YESNO
compare VAR_RESULT, NO compare VAR_RESULT, NO
goto_if_eq EventScript_1A778A goto_if_eq EventScript_1A778A
setvar VAR_0x8004, 14 setvar VAR_0x8004, EASY_CHAT_TYPE_QUESTIONNAIRE
call EventScript_1A6AC0 call Common_ShowEasyChatScreen
lock lock
faceplayer faceplayer
specialvar VAR_0x8008, Special_GetMartClerkObjectId specialvar VAR_0x8008, Special_GetMartClerkObjectId
+1 -1
View File
@@ -101,7 +101,7 @@ EventScript_GaveSpecialProfile: @ 81BEF3F
EventScript_GiveProfile: @ 81BEF5A EventScript_GiveProfile: @ 81BEF5A
setvar VAR_0x8004, 0 setvar VAR_0x8004, 0
call EventScript_1A6AC0 call Common_ShowEasyChatScreen
lock lock
faceplayer faceplayer
compare VAR_0x8004, 0 compare VAR_0x8004, 0
+1 -1
View File
@@ -103,7 +103,7 @@ gSpecials:: @ 815FD60
def_special sub_8081128 def_special sub_8081128
def_special Field_AskSaveTheGame def_special Field_AskSaveTheGame
def_special nullsub_56 def_special nullsub_56
def_special sub_80FEE44 def_special ShowEasyChatScreen
def_special Special_BufferEasyChatMessage def_special Special_BufferEasyChatMessage
def_special nullsub_75 def_special nullsub_75
def_special nullsub_75 def_special nullsub_75
+1 -16
View File
@@ -6,22 +6,7 @@
#define EASY_CHAT_TYPE_BATTLE_WON 2 #define EASY_CHAT_TYPE_BATTLE_WON 2
#define EASY_CHAT_TYPE_BATTLE_LOST 3 #define EASY_CHAT_TYPE_BATTLE_LOST 3
#define EASY_CHAT_TYPE_MAIL 4 #define EASY_CHAT_TYPE_MAIL 4
#define EASY_CHAT_TYPE_INTERVIEW 5 #define EASY_CHAT_TYPE_QUESTIONNAIRE 14
#define EASY_CHAT_TYPE_BARD_SONG 6
#define EASY_CHAT_TYPE_FAN_CLUB 7
#define EASY_CHAT_TYPE_UNK_8 8
#define EASY_CHAT_TYPE_TRENDY_PHRASE 9
#define EASY_CHAT_TYPE_GABBY_AND_TY 10
#define EASY_CHAT_TYPE_CONTEST_INTERVIEW 11
#define EASY_CHAT_TYPE_BATTLE_TOWER_INTERVIEW 12
#define EASY_CHAT_TYPE_GOOD_SAYING 13
#define EASY_CHAT_TYPE_FAN_QUESTION 14
#define EASY_CHAT_TYPE_QUIZ_ANSWER 15
#define EASY_CHAT_TYPE_QUIZ_QUESTION 16
#define EASY_CHAT_TYPE_QUIZ_SET_QUESTION 17
#define EASY_CHAT_TYPE_QUIZ_SET_ANSWER 18
#define EASY_CHAT_TYPE_APPRENTICE 19
#define EASY_CHAT_TYPE_QUESTIONNAIRE 20
#define EC_GROUP_POKEMON_2 0x0 #define EC_GROUP_POKEMON_2 0x0
#define EC_GROUP_TRAINER 0x1 #define EC_GROUP_TRAINER 0x1
+30 -18
View File
@@ -102,14 +102,14 @@
// RfuTgtData.gname is read as these structs. // RfuTgtData.gname is read as these structs.
struct GFtgtGnameSub struct GFtgtGnameSub
{ {
u16 unk_00_0:4; u16 language:4;
u16 unk_00_4:1; u16 hasNews:1;
u16 unk_00_5:1; u16 hasCard:1;
u16 unk_00_6:1; u16 unk_00_6:1;
u16 isChampion:1; u16 isChampion:1;
u16 hasNationalDex:1; u16 hasNationalDex:1;
u16 gameClear:1; u16 gameClear:1;
u16 unk_01_2:4; u16 version:4;
u16 unk_01_6:2; u16 unk_01_6:2;
u8 playerTrainerId[2]; u8 playerTrainerId[2];
}; };
@@ -214,16 +214,28 @@ typedef struct linkManagerTag
/* 0x044 */ void (*MSC_callback)(u16); /* 0x044 */ void (*MSC_callback)(u16);
} LINK_MANAGER; } LINK_MANAGER;
struct UnkRfuStruct_2_Sub_6c #define RFU_COMMAND_0x8800 0x8800
#define RFU_COMMAND_0x8900 0x8900
#define RFU_COMMAND_0xa100 0xa100
#define RFU_COMMAND_0x7700 0x7700
#define RFU_COMMAND_0x7800 0x7800
#define RFU_COMMAND_0x6600 0x6600
#define RFU_COMMAND_0x5f00 0x5f00
#define RFU_COMMAND_0x2f00 0x2f00
#define RFU_COMMAND_0xbe00 0xbe00
#define RFU_COMMAND_0xee00 0xee00
#define RFU_COMMAND_0xed00 0xed00
struct RfuBlockSend
{ {
/* 0x00 */ u16 unk_00; /* 0x00 */ u16 next;
/* 0x02 */ u16 count; /* 0x02 */ u16 count; // max 21
/* 0x04 */ const u8 *payload; /* 0x04 */ const u8 *payload;
/* 0x08 */ u32 unk_08; /* 0x08 */ u32 receivedFlags;
/* 0x0c */ u32 unk_0c; /* 0x0c */ u32 failedFlags;
/* 0x10 */ u8 unk_10; /* 0x10 */ u8 sending;
/* 0x11 */ u8 owner; /* 0x11 */ u8 owner;
/* 0x12 */ u8 unk_12; /* 0x12 */ u8 receiving;
}; };
struct UnkRfuStruct_2_Sub_124 struct UnkRfuStruct_2_Sub_124
@@ -264,7 +276,7 @@ struct UnkRfuStruct_Sub_Unused
typedef struct UnkRfuStruct_2 typedef struct UnkRfuStruct_2
{ {
/* 0x000 */ void (*RfuFunc)(void); /* 0x000 */ void (*RfuFunc)(void);
/* 0x004 */ u16 unk_04; /* 0x004 */ u16 state;
/* 0x006 */ u8 filler_06[4]; /* 0x006 */ u8 filler_06[4];
/* 0x00a */ u16 linkman_msg; /* 0x00a */ u16 linkman_msg;
/* 0x00c */ u8 unk_0c; // parentChildMode? /* 0x00c */ u8 unk_0c; // parentChildMode?
@@ -281,8 +293,8 @@ typedef struct UnkRfuStruct_2
/* 0x066 */ u8 unk_66; /* 0x066 */ u8 unk_66;
/* 0x067 */ u8 unk_67; /* 0x067 */ u8 unk_67;
/* 0x068 */ u8 filler_68[4]; /* 0x068 */ u8 filler_68[4];
/* 0x06c */ struct UnkRfuStruct_2_Sub_6c unk_6c; /* 0x06c */ struct RfuBlockSend cmd_8800_sendbuf;
/* 0x080 */ struct UnkRfuStruct_2_Sub_6c unk_80[5]; /* 0x080 */ struct RfuBlockSend cmd_8800_recvbuf[5];
/* 0x0e4 */ u8 unk_e4[5]; /* 0x0e4 */ u8 unk_e4[5];
/* 0x0e9 */ u8 unk_e9[5]; /* 0x0e9 */ u8 unk_e9[5];
/* 0x0ee */ vu8 errorState; /* 0x0ee */ vu8 errorState;
@@ -304,7 +316,7 @@ typedef struct UnkRfuStruct_2
/* 0x93d */ u8 unk_c85; /* 0x93d */ u8 unk_c85;
/* 0x93e */ u8 unk_c86; /* 0x93e */ u8 unk_c86;
/* 0x93f */ u8 recvCmds[5][7][2]; /* 0x93f */ u8 recvCmds[5][7][2];
/* 0x985 */ u8 unk_ccd; /* 0x985 */ u8 parentId;
/* 0x986 */ u8 unk_cce; // childId /* 0x986 */ u8 unk_cce; // childId
/* 0x987 */ u8 unk_ccf; /* 0x987 */ u8 unk_ccf;
/* 0x988 */ vu8 unk_cd0; /* 0x988 */ vu8 unk_cd0;
@@ -423,16 +435,16 @@ void sub_80FB008(u8 activity, u32 child_sprite_genders, u32 a2);
void RecordMixTrainerNames(void); void RecordMixTrainerNames(void);
void sub_80F8CFC(); void sub_80F8CFC();
void sub_80F8D14(); void sub_80F8D14();
void sub_80FAF74(bool32 a0, bool32 a1); void SetGnameBufferWonderFlags(bool32 hasNews, bool32 hasCard);
void ClearAndInitHostRFUtgtGname(void); void ClearAndInitHostRFUtgtGname(void);
void sub_80F8FA0(void); void sub_80F8FA0(void);
void sub_80FAFA0(u32 type, u32 species, u32 level); void RfuUpdatePlayerGnameStateAndSend(u32 type, u32 species, u32 level);
bool32 sub_80FBB0C(void); bool32 sub_80FBB0C(void);
void sub_80FBC00(void); void sub_80FBC00(void);
void sub_80FBD6C(u32 a0); void sub_80FBD6C(u32 a0);
void sub_80FC114(const u8 *name, struct GFtgtGname *structPtr, u8 a2); void sub_80FC114(const u8 *name, struct GFtgtGname *structPtr, u8 a2);
bool32 PlayerHasMetTrainerBefore(u16 id, u8 *name); bool32 PlayerHasMetTrainerBefore(u16 id, u8 *name);
bool8 sub_80FCC3C(struct GFtgtGname *gname, u8 *uname, u8 idx); bool8 LinkRfu_GetNameIfCompatible(struct GFtgtGname *gname, u8 *uname, u8 idx);
bool8 sub_80FCCF4(struct GFtgtGname *gname, u8 *uname, u8 idx); bool8 sub_80FCCF4(struct GFtgtGname *gname, u8 *uname, u8 idx);
bool32 GetRfuUnkCE8(void); bool32 GetRfuUnkCE8(void);
void sub_80FA4A8(void); void sub_80FA4A8(void);
+1 -1
View File
@@ -160,7 +160,7 @@ struct UnionRoomTrade
u32 personality; u32 personality;
}; };
extern struct GFtgtGnameSub gUnknown_203B064; extern struct GFtgtGnameSub gPartnerTgtGnameSub;
extern u16 gUnionRoomOfferedSpecies; extern u16 gUnionRoomOfferedSpecies;
extern u8 gUnionRoomRequestedMonType; extern u8 gUnionRoomRequestedMonType;
+4 -4
View File
@@ -31,8 +31,8 @@ extern const u8 gUnknown_84577BC[];
extern const u8 gUnknown_84577F8[]; extern const u8 gUnknown_84577F8[];
extern const u8 *const gUnknown_8457838[]; extern const u8 *const gUnknown_8457838[];
extern const u8 gUnknown_84578BC[]; extern const u8 gUnknown_84578BC[];
extern const u8 *const gUnknown_8457A34[]; extern const u8 *const gURText_PleaseWaitMsgs[];
extern const u8 *const gUnknown_8457B04[][2]; extern const u8 *const gURText_FriendPromptsForActivity[][2];
extern const u8 *const gUnknown_8457BCC[]; extern const u8 *const gUnknown_8457BCC[];
extern const u8 *const gUnknown_8457C20[]; extern const u8 *const gUnknown_8457C20[];
extern const u8 gUnknown_8457C48[]; extern const u8 gUnknown_8457C48[];
@@ -63,7 +63,7 @@ extern const u8 *const gUnknown_8458A78[2][4];
extern const u8 gUnknown_8458A98[]; extern const u8 gUnknown_8458A98[];
extern const u8 gUnknown_8458AB8[]; extern const u8 gUnknown_8458AB8[];
extern const u8 gUnknown_8458B44[]; extern const u8 gUnknown_8458B44[];
extern const u8 gUnknown_8458CD4[]; extern const u8 gURText_PleaseChooseTypeOfMon[];
extern const u8 gUnknown_8458D1C[]; extern const u8 gUnknown_8458D1C[];
extern const u8 gUnknown_8458D54[]; extern const u8 gUnknown_8458D54[];
extern const u8 gUnknown_8458D78[]; extern const u8 gUnknown_8458D78[];
@@ -75,7 +75,7 @@ extern const u8 gUnknown_8458E70[];
extern const u8 gUnknown_8458ED0[]; extern const u8 gUnknown_8458ED0[];
extern const u8 gUnknown_8458F04[]; extern const u8 gUnknown_8458F04[];
extern const u8 gUnknown_8458F9C[]; extern const u8 gUnknown_8458F9C[];
extern const u8 gUnknown_8458FBC[]; extern const u8 gText_EggTrade[];
extern const u8 gUnknown_8458FC8[]; extern const u8 gUnknown_8458FC8[];
extern const u8 gUnknown_8458FE4[]; extern const u8 gUnknown_8458FE4[];
extern const u8 gUnknown_84591DC[]; extern const u8 gUnknown_84591DC[];
+195 -195
View File
File diff suppressed because it is too large Load Diff
+5 -5
View File
@@ -619,10 +619,10 @@ void InitHostRFUtgtGname(struct GFtgtGname *data, u8 activity, bool32 r2, s32 ch
data->playerGender = gSaveBlock2Ptr->playerGender; data->playerGender = gSaveBlock2Ptr->playerGender;
data->activity = activity; data->activity = activity;
data->unk_0a_7 = r2; data->unk_0a_7 = r2;
data->unk_00.unk_00_0 = GAME_LANGUAGE; data->unk_00.language = GAME_LANGUAGE;
data->unk_00.unk_01_2 = GAME_VERSION; data->unk_00.version = GAME_VERSION;
data->unk_00.unk_00_4 = 0; data->unk_00.hasNews = FALSE;
data->unk_00.unk_00_5 = 0; data->unk_00.hasCard = FALSE;
data->unk_00.unk_00_6 = 0; data->unk_00.unk_00_6 = 0;
data->unk_00.isChampion = FlagGet(FLAG_SYS_CAN_LINK_WITH_RS); data->unk_00.isChampion = FlagGet(FLAG_SYS_CAN_LINK_WITH_RS);
data->unk_00.hasNationalDex = IsNationalPokedexEnabled(); data->unk_00.hasNationalDex = IsNationalPokedexEnabled();
@@ -636,7 +636,7 @@ void InitHostRFUtgtGname(struct GFtgtGname *data, u8 activity, bool32 r2, s32 ch
* Otherwise, blanks these. * Otherwise, blanks these.
* ========================================================== * ==========================================================
*/ */
bool8 sub_80FCC3C(struct GFtgtGname *gname, u8 *uname, u8 idx) bool8 LinkRfu_GetNameIfCompatible(struct GFtgtGname *gname, u8 *uname, u8 idx)
{ {
bool8 retVal; bool8 retVal;
+1 -1
View File
@@ -3907,7 +3907,7 @@ static void CursorCB_Trade1(u8 taskId)
u16 species2 = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_SPECIES2); u16 species2 = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_SPECIES2);
u16 species = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_SPECIES); u16 species = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_SPECIES);
u8 obedience = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_OBEDIENCE); u8 obedience = GetMonData(&gPlayerParty[gPartyMenu.slotId], MON_DATA_OBEDIENCE);
u32 stringId = GetUnionRoomTradeMessageId(*(struct GFtgtGnameSub *)GetHostRFUtgtGname(), gUnknown_203B064, species2, gUnionRoomOfferedSpecies, gUnionRoomRequestedMonType, species, obedience); u32 stringId = GetUnionRoomTradeMessageId(*(struct GFtgtGnameSub *)GetHostRFUtgtGname(), gPartnerTgtGnameSub, species2, gUnionRoomOfferedSpecies, gUnionRoomRequestedMonType, species, obedience);
if (stringId != UR_TRADE_MSG_NONE) if (stringId != UR_TRADE_MSG_NONE)
{ {
+1 -1
View File
@@ -2746,7 +2746,7 @@ int GetUnionRoomTradeMessageId(struct GFtgtGnameSub a0, struct GFtgtGnameSub a1,
u8 r4 = a0.isChampion; u8 r4 = a0.isChampion;
u8 r10 = a1.hasNationalDex; u8 r10 = a1.hasNationalDex;
u8 r0 = a1.isChampion; u8 r0 = a1.isChampion;
u8 r1 = a1.unk_01_2; u8 r1 = a1.version;
u8 r2; u8 r2;
if (r1 == VERSION_FIRE_RED || r1 == VERSION_LEAF_GREEN) if (r1 == VERSION_FIRE_RED || r1 == VERSION_LEAF_GREEN)
+90 -90
View File
@@ -53,7 +53,7 @@ static EWRAM_DATA u8 sPlayerCurrActivity = 0;
static EWRAM_DATA u8 sPlayerActivityGroupSize = 0; static EWRAM_DATA u8 sPlayerActivityGroupSize = 0;
static EWRAM_DATA union UnkUnion_Main sUnionRoomMain = {}; static EWRAM_DATA union UnkUnion_Main sUnionRoomMain = {};
static EWRAM_DATA u32 sUnref_203B060 = 0; static EWRAM_DATA u32 sUnref_203B060 = 0;
EWRAM_DATA struct GFtgtGnameSub gUnknown_203B064 = {}; EWRAM_DATA struct GFtgtGnameSub gPartnerTgtGnameSub = {};
EWRAM_DATA u16 gUnionRoomOfferedSpecies = SPECIES_NONE; EWRAM_DATA u16 gUnionRoomOfferedSpecies = SPECIES_NONE;
EWRAM_DATA u8 gUnionRoomRequestedMonType = TYPE_NORMAL; EWRAM_DATA u8 gUnionRoomRequestedMonType = TYPE_NORMAL;
static EWRAM_DATA struct UnionRoomTrade sUnionRoomTrade = {}; static EWRAM_DATA struct UnionRoomTrade sUnionRoomTrade = {};
@@ -73,12 +73,12 @@ static u32 sub_8116D10(struct UnkStruct_Group * group, s32 id);
static void sub_8116D60(struct UnkStruct_Group * group, s32 id); static void sub_8116D60(struct UnkStruct_Group * group, s32 id);
static void sub_8116E1C(u8 taskId); static void sub_8116E1C(u8 taskId);
static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, s32 itemId, u8 y); static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, s32 itemId, u8 y);
static u8 sub_8116FE4(void); static u8 GetNewLeaderCandidate(void);
static void sub_8117990(void); static void sub_8117990(void);
static void sub_81179A4(void); static void sub_81179A4(void);
static void sub_8117A0C(u8 taskId); static void sub_8117A0C(u8 taskId);
static void sub_8117F20(u8 taskId); static void Task_CardOrNewsWithFriend(u8 taskId);
static void sub_81182DC(u8 taskId); static void Task_CardOrNewsOverWireless(u8 taskId);
static void Task_ResumeUnionRoom(u8 taskId); static void Task_ResumeUnionRoom(u8 taskId);
static u16 ReadAsU16(const u8 *data); static u16 ReadAsU16(const u8 *data);
static void ReceiveUnionRoomActivityPacket(struct UnkStruct_URoom * uRoom); static void ReceiveUnionRoomActivityPacket(struct UnkStruct_URoom * uRoom);
@@ -86,9 +86,9 @@ static bool32 sub_8119944(struct UnkStruct_URoom * uRoom);
static void Task_InitUnionRoom(u8 taskId); static void Task_InitUnionRoom(u8 taskId);
static u8 sub_8119B94(void); static u8 sub_8119B94(void);
static u8 sub_8119E84(struct UnkStruct_Main4 * arg0, struct UnkStruct_Main4 * arg1, u32 arg2); static u8 sub_8119E84(struct UnkStruct_Main4 * arg0, struct UnkStruct_Main4 * arg1, u32 arg2);
static bool32 sub_8119FB0(struct GFtgtGname * arg0, s16 arg1); static bool32 GetGnameWonderFlagByLinkGroup(struct GFtgtGname * gname, s16 arg1);
static u8 sub_811A054(struct UnkStruct_Main4 * arg0, u32 arg1); static u8 CreateTask_sub_8119EB8(struct UnkStruct_Main4 * arg0, u32 linkGroup);
static u8 sub_811A084(struct UnkStruct_Main4 * arg0, u32 arg1); static u8 CreateTask_sub_8119FD8(struct UnkStruct_Main4 * arg0, u32 linkGroup);
static bool32 UR_PrintFieldMessage(const u8 * str); static bool32 UR_PrintFieldMessage(const u8 * str);
static bool32 UR_RunTextPrinters_CheckPrinter0Active(void); static bool32 UR_RunTextPrinters_CheckPrinter0Active(void);
static bool8 PrintOnTextbox(u8 *textState, const u8 *str); static bool8 PrintOnTextbox(u8 *textState, const u8 *str);
@@ -644,14 +644,14 @@ static const u8 sUnref_84570D1[] = _("{DYNAMIC 00}·{DYNAMIC 01}");
// These are functions in Emerald but inlined in FireRed // These are functions in Emerald but inlined in FireRed
#define IntlConvPartnerUname7(dest, arg1) ({ \ #define IntlConvPartnerUname7(dest, arg1) ({ \
StringCopy7(dest, (arg1).unk.playerName); \ StringCopy7(dest, (arg1).unk.playerName); \
ConvertInternationalString(dest, (arg1).unk.gname.unk_00.unk_00_0); \ ConvertInternationalString(dest, (arg1).unk.gname.unk_00.language); \
}) })
#define IntlConvPartnerUname(dest, arg1) ({ \ #define IntlConvPartnerUname(dest, arg1) ({ \
StringCopy(dest, (arg1).unk.playerName); \ StringCopy(dest, (arg1).unk.playerName); \
ConvertInternationalString(dest, (arg1).unk.gname.unk_00.unk_00_0); \ ConvertInternationalString(dest, (arg1).unk.gname.unk_00.language); \
}) })
#define CopyTrainerCardData(dest, src, _version) ({ \ #define CopyTrainerCardData(dest, src, _version) ({ \
@@ -761,7 +761,7 @@ static void sub_8115A68(u8 taskId)
data->field_0->arr[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; data->field_0->arr[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN;
data->field_0->arr[0].field_1A_1 = 0; data->field_0->arr[0].field_1A_1 = 0;
data->field_0->arr[0].field_1B = 0; data->field_0->arr[0].field_1B = 0;
data->field_17 = sub_811A054(data->field_4, 0xFF); data->field_17 = CreateTask_sub_8119EB8(data->field_4, 0xFF);
data->field_10 = AddWindow(&gUnknown_8456CD0); data->field_10 = AddWindow(&gUnknown_8456CD0);
data->listWindowId = AddWindow(&gUnknown_8456CFC); data->listWindowId = AddWindow(&gUnknown_8456CFC);
data->field_11 = AddWindow(&gUnknown_8456D04); data->field_11 = AddWindow(&gUnknown_8456D04);
@@ -1194,7 +1194,7 @@ static u8 sub_8116524(struct UnkStruct_Main0 * arg0)
} }
} }
for (id = 0; id < 4; id++) for (id = 0; id < RFU_CHILD_MAX; id++)
Appendx1Ctox20(data->field_0->arr, &data->field_4->arr[id], 5); Appendx1Ctox20(data->field_0->arr, &data->field_4->arr[id], 5);
if (ret != 2) if (ret != 2)
@@ -1291,7 +1291,7 @@ static void Task_TryJoinLinkGroup(u8 taskId)
case 2: case 2:
BlankUnkStruct_x1CArray(data->field_4->arr, 4); BlankUnkStruct_x1CArray(data->field_4->arr, 4);
BlankUnkStruct_x20Array(data->field_0->arr, 16); BlankUnkStruct_x20Array(data->field_0->arr, 16);
data->field_11 = sub_811A054(data->field_4, gSpecialVar_0x8004); data->field_11 = CreateTask_sub_8119EB8(data->field_4, gSpecialVar_0x8004);
data->field_C = AddWindow(&gUnknown_8456CD0); data->field_C = AddWindow(&gUnknown_8456CD0);
data->listWindowId = AddWindow(&gUnknown_8456D4C); data->listWindowId = AddWindow(&gUnknown_8456D4C);
data->field_D = AddWindow(&gUnknown_8456D54); data->field_D = AddWindow(&gUnknown_8456D54);
@@ -1316,7 +1316,7 @@ static void Task_TryJoinLinkGroup(u8 taskId)
data->state = 3; data->state = 3;
break; break;
case 3: case 3:
id = sub_8116FE4(); id = GetNewLeaderCandidate();
switch (id) switch (id)
{ {
case 1: case 1:
@@ -1522,7 +1522,7 @@ static u32 sub_8116D10(struct UnkStruct_Group * arg0, s32 id)
{ {
struct UnkStruct_x20 * structPtr = &arg0->field_0->arr[id]; struct UnkStruct_x20 * structPtr = &arg0->field_0->arr[id];
if (sPlayerCurrActivity == UROOM_ACTIVITY_TRADE && structPtr->unk.gname.unk_00.unk_01_2 != VERSION_FIRE_RED && structPtr->unk.gname.unk_00.unk_01_2 != VERSION_LEAF_GREEN) if (sPlayerCurrActivity == UROOM_ACTIVITY_TRADE && structPtr->unk.gname.unk_00.version != VERSION_FIRE_RED && structPtr->unk.gname.unk_00.version != VERSION_LEAF_GREEN)
{ {
if (!(gSaveBlock2Ptr->specialSaveWarpFlags & CHAMPION_SAVEWARP)) if (!(gSaveBlock2Ptr->specialSaveWarpFlags & CHAMPION_SAVEWARP))
return 1; return 1;
@@ -1583,12 +1583,12 @@ static void sub_8116E1C(u8 taskId)
case 2: case 2:
BlankUnkStruct_x1CArray(data->field_4->arr, 4); BlankUnkStruct_x1CArray(data->field_4->arr, 4);
BlankUnkStruct_x20Array(data->field_0->arr, 16); BlankUnkStruct_x20Array(data->field_0->arr, 16);
data->field_11 = sub_811A054(data->field_4, 0xFF); data->field_11 = CreateTask_sub_8119EB8(data->field_4, 0xFF);
data->field_F = 0; data->field_F = 0;
data->state = 3; data->state = 3;
break; break;
case 3: case 3:
if (sub_8116FE4() == 1) if (GetNewLeaderCandidate() == 1)
PlaySE(SE_PC_LOGIN); PlaySE(SE_PC_LOGIN);
if (gTasks[taskId].data[15] == 0xFF) if (gTasks[taskId].data[15] == 0xFF)
data->state = 10; data->state = 10;
@@ -1650,7 +1650,7 @@ static void ListMenuItemPrintFunc_UnionRoomGroups(u8 windowId, s32 itemId, u8 y)
sub_811A81C(windowId, 8, y, &data->field_0->arr[itemId], color_idx, itemId); sub_811A81C(windowId, 8, y, &data->field_0->arr[itemId], color_idx, itemId);
} }
static u8 sub_8116FE4(void) static u8 GetNewLeaderCandidate(void)
{ {
struct UnkStruct_Group * data = sUnionRoomMain.group; struct UnkStruct_Group * data = sUnionRoomMain.group;
u8 ret = 0; u8 ret = 0;
@@ -1706,7 +1706,7 @@ static u8 sub_8116FE4(void)
} }
} }
for (id = 0; id < 4; id++) for (id = 0; id < RFU_CHILD_MAX; id++)
{ {
if (Appendx1Ctox20(data->field_0->arr, &data->field_4->arr[id], 16) != 0xFF) if (Appendx1Ctox20(data->field_0->arr, &data->field_4->arr[id], 16) != 0xFF)
ret = 1; ret = 1;
@@ -1953,7 +1953,7 @@ static void sub_81175BC(u8 taskId)
else else
{ {
sub_80F8D14(); sub_80F8D14();
SetHostRFUtgtGname(0x45, 0, 1); SetHostRFUtgtGname(UROOM_ACTIVITY_CHAT | 0x40, 0, 1);
} }
EnterUnionRoomChat(); EnterUnionRoomChat();
break; break;
@@ -2054,7 +2054,7 @@ static void sub_8117A0C(u8 taskId)
sPlayerCurrActivity = data->field_18; sPlayerCurrActivity = data->field_18;
sPlayerActivityGroupSize = 2; sPlayerActivityGroupSize = 2;
SetHostRFUtgtGname(data->field_18, 0, 0); SetHostRFUtgtGname(data->field_18, 0, 0);
sub_80FAF74(FALSE, FALSE); SetGnameBufferWonderFlags(FALSE, FALSE);
sub_800B1F4(); sub_800B1F4();
OpenLink(); OpenLink();
sub_80FBB8C(2); sub_80FBB8C(2);
@@ -2071,7 +2071,7 @@ static void sub_8117A0C(u8 taskId)
data->field_0->arr[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN; data->field_0->arr[0].groupScheduledAnim = UNION_ROOM_SPAWN_IN;
data->field_0->arr[0].field_1A_1 = 0; data->field_0->arr[0].field_1A_1 = 0;
data->field_0->arr[0].field_1B = 0; data->field_0->arr[0].field_1B = 0;
data->field_17 = sub_811A054(data->field_4, 0xFF); data->field_17 = CreateTask_sub_8119EB8(data->field_4, 0xFF);
winTemplate = gUnknown_8456CFC; winTemplate = gUnknown_8456CFC;
winTemplate.baseBlock = GetMysteryGiftBaseBlock(); winTemplate.baseBlock = GetMysteryGiftBaseBlock();
@@ -2240,17 +2240,17 @@ void MEvent_CreateTask_CardOrNewsWithFriend(u32 arg0)
u8 taskId; u8 taskId;
struct UnkStruct_Group * dataPtr; struct UnkStruct_Group * dataPtr;
taskId = CreateTask(sub_8117F20, 0); taskId = CreateTask(Task_CardOrNewsWithFriend, 0);
sUnionRoomMain.group = dataPtr = (void*)(gTasks[taskId].data); sUnionRoomMain.group = dataPtr = (void*)(gTasks[taskId].data);
sGroup = dataPtr; sGroup = dataPtr;
dataPtr->state = 0; dataPtr->state = 0;
dataPtr->textState = 0; dataPtr->textState = 0;
dataPtr->field_12 = arg0 - 21; dataPtr->field_12 = arg0 - UROOM_ACTIVITY_WCARD2; // 0: Card; 1: News
gSpecialVar_Result = 0; gSpecialVar_Result = 0;
} }
static void sub_8117F20(u8 taskId) static void Task_CardOrNewsWithFriend(u8 taskId)
{ {
s32 id; s32 id;
struct WindowTemplate winTemplate1, winTemplate2; struct WindowTemplate winTemplate1, winTemplate2;
@@ -2259,7 +2259,7 @@ static void sub_8117F20(u8 taskId)
switch (data->state) switch (data->state)
{ {
case 0: case 0:
SetHostRFUtgtGname(data->field_12 + 0x15, 0, 0); SetHostRFUtgtGname(data->field_12 + UROOM_ACTIVITY_WCARD2, 0, 0);
sub_800B1F4(); sub_800B1F4();
OpenLink(); OpenLink();
sub_80FBBD8(); sub_80FBBD8();
@@ -2274,7 +2274,7 @@ static void sub_8117F20(u8 taskId)
case 2: case 2:
BlankUnkStruct_x1CArray(data->field_4->arr, 4); BlankUnkStruct_x1CArray(data->field_4->arr, 4);
BlankUnkStruct_x20Array(data->field_0->arr, 16); BlankUnkStruct_x20Array(data->field_0->arr, 16);
data->field_11 = sub_811A054(data->field_4, data->field_12 + 7); data->field_11 = CreateTask_sub_8119EB8(data->field_4, data->field_12 + LINK_GROUP_WONDER_CARD);
winTemplate1 = gUnknown_8456D4C; winTemplate1 = gUnknown_8456D4C;
winTemplate1.baseBlock = GetMysteryGiftBaseBlock(); winTemplate1.baseBlock = GetMysteryGiftBaseBlock();
@@ -2298,7 +2298,7 @@ static void sub_8117F20(u8 taskId)
data->state = 3; data->state = 3;
break; break;
case 3: case 3:
id = sub_8116FE4(); id = GetNewLeaderCandidate();
switch (id) switch (id)
{ {
case 1: case 1:
@@ -2406,17 +2406,17 @@ void MEvent_CreateTask_CardOrNewsOverWireless(u32 arg0)
u8 taskId; u8 taskId;
struct UnkStruct_Group * dataPtr; struct UnkStruct_Group * dataPtr;
taskId = CreateTask(sub_81182DC, 0); taskId = CreateTask(Task_CardOrNewsOverWireless, 0);
sUnionRoomMain.group = dataPtr = (void*)(gTasks[taskId].data); sUnionRoomMain.group = dataPtr = (void*)(gTasks[taskId].data);
sGroup = dataPtr; sGroup = dataPtr;
dataPtr->state = 0; dataPtr->state = 0;
dataPtr->textState = 0; dataPtr->textState = 0;
dataPtr->field_12 = arg0 - 21; dataPtr->field_12 = arg0 - UROOM_ACTIVITY_WCARD2; // 0: Card; 1: News
gSpecialVar_Result = 0; gSpecialVar_Result = 0;
} }
static void sub_81182DC(u8 taskId) static void Task_CardOrNewsOverWireless(u8 taskId)
{ {
s32 id; s32 id;
struct WindowTemplate winTemplate; struct WindowTemplate winTemplate;
@@ -2440,7 +2440,7 @@ static void sub_81182DC(u8 taskId)
case 2: case 2:
BlankUnkStruct_x1CArray(data->field_4->arr, 4); BlankUnkStruct_x1CArray(data->field_4->arr, 4);
BlankUnkStruct_x20Array(data->field_0->arr, 16); BlankUnkStruct_x20Array(data->field_0->arr, 16);
data->field_11 = sub_811A084(data->field_4, data->field_12 + 7); data->field_11 = CreateTask_sub_8119FD8(data->field_4, data->field_12 + LINK_GROUP_WONDER_CARD);
if (data->field_13 != 0) if (data->field_13 != 0)
{ {
@@ -2460,7 +2460,7 @@ static void sub_81182DC(u8 taskId)
data->state = 3; data->state = 3;
break; break;
case 3: case 3:
id = sub_8116FE4(); id = GetNewLeaderCandidate();
switch (id) switch (id)
{ {
case 1: case 1:
@@ -2476,7 +2476,7 @@ static void sub_81182DC(u8 taskId)
{ {
if (data->field_0->arr[0].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->field_0->arr[0].unk.gname.unk_0a_7) if (data->field_0->arr[0].groupScheduledAnim == UNION_ROOM_SPAWN_IN && !data->field_0->arr[0].unk.gname.unk_0a_7)
{ {
if (sub_8119FB0(&data->field_0->arr[0].unk.gname, data->field_12 + 7)) if (GetGnameWonderFlagByLinkGroup(&data->field_0->arr[0].unk.gname, data->field_12 + LINK_GROUP_WONDER_CARD))
{ {
data->field_F = 0; data->field_F = 0;
data->field_14 = 0; data->field_14 = 0;
@@ -2608,7 +2608,7 @@ static u16 ReadAsU16(const u8 *ptr)
return (ptr[1] << 8) | (ptr[0]); return (ptr[1] << 8) | (ptr[0]);
} }
static void sub_8118664(u32 nextState, const u8 *src) static void UnionRoom_ScheduleFieldMessageWithFollowupState(u32 nextState, const u8 *src)
{ {
struct UnkStruct_URoom * data = sUnionRoomMain.uRoom; struct UnkStruct_URoom * data = sUnionRoomMain.uRoom;
@@ -2666,7 +2666,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
break; break;
case 2: case 2:
SetHostRFUtgtGname(0x40, 0, 0); SetHostRFUtgtGname(0x40, 0, 0);
sub_80FAFA0(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel); RfuUpdatePlayerGnameStateAndSend(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel);
sub_800B1F4(); sub_800B1F4();
OpenLink(); OpenLink();
sub_80FBC00(); sub_80FBC00();
@@ -2678,7 +2678,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
break; break;
case 3: case 3:
if ((GetPartyMenuType() == PARTY_MENU_TYPE_UNION_ROOM_REGISTER if ((GetPartyMenuType() == PARTY_MENU_TYPE_UNION_ROOM_REGISTER
|| GetPartyMenuType() == PARTY_MENU_TYPE_UNION_ROOM_TRADE) || GetPartyMenuType() == PARTY_MENU_TYPE_UNION_ROOM_TRADE)
&& sUnionRoomTrade.field_0 != 0) && sUnionRoomTrade.field_0 != 0)
{ {
id = GetCursorSelectionMonId(); id = GetCursorSelectionMonId();
@@ -2689,12 +2689,12 @@ static void Task_ResumeUnionRoom(u8 taskId)
if (id >= PARTY_SIZE) if (id >= PARTY_SIZE)
{ {
ResetUnionRoomTrade(&sUnionRoomTrade); ResetUnionRoomTrade(&sUnionRoomTrade);
sub_80FAFA0(0, 0, 0); RfuUpdatePlayerGnameStateAndSend(0, 0, 0);
sub_811868C(gUnknown_8458D54); sub_811868C(gUnknown_8458D54);
} }
else if (!RegisterTradeMonAndGetIsEgg(GetCursorSelectionMonId(), &sUnionRoomTrade)) else if (!RegisterTradeMonAndGetIsEgg(GetCursorSelectionMonId(), &sUnionRoomTrade))
{ {
sub_8118664(0x34, gUnknown_8458CD4); UnionRoom_ScheduleFieldMessageWithFollowupState(52, gURText_PleaseChooseTypeOfMon);
} }
else else
{ {
@@ -2781,7 +2781,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
case 4: case 4:
data->state = 11; data->state = 11;
sub_811B298(); sub_811B298();
sub_80FAFA0(0, 0, 0); RfuUpdatePlayerGnameStateAndSend(0, 0, 0);
sub_80FB008(0x13 | 0x40, sub_811B2D8(data), 0); sub_80FB008(0x13 | 0x40, sub_811B2D8(data), 0);
break; break;
} }
@@ -2810,7 +2810,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
data->state = 25; data->state = 25;
break; break;
case 2: case 2:
sub_8118664(0x13, gStringVar4); UnionRoom_ScheduleFieldMessageWithFollowupState(19, gStringVar4);
break; break;
} }
break; break;
@@ -2827,7 +2827,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
if (sub_80FBB0C() == TRUE) if (sub_80FBB0C() == TRUE)
sub_811868C(gUnknown_8457F90); sub_811868C(gUnknown_8457F90);
else else
sub_8118664(30, gUnknown_8457F90); UnionRoom_ScheduleFieldMessageWithFollowupState(30, gUnknown_8457F90);
sPlayerCurrActivity = 0x40; sPlayerCurrActivity = 0x40;
break; break;
@@ -2844,7 +2844,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
if (!FuncIsActiveTask(sub_8117280)) if (!FuncIsActiveTask(sub_8117280))
{ {
if (sPlayerCurrActivity == (UROOM_ACTIVITY_TRADE | 0x40)) if (sPlayerCurrActivity == (UROOM_ACTIVITY_TRADE | 0x40))
sub_8118664(31, gUnknown_84578BC); UnionRoom_ScheduleFieldMessageWithFollowupState(31, gUnknown_84578BC);
else else
data->state = 5; data->state = 5;
} }
@@ -2860,7 +2860,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
case 5: case 5:
id = sub_811AA24(&data->field_0->arr[taskData[1]]); id = sub_811AA24(&data->field_0->arr[taskData[1]]);
playerGender = GetUnionRoomPlayerGender(taskData[1], data->field_0); playerGender = GetUnionRoomPlayerGender(taskData[1], data->field_0);
sub_8118664(6, gUnknown_8457B04[id][playerGender]); UnionRoom_ScheduleFieldMessageWithFollowupState(6, gURText_FriendPromptsForActivity[id][playerGender]);
break; break;
case 6: case 6:
var5 = ListMenuHandler_AllItemsAvailable(&data->textState, &data->topListMenuWindowId, &data->topListMenuListMenuId, &sWindowTemplate_InviteToActivity, &sListMenuTemplate_InviteToActivity); var5 = ListMenuHandler_AllItemsAvailable(&data->textState, &data->topListMenuWindowId, &data->topListMenuListMenuId, &sWindowTemplate_InviteToActivity, &sListMenuTemplate_InviteToActivity);
@@ -2887,7 +2887,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
sPlayerActivityGroupSize = (u32)(var5) >> 8; sPlayerActivityGroupSize = (u32)(var5) >> 8;
if (sPlayerCurrActivity == (UROOM_ACTIVITY_BATTLE | 0x40) && !HasAtLeastTwoMonsOfLevel30OrLower()) if (sPlayerCurrActivity == (UROOM_ACTIVITY_BATTLE | 0x40) && !HasAtLeastTwoMonsOfLevel30OrLower())
{ {
sub_8118664(5, gUnknown_845847C); UnionRoom_ScheduleFieldMessageWithFollowupState(5, gUnknown_845847C);
} }
else else
{ {
@@ -2957,7 +2957,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
case 7: case 7:
id = sub_811AA24(&data->field_0->arr[taskData[1]]); id = sub_811AA24(&data->field_0->arr[taskData[1]]);
playerGender = GetUnionRoomPlayerGender(taskData[1], data->field_0); playerGender = GetUnionRoomPlayerGender(taskData[1], data->field_0);
sub_8118664(6, gUnknown_8457B04[id][playerGender]); UnionRoom_ScheduleFieldMessageWithFollowupState(6, gURText_FriendPromptsForActivity[id][playerGender]);
break; break;
case 40: case 40:
if (PrintOnTextbox(&data->textState, gStringVar4)) if (PrintOnTextbox(&data->textState, gStringVar4))
@@ -3024,7 +3024,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
if (sub_80FBB0C() == TRUE) if (sub_80FBB0C() == TRUE)
sub_811868C(gUnknown_84585E8[playerGender]); sub_811868C(gUnknown_84585E8[playerGender]);
else else
sub_8118664(30, gUnknown_84585E8[playerGender]); UnionRoom_ScheduleFieldMessageWithFollowupState(30, gUnknown_84585E8[playerGender]);
break; break;
case 3: case 3:
data->state = 22; data->state = 22;
@@ -3040,7 +3040,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
if (sub_80FBB0C() == TRUE) if (sub_80FBB0C() == TRUE)
sub_811868C(gUnknown_84585E8[playerGender]); sub_811868C(gUnknown_84585E8[playerGender]);
else else
sub_8118664(30, gUnknown_84585E8[playerGender]); UnionRoom_ScheduleFieldMessageWithFollowupState(30, gUnknown_84585E8[playerGender]);
} }
if (gReceivedRemoteLinkPlayers != 0) if (gReceivedRemoteLinkPlayers != 0)
data->state = 16; data->state = 16;
@@ -3089,7 +3089,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
} }
break; break;
case 35: case 35:
sub_8118664(9, gStringVar4); UnionRoom_ScheduleFieldMessageWithFollowupState(9, gStringVar4);
break; break;
case 9: case 9:
switch (sub_811A14C(&data->textState, FALSE)) switch (sub_811A14C(&data->textState, FALSE))
@@ -3147,7 +3147,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
if (gReceivedRemoteLinkPlayers == 0) if (gReceivedRemoteLinkPlayers == 0)
{ {
sPlayerCurrActivity = 0x40; sPlayerCurrActivity = 0x40;
sub_8118664(37, gStringVar4); UnionRoom_ScheduleFieldMessageWithFollowupState(37, gStringVar4);
memset(data->playerSendBuffer, 0, sizeof(data->playerSendBuffer)); memset(data->playerSendBuffer, 0, sizeof(data->playerSendBuffer));
data->recvActivityRequest[0] = 0; data->recvActivityRequest[0] = 0;
data->partnerYesNoResponse = 0; data->partnerYesNoResponse = 0;
@@ -3159,7 +3159,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
break; break;
case 13: case 13:
GetURoomActivityStartMsg(gStringVar4, sPlayerCurrActivity | 0x40); GetURoomActivityStartMsg(gStringVar4, sPlayerCurrActivity | 0x40);
sub_8118664(14, gStringVar4); UnionRoom_ScheduleFieldMessageWithFollowupState(14, gStringVar4);
break; break;
case 14: case 14:
sub_800AB9C(); sub_800AB9C();
@@ -3208,7 +3208,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
ConvertIntToDecimalStringN(gStringVar2, GetHostRFUtgtGname()->level, STR_CONV_MODE_LEFT_ALIGN, 3); ConvertIntToDecimalStringN(gStringVar2, GetHostRFUtgtGname()->level, STR_CONV_MODE_LEFT_ALIGN, 3);
StringExpandPlaceholders(gStringVar4, gUnknown_8458DBC); StringExpandPlaceholders(gStringVar4, gUnknown_8458DBC);
} }
sub_8118664(44, gStringVar4); UnionRoom_ScheduleFieldMessageWithFollowupState(44, gStringVar4);
} }
break; break;
case 43: case 43:
@@ -3229,10 +3229,10 @@ static void Task_ResumeUnionRoom(u8 taskId)
switch (var5) switch (var5)
{ {
case 1: // REGISTER case 1: // REGISTER
sub_8118664(53, gUnknown_8458D1C); UnionRoom_ScheduleFieldMessageWithFollowupState(53, gUnknown_8458D1C);
break; break;
case 2: // INFO case 2: // INFO
sub_8118664(47, gUnknown_8458B44); UnionRoom_ScheduleFieldMessageWithFollowupState(47, gUnknown_8458B44);
break; break;
} }
} }
@@ -3260,7 +3260,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
case -2: case -2:
case 18: case 18:
ResetUnionRoomTrade(&sUnionRoomTrade); ResetUnionRoomTrade(&sUnionRoomTrade);
sub_80FAFA0(0, 0, 0); RfuUpdatePlayerGnameStateAndSend(0, 0, 0);
sub_811868C(gUnknown_8458D54); sub_811868C(gUnknown_8458D54);
break; break;
default: default:
@@ -3271,7 +3271,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
} }
break; break;
case 55: case 55:
sub_80FAFA0(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel); RfuUpdatePlayerGnameStateAndSend(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel);
sub_811868C(gUnknown_8458D78); sub_811868C(gUnknown_8458D78);
break; break;
case 44: case 44:
@@ -3290,7 +3290,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
case 56: case 56:
if (PrintOnTextbox(&data->textState, gUnknown_8458E10)) if (PrintOnTextbox(&data->textState, gUnknown_8458E10))
{ {
sub_80FAFA0(0, 0, 0); RfuUpdatePlayerGnameStateAndSend(0, 0, 0);
ResetUnionRoomTrade(&sUnionRoomTrade); ResetUnionRoomTrade(&sUnionRoomTrade);
sub_811B258(TRUE); sub_811B258(TRUE);
data->state = 4; data->state = 4;
@@ -3321,18 +3321,18 @@ static void Task_ResumeUnionRoom(u8 taskId)
{ {
case UR_TRADE_MATCH: case UR_TRADE_MATCH:
IntlConvPartnerUname(gStringVar1, data->field_0->arr[var5]); IntlConvPartnerUname(gStringVar1, data->field_0->arr[var5]);
sub_8118664(49, gUnknown_8458E70); UnionRoom_ScheduleFieldMessageWithFollowupState(49, gUnknown_8458E70);
taskData[1] = var5; taskData[1] = var5;
break; break;
case UR_TRADE_NOTYPE: case UR_TRADE_NOTYPE:
IntlConvPartnerUname(gStringVar1, data->field_0->arr[var5]); IntlConvPartnerUname(gStringVar1, data->field_0->arr[var5]);
StringCopy(gStringVar2, gTypeNames[data->field_0->arr[var5].unk.gname.type]); StringCopy(gStringVar2, gTypeNames[data->field_0->arr[var5].unk.gname.type]);
sub_8118664(46, gUnknown_8458ED0); UnionRoom_ScheduleFieldMessageWithFollowupState(46, gUnknown_8458ED0);
break; break;
case UR_TRADE_NOEGG: case UR_TRADE_NOEGG:
IntlConvPartnerUname(gStringVar1, data->field_0->arr[var5]); IntlConvPartnerUname(gStringVar1, data->field_0->arr[var5]);
StringCopy(gStringVar2, gTypeNames[data->field_0->arr[var5].unk.gname.type]); StringCopy(gStringVar2, gTypeNames[data->field_0->arr[var5].unk.gname.type]);
sub_8118664(46, gUnknown_8458F04); UnionRoom_ScheduleFieldMessageWithFollowupState(46, gUnknown_8458F04);
break; break;
} }
break; break;
@@ -3356,7 +3356,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
if (PrintOnTextbox(&data->textState, gUnknown_8458D1C)) if (PrintOnTextbox(&data->textState, gUnknown_8458D1C))
{ {
sUnionRoomTrade.field_0 = 2; sUnionRoomTrade.field_0 = 2;
memcpy(&gUnknown_203B064, &data->field_0->arr[taskData[1]].unk.gname.unk_00, sizeof(gUnknown_203B064)); memcpy(&gPartnerTgtGnameSub, &data->field_0->arr[taskData[1]].unk.gname.unk_00, sizeof(gPartnerTgtGnameSub));
gUnionRoomRequestedMonType = data->field_0->arr[taskData[1]].unk.gname.type; gUnionRoomRequestedMonType = data->field_0->arr[taskData[1]].unk.gname.type;
gUnionRoomOfferedSpecies = data->field_0->arr[taskData[1]].unk.gname.species; gUnionRoomOfferedSpecies = data->field_0->arr[taskData[1]].unk.gname.species;
gFieldCallback = sub_807DCE4; gFieldCallback = sub_807DCE4;
@@ -3369,7 +3369,7 @@ static void Task_ResumeUnionRoom(u8 taskId)
sPlayerCurrActivity = UROOM_ACTIVITY_TRADE | 0x40; sPlayerCurrActivity = UROOM_ACTIVITY_TRADE | 0x40;
sub_80FC114(data->field_0->arr[taskData[1]].unk.playerName, &data->field_0->arr[taskData[1]].unk.gname, UROOM_ACTIVITY_TRADE | 0x40); sub_80FC114(data->field_0->arr[taskData[1]].unk.playerName, &data->field_0->arr[taskData[1]].unk.gname, UROOM_ACTIVITY_TRADE | 0x40);
IntlConvPartnerUname(gStringVar1, data->field_0->arr[taskData[1]]); IntlConvPartnerUname(gStringVar1, data->field_0->arr[taskData[1]]);
UR_PrintFieldMessage(gUnknown_8457A34[2]); UR_PrintFieldMessage(gURText_PleaseWaitMsgs[2]);
data->state = 25; data->state = 25;
break; break;
case 26: case 26:
@@ -3462,7 +3462,7 @@ static void Task_InitUnionRoom(u8 taskId)
structPtr->state = 1; structPtr->state = 1;
break; break;
case 1: case 1:
SetHostRFUtgtGname(0xC, 0, 0); SetHostRFUtgtGname(UROOM_ACTIVITY_SEARCH, 0, 0);
sub_800B1F4(); sub_800B1F4();
OpenLink(); OpenLink();
sub_80FBC00(); sub_80FBC00();
@@ -3540,7 +3540,7 @@ static u8 sub_8119B94(void)
struct UnkStruct_URoom * structPtr = sUnionRoomMain.uRoom; struct UnkStruct_URoom * structPtr = sUnionRoomMain.uRoom;
s32 r7 = 0; s32 r7 = 0;
for (i = 0; i < 4; i++) for (i = 0; i < RFU_CHILD_MAX; i++)
{ {
if (AreUnkSharedObjectsDifferent(&structPtr->field_C->arr[i].unk0, &sUnkStruct_Shared_Dummy) == TRUE) if (AreUnkSharedObjectsDifferent(&structPtr->field_C->arr[i].unk0, &sUnkStruct_Shared_Dummy) == TRUE)
{ {
@@ -3600,7 +3600,7 @@ static u8 sub_8119B94(void)
} }
} }
} }
for (i = 0; i < 4; i++) for (i = 0; i < RFU_CHILD_MAX; i++)
{ {
if (Appendx1Ctox20(&structPtr->field_0->arr[0], &structPtr->field_4->arr[i], 8) != 0xFF) if (Appendx1Ctox20(&structPtr->field_0->arr[0], &structPtr->field_4->arr[i], 8) != 0xFF)
r7 = 1; r7 = 1;
@@ -3618,12 +3618,12 @@ static void Task_SearchForChildOrParent(u8 taskId)
for (i = 0; i < RFU_CHILD_MAX; i++) for (i = 0; i < RFU_CHILD_MAX; i++)
{ {
parent_child = sub_80FCC3C(&sp0.gname, sp0.playerName, i); parent_child = LinkRfu_GetNameIfCompatible(&sp0.gname, sp0.playerName, i);
if (!IsPartnerActivityAcceptable(sp0.gname.activity, gTasks[taskId].data[4])) if (!IsPartnerActivityAcceptable(sp0.gname.activity, gTasks[taskId].data[4]))
{ {
sp0 = sUnkStruct_Shared_Dummy; sp0 = sUnkStruct_Shared_Dummy;
} }
if (sp0.gname.unk_00.unk_00_0 == 1) if (sp0.gname.unk_00.language == LANGUAGE_JAPANESE)
{ {
sp0 = sUnkStruct_Shared_Dummy; sp0 = sUnkStruct_Shared_Dummy;
} }
@@ -3662,9 +3662,9 @@ static void sub_8119EB8(u8 taskId)
s32 i, j; s32 i, j;
struct UnkStruct_Main4 ** ptr = (void*) gTasks[taskId].data; struct UnkStruct_Main4 ** ptr = (void*) gTasks[taskId].data;
for (i = 0; i < 4; i++) for (i = 0; i < RFU_CHILD_MAX; i++)
{ {
sub_80FCC3C(&ptr[0]->arr[i].unk0.gname, ptr[0]->arr[i].unk0.playerName, i); LinkRfu_GetNameIfCompatible(&ptr[0]->arr[i].unk0.gname, ptr[0]->arr[i].unk0.playerName, i);
if (!IsPartnerActivityAcceptable(ptr[0]->arr[i].unk0.gname.activity, gTasks[taskId].data[2])) if (!IsPartnerActivityAcceptable(ptr[0]->arr[i].unk0.gname.activity, gTasks[taskId].data[2]))
{ {
ptr[0]->arr[i].unk0 = sUnkStruct_Shared_Dummy; ptr[0]->arr[i].unk0 = sUnkStruct_Shared_Dummy;
@@ -3680,11 +3680,11 @@ static void sub_8119EB8(u8 taskId)
} }
} }
static bool32 sub_8119FB0(struct GFtgtGname * arg0, s16 arg1) static bool32 GetGnameWonderFlagByLinkGroup(struct GFtgtGname * gname, s16 linkGroup)
{ {
if (arg1 == 7) if (linkGroup == LINK_GROUP_WONDER_CARD)
{ {
if (!arg0->unk_00.unk_00_5) if (!gname->unk_00.hasCard)
{ {
return FALSE; return FALSE;
} }
@@ -3693,9 +3693,9 @@ static bool32 sub_8119FB0(struct GFtgtGname * arg0, s16 arg1)
return TRUE; return TRUE;
} }
} }
else if (arg1 == 8) else if (linkGroup == LINK_GROUP_WONDER_NEWS)
{ {
if (!arg0->unk_00.unk_00_4) if (!gname->unk_00.hasNews)
{ {
return FALSE; return FALSE;
} }
@@ -3715,30 +3715,30 @@ static void sub_8119FD8(u8 taskId)
s32 i; s32 i;
struct UnkStruct_Main4 ** ptr = (void*) gTasks[taskId].data; struct UnkStruct_Main4 ** ptr = (void*) gTasks[taskId].data;
for (i = 0; i < 4; i++) for (i = 0; i < RFU_CHILD_MAX; i++)
{ {
if (sub_80FCCF4(&ptr[0]->arr[i].unk0.gname, ptr[0]->arr[i].unk0.playerName, i)) if (sub_80FCCF4(&ptr[0]->arr[i].unk0.gname, ptr[0]->arr[i].unk0.playerName, i))
{ {
sub_8119FB0(&ptr[0]->arr[i].unk0.gname, gTasks[taskId].data[2]); GetGnameWonderFlagByLinkGroup(&ptr[0]->arr[i].unk0.gname, gTasks[taskId].data[2]);
} }
ptr[0]->arr[i].active = AreUnkSharedObjectsDifferent(&ptr[0]->arr[i].unk0, &sUnkStruct_Shared_Dummy); ptr[0]->arr[i].active = AreUnkSharedObjectsDifferent(&ptr[0]->arr[i].unk0, &sUnkStruct_Shared_Dummy);
} }
} }
static u8 sub_811A054(struct UnkStruct_Main4 * a0, u32 a1) static u8 CreateTask_sub_8119EB8(struct UnkStruct_Main4 * main4, u32 linkGroup)
{ {
u8 taskId = CreateTask(sub_8119EB8, 0); u8 taskId = CreateTask(sub_8119EB8, 0);
struct UnkStruct_Main4 ** ptr = (void*) gTasks[taskId].data; struct UnkStruct_Main4 ** ptr = (void*) gTasks[taskId].data;
ptr[0] = a0; ptr[0] = main4;
gTasks[taskId].data[2] = a1; gTasks[taskId].data[2] = linkGroup;
return taskId; return taskId;
} }
static u8 sub_811A084(struct UnkStruct_Main4 * a0, u32 a1) static u8 CreateTask_sub_8119FD8(struct UnkStruct_Main4 * main4, u32 a1)
{ {
u8 taskId = CreateTask(sub_8119FD8, 0); u8 taskId = CreateTask(sub_8119FD8, 0);
struct UnkStruct_Main4 ** ptr = (void*) gTasks[taskId].data; struct UnkStruct_Main4 ** ptr = (void*) gTasks[taskId].data;
ptr[0] = a0; ptr[0] = main4;
gTasks[taskId].data[2] = a1; gTasks[taskId].data[2] = a1;
return taskId; return taskId;
} }
@@ -4029,7 +4029,7 @@ static void BlankUnkStruct_x1CArray(struct UnkStruct_x1C * arg0, u8 count)
{ {
s32 i; s32 i;
for (i = 0; i < 4; i++) for (i = 0; i < RFU_CHILD_MAX; i++)
{ {
arg0[i].unk0 = sUnkStruct_Shared_Dummy; arg0[i].unk0 = sUnkStruct_Shared_Dummy;
arg0[i].active = FALSE; arg0[i].active = FALSE;
@@ -4073,7 +4073,7 @@ static bool32 AreUnionRoomPlayerGnamesDifferent(struct UnkStruct_Shared * arg0,
return TRUE; return TRUE;
} }
for (i = 0; i < 4; i++) for (i = 0; i < RFU_CHILD_MAX; i++)
{ {
if (arg0->gname.child_sprite_gender[i] != arg1->gname.child_sprite_gender[i]) if (arg0->gname.child_sprite_gender[i] != arg1->gname.child_sprite_gender[i])
{ {
@@ -4099,7 +4099,7 @@ static u32 sub_811A748(struct UnkStruct_x20 * arg0, struct UnkStruct_x1C * arg1)
u8 result = 0xFF; u8 result = 0xFF;
s32 i; s32 i;
for (i = 0; i < 4; i++) for (i = 0; i < RFU_CHILD_MAX; i++)
{ {
if (arg1[i].active && !AreUnkSharedObjectsDifferent(&arg0->unk, &arg1[i].unk0)) if (arg1[i].active && !AreUnkSharedObjectsDifferent(&arg0->unk, &arg1[i].unk0))
{ {
@@ -4234,7 +4234,7 @@ static s32 sub_811AA5C(struct UnkStruct_Main0 * arg0, u8 arg1, u8 arg2, u32 play
} }
else else
{ {
UR_PrintFieldMessage(gUnknown_8457A34[r2]); UR_PrintFieldMessage(gURText_PleaseWaitMsgs[r2]);
return 1; return 1;
} }
} }
@@ -4287,7 +4287,7 @@ static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct GFtgtGname * gname
UR_AddTextPrinterParameterized(windowId, 2, uname, 8, y, colorIdx); UR_AddTextPrinterParameterized(windowId, 2, uname, 8, y, colorIdx);
if (species == SPECIES_EGG) if (species == SPECIES_EGG)
{ {
UR_AddTextPrinterParameterized(windowId, 2, gUnknown_8458FBC, 0x44, y, colorIdx); UR_AddTextPrinterParameterized(windowId, 2, gText_EggTrade, 0x44, y, colorIdx);
} }
else else
{ {
@@ -4611,7 +4611,7 @@ static void sub_811B258(bool32 arg0)
sPlayerCurrActivity = 0; sPlayerCurrActivity = 0;
if (arg0) if (arg0)
{ {
sub_80FAFA0(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel); RfuUpdatePlayerGnameStateAndSend(sUnionRoomTrade.type, sUnionRoomTrade.playerSpecies, sUnionRoomTrade.playerLevel);
sub_80FB008(0x40, 0, 0); sub_80FB008(0x40, 0, 0);
} }
} }
+23 -22
View File
@@ -13,15 +13,16 @@
#include "text_window.h" #include "text_window.h"
#include "union_room.h" #include "union_room.h"
#include "window.h" #include "window.h"
#include "constants/union_room.h"
struct UnkStruct_203B08C struct UnionRoomBattleWork
{ {
s16 a0; s16 textState;
}; };
static EWRAM_DATA struct UnkStruct_203B08C * gUnknown_203B08C = NULL; static EWRAM_DATA struct UnionRoomBattleWork * sWork = NULL;
static const struct BgTemplate gUnknown_8457194[] = { static const struct BgTemplate sBgTemplates[] = {
{ {
.bg = 0, .bg = 0,
.charBaseIndex = 3, .charBaseIndex = 3,
@@ -29,7 +30,7 @@ static const struct BgTemplate gUnknown_8457194[] = {
} }
}; };
static const struct WindowTemplate gUnknown_8457198[] = { static const struct WindowTemplate sWindowTemplates[] = {
{ {
.bg = 0, .bg = 0,
.tilemapLeft = 2, .tilemapLeft = 2,
@@ -43,7 +44,7 @@ static const struct WindowTemplate gUnknown_8457198[] = {
static const u8 gUnknown_84571A8[] = {1, 2, 3}; static const u8 gUnknown_84571A8[] = {1, 2, 3};
static void sub_811C04C(void) static void SetUpPartiesAndStartBattle(void)
{ {
s32 i; s32 i;
sub_81173C0(BATTLE_TYPE_LINK | BATTLE_TYPE_TRAINER); sub_81173C0(BATTLE_TYPE_LINK | BATTLE_TYPE_TRAINER);
@@ -65,7 +66,7 @@ static void sub_811C04C(void)
SetMainCallback2(CB2_InitBattle); SetMainCallback2(CB2_InitBattle);
} }
static void sub_811C0E0(u8 windowId, const u8 * str, u8 x, u8 y, s32 speed) static void UnionRoomBattle_CreateTextPrinter(u8 windowId, const u8 * str, u8 x, u8 y, s32 speed)
{ {
s32 letterSpacing = 1; s32 letterSpacing = 1;
s32 lineSpacing = 1; s32 lineSpacing = 1;
@@ -73,13 +74,13 @@ static void sub_811C0E0(u8 windowId, const u8 * str, u8 x, u8 y, s32 speed)
AddTextPrinterParameterized4(windowId, 3, x, y, letterSpacing, lineSpacing, gUnknown_84571A8, speed, str); AddTextPrinterParameterized4(windowId, 3, x, y, letterSpacing, lineSpacing, gUnknown_84571A8, speed, str);
} }
static bool32 sub_811C150(s16 * state, const u8 * str, s32 speed) static bool32 UnionRoomBattle_PrintTextOnWindow0(s16 * state, const u8 * str, s32 speed)
{ {
switch (*state) switch (*state)
{ {
case 0: case 0:
DrawTextBorderOuter(0, 0x001, 0xD); DrawTextBorderOuter(0, 0x001, 0xD);
sub_811C0E0(0, str, 0, 2, speed); UnionRoomBattle_CreateTextPrinter(0, str, 0, 2, speed);
PutWindowTilemap(0); PutWindowTilemap(0);
CopyWindowToVram(0, 3); CopyWindowToVram(0, 3);
(*state)++; (*state)++;
@@ -95,7 +96,7 @@ static bool32 sub_811C150(s16 * state, const u8 * str, s32 speed)
return FALSE; return FALSE;
} }
static void sub_811C1B4(void) static void VBlankCB_UnionRoomBattle(void)
{ {
LoadOam(); LoadOam();
ProcessSpriteCopyRequests(); ProcessSpriteCopyRequests();
@@ -108,14 +109,14 @@ void CB2_UnionRoomBattle(void)
{ {
case 0: case 0:
SetGpuReg(REG_OFFSET_DISPCNT, 0x0000); SetGpuReg(REG_OFFSET_DISPCNT, 0x0000);
gUnknown_203B08C = AllocZeroed(sizeof(struct UnkStruct_203B08C)); sWork = AllocZeroed(sizeof(struct UnionRoomBattleWork));
ResetSpriteData(); ResetSpriteData();
FreeAllSpritePalettes(); FreeAllSpritePalettes();
ResetTasks(); ResetTasks();
ResetBgsAndClearDma3BusyFlags(0); ResetBgsAndClearDma3BusyFlags(0);
InitBgsFromTemplates(0, gUnknown_8457194, 1); InitBgsFromTemplates(0, sBgTemplates, 1);
ResetTempTileDataBuffers(); ResetTempTileDataBuffers();
if (!InitWindows(gUnknown_8457198)) if (!InitWindows(sWindowTemplates))
{ {
return; return;
} }
@@ -126,11 +127,11 @@ void CB2_UnionRoomBattle(void)
FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 0xF); FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 0xF);
TextWindow_SetStdFrame0_WithPal(0, 1, 0xD0); TextWindow_SetStdFrame0_WithPal(0, 1, 0xD0);
Menu_LoadStdPal(); Menu_LoadStdPal();
SetVBlankCallback(sub_811C1B4); SetVBlankCallback(VBlankCB_UnionRoomBattle);
gMain.state++; gMain.state++;
break; break;
case 1: case 1:
if (sub_811C150(&gUnknown_203B08C->a0, gText_CommStandbyAwaitingOtherPlayer, 0)) if (UnionRoomBattle_PrintTextOnWindow0(&sWork->textState, gText_CommStandbyAwaitingOtherPlayer, 0))
{ {
gMain.state++; gMain.state++;
} }
@@ -146,11 +147,11 @@ void CB2_UnionRoomBattle(void)
memset(gBlockSendBuffer, 0, 0x20); memset(gBlockSendBuffer, 0, 0x20);
if (gSelectedOrderFromParty[0] == -gSelectedOrderFromParty[1]) if (gSelectedOrderFromParty[0] == -gSelectedOrderFromParty[1])
{ {
gBlockSendBuffer[0] = 0x52; gBlockSendBuffer[0] = UROOM_ACTIVITY_DECLINE | 0x40;
} }
else else
{ {
gBlockSendBuffer[0] = 0x51; gBlockSendBuffer[0] = UROOM_ACTIVITY_ACCEPT | 0x40;
} }
SendBlock(0, gBlockSendBuffer, 0x20); SendBlock(0, gBlockSendBuffer, 0x20);
gMain.state++; gMain.state++;
@@ -159,7 +160,7 @@ void CB2_UnionRoomBattle(void)
case 4: case 4:
if (GetBlockReceivedStatus() == 3) if (GetBlockReceivedStatus() == 3)
{ {
if (gBlockRecvBuffer[0][0] == 0x51 && gBlockRecvBuffer[1][0] == 0x51) if (gBlockRecvBuffer[0][0] == (UROOM_ACTIVITY_ACCEPT | 0x40) && gBlockRecvBuffer[1][0] == (UROOM_ACTIVITY_ACCEPT | 0x40))
{ {
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK); BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
gMain.state = 50; gMain.state = 50;
@@ -167,7 +168,7 @@ void CB2_UnionRoomBattle(void)
else else
{ {
sub_800AAC0(); sub_800AAC0();
if (gBlockRecvBuffer[GetMultiplayerId()][0] == 0x52) if (gBlockRecvBuffer[GetMultiplayerId()][0] == (UROOM_ACTIVITY_DECLINE | 0x40))
{ {
gMain.state = 6; gMain.state = 6;
} }
@@ -189,7 +190,7 @@ void CB2_UnionRoomBattle(void)
case 51: case 51:
if (IsLinkTaskFinished()) if (IsLinkTaskFinished())
{ {
SetMainCallback2(sub_811C04C); SetMainCallback2(SetUpPartiesAndStartBattle);
} }
break; break;
case 6: case 6:
@@ -199,7 +200,7 @@ void CB2_UnionRoomBattle(void)
} }
break; break;
case 7: case 7:
if (sub_811C150(&gUnknown_203B08C->a0, gText_RefusedBattle, 1)) if (UnionRoomBattle_PrintTextOnWindow0(&sWork->textState, gText_RefusedBattle, 1))
{ {
SetMainCallback2(CB2_ReturnToField); SetMainCallback2(CB2_ReturnToField);
} }
@@ -211,7 +212,7 @@ void CB2_UnionRoomBattle(void)
} }
break; break;
case 9: case 9:
if (sub_811C150(&gUnknown_203B08C->a0, gText_BattleWasRefused, 1)) if (UnionRoomBattle_PrintTextOnWindow0(&sWork->textState, gText_BattleWasRefused, 1))
{ {
SetMainCallback2(CB2_ReturnToField); SetMainCallback2(CB2_ReturnToField);
} }
+6 -4
View File
@@ -125,6 +125,7 @@ const u8 *const gUnknown_8457754[] = {
ALIGNED(4) const u8 gUnknown_845777C[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been established."); ALIGNED(4) const u8 gUnknown_845777C[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been established.");
ALIGNED(4) const u8 gUnknown_84577BC[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been dropped…"); ALIGNED(4) const u8 gUnknown_84577BC[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been dropped…");
ALIGNED(4) const u8 gUnknown_84577F8[] = _("The link with your friend has been\ndropped…"); ALIGNED(4) const u8 gUnknown_84577F8[] = _("The link with your friend has been\ndropped…");
ALIGNED(4) const u8 gUnknown_8457824[] = _("{STR_VAR_1} replied, “No…”"); ALIGNED(4) const u8 gUnknown_8457824[] = _("{STR_VAR_1} replied, “No…”");
@@ -156,7 +157,7 @@ ALIGNED(4) const u8 gUnknown_84578E4[] = _("Communicating{PAUSE 15}.{PAUSE 15}.{
ALIGNED(4) const u8 gUnknown_8457950[] = _("Communicating with {STR_VAR_1}{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}."); ALIGNED(4) const u8 gUnknown_8457950[] = _("Communicating with {STR_VAR_1}{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.");
ALIGNED(4) const u8 gUnknown_84579BC[] = _("Please wait a while{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}."); ALIGNED(4) const u8 gUnknown_84579BC[] = _("Please wait a while{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.\n{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.{PAUSE 15}.");
const u8 *const gUnknown_8457A34[] = { const u8 *const gURText_PleaseWaitMsgs[] = {
gUnknown_84578E4, gUnknown_84578E4,
gUnknown_8457950, gUnknown_8457950,
gUnknown_84579BC gUnknown_84579BC
@@ -167,7 +168,7 @@ ALIGNED(4) const u8 gUnknown_8457A70[] = _("Hello!\nWould you like to do somethi
ALIGNED(4) const u8 gUnknown_8457A98[] = _("{STR_VAR_1}: Hiya, we meet again!\nWhat are you up for this time?"); ALIGNED(4) const u8 gUnknown_8457A98[] = _("{STR_VAR_1}: Hiya, we meet again!\nWhat are you up for this time?");
ALIGNED(4) const u8 gUnknown_8457AD0[] = _("{STR_VAR_1}: Oh! {PLAYER}, hello!\nWould you like to do something?"); ALIGNED(4) const u8 gUnknown_8457AD0[] = _("{STR_VAR_1}: Oh! {PLAYER}, hello!\nWould you like to do something?");
const u8 *const gUnknown_8457B04[][2] = { const u8 *const gURText_FriendPromptsForActivity[][2] = {
{ {
gUnknown_8457A40, gUnknown_8457A40,
gUnknown_8457A70 gUnknown_8457A70
@@ -418,7 +419,8 @@ ALIGNED(4) const u8 gUnknown_8458AB8[] = _("Welcome to the TRADING BOARD.\pYou m
ALIGNED(4) const u8 gUnknown_8458B44[] = _("This TRADING BOARD is used for\noffering a POKéMON for a trade.\pAll you need to do is register a\nPOKéMON for a trade.\pAnother TRAINER may offer a party\nPOKéMON in return for the trade.\pWe hope you will register POKéMON\nand trade them with many, many\lother TRAINERS.\pWould you like to register one of\nyour POKéMON?"); ALIGNED(4) const u8 gUnknown_8458B44[] = _("This TRADING BOARD is used for\noffering a POKéMON for a trade.\pAll you need to do is register a\nPOKéMON for a trade.\pAnother TRAINER may offer a party\nPOKéMON in return for the trade.\pWe hope you will register POKéMON\nand trade them with many, many\lother TRAINERS.\pWould you like to register one of\nyour POKéMON?");
ALIGNED(4) const u8 gUnref_ThankYouForComing_JP[] = _("こうかんけいじばん の とうろくが\nかんりょう しました\pごりよう ありがとう\nございました!\p"); ALIGNED(4) const u8 gUnref_ThankYouForComing_JP[] = _("こうかんけいじばん の とうろくが\nかんりょう しました\pごりよう ありがとう\nございました!\p");
ALIGNED(4) const u8 gUnref_NoOneRegisteredMon[] = _("けいじばんに だれも ポケモンを\nとうろく していません\p\n"); ALIGNED(4) const u8 gUnref_NoOneRegisteredMon[] = _("けいじばんに だれも ポケモンを\nとうろく していません\p\n");
ALIGNED(4) const u8 gUnknown_8458CD4[] = _("Please choose the type of POKéMON\nthat you would like in the trade.\n");
ALIGNED(4) const u8 gURText_PleaseChooseTypeOfMon[] = _("Please choose the type of POKéMON\nthat you would like in the trade.\n");
ALIGNED(4) const u8 gUnknown_8458D1C[] = _("Which of your party POKéMON will\nyou offer in trade?\p"); ALIGNED(4) const u8 gUnknown_8458D1C[] = _("Which of your party POKéMON will\nyou offer in trade?\p");
ALIGNED(4) const u8 gUnknown_8458D54[] = _("Registration has been canceled.\p"); ALIGNED(4) const u8 gUnknown_8458D54[] = _("Registration has been canceled.\p");
ALIGNED(4) const u8 gUnknown_8458D78[] = _("Registration has been completed.\p"); ALIGNED(4) const u8 gUnknown_8458D78[] = _("Registration has been completed.\p");
@@ -442,7 +444,7 @@ const u8 *const gUnknown_8458F94[] = {
}; };
ALIGNED(4) const u8 gUnknown_8458F9C[] = _("Your trade offer was rejected.\p"); ALIGNED(4) const u8 gUnknown_8458F9C[] = _("Your trade offer was rejected.\p");
ALIGNED(4) const u8 gUnknown_8458FBC[] = _("EGG TRADE"); ALIGNED(4) const u8 gText_EggTrade[] = _("EGG TRADE");
ALIGNED(4) const u8 gUnknown_8458FC8[] = _("{DPAD_UPDOWN}CHOOSE {A_BUTTON}JOIN {B_BUTTON}CANCEL"); ALIGNED(4) const u8 gUnknown_8458FC8[] = _("{DPAD_UPDOWN}CHOOSE {A_BUTTON}JOIN {B_BUTTON}CANCEL");
ALIGNED(4) const u8 gUnknown_8458FE4[] = _("Please choose a TRAINER."); ALIGNED(4) const u8 gUnknown_8458FE4[] = _("Please choose a TRAINER.");