summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/battle_bg.c2
-rw-r--r--src/berry_blender.c2
-rwxr-xr-xsrc/berry_crush.c2
-rw-r--r--src/contest_link_80F57C4.c2
-rw-r--r--src/easy_chat.c2
-rwxr-xr-xsrc/ereader_screen.c34
-rw-r--r--src/evolution_scene.c2
-rw-r--r--src/international_string_util.c2
-rw-r--r--src/link_rfu.c6
-rw-r--r--src/list_menu.c2
-rw-r--r--src/main_menu.c3
-rw-r--r--src/menu.c2
-rwxr-xr-xsrc/mevent2.c46
-rw-r--r--src/mevent_801BAAC.c380
-rw-r--r--src/mevent_news.c4
-rw-r--r--src/mystery_event_menu.c2
-rw-r--r--src/mystery_gift.c747
-rw-r--r--src/pokemon_storage_system.c2
-rw-r--r--src/script.c2
-rwxr-xr-xsrc/script_pokemon_util_80F87D8.c2
-rw-r--r--src/start_menu.c4
-rw-r--r--src/text_window.c4
-rw-r--r--src/trade.c10
-rw-r--r--src/union_room.c86
-rwxr-xr-xsrc/union_room_chat.c8
-rw-r--r--src/use_pokeblock.c6
26 files changed, 688 insertions, 676 deletions
diff --git a/src/battle_bg.c b/src/battle_bg.c
index 524f73abf..814e8dad9 100644
--- a/src/battle_bg.c
+++ b/src/battle_bg.c
@@ -709,7 +709,7 @@ void LoadBattleMenuWindowGfx(void)
if (gBattleTypeFlags & BATTLE_TYPE_ARENA)
{
- sub_81978B0(0x70);
+ Menu_LoadStdPalAt(0x70);
LoadMessageBoxGfx(0, 0x30, 0x70);
gPlttBufferUnfaded[0x76] = 0;
CpuCopy16(&gPlttBufferUnfaded[0x76], &gPlttBufferFaded[0x76], 2);
diff --git a/src/berry_blender.c b/src/berry_blender.c
index c792b9b40..26327a634 100644
--- a/src/berry_blender.c
+++ b/src/berry_blender.c
@@ -940,7 +940,7 @@ static void InitBerryBlenderWindows(void)
FillWindowPixelBuffer(i, PIXEL_FILL(0));
FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x1E, 0x14);
- sub_81978B0(0xE0);
+ Menu_LoadStdPalAt(0xE0);
}
}
diff --git a/src/berry_crush.c b/src/berry_crush.c
index dc4c546b0..51dbe8203 100755
--- a/src/berry_crush.c
+++ b/src/berry_crush.c
@@ -582,7 +582,7 @@ int sub_802130C(void)
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP);
break;
case 6:
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
sub_8022960(var0);
sub_8034CC8();
break;
diff --git a/src/contest_link_80F57C4.c b/src/contest_link_80F57C4.c
index a4b88c074..59f41d72a 100644
--- a/src/contest_link_80F57C4.c
+++ b/src/contest_link_80F57C4.c
@@ -778,7 +778,7 @@ static void sub_80F677C(u8 taskId)
if (!gReceivedRemoteLinkPlayers)
{
if (gIsLinkContest & 0x2)
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
sub_80F7144();
gTasks[taskId].func = sub_80F67C4;
diff --git a/src/easy_chat.c b/src/easy_chat.c
index 2e384de6e..1cb7b0fe8 100644
--- a/src/easy_chat.c
+++ b/src/easy_chat.c
@@ -3721,7 +3721,7 @@ static void sub_811D0BC(void)
{
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17);
LoadUserWindowBorderGfx(1, 1, 0xE0);
- sub_8098858(1, 1, 14);
+ DrawTextBorderOuter(1, 1, 14);
sub_811D104(0);
PutWindowTilemap(1);
CopyBgTilemapBufferToVram(0);
diff --git a/src/ereader_screen.c b/src/ereader_screen.c
index 10a23e251..bac29cd42 100755
--- a/src/ereader_screen.c
+++ b/src/ereader_screen.c
@@ -4,7 +4,7 @@
#include "ereader_helpers.h"
#include "link.h"
#include "main.h"
-#include "union_room.h"
+#include "mystery_gift.h"
#include "save.h"
#include "sound.h"
#include "sprite.h"
@@ -209,7 +209,7 @@ static u32 sub_81D4EE4(u8 *arg0, u16 *arg1)
return 0;
}
-void sub_81D5014(void)
+void task_add_00_ereader(void)
{
int value;
struct Unk81D5014 *data;
@@ -251,7 +251,7 @@ static void sub_81D5084(u8 taskId)
switch (data->unk8)
{
case 0:
- if (mevent_0814257C(&data->unk9, gUnknown_085EDFD6))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gUnknown_085EDFD6))
data->unk8 = 1;
break;
case 1:
@@ -275,9 +275,9 @@ static void sub_81D5084(u8 taskId)
}
break;
case 4:
- if (mevent_0814257C(&data->unk9, gUnknown_085EDFF5))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gUnknown_085EDFF5))
{
- sub_8018884(gUnknown_085EE014);
+ AddTextPrinterToWindow1(gUnknown_085EE014);
sub_81D505C(&data->unk0);
data->unk8 = 5;
}
@@ -324,11 +324,11 @@ static void sub_81D5084(u8 taskId)
}
break;
case 7:
- if (mevent_0814257C(&data->unk9, gUnknown_085EE05C))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gUnknown_085EE05C))
data->unk8 = 4;
break;
case 8:
- sub_8018884(gUnknown_085EE097);
+ AddTextPrinterToWindow1(gUnknown_085EE097);
// XXX: This (u32*) cast is discarding the const qualifier from gUnknown_089A3470
sub_81D4D50(&gUnknown_03006370, gMultiBootProgram_BerryGlitchFix_Start - gUnknown_089A3470, (u32*)gUnknown_089A3470);
data->unk8 = 9;
@@ -347,7 +347,7 @@ static void sub_81D5084(u8 taskId)
else if (data->unkE == 1)
{
sub_81D505C(&data->unk0);
- sub_8018884(gUnknown_085EE120);
+ AddTextPrinterToWindow1(gUnknown_085EE120);
data->unk8 = 11;
}
else
@@ -361,7 +361,7 @@ static void sub_81D5084(u8 taskId)
break;
case 12:
sub_81D4E30();
- sub_8018884(gUnknown_085EE0DC);
+ AddTextPrinterToWindow1(gUnknown_085EE0DC);
data->unk8 = 13;
break;
case 13:
@@ -370,7 +370,7 @@ static void sub_81D5084(u8 taskId)
case 0:
break;
case 2:
- sub_8018884(gUnknown_085EE097);
+ AddTextPrinterToWindow1(gUnknown_085EE097);
data->unk8 = 14;
break;
case 1:
@@ -418,7 +418,7 @@ static void sub_81D5084(u8 taskId)
case 17:
if (sub_81D3AB0((struct Unk81D38FC *)&gDecompressionBuffer))
{
- sub_8018884(gUnknown_085EE0FA);
+ AddTextPrinterToWindow1(gUnknown_085EE0FA);
sub_81D505C(&data->unk0);
data->unk8 = 18;
}
@@ -430,7 +430,7 @@ static void sub_81D5084(u8 taskId)
case 18:
if (sub_81D5064(&data->unk0, 120))
{
- sub_8018884(gUnknown_085EE107);
+ AddTextPrinterToWindow1(gUnknown_085EE107);
PlayFanfare(MUS_FANFA4);
data->unk8 = 19;
}
@@ -440,25 +440,25 @@ static void sub_81D5084(u8 taskId)
data->unk8 = 26;
break;
case 23:
- if (mevent_0814257C(&data->unk9,gUnknown_085EE06B))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9,gUnknown_085EE06B))
data->unk8 = 26;
break;
case 20:
- if (mevent_0814257C(&data->unk9, gUnknown_085EE0A3))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gUnknown_085EE0A3))
data->unk8 = 0;
break;
case 21:
- if (mevent_0814257C(&data->unk9, gUnknown_085EE0BF))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gUnknown_085EE0BF))
data->unk8 = 0;
break;
case 22:
- if (mevent_0814257C(&data->unk9, gUnknown_085EE12D))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->unk9, gUnknown_085EE12D))
data->unk8 = 0;
break;
case 26:
Free(data->unk10);
DestroyTask(taskId);
- SetMainCallback2(sub_80186A4);
+ SetMainCallback2(MainCB_FreeAllBuffersAndReturnToInitTitleScreen);
break;
}
}
diff --git a/src/evolution_scene.c b/src/evolution_scene.c
index 4bf7701be..8c4847b8d 100644
--- a/src/evolution_scene.c
+++ b/src/evolution_scene.c
@@ -1228,7 +1228,7 @@ static void Task_TradeEvolutionScene(u8 taskID)
if (!gPaletteFade.active)
{
if (gWirelessCommType)
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
Free(GetBgTilemapBuffer(3));
Free(GetBgTilemapBuffer(1));
diff --git a/src/international_string_util.c b/src/international_string_util.c
index a7c42c39e..dfeda49e3 100644
--- a/src/international_string_util.c
+++ b/src/international_string_util.c
@@ -62,7 +62,7 @@ int sub_81DB3D8(const struct MenuAction *str, const u8* arg1, int arg2)
return convert_pixel_width_to_tile_width(var);
}
-int sub_81DB41C(const struct ListMenuTemplate *listMenu)
+int Intl_GetListMenuWidth(const struct ListMenuTemplate *listMenu)
{
int i, maxWidth, finalWidth;
const struct ListMenuItem *items = listMenu->items;
diff --git a/src/link_rfu.c b/src/link_rfu.c
index 43d19be03..a430f6e24 100644
--- a/src/link_rfu.c
+++ b/src/link_rfu.c
@@ -2243,7 +2243,7 @@ void CreateWirelessStatusIndicatorSprite(u8 x, u8 y)
}
}
-void sub_800E084(void)
+void DestroyWirelessStatusIndicatorSprite(void)
{
if (gSprites[gWirelessStatusIndicatorSpriteId].data[7] == 0x1234)
{
@@ -2356,7 +2356,7 @@ void sub_800E174(void)
CpuCopy16(gMain.oamBuffer + 125, (struct OamData *)OAM + 125, sizeof(struct OamData));
if (sub_8011A74() == 1)
{
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
}
}
}
@@ -4209,7 +4209,7 @@ void sub_8010DB4(void)
{
if (gUnknown_03005000.unk_ee == 1 && gUnknown_03004140.unk_02 == 0)
{
- if (gMain.callback2 == sub_8018438 || gUnknown_03004140.unk_3c->unk_04)
+ if (gMain.callback2 == c2_mystery_gift_e_reader_run || gUnknown_03004140.unk_3c->unk_04)
gWirelessCommType = 2;
SetMainCallback2(CB2_LinkError);
gMain.savedCallback = CB2_LinkError;
diff --git a/src/list_menu.c b/src/list_menu.c
index 3bcd3073d..6d51559f7 100644
--- a/src/list_menu.c
+++ b/src/list_menu.c
@@ -324,7 +324,7 @@ s32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const str
case 2:
LoadUserWindowBorderGfx(sMysteryGiftLinkMenu.windowId, tileNum, palNum);
case 1:
- sub_8098858(sMysteryGiftLinkMenu.windowId, tileNum, palNum / 16);
+ DrawTextBorderOuter(sMysteryGiftLinkMenu.windowId, tileNum, palNum / 16);
break;
}
gMultiuseListMenuTemplate = *listMenuTemplate;
diff --git a/src/main_menu.c b/src/main_menu.c
index cbd257cb1..8c9612c24 100644
--- a/src/main_menu.c
+++ b/src/main_menu.c
@@ -38,6 +38,7 @@
#include "text_window.h"
#include "title_screen.h"
#include "window.h"
+#include "mystery_gift.h"
/*
* Main menu state machine
@@ -1083,7 +1084,7 @@ static void Task_HandleMainMenuAPressed(u8 taskId)
DestroyTask(taskId);
break;
case ACTION_EREADER:
- SetMainCallback2(sub_801867C);
+ SetMainCallback2(c2_ereader);
DestroyTask(taskId);
break;
case ACTION_INVALID:
diff --git a/src/menu.c b/src/menu.c
index b04572b81..958788b25 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -432,7 +432,7 @@ void sub_819789C(void)
LoadPalette(gUnknown_0860F074, STD_WINDOW_PALETTE_NUM * 0x10, 0x14);
}
-void sub_81978B0(u16 offset)
+void Menu_LoadStdPalAt(u16 offset)
{
LoadPalette(gUnknown_0860F074, offset, 0x14);
}
diff --git a/src/mevent2.c b/src/mevent2.c
index 8a6bd9faa..4174c4055 100755
--- a/src/mevent2.c
+++ b/src/mevent2.c
@@ -14,7 +14,7 @@
static EWRAM_DATA bool32 gUnknown_02022C70 = FALSE;
static void sub_801B180(void);
-static void sub_801B14C(void);
+static void s_DestroyWonderNews(void);
static bool32 sub_801B114(const struct MEventBuffer_3120_Sub *data);
static bool32 sub_801B2CC(const struct MEventBuffer_32E0_Sub *data);
static void sub_801B330(void);
@@ -29,7 +29,7 @@ void sub_801AFD8(void)
sub_811F8BC();
}
-struct MEventBuffer_3120_Sub *sub_801B00C(void)
+struct MEventBuffer_3120_Sub *sav1_get_mevent_buffer_0(void)
{
return &gSaveBlock1Ptr->unk_322C.buffer_000.data;
}
@@ -54,9 +54,9 @@ u16 *sub_801B058(void)
return gSaveBlock1Ptr->unk_322C.unk_338;
}
-void sub_801B06C(void)
+void DestroyWonderNews(void)
{
- sub_801B14C();
+ s_DestroyWonderNews();
}
bool32 sub_801B078(const struct MEventBuffer_3120_Sub *src)
@@ -64,13 +64,13 @@ bool32 sub_801B078(const struct MEventBuffer_3120_Sub *src)
if (!sub_801B114(src))
return FALSE;
- sub_801B14C();
+ s_DestroyWonderNews();
gSaveBlock1Ptr->unk_322C.buffer_000.data = *src;
gSaveBlock1Ptr->unk_322C.buffer_000.crc = CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.buffer_000.data, sizeof(struct MEventBuffer_3120_Sub));
return TRUE;
}
-bool32 sub_801B0CC(void)
+bool32 ValidateReceivedWonderNews(void)
{
if (CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.buffer_000.data, sizeof(struct MEventBuffer_3120_Sub)) != gSaveBlock1Ptr->unk_322C.buffer_000.crc)
return FALSE;
@@ -88,7 +88,7 @@ static bool32 sub_801B114(const struct MEventBuffer_3120_Sub *data)
return TRUE;
}
-bool32 sub_801B128(void)
+bool32 WonderNews_Test_Unk_02(void)
{
const struct MEventBuffer_3120_Sub *data = &gSaveBlock1Ptr->unk_322C.buffer_000.data;
if (data->unk_02 == 0)
@@ -97,9 +97,9 @@ bool32 sub_801B128(void)
return TRUE;
}
-static void sub_801B14C(void)
+static void s_DestroyWonderNews(void)
{
- CpuFill32(0, sub_801B00C(), sizeof(gSaveBlock1Ptr->unk_322C.buffer_000.data));
+ CpuFill32(0, sav1_get_mevent_buffer_0(), sizeof(gSaveBlock1Ptr->unk_322C.buffer_000.data));
gSaveBlock1Ptr->unk_322C.buffer_000.crc = 0;
}
@@ -113,7 +113,7 @@ bool32 sub_801B1A4(const u8 *src)
{
const u8 *r5 = (const u8 *)&gSaveBlock1Ptr->unk_322C.buffer_000.data;
u32 i;
- if (!sub_801B0CC())
+ if (!ValidateReceivedWonderNews())
return FALSE;
for (i = 0; i < sizeof(struct MEventBuffer_3120_Sub); i++)
@@ -125,7 +125,7 @@ bool32 sub_801B1A4(const u8 *src)
return TRUE;
}
-void sub_801B1E8(void)
+void DestroyWonderCard(void)
{
sub_801B330();
sub_801B368();
@@ -143,7 +143,7 @@ bool32 sub_801B21C(const struct MEventBuffer_32E0_Sub *data)
if (!sub_801B2CC(data))
return FALSE;
- sub_801B1E8();
+ DestroyWonderCard();
memcpy(&gSaveBlock1Ptr->unk_322C.buffer_1c0.data, data, sizeof(struct MEventBuffer_32E0_Sub));
gSaveBlock1Ptr->unk_322C.buffer_1c0.crc = CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.buffer_1c0.data, sizeof(struct MEventBuffer_32E0_Sub));
r2 = &gSaveBlock1Ptr->unk_322C.buffer_310.data;
@@ -152,7 +152,7 @@ bool32 sub_801B21C(const struct MEventBuffer_32E0_Sub *data)
return TRUE;
}
-bool32 sub_801B27C(void)
+bool32 ValidateReceivedWonderCard(void)
{
if (gSaveBlock1Ptr->unk_322C.buffer_1c0.crc != CalcCRC16WithTable((void *)&gSaveBlock1Ptr->unk_322C.buffer_1c0.data, sizeof(struct MEventBuffer_32E0_Sub)))
return FALSE;
@@ -180,7 +180,7 @@ static bool32 sub_801B2CC(const struct MEventBuffer_32E0_Sub *data)
return TRUE;
}
-bool32 sub_801B308(void)
+bool32 WonderCard_Test_Unk_08_6(void)
{
const struct MEventBuffer_32E0_Sub *data = &gSaveBlock1Ptr->unk_322C.buffer_1c0.data;
if (data->unk_08_6 == 0)
@@ -201,9 +201,9 @@ static void sub_801B368(void)
gSaveBlock1Ptr->unk_322C.buffer_310.crc = 0;
}
-u16 sub_801B39C(void)
+u16 GetWonderCardFlagID(void)
{
- if (sub_801B27C())
+ if (ValidateReceivedWonderCard())
return gSaveBlock1Ptr->unk_322C.buffer_1c0.data.unk_00;
return 0;
@@ -215,7 +215,7 @@ void sub_801B3C0(struct MEventBuffer_32E0_Sub *buffer)
buffer->unk_08_6 = 0;
}
-static bool32 sub_801B3D8(u16 a0)
+static bool32 IsWonderCardFlagIDInValidRange(u16 a0)
{
if (a0 >= 1000 && a0 < 1020)
return TRUE;
@@ -247,10 +247,10 @@ static const u16 sMysteryGiftFlags[] =
FLAG_UNUSED_MYSTERY_GIFT_0x14D,
};
-bool32 sub_801B3F8(void)
+bool32 CheckReceivedGiftFromWonderCard(void)
{
- u16 value = sub_801B39C();
- if (!sub_801B3D8(value))
+ u16 value = GetWonderCardFlagID();
+ if (!IsWonderCardFlagIDInValidRange(value))
return FALSE;
if (FlagGet(sMysteryGiftFlags[value - 1000]) == TRUE)
@@ -300,7 +300,7 @@ static bool32 sub_801B4A4(const u16 *data)
static int sub_801B4CC(void)
{
struct MEventBuffer_32E0_Sub *data;
- if (!sub_801B27C())
+ if (!ValidateReceivedWonderCard())
return 0;
data = &gSaveBlock1Ptr->unk_322C.buffer_1c0.data;
@@ -353,7 +353,7 @@ void sub_801B580(struct MEventStruct_Unk1442CC *data, bool32 a1)
data->unk_10 = 0x0200;
}
- if (sub_801B27C())
+ if (ValidateReceivedWonderCard())
{
data->unk_14 = sav1_get_mevent_buffer_1()->unk_00;
data->unk_20 = *sav1_get_mevent_buffer_2();
@@ -554,7 +554,7 @@ bool32 sub_801B94C(u16 a0)
if (a0 == 0)
return FALSE;
- if (!sub_801B27C())
+ if (!ValidateReceivedWonderCard())
return FALSE;
if (gSaveBlock1Ptr->unk_322C.buffer_1c0.data.unk_00 != a0)
diff --git a/src/mevent_801BAAC.c b/src/mevent_801BAAC.c
index b9931a682..24a999f69 100644
--- a/src/mevent_801BAAC.c
+++ b/src/mevent_801BAAC.c
@@ -53,7 +53,7 @@ struct UnkStruct_203F3C8
/*045C*/ u8 buffer_045C[0x1000];
};
-EWRAM_DATA struct UnkStruct_203F3C8 * gUnknown_02022C74 = NULL;
+EWRAM_DATA struct UnkStruct_203F3C8 * sWonderCardData = NULL;
void sub_801BEF8(void);
void sub_801C178(u8 whichWindow);
@@ -150,40 +150,40 @@ const struct UnkStruct_8467FB8 gUnknown_082F1D60[8] = {
{1, 0, 0, 7, gWonderCardBgGfx8, gWonderCardBgTilemap8, gWonderCardBgPal8}
};
-bool32 sub_801BAAC(struct MEventBuffer_32E0_Sub * r5, struct MEventBuffer_3430_Sub * r6)
+bool32 InitWonderCardResources(struct MEventBuffer_32E0_Sub * r5, struct MEventBuffer_3430_Sub * r6)
{
if (r5 == NULL || r6 == NULL)
return FALSE;
- gUnknown_02022C74 = AllocZeroed(sizeof(struct UnkStruct_203F3C8));
- if (gUnknown_02022C74 == NULL)
+ sWonderCardData = AllocZeroed(sizeof(struct UnkStruct_203F3C8));
+ if (sWonderCardData == NULL)
return FALSE;
- gUnknown_02022C74->unk_0000 = *r5;
- gUnknown_02022C74->unk_014C = *r6;
- if (gUnknown_02022C74->unk_0000.unk_08_2 >= ARRAY_COUNT(gUnknown_082F1D60))
- gUnknown_02022C74->unk_0000.unk_08_2 = 0;
- if (gUnknown_02022C74->unk_0000.unk_08_0 >= ARRAY_COUNT(gUnknown_082F0E18))
- gUnknown_02022C74->unk_0000.unk_08_0 = 0;
- if (gUnknown_02022C74->unk_0000.unk_09 > ARRAY_COUNT(gUnknown_02022C74->unk_017D))
- gUnknown_02022C74->unk_0000.unk_09 = 0;
- gUnknown_02022C74->unk_0170 = &gUnknown_082F1D60[gUnknown_02022C74->unk_0000.unk_08_2];
+ sWonderCardData->unk_0000 = *r5;
+ sWonderCardData->unk_014C = *r6;
+ if (sWonderCardData->unk_0000.unk_08_2 >= ARRAY_COUNT(gUnknown_082F1D60))
+ sWonderCardData->unk_0000.unk_08_2 = 0;
+ if (sWonderCardData->unk_0000.unk_08_0 >= ARRAY_COUNT(gUnknown_082F0E18))
+ sWonderCardData->unk_0000.unk_08_0 = 0;
+ if (sWonderCardData->unk_0000.unk_09 > ARRAY_COUNT(sWonderCardData->unk_017D))
+ sWonderCardData->unk_0000.unk_09 = 0;
+ sWonderCardData->unk_0170 = &gUnknown_082F1D60[sWonderCardData->unk_0000.unk_08_2];
return TRUE;
}
-void sub_801BB48(void)
+void DestroyWonderCardResources(void)
{
- if (gUnknown_02022C74 != NULL)
+ if (sWonderCardData != NULL)
{
- *gUnknown_02022C74 = (struct UnkStruct_203F3C8){};
- Free(gUnknown_02022C74);
- gUnknown_02022C74 = NULL;
+ *sWonderCardData = (struct UnkStruct_203F3C8){};
+ Free(sWonderCardData);
+ sWonderCardData = NULL;
}
}
-s32 sub_801BB74(void)
+s32 FadeToWonderCardMenu(void)
{
- if (gUnknown_02022C74 == NULL)
+ if (sWonderCardData == NULL)
return -1;
- switch(gUnknown_02022C74->unk_0174)
+ switch(sWonderCardData->unk_0174)
{
case 0:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
@@ -199,19 +199,19 @@ s32 sub_801BB74(void)
CopyBgTilemapBufferToVram(0);
CopyBgTilemapBufferToVram(1);
CopyBgTilemapBufferToVram(2);
- decompress_and_copy_tile_data_to_vram(2, gUnknown_02022C74->unk_0170->tiles, 0, 0x008, 0);
- gUnknown_02022C74->unk_0176[0] = AddWindow(&gUnknown_082F0E1C[0]);
- gUnknown_02022C74->unk_0176[1] = AddWindow(&gUnknown_082F0E1C[1]);
- gUnknown_02022C74->unk_0176[2] = AddWindow(&gUnknown_082F0E1C[2]);
+ decompress_and_copy_tile_data_to_vram(2, sWonderCardData->unk_0170->tiles, 0, 0x008, 0);
+ sWonderCardData->unk_0176[0] = AddWindow(&gUnknown_082F0E1C[0]);
+ sWonderCardData->unk_0176[1] = AddWindow(&gUnknown_082F0E1C[1]);
+ sWonderCardData->unk_0176[2] = AddWindow(&gUnknown_082F0E1C[2]);
break;
case 3:
if (free_temp_tile_data_buffers_if_possible())
return 0;
LoadPalette(stdpal_get(1), 0x20, 0x20);
gPaletteFade.bufferTransferDisabled = TRUE;
- LoadPalette(gUnknown_02022C74->unk_0170->pal, 0x10, 0x20);
- LZ77UnCompWram(gUnknown_02022C74->unk_0170->map, gUnknown_02022C74->buffer_045C);
- CopyRectToBgTilemapBufferRect(2, gUnknown_02022C74->buffer_045C, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0);
+ LoadPalette(sWonderCardData->unk_0170->pal, 0x10, 0x20);
+ LZ77UnCompWram(sWonderCardData->unk_0170->map, sWonderCardData->buffer_045C);
+ CopyRectToBgTilemapBufferRect(2, sWonderCardData->buffer_045C, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0);
CopyBgTilemapBufferToVram(2);
break;
case 4:
@@ -237,18 +237,18 @@ s32 sub_801BB74(void)
default:
if (UpdatePaletteFade())
return 0;
- gUnknown_02022C74->unk_0174 = 0;
+ sWonderCardData->unk_0174 = 0;
return 1;
}
- ++gUnknown_02022C74->unk_0174;
+ ++sWonderCardData->unk_0174;
return 0;
}
-s32 sub_801BDA4(bool32 flag)
+s32 FadeOutFromWonderCard(bool32 flag)
{
- if (gUnknown_02022C74 == NULL)
+ if (sWonderCardData == NULL)
return -1;
- switch (gUnknown_02022C74->unk_0174)
+ switch (sWonderCardData->unk_0174)
{
case 0:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
@@ -268,26 +268,26 @@ s32 sub_801BDA4(bool32 flag)
case 3:
HideBg(1);
HideBg(2);
- RemoveWindow(gUnknown_02022C74->unk_0176[2]);
- RemoveWindow(gUnknown_02022C74->unk_0176[1]);
- RemoveWindow(gUnknown_02022C74->unk_0176[0]);
+ RemoveWindow(sWonderCardData->unk_0176[2]);
+ RemoveWindow(sWonderCardData->unk_0176[1]);
+ RemoveWindow(sWonderCardData->unk_0176[0]);
break;
case 4:
sub_801C61C();
FreeMonIconPalettes();
break;
case 5:
- sub_80186EC(gUnknown_02022C60, flag);
+ PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag);
CopyBgTilemapBufferToVram(0);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0);
break;
default:
if (UpdatePaletteFade())
return 0;
- gUnknown_02022C74->unk_0174 = 0;
+ sWonderCardData->unk_0174 = 0;
return 1;
}
- ++gUnknown_02022C74->unk_0174;
+ ++sWonderCardData->unk_0174;
return 0;
}
@@ -297,59 +297,59 @@ void sub_801BEF8(void)
u16 r6;
u16 sp0[3] = {0, 0, 0};
- memcpy(gUnknown_02022C74->unk_018B, gUnknown_02022C74->unk_0000.unk_0A, 40);
- gUnknown_02022C74->unk_018B[40] = EOS;
- memcpy(gUnknown_02022C74->unk_01B4, gUnknown_02022C74->unk_0000.unk_32, 40);
- gUnknown_02022C74->unk_01B4[40] = EOS;
- if (gUnknown_02022C74->unk_0000.unk_04 > 999999)
- gUnknown_02022C74->unk_0000.unk_04 = 999999;
- ConvertIntToDecimalStringN(gUnknown_02022C74->unk_01DD, gUnknown_02022C74->unk_0000.unk_04, STR_CONV_MODE_LEFT_ALIGN, 6);
+ memcpy(sWonderCardData->unk_018B, sWonderCardData->unk_0000.unk_0A, 40);
+ sWonderCardData->unk_018B[40] = EOS;
+ memcpy(sWonderCardData->unk_01B4, sWonderCardData->unk_0000.unk_32, 40);
+ sWonderCardData->unk_01B4[40] = EOS;
+ if (sWonderCardData->unk_0000.unk_04 > 999999)
+ sWonderCardData->unk_0000.unk_04 = 999999;
+ ConvertIntToDecimalStringN(sWonderCardData->unk_01DD, sWonderCardData->unk_0000.unk_04, STR_CONV_MODE_LEFT_ALIGN, 6);
for (i = 0; i < 4; i++)
{
- memcpy(gUnknown_02022C74->unk_01E4[i], gUnknown_02022C74->unk_0000.unk_5A[i], 40);
- gUnknown_02022C74->unk_01E4[i][40] = EOS;
+ memcpy(sWonderCardData->unk_01E4[i], sWonderCardData->unk_0000.unk_5A[i], 40);
+ sWonderCardData->unk_01E4[i][40] = EOS;
}
- memcpy(gUnknown_02022C74->unk_0288, gUnknown_02022C74->unk_0000.unk_FA, 40);
- gUnknown_02022C74->unk_0288[40] = EOS;
- switch (gUnknown_02022C74->unk_0000.unk_08_0)
+ memcpy(sWonderCardData->unk_0288, sWonderCardData->unk_0000.unk_FA, 40);
+ sWonderCardData->unk_0288[40] = EOS;
+ switch (sWonderCardData->unk_0000.unk_08_0)
{
case 0:
- memcpy(gUnknown_02022C74->unk_02B1, gUnknown_02022C74->unk_0000.unk_122, 40);
- gUnknown_02022C74->unk_02B1[40] = EOS;
+ memcpy(sWonderCardData->unk_02B1, sWonderCardData->unk_0000.unk_122, 40);
+ sWonderCardData->unk_02B1[40] = EOS;
break;
case 1:
- gUnknown_02022C74->unk_02B1[00] = EOS;
+ sWonderCardData->unk_02B1[00] = EOS;
break;
case 2:
- gUnknown_02022C74->unk_02B1[00] = EOS;
- sp0[0] = gUnknown_02022C74->unk_014C.unk_00 < 999 ? gUnknown_02022C74->unk_014C.unk_00 : 999;
- sp0[1] = gUnknown_02022C74->unk_014C.unk_02 < 999 ? gUnknown_02022C74->unk_014C.unk_02 : 999;
- sp0[2] = gUnknown_02022C74->unk_014C.unk_04 < 999 ? gUnknown_02022C74->unk_014C.unk_04 : 999;
+ sWonderCardData->unk_02B1[00] = EOS;
+ sp0[0] = sWonderCardData->unk_014C.unk_00 < 999 ? sWonderCardData->unk_014C.unk_00 : 999;
+ sp0[1] = sWonderCardData->unk_014C.unk_02 < 999 ? sWonderCardData->unk_014C.unk_02 : 999;
+ sp0[2] = sWonderCardData->unk_014C.unk_04 < 999 ? sWonderCardData->unk_014C.unk_04 : 999;
for (i = 0; i < 8; i++)
{
- memset(gUnknown_02022C74->unk_02DC[i].unk_42, EOS, 4);
- memset(gUnknown_02022C74->unk_02DC[i].unk_01, EOS, 41);
+ memset(sWonderCardData->unk_02DC[i].unk_42, EOS, 4);
+ memset(sWonderCardData->unk_02DC[i].unk_01, EOS, 41);
}
for (i = 0, r6 = 0; i < 40; i++)
{
- if (gUnknown_02022C74->unk_0000.unk_122[i] != 0xF7)
+ if (sWonderCardData->unk_0000.unk_122[i] != 0xF7)
{
- gUnknown_02022C74->unk_02DC[gUnknown_02022C74->unk_0175].unk_01[r6] = gUnknown_02022C74->unk_0000.unk_122[i];
+ sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_01[r6] = sWonderCardData->unk_0000.unk_122[i];
r6++;
}
else
{
- u8 r3 = gUnknown_02022C74->unk_0000.unk_122[i + 1];
+ u8 r3 = sWonderCardData->unk_0000.unk_122[i + 1];
if (r3 > 2)
{
i += 2;
}
else
{
- ConvertIntToDecimalStringN(gUnknown_02022C74->unk_02DC[gUnknown_02022C74->unk_0175].unk_42, sp0[r3], STR_CONV_MODE_LEADING_ZEROS, 3);
- gUnknown_02022C74->unk_02DC[gUnknown_02022C74->unk_0175].unk_00 = gUnknown_02022C74->unk_0000.unk_122[i + 2];
- gUnknown_02022C74->unk_0175++;
- if (gUnknown_02022C74->unk_0175 > 7)
+ ConvertIntToDecimalStringN(sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_42, sp0[r3], STR_CONV_MODE_LEADING_ZEROS, 3);
+ sWonderCardData->unk_02DC[sWonderCardData->unk_0175].unk_00 = sWonderCardData->unk_0000.unk_122[i + 2];
+ sWonderCardData->unk_0175++;
+ if (sWonderCardData->unk_0175 > 7)
break;
r6 = 0;
i += 2;
@@ -362,7 +362,7 @@ void sub_801BEF8(void)
void sub_801C178(u8 whichWindow)
{
s8 sp0C = 0;
- s32 windowId = gUnknown_02022C74->unk_0176[whichWindow];
+ s32 windowId = sWonderCardData->unk_0176[whichWindow];
PutWindowTilemap(windowId);
FillWindowPixelBuffer(windowId, 0);
switch (whichWindow)
@@ -370,42 +370,42 @@ void sub_801C178(u8 whichWindow)
case 0:
{
s32 x;
- AddTextPrinterParameterized3(windowId, 3, 0, 1, gUnknown_082F0E10[gUnknown_02022C74->unk_0170->textPal1], 0, gUnknown_02022C74->unk_018B);
- x = 160 - GetStringWidth(3, gUnknown_02022C74->unk_01B4, GetFontAttribute(3, 2));
+ AddTextPrinterParameterized3(windowId, 3, 0, 1, gUnknown_082F0E10[sWonderCardData->unk_0170->textPal1], 0, sWonderCardData->unk_018B);
+ x = 160 - GetStringWidth(3, sWonderCardData->unk_01B4, GetFontAttribute(3, 2));
if (x < 0)
x = 0;
- AddTextPrinterParameterized3(windowId, 3, x, 17, gUnknown_082F0E10[gUnknown_02022C74->unk_0170->textPal1], 0, gUnknown_02022C74->unk_01B4);
- if (gUnknown_02022C74->unk_0000.unk_04 != 0)
+ AddTextPrinterParameterized3(windowId, 3, x, 17, gUnknown_082F0E10[sWonderCardData->unk_0170->textPal1], 0, sWonderCardData->unk_01B4);
+ if (sWonderCardData->unk_0000.unk_04 != 0)
{
- AddTextPrinterParameterized3(windowId, 1, 166, 17, gUnknown_082F0E10[gUnknown_02022C74->unk_0170->textPal1], 0, gUnknown_02022C74->unk_01DD);
+ AddTextPrinterParameterized3(windowId, 1, 166, 17, gUnknown_082F0E10[sWonderCardData->unk_0170->textPal1], 0, sWonderCardData->unk_01DD);
}
break;
}
case 1:
for (; sp0C < 4; sp0C++)
{
- AddTextPrinterParameterized3(windowId, 3, 0, 16 * sp0C + 2, gUnknown_082F0E10[gUnknown_02022C74->unk_0170->textPal2], 0, gUnknown_02022C74->unk_01E4[sp0C]);
+ AddTextPrinterParameterized3(windowId, 3, 0, 16 * sp0C + 2, gUnknown_082F0E10[sWonderCardData->unk_0170->textPal2], 0, sWonderCardData->unk_01E4[sp0C]);
}
break;
case 2:
- AddTextPrinterParameterized3(windowId, 3, 0, gUnknown_082F0E18[gUnknown_02022C74->unk_0000.unk_08_0], gUnknown_082F0E10[gUnknown_02022C74->unk_0170->textPal3], 0, gUnknown_02022C74->unk_0288);
- if (gUnknown_02022C74->unk_0000.unk_08_0 != 2)
+ AddTextPrinterParameterized3(windowId, 3, 0, gUnknown_082F0E18[sWonderCardData->unk_0000.unk_08_0], gUnknown_082F0E10[sWonderCardData->unk_0170->textPal3], 0, sWonderCardData->unk_0288);
+ if (sWonderCardData->unk_0000.unk_08_0 != 2)
{
- AddTextPrinterParameterized3(windowId, 3, 0, 16 + gUnknown_082F0E18[gUnknown_02022C74->unk_0000.unk_08_0], gUnknown_082F0E10[gUnknown_02022C74->unk_0170->textPal3], 0, gUnknown_02022C74->unk_02B1);
+ AddTextPrinterParameterized3(windowId, 3, 0, 16 + gUnknown_082F0E18[sWonderCardData->unk_0000.unk_08_0], gUnknown_082F0E10[sWonderCardData->unk_0170->textPal3], 0, sWonderCardData->unk_02B1);
}
else
{
s32 x = 0;
- s32 y = gUnknown_082F0E18[gUnknown_02022C74->unk_0000.unk_08_0] + 16;
+ s32 y = gUnknown_082F0E18[sWonderCardData->unk_0000.unk_08_0] + 16;
s32 spacing = GetFontAttribute(3, 2);
- for (; sp0C < gUnknown_02022C74->unk_0175; sp0C++)
+ for (; sp0C < sWonderCardData->unk_0175; sp0C++)
{
- AddTextPrinterParameterized3(windowId, 3, x, y, gUnknown_082F0E10[gUnknown_02022C74->unk_0170->textPal3], 0, gUnknown_02022C74->unk_02DC[sp0C].unk_01);
- if (gUnknown_02022C74->unk_02DC[sp0C].unk_42[0] != EOS)
+ AddTextPrinterParameterized3(windowId, 3, x, y, gUnknown_082F0E10[sWonderCardData->unk_0170->textPal3], 0, sWonderCardData->unk_02DC[sp0C].unk_01);
+ if (sWonderCardData->unk_02DC[sp0C].unk_42[0] != EOS)
{
- x += GetStringWidth(3, gUnknown_02022C74->unk_02DC[sp0C].unk_01, spacing);
- AddTextPrinterParameterized3(windowId, 3, x, y, gUnknown_082F0E10[gUnknown_02022C74->unk_0170->textPal3], 0, gUnknown_02022C74->unk_02DC[sp0C].unk_42);
- x += GetStringWidth(3, gUnknown_02022C74->unk_02DC[sp0C].unk_42, spacing) + gUnknown_02022C74->unk_02DC[sp0C].unk_00;
+ x += GetStringWidth(3, sWonderCardData->unk_02DC[sp0C].unk_01, spacing);
+ AddTextPrinterParameterized3(windowId, 3, x, y, gUnknown_082F0E10[sWonderCardData->unk_0170->textPal3], 0, sWonderCardData->unk_02DC[sp0C].unk_42);
+ x += GetStringWidth(3, sWonderCardData->unk_02DC[sp0C].unk_42, spacing) + sWonderCardData->unk_02DC[sp0C].unk_00;
}
}
}
@@ -417,24 +417,24 @@ void sub_801C178(u8 whichWindow)
void sub_801C4C0(void)
{
u8 r7 = 0;
- gUnknown_02022C74->unk_017C = 0xFF;
- if (gUnknown_02022C74->unk_014C.unk_06 != SPECIES_NONE)
+ sWonderCardData->unk_017C = 0xFF;
+ if (sWonderCardData->unk_014C.unk_06 != SPECIES_NONE)
{
- gUnknown_02022C74->unk_017C = sub_80D2D78(sub_80D2E84(gUnknown_02022C74->unk_014C.unk_06), SpriteCallbackDummy, 0xDC, 0x14, 0, FALSE);
- gSprites[gUnknown_02022C74->unk_017C].oam.priority = 2;
+ sWonderCardData->unk_017C = sub_80D2D78(sub_80D2E84(sWonderCardData->unk_014C.unk_06), SpriteCallbackDummy, 0xDC, 0x14, 0, FALSE);
+ gSprites[sWonderCardData->unk_017C].oam.priority = 2;
}
- if (gUnknown_02022C74->unk_0000.unk_09 != 0 && gUnknown_02022C74->unk_0000.unk_08_0 == 1)
+ if (sWonderCardData->unk_0000.unk_09 != 0 && sWonderCardData->unk_0000.unk_08_0 == 1)
{
LoadCompressedSpriteSheetUsingHeap(&gUnknown_082F1D00);
- LoadSpritePalette(&gUnknown_082F1D08[gUnknown_02022C74->unk_0170->textPal4]);
- for (; r7 < gUnknown_02022C74->unk_0000.unk_09; r7++)
+ LoadSpritePalette(&gUnknown_082F1D08[sWonderCardData->unk_0170->textPal4]);
+ for (; r7 < sWonderCardData->unk_0000.unk_09; r7++)
{
- gUnknown_02022C74->unk_017D[r7][0] = 0xFF;
- gUnknown_02022C74->unk_017D[r7][1] = 0xFF;
- gUnknown_02022C74->unk_017D[r7][0] = CreateSprite(&gUnknown_082F1D48, 0xd8 - 32 * r7, 0x90, 8);
- if (gUnknown_02022C74->unk_014C.unk_08[0][r7] != 0)
+ sWonderCardData->unk_017D[r7][0] = 0xFF;
+ sWonderCardData->unk_017D[r7][1] = 0xFF;
+ sWonderCardData->unk_017D[r7][0] = CreateSprite(&gUnknown_082F1D48, 0xd8 - 32 * r7, 0x90, 8);
+ if (sWonderCardData->unk_014C.unk_08[0][r7] != 0)
{
- gUnknown_02022C74->unk_017D[r7][1] = sub_80D2D78(sub_80D2E84(gUnknown_02022C74->unk_014C.unk_08[0][r7]), SpriteCallbackDummy, 0xd8 - 32 * r7, 0x88, 0, 0);
+ sWonderCardData->unk_017D[r7][1] = sub_80D2D78(sub_80D2E84(sWonderCardData->unk_014C.unk_08[0][r7]), SpriteCallbackDummy, 0xd8 - 32 * r7, 0x88, 0, 0);
}
}
}
@@ -443,19 +443,19 @@ void sub_801C4C0(void)
void sub_801C61C(void)
{
u8 r6 = 0;
- if (gUnknown_02022C74->unk_017C != 0xFF)
- sub_80D2EF8(&gSprites[gUnknown_02022C74->unk_017C]);
- if (gUnknown_02022C74->unk_0000.unk_09 != 0 && gUnknown_02022C74->unk_0000.unk_08_0 == 1)
+ if (sWonderCardData->unk_017C != 0xFF)
+ sub_80D2EF8(&gSprites[sWonderCardData->unk_017C]);
+ if (sWonderCardData->unk_0000.unk_09 != 0 && sWonderCardData->unk_0000.unk_08_0 == 1)
{
- for (; r6 < gUnknown_02022C74->unk_0000.unk_09; r6++)
+ for (; r6 < sWonderCardData->unk_0000.unk_09; r6++)
{
- if (gUnknown_02022C74->unk_017D[r6][0] != 0xFF)
+ if (sWonderCardData->unk_017D[r6][0] != 0xFF)
{
- DestroySprite(&gSprites[gUnknown_02022C74->unk_017D[r6][0]]);
+ DestroySprite(&gSprites[sWonderCardData->unk_017D[r6][0]]);
}
- if (gUnknown_02022C74->unk_017D[r6][1] != 0xFF)
+ if (sWonderCardData->unk_017D[r6][1] != 0xFF)
{
- sub_80D2EF8(&gSprites[gUnknown_02022C74->unk_017D[r6][1]]);
+ sub_80D2EF8(&gSprites[sWonderCardData->unk_017D[r6][1]]);
}
}
FreeSpriteTilesByTag(0x8000);
@@ -484,7 +484,7 @@ struct UnkStruct_203F3CC
/*03a4*/ u8 buffer_03A4[0x1000];
};
-EWRAM_DATA struct UnkStruct_203F3CC * gUnknown_02022C78 = NULL;
+EWRAM_DATA struct UnkStruct_203F3CC * sWonderNewsData = NULL;
void sub_801CDCC(void);
void sub_801CE7C(void);
@@ -542,37 +542,37 @@ const struct UnkStruct_8467FB8 gUnknown_082F24C8[] = {
{1, 0, 0, 0, gWonderNewsGfx8, gWonderNewsTilemap8, gWonderNewsPal8}
};
-bool32 sub_801C6C8(const struct MEventBuffer_3120_Sub * a0)
+bool32 InitWonderNewsResources(const struct MEventBuffer_3120_Sub * a0)
{
if (a0 == NULL)
return FALSE;
- gUnknown_02022C78 = AllocZeroed(sizeof(struct UnkStruct_203F3CC));
- if (gUnknown_02022C78 == NULL)
+ sWonderNewsData = AllocZeroed(sizeof(struct UnkStruct_203F3CC));
+ if (sWonderNewsData == NULL)
return FALSE;
- gUnknown_02022C78->unk_0000 = *a0;
- if (gUnknown_02022C78->unk_0000.unk_03 >= ARRAY_COUNT(gUnknown_082F24C8))
- gUnknown_02022C78->unk_0000.unk_03 = 0;
- gUnknown_02022C78->unk_01BC = &gUnknown_082F24C8[gUnknown_02022C78->unk_0000.unk_03];
- gUnknown_02022C78->unk_01C1 = 0xFF;
+ sWonderNewsData->unk_0000 = *a0;
+ if (sWonderNewsData->unk_0000.unk_03 >= ARRAY_COUNT(gUnknown_082F24C8))
+ sWonderNewsData->unk_0000.unk_03 = 0;
+ sWonderNewsData->unk_01BC = &gUnknown_082F24C8[sWonderNewsData->unk_0000.unk_03];
+ sWonderNewsData->unk_01C1 = 0xFF;
return TRUE;
}
-void sub_801C72C(void)
+void DestroyWonderNewsResources(void)
{
- if (gUnknown_02022C78 != NULL)
+ if (sWonderNewsData != NULL)
{
- *gUnknown_02022C78 = (struct UnkStruct_203F3CC){};
- Free(gUnknown_02022C78);
- gUnknown_02022C78 = NULL;
+ *sWonderNewsData = (struct UnkStruct_203F3CC){};
+ Free(sWonderNewsData);
+ sWonderNewsData = NULL;
}
}
-s32 sub_801C758(void)
+s32 FadeToWonderNewsMenu(void)
{
- if (gUnknown_02022C78 == NULL)
+ if (sWonderNewsData == NULL)
return -1;
- switch (gUnknown_02022C78->unk_01C0_1)
+ switch (sWonderNewsData->unk_01C0_1)
{
case 0:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
@@ -599,19 +599,19 @@ s32 sub_801C758(void)
CopyBgTilemapBufferToVram(1);
CopyBgTilemapBufferToVram(2);
CopyBgTilemapBufferToVram(3);
- decompress_and_copy_tile_data_to_vram(3, gUnknown_02022C78->unk_01BC->tiles, 0, 8, 0);
- gUnknown_02022C78->unk_01C8[0] = AddWindow(&gUnknown_082F1DE8[0]);
- gUnknown_02022C78->unk_01C8[1] = AddWindow(&gUnknown_082F1DE8[1]);
+ decompress_and_copy_tile_data_to_vram(3, sWonderNewsData->unk_01BC->tiles, 0, 8, 0);
+ sWonderNewsData->unk_01C8[0] = AddWindow(&gUnknown_082F1DE8[0]);
+ sWonderNewsData->unk_01C8[1] = AddWindow(&gUnknown_082F1DE8[1]);
break;
case 3:
if (free_temp_tile_data_buffers_if_possible())
return 0;
LoadPalette(stdpal_get(1), 0x20, 0x20);
gPaletteFade.bufferTransferDisabled = TRUE;
- LoadPalette(gUnknown_02022C78->unk_01BC->pal, 0x10, 0x20);
- LZ77UnCompWram(gUnknown_02022C78->unk_01BC->map, gUnknown_02022C78->buffer_03A4);
- CopyRectToBgTilemapBufferRect(1, gUnknown_02022C78->buffer_03A4, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0);
- CopyRectToBgTilemapBufferRect(3, gUnknown_02022C78->buffer_03A4, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0);
+ LoadPalette(sWonderNewsData->unk_01BC->pal, 0x10, 0x20);
+ LZ77UnCompWram(sWonderNewsData->unk_01BC->map, sWonderNewsData->buffer_03A4);
+ CopyRectToBgTilemapBufferRect(1, sWonderNewsData->buffer_03A4, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0);
+ CopyRectToBgTilemapBufferRect(3, sWonderNewsData->buffer_03A4, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0);
CopyBgTilemapBufferToVram(1);
CopyBgTilemapBufferToVram(3);
break;
@@ -628,26 +628,26 @@ s32 sub_801C758(void)
ShowBg(2);
ShowBg(3);
gPaletteFade.bufferTransferDisabled = FALSE;
- gUnknown_02022C78->unk_01C1 = AddScrollIndicatorArrowPair(&gUnknown_02022C78->unk_0394, &gUnknown_02022C78->unk_01C6);
+ sWonderNewsData->unk_01C1 = AddScrollIndicatorArrowPair(&sWonderNewsData->unk_0394, &sWonderNewsData->unk_01C6);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0);
UpdatePaletteFade();
break;
default:
if (UpdatePaletteFade())
return 0;
- gUnknown_02022C78->unk_01C0_1 = 0;
+ sWonderNewsData->unk_01C0_1 = 0;
return 1;
}
- ++gUnknown_02022C78->unk_01C0_1;
+ ++sWonderNewsData->unk_01C0_1;
return 0;
}
-s32 sub_801CA50(bool32 flag)
+s32 FadeOutFromWonderNews(bool32 flag)
{
- if (gUnknown_02022C78 == NULL)
+ if (sWonderNewsData == NULL)
return -1;
- switch (gUnknown_02022C78->unk_01C0_1)
+ switch (sWonderNewsData->unk_01C0_1)
{
case 0:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
@@ -675,21 +675,21 @@ s32 sub_801CA50(bool32 flag)
case 3:
HideBg(1);
HideBg(2);
- RemoveWindow(gUnknown_02022C78->unk_01C8[1]);
- RemoveWindow(gUnknown_02022C78->unk_01C8[0]);
+ RemoveWindow(sWonderNewsData->unk_01C8[1]);
+ RemoveWindow(sWonderNewsData->unk_01C8[0]);
break;
case 4:
ChangeBgY(2, 0, 0);
ChangeBgY(3, 0, 0);
- if (gUnknown_02022C78->unk_01C1 != 0xFF)
+ if (sWonderNewsData->unk_01C1 != 0xFF)
{
- RemoveScrollIndicatorArrowPair(gUnknown_02022C78->unk_01C1);
- gUnknown_02022C78->unk_01C1 = 0xFF;
+ RemoveScrollIndicatorArrowPair(sWonderNewsData->unk_01C1);
+ sWonderNewsData->unk_01C1 = 0xFF;
}
break;
case 5:
- sub_80186EC(gUnknown_02022C60, flag);
- sub_8018798(3);
+ PrintMysteryGiftOrEReaderTopMenu(gGiftIsFromEReader, flag);
+ MG_DrawCheckerboardPattern(3);
CopyBgTilemapBufferToVram(0);
CopyBgTilemapBufferToVram(3);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0);
@@ -697,36 +697,36 @@ s32 sub_801CA50(bool32 flag)
default:
if (UpdatePaletteFade())
return 0;
- gUnknown_02022C78->unk_01C0_1 = 0;
+ sWonderNewsData->unk_01C0_1 = 0;
return 1;
}
- ++gUnknown_02022C78->unk_01C0_1;
+ ++sWonderNewsData->unk_01C0_1;
return 0;
}
-void sub_801CC38(void)
+void MENews_RemoveScrollIndicatorArrowPair(void)
{
- if (!gUnknown_02022C78->unk_01C0_0 && gUnknown_02022C78->unk_01C1 != 0xFF)
+ if (!sWonderNewsData->unk_01C0_0 && sWonderNewsData->unk_01C1 != 0xFF)
{
- RemoveScrollIndicatorArrowPair(gUnknown_02022C78->unk_01C1);
- gUnknown_02022C78->unk_01C1 = 0xFF;
- gUnknown_02022C78->unk_01C0_0 = TRUE;
+ RemoveScrollIndicatorArrowPair(sWonderNewsData->unk_01C1);
+ sWonderNewsData->unk_01C1 = 0xFF;
+ sWonderNewsData->unk_01C0_0 = TRUE;
}
}
-void sub_801CC80(void)
+void MENews_AddScrollIndicatorArrowPair(void)
{
- if (gUnknown_02022C78->unk_01C0_0)
+ if (sWonderNewsData->unk_01C0_0)
{
- gUnknown_02022C78->unk_01C1 = AddScrollIndicatorArrowPair(&gUnknown_02022C78->unk_0394, &gUnknown_02022C78->unk_01C6);
- gUnknown_02022C78->unk_01C0_0 = FALSE;
+ sWonderNewsData->unk_01C1 = AddScrollIndicatorArrowPair(&sWonderNewsData->unk_0394, &sWonderNewsData->unk_01C6);
+ sWonderNewsData->unk_01C0_0 = FALSE;
}
}
-u32 sub_801CCD0(u16 input)
+u32 MENews_GetInput(u16 input)
{
- if (gUnknown_02022C78->unk_01C2_0)
+ if (sWonderNewsData->unk_01C2_0)
{
sub_801CFA4();
return 0xFF;
@@ -738,26 +738,26 @@ u32 sub_801CCD0(u16 input)
case B_BUTTON:
return 1;
case DPAD_UP:
- if (gUnknown_02022C78->unk_01C6 == 0)
+ if (sWonderNewsData->unk_01C6 == 0)
return 0xFF;
- if (gUnknown_02022C78->unk_01C0_0)
+ if (sWonderNewsData->unk_01C0_0)
return 0xFF;
- gUnknown_02022C78->unk_01C3_0 = FALSE;
+ sWonderNewsData->unk_01C3_0 = FALSE;
break;
case DPAD_DOWN:
- if (gUnknown_02022C78->unk_01C6 == gUnknown_02022C78->unk_01C4)
+ if (sWonderNewsData->unk_01C6 == sWonderNewsData->unk_01C4)
return 0xFF;
- if (gUnknown_02022C78->unk_01C0_0)
+ if (sWonderNewsData->unk_01C0_0)
return 0xFF;
- gUnknown_02022C78->unk_01C3_0 = TRUE;
+ sWonderNewsData->unk_01C3_0 = TRUE;
break;
default:
return 0xFF;
}
- gUnknown_02022C78->unk_01C2_0 = TRUE;
- gUnknown_02022C78->unk_01C2_1 = 2;
- gUnknown_02022C78->unk_01C3_1 = 0;
- if (gUnknown_02022C78->unk_01C3_0 == FALSE)
+ sWonderNewsData->unk_01C2_0 = TRUE;
+ sWonderNewsData->unk_01C2_1 = 2;
+ sWonderNewsData->unk_01C3_1 = 0;
+ if (sWonderNewsData->unk_01C3_0 == FALSE)
return 2;
else
return 3;
@@ -766,44 +766,44 @@ u32 sub_801CCD0(u16 input)
void sub_801CDCC(void)
{
u8 i = 0;
- memcpy(gUnknown_02022C78->unk_01CE, gUnknown_02022C78->unk_0000.unk_04, 40);
- gUnknown_02022C78->unk_01CE[40] = EOS;
+ memcpy(sWonderNewsData->unk_01CE, sWonderNewsData->unk_0000.unk_04, 40);
+ sWonderNewsData->unk_01CE[40] = EOS;
for (; i < 10; ++i)
{
- memcpy(gUnknown_02022C78->unk_01F7[i], gUnknown_02022C78->unk_0000.unk_2C[i], 40);
- gUnknown_02022C78->unk_01F7[i][40] = EOS;
- if (i > 7 && gUnknown_02022C78->unk_01F7[i][0] != EOS)
- ++gUnknown_02022C78->unk_01C4;
+ memcpy(sWonderNewsData->unk_01F7[i], sWonderNewsData->unk_0000.unk_2C[i], 40);
+ sWonderNewsData->unk_01F7[i][40] = EOS;
+ if (i > 7 && sWonderNewsData->unk_01F7[i][0] != EOS)
+ ++sWonderNewsData->unk_01C4;
}
- gUnknown_02022C78->unk_0394 = gUnknown_082F1DF8;
- gUnknown_02022C78->unk_0394.fullyDownThreshold = gUnknown_02022C78->unk_01C4;
+ sWonderNewsData->unk_0394 = gUnknown_082F1DF8;
+ sWonderNewsData->unk_0394.fullyDownThreshold = sWonderNewsData->unk_01C4;
}
void sub_801CE7C(void)
{
u8 i = 0;
s32 x;
- PutWindowTilemap(gUnknown_02022C78->unk_01C8[0]);
- PutWindowTilemap(gUnknown_02022C78->unk_01C8[1]);
- FillWindowPixelBuffer(gUnknown_02022C78->unk_01C8[0], 0);
- FillWindowPixelBuffer(gUnknown_02022C78->unk_01C8[1], 0);
- x = (0xe0 - GetStringWidth(3, gUnknown_02022C78->unk_01CE, GetFontAttribute(3, 2))) / 2;
+ PutWindowTilemap(sWonderNewsData->unk_01C8[0]);
+ PutWindowTilemap(sWonderNewsData->unk_01C8[1]);
+ FillWindowPixelBuffer(sWonderNewsData->unk_01C8[0], 0);
+ FillWindowPixelBuffer(sWonderNewsData->unk_01C8[1], 0);
+ x = (0xe0 - GetStringWidth(3, sWonderNewsData->unk_01CE, GetFontAttribute(3, 2))) / 2;
if (x < 0)
x = 0;
- AddTextPrinterParameterized3(gUnknown_02022C78->unk_01C8[0], 3, x, 6, gUnknown_082F1DE0[gUnknown_02022C78->unk_01BC->textPal1], 0, gUnknown_02022C78->unk_01CE);
+ AddTextPrinterParameterized3(sWonderNewsData->unk_01C8[0], 3, x, 6, gUnknown_082F1DE0[sWonderNewsData->unk_01BC->textPal1], 0, sWonderNewsData->unk_01CE);
for (; i < 10; ++i)
{
- AddTextPrinterParameterized3(gUnknown_02022C78->unk_01C8[1], 3, 0, 16 * i + 2, gUnknown_082F1DE0[gUnknown_02022C78->unk_01BC->textPal2], 0, gUnknown_02022C78->unk_01F7[i]);
+ AddTextPrinterParameterized3(sWonderNewsData->unk_01C8[1], 3, 0, 16 * i + 2, gUnknown_082F1DE0[sWonderNewsData->unk_01BC->textPal2], 0, sWonderNewsData->unk_01F7[i]);
}
- CopyWindowToVram(gUnknown_02022C78->unk_01C8[0], 3);
- CopyWindowToVram(gUnknown_02022C78->unk_01C8[1], 3);
+ CopyWindowToVram(sWonderNewsData->unk_01C8[0], 3);
+ CopyWindowToVram(sWonderNewsData->unk_01C8[1], 3);
}
void sub_801CFA4(void)
{
- u16 r4 = gUnknown_02022C78->unk_01C2_1;
+ u16 r4 = sWonderNewsData->unk_01C2_1;
r4 <<= 8;
- if (gUnknown_02022C78->unk_01C3_0)
+ if (sWonderNewsData->unk_01C3_0)
{
ChangeBgY(2, r4, 1);
ChangeBgY(3, r4, 1);
@@ -813,14 +813,14 @@ void sub_801CFA4(void)
ChangeBgY(2, r4, 2);
ChangeBgY(3, r4, 2);
}
- gUnknown_02022C78->unk_01C3_1 += gUnknown_02022C78->unk_01C2_1;
- if (gUnknown_02022C78->unk_01C3_1 > 15)
+ sWonderNewsData->unk_01C3_1 += sWonderNewsData->unk_01C2_1;
+ if (sWonderNewsData->unk_01C3_1 > 15)
{
- if (gUnknown_02022C78->unk_01C3_0)
- ++gUnknown_02022C78->unk_01C6;
+ if (sWonderNewsData->unk_01C3_0)
+ ++sWonderNewsData->unk_01C6;
else
- --gUnknown_02022C78->unk_01C6;
- gUnknown_02022C78->unk_01C2_0 = FALSE;
- gUnknown_02022C78->unk_01C3_1 = 0;
+ --sWonderNewsData->unk_01C6;
+ sWonderNewsData->unk_01C2_0 = FALSE;
+ sWonderNewsData->unk_01C3_1 = 0;
}
}
diff --git a/src/mevent_news.c b/src/mevent_news.c
index f5a061c84..192bb0fc7 100644
--- a/src/mevent_news.c
+++ b/src/mevent_news.c
@@ -10,7 +10,7 @@ static u32 sub_801DD44(struct MysteryEventStruct *);
static void sub_801DCD8(struct MysteryEventStruct *);
static void sub_801DCCC(struct MysteryEventStruct *);
-void sub_801DB68(u32 a0)
+void GenerateRandomNews(u32 a0)
{
struct MysteryEventStruct *r5 = sub_801B044();
@@ -59,7 +59,7 @@ u16 sub_801DC20(void)
struct MysteryEventStruct *r4 = sub_801B044();
u16 r5;
- if (!IsMysteryEventEnabled() || !sub_801B0CC())
+ if (!IsMysteryEventEnabled() || !ValidateReceivedWonderNews())
return 0;
r5 = sub_801DD44(r4);
diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c
index ad4a2e692..850b22d5b 100644
--- a/src/mystery_event_menu.c
+++ b/src/mystery_event_menu.c
@@ -94,7 +94,7 @@ void CB2_InitMysteryEventMenu(void)
FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x1E, 0x14);
LoadUserWindowBorderGfx(0, 1u, 0xD0u);
- sub_81978B0(0xE0);
+ Menu_LoadStdPalAt(0xE0);
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON);
SetGpuReg(REG_OFFSET_BLDCNT, 0);
CreateTask(Task_DestroySelf, 0);
diff --git a/src/mystery_gift.c b/src/mystery_gift.c
index 5e000a249..c8b3a9060 100644
--- a/src/mystery_gift.c
+++ b/src/mystery_gift.c
@@ -35,28 +35,29 @@ void bgid_upload_textbox_1(u8 bgId);
void task_add_00_mystery_gift(void);
void task00_mystery_gift(u8 taskId);
-EWRAM_DATA u8 gUnknown_02022C58[2] = {};
+EWRAM_DATA u8 sDownArrowCounterAndYCoordIdx[8] = {};
+EWRAM_DATA bool8 gGiftIsFromEReader = FALSE;
-const u16 gUnkTextboxBorderPal[] = INCBIN_U16("graphics/interface/unk_textbox_border.gbapal");
-const u32 gUnkTextboxBorderGfx[] = INCBIN_U32("graphics/interface/unk_textbox_border.4bpp.lz");
+static const u16 gUnkTextboxBorderPal[] = INCBIN_U16("graphics/interface/unk_textbox_border.gbapal");
+static const u32 gUnkTextboxBorderGfx[] = INCBIN_U32("graphics/interface/unk_textbox_border.4bpp.lz");
struct MysteryGiftTaskData
{
- u16 unk0;
+ u16 curPromptWindowId;
u16 unk2;
u16 unk4;
u16 unk6;
- u8 unk8;
- u8 unk9;
+ u8 state;
+ u8 textState;
u8 unkA;
u8 unkB;
- u8 unkC;
- u8 unkD;
- u8 unkE;
- u8 * unk10;
+ u8 IsCardOrNews;
+ u8 source;
+ u8 prevPromptWindowId;
+ u8 * buffer;
};
-const struct BgTemplate gUnknown_082F0598[] = {
+static const struct BgTemplate sBGTemplates[] = {
{
.bg = 0,
.charBaseIndex = 2,
@@ -92,7 +93,7 @@ const struct BgTemplate gUnknown_082F0598[] = {
}
};
-const struct WindowTemplate gUnknown_082F05A8[] = {
+static const struct WindowTemplate sMainWindows[] = {
{
.bg = 0x00,
.tilemapLeft = 0x00,
@@ -122,7 +123,7 @@ const struct WindowTemplate gUnknown_082F05A8[] = {
}
};
-const struct WindowTemplate gUnknown_082F05C8 = {
+static const struct WindowTemplate sWindowTemplate_PromptYesOrNo_Width28 = {
.bg = 0x00,
.tilemapLeft = 0x01,
.tilemapTop = 0x0f,
@@ -132,7 +133,7 @@ const struct WindowTemplate gUnknown_082F05C8 = {
.baseBlock = 0x00e5
};
-const struct WindowTemplate gUnknown_082F05D0 = {
+static const struct WindowTemplate sWindowTemplate_PromptYesOrNo_Width20 = {
.bg = 0x00,
.tilemapLeft = 0x01,
.tilemapTop = 0x0f,
@@ -142,7 +143,7 @@ const struct WindowTemplate gUnknown_082F05D0 = {
.baseBlock = 0x00e5
};
-const struct WindowTemplate gUnknown_082F05D8 = {
+static const struct WindowTemplate sMysteryGiftMenuWindowTemplate = {
.bg = 0x00,
.tilemapLeft = 0x01,
.tilemapTop = 0x0f,
@@ -152,7 +153,7 @@ const struct WindowTemplate gUnknown_082F05D8 = {
.baseBlock = 0x00e5
};
-const struct WindowTemplate gUnknown_082F05E0 = {
+static const struct WindowTemplate sWindowTemplate_ThreeOptions = {
.bg = 0x00,
.tilemapLeft = 0x08,
.tilemapTop = 0x06,
@@ -162,7 +163,7 @@ const struct WindowTemplate gUnknown_082F05E0 = {
.baseBlock = 0x0155
};
-const struct WindowTemplate gUnknown_082F05E8 = {
+static const struct WindowTemplate sWindowTemplate_YesNoBox = {
.bg = 0x00,
.tilemapLeft = 0x17,
.tilemapTop = 0x0f,
@@ -172,7 +173,7 @@ const struct WindowTemplate gUnknown_082F05E8 = {
.baseBlock = 0x0155
};
-const struct WindowTemplate gUnknown_082F05F0 = {
+static const struct WindowTemplate sWindowTemplate_7by8 = {
.bg = 0x00,
.tilemapLeft = 0x16,
.tilemapTop = 0x0b,
@@ -182,7 +183,7 @@ const struct WindowTemplate gUnknown_082F05F0 = {
.baseBlock = 0x0155
};
-const struct WindowTemplate gUnknown_082F05F8 = {
+static const struct WindowTemplate sWindowTemplate_7by6 = {
.bg = 0x00,
.tilemapLeft = 0x16,
.tilemapTop = 0x0d,
@@ -192,7 +193,7 @@ const struct WindowTemplate gUnknown_082F05F8 = {
.baseBlock = 0x0155
};
-const struct WindowTemplate gUnknown_082F0600 = {
+static const struct WindowTemplate sWindowTemplate_7by4 = {
.bg = 0x00,
.tilemapLeft = 0x16,
.tilemapTop = 0x0f,
@@ -202,19 +203,19 @@ const struct WindowTemplate gUnknown_082F0600 = {
.baseBlock = 0x0155
};
-const struct ListMenuItem gUnknown_082F0608[] = {
+static const struct ListMenuItem sListMenuItems_CardsOrNews[] = {
{ gText_WonderCards, 0 },
{ gText_WonderNews, 1 },
{ gText_Exit3, -2 }
};
-const struct ListMenuItem gUnknown_082F0620[] = {
+static const struct ListMenuItem sListMenuItems_WirelessOrFriend[] = {
{ gText_WirelessCommunication, 0 },
{ gText_Friend2, 1 },
{ gText_Cancel2, -2 }
};
-const struct ListMenuTemplate gUnknown_082F0638 = {
+static const struct ListMenuTemplate sListMenuTemplate_ThreeOptions = {
.items = NULL,
.moveCursorFunc = ListMenuDefaultCursorMoveFunc,
.itemPrintFunc = NULL,
@@ -235,32 +236,32 @@ const struct ListMenuTemplate gUnknown_082F0638 = {
.cursorKind = 0
};
-const struct ListMenuItem gUnknown_082F0650[] = {
+static const struct ListMenuItem sListMenuItems_ReceiveSendToss[] = {
{ gText_Receive, 0 },
{ gText_Send, 1 },
{ gText_Toss, 2 },
{ gText_Cancel2, -2 }
};
-const struct ListMenuItem gUnknown_082F0670[] = {
+static const struct ListMenuItem sListMenuItems_ReceiveToss[] = {
{ gText_Receive, 0 },
{ gText_Toss, 2 },
{ gText_Cancel2, -2 }
};
-const struct ListMenuItem gUnknown_082F0688[] = {
+static const struct ListMenuItem sListMenuItems_ReceiveSend[] = {
{ gText_Receive, 0 },
{ gText_Send, 1 },
{ gText_Cancel2, -2 }
};
-const struct ListMenuItem gUnknown_082F06A0[] = {
+static const struct ListMenuItem sListMenuItems_Receive[] = {
{ gText_Receive, 0 },
{ gText_Cancel2, -2 }
};
-const struct ListMenuTemplate gUnknown_082F06B0 = {
- .items = gUnknown_082F0650,
+static const struct ListMenuTemplate sListMenu_ReceiveSendToss = {
+ .items = sListMenuItems_ReceiveSendToss,
.moveCursorFunc = ListMenuDefaultCursorMoveFunc,
.itemPrintFunc = NULL,
.totalItems = 4,
@@ -280,8 +281,8 @@ const struct ListMenuTemplate gUnknown_082F06B0 = {
.cursorKind = 0
};
-const struct ListMenuTemplate gUnknown_082F06C8 = {
- .items = gUnknown_082F0670,
+static const struct ListMenuTemplate sListMenu_ReceiveToss = {
+ .items = sListMenuItems_ReceiveToss,
.moveCursorFunc = ListMenuDefaultCursorMoveFunc,
.itemPrintFunc = NULL,
.totalItems = 3,
@@ -301,8 +302,8 @@ const struct ListMenuTemplate gUnknown_082F06C8 = {
.cursorKind = 0
};
-const struct ListMenuTemplate gUnknown_082F06E0 = {
- .items = gUnknown_082F0688,
+static const struct ListMenuTemplate sListMenu_ReceiveSend = {
+ .items = sListMenuItems_ReceiveSend,
.moveCursorFunc = ListMenuDefaultCursorMoveFunc,
.itemPrintFunc = NULL,
.totalItems = 3,
@@ -322,8 +323,8 @@ const struct ListMenuTemplate gUnknown_082F06E0 = {
.cursorKind = 0
};
-const struct ListMenuTemplate gUnknown_082F06F8 = {
- .items = gUnknown_082F06A0,
+static const struct ListMenuTemplate sListMenu_Receive = {
+ .items = sListMenuItems_Receive,
.moveCursorFunc = ListMenuDefaultCursorMoveFunc,
.itemPrintFunc = NULL,
.totalItems = 2,
@@ -343,25 +344,25 @@ const struct ListMenuTemplate gUnknown_082F06F8 = {
.cursorKind = 0
};
-const u8 *const Unref_082F0710[] = {
+static const u8 *const Unref_082F0710[] = {
gText_VarietyOfEventsImportedWireless,
gText_WonderCardsInPossession,
gText_ReadNewsThatArrived,
gText_ReturnToTitle
};
-ALIGNED(2) const u8 gUnknown_082F0720[] = { 0, 1, 2 };
-ALIGNED(2) const u8 gUnknown_082F0724[] = { 0, 1, 2 };
-ALIGNED(2) const u8 gUnknown_082F0728[] = { 1, 2, 3 };
+ALIGNED(2) const u8 sMG_Ereader_TextColor_1[] = { 0, 1, 2 };
+ALIGNED(2) const u8 sMG_Ereader_TextColor_1_Copy[] = { 0, 1, 2 };
+ALIGNED(2) const u8 sMG_Ereader_TextColor_2[] = { 1, 2, 3 };
-void sub_8018424(void)
+void vblankcb_mystery_gift_e_reader_run(void)
{
ProcessSpriteCopyRequests();
LoadOam();
TransferPlttBuffer();
}
-void sub_8018438(void)
+void c2_mystery_gift_e_reader_run(void)
{
RunTasks();
RunTextPrinters();
@@ -369,7 +370,7 @@ void sub_8018438(void)
BuildOamBuffer();
}
-bool32 sub_8018450(s32 arg)
+bool32 HandleMysteryGiftOrEReaderSetup(s32 mg_or_ereader)
{
switch (gMain.state)
{
@@ -382,7 +383,7 @@ bool32 sub_8018450(s32 arg)
ScanlineEffect_Stop();
ResetBgsAndClearDma3BusyFlags(0);
- InitBgsFromTemplates(0, gUnknown_082F0598, ARRAY_COUNT(gUnknown_082F0598));
+ InitBgsFromTemplates(0, sBGTemplates, ARRAY_COUNT(sBGTemplates));
ChangeBgX(0, 0, 0);
ChangeBgY(0, 0, 0);
ChangeBgX(1, 0, 0);
@@ -398,7 +399,7 @@ bool32 sub_8018450(s32 arg)
SetBgTilemapBuffer(0, Alloc(0x800));
bgid_upload_textbox_1(3);
- InitWindows(gUnknown_082F05A8);
+ InitWindows(sMainWindows);
DeactivateAllTextPrinters();
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON);
SetGpuReg(REG_OFFSET_BLDCNT, 0);
@@ -409,14 +410,14 @@ bool32 sub_8018450(s32 arg)
case 1:
LoadPalette(gUnkTextboxBorderPal, 0, 0x20);
LoadPalette(stdpal_get(2), 0xd0, 0x20);
- sub_81978B0(0xC0);
+ Menu_LoadStdPalAt(0xC0);
LoadUserWindowBorderGfx(0, 0xA, 0xE0);
LoadUserWindowBorderGfx_(0, 0x1, 0xF0);
FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 0x11);
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11);
FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11);
- sub_8018798(3);
- sub_80186EC(arg, 0);
+ MG_DrawCheckerboardPattern(3);
+ PrintMysteryGiftOrEReaderTopMenu(mg_or_ereader, 0);
gMain.state++;
break;
case 2:
@@ -430,7 +431,7 @@ bool32 sub_8018450(s32 arg)
ShowBg(0);
ShowBg(3);
PlayBGM(MUS_RG_OKURIMONO);
- SetVBlankCallback(sub_8018424);
+ SetVBlankCallback(vblankcb_mystery_gift_e_reader_run);
EnableInterrupts(INTR_FLAG_VBLANK | INTR_FLAG_VCOUNT | INTR_FLAG_TIMER3 | INTR_FLAG_SERIAL);
return TRUE;
}
@@ -440,28 +441,28 @@ bool32 sub_8018450(s32 arg)
void c2_mystery_gift(void)
{
- if (sub_8018450(0))
+ if (HandleMysteryGiftOrEReaderSetup(0))
{
- SetMainCallback2(sub_8018438);
- gUnknown_02022C60 = FALSE;
+ SetMainCallback2(c2_mystery_gift_e_reader_run);
+ gGiftIsFromEReader = FALSE;
task_add_00_mystery_gift();
}
RunTasks();
}
-void sub_801867C(void)
+void c2_ereader(void)
{
- if (sub_8018450(1))
+ if (HandleMysteryGiftOrEReaderSetup(1))
{
- SetMainCallback2(sub_8018438);
- gUnknown_02022C60 = TRUE;
- sub_81D5014();
+ SetMainCallback2(c2_mystery_gift_e_reader_run);
+ gGiftIsFromEReader = TRUE;
+ task_add_00_ereader();
}
}
-void sub_80186A4(void)
+void MainCB_FreeAllBuffersAndReturnToInitTitleScreen(void)
{
- gUnknown_02022C60 = FALSE;
+ gGiftIsFromEReader = FALSE;
FreeAllWindowBuffers();
Free(GetBgTilemapBuffer(0));
Free(GetBgTilemapBuffer(1));
@@ -470,12 +471,12 @@ void sub_80186A4(void)
SetMainCallback2(CB2_InitTitleScreen);
}
-void sub_80186EC(bool8 isJapanese, bool32 usePickOkCancel)
+void PrintMysteryGiftOrEReaderTopMenu(bool8 mg_or_ereader, bool32 usePickOkCancel)
{
const u8 * header;
const u8 * options;
FillWindowPixelBuffer(0, 0);
- if (!isJapanese)
+ if (mg_or_ereader == 0)
{
header = gText_MysteryGift;
options = !usePickOkCancel ? gText_PickOKExit : gText_PickOKCancel;
@@ -486,18 +487,18 @@ void sub_80186EC(bool8 isJapanese, bool32 usePickOkCancel)
options = gJPText_DecideStop;
}
- AddTextPrinterParameterized4(0, 1, 4, 1, 0, 0, gUnknown_082F0720, -1, header);
- AddTextPrinterParameterized4(0, 0, GetStringRightAlignXOffset(0, options, 0xDE), 1, 0, 0, gUnknown_082F0720, -1, options);
+ AddTextPrinterParameterized4(0, 1, 4, 1, 0, 0, sMG_Ereader_TextColor_1, -1, header);
+ AddTextPrinterParameterized4(0, 0, GetStringRightAlignXOffset(0, options, 0xDE), 1, 0, 0, sMG_Ereader_TextColor_1, -1, options);
CopyWindowToVram(0, 2);
PutWindowTilemap(0);
}
-void sub_8018784(u8 windowId)
+void MG_DrawTextBorder(u8 windowId)
{
- sub_8098858(windowId, 0x01, 0xF);
+ DrawTextBorderOuter(windowId, 0x01, 0xF);
}
-void sub_8018798(u32 bg)
+void MG_DrawCheckerboardPattern(u32 bg)
{
s32 i = 0, j;
@@ -519,9 +520,9 @@ void sub_8018798(u32 bg)
}
}
-void sub_8018838(bool32 arg)
+void ClearScreenInBg0(bool32 ignoreTopTwoRows)
{
- switch (arg)
+ switch (ignoreTopTwoRows)
{
case 0:
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 0x11);
@@ -533,32 +534,32 @@ void sub_8018838(bool32 arg)
CopyBgTilemapBufferToVram(0);
}
-void sub_8018884(const u8 *str)
+void AddTextPrinterToWindow1(const u8 *str)
{
StringExpandPlaceholders(gStringVar4, str);
FillWindowPixelBuffer(1, 0x11);
- AddTextPrinterParameterized4(1, 1, 0, 1, 0, 0, gUnknown_082F0728, 0, gStringVar4);
- sub_8098858(1, 0x001, 0xF);
+ AddTextPrinterParameterized4(1, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4);
+ DrawTextBorderOuter(1, 0x001, 0xF);
PutWindowTilemap(1);
CopyWindowToVram(1, 3);
}
-void sub_80188DC(void)
+static void ClearTextWindow(void)
{
rbox_fill_rectangle(1);
ClearWindowTilemap(1);
CopyWindowToVram(1, 1);
}
-bool32 mevent_0814257C(u8 *textState, const u8 *str)
+bool32 MG_PrintTextOnWindow1AndWaitButton(u8 *textState, const u8 *str)
{
switch (*textState)
{
case 0:
- sub_8018884(str);
+ AddTextPrinterToWindow1(str);
goto inc;
case 1:
- DrawDownArrow(1, 0xD0, 0x14, 1, FALSE, &gUnknown_02022C58[0], &gUnknown_02022C58[1]);
+ DrawDownArrow(1, 0xD0, 0x14, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]);
if (({gMain.newKeys & (A_BUTTON | B_BUTTON);}))
{
inc:
@@ -566,9 +567,9 @@ bool32 mevent_0814257C(u8 *textState, const u8 *str)
}
break;
case 2:
- DrawDownArrow(1, 0xD0, 0x14, 1, TRUE, &gUnknown_02022C58[0], &gUnknown_02022C58[1]);
+ DrawDownArrow(1, 0xD0, 0x14, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]);
*textState = 0;
- sub_80188DC();
+ ClearTextWindow();
return TRUE;
case 0xFF:
*textState = 2;
@@ -577,45 +578,45 @@ bool32 mevent_0814257C(u8 *textState, const u8 *str)
return FALSE;
}
-void sub_801898C(void)
+static void HideDownArrow(void)
{
- DrawDownArrow(1, 0xD0, 0x14, 1, FALSE, &gUnknown_02022C58[0], &gUnknown_02022C58[1]);
+ DrawDownArrow(1, 0xD0, 0x14, 1, FALSE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]);
}
-void sub_80189B4(void)
+static void ShowDownArrow(void)
{
- DrawDownArrow(1, 0xD0, 0x14, 1, TRUE, &gUnknown_02022C58[0], &gUnknown_02022C58[1]);
+ DrawDownArrow(1, 0xD0, 0x14, 1, TRUE, &sDownArrowCounterAndYCoordIdx[0], &sDownArrowCounterAndYCoordIdx[1]);
}
-bool32 sub_80189DC(u8 * textState)
+bool32 unref_HideDownArrowAndWaitButton(u8 * textState)
{
switch (*textState)
{
case 0:
- sub_801898C();
+ HideDownArrow();
if (({gMain.newKeys & (A_BUTTON | B_BUTTON);}))
{
(*textState)++;
}
break;
case 1:
- sub_80189B4();
+ ShowDownArrow();
*textState = 0;
return TRUE;
}
return FALSE;
}
-bool32 sub_8018A1C(u8 * counter, const u8 * str)
+static bool32 PrintStringAndWait2Seconds(u8 * counter, const u8 * str)
{
if (*counter == 0)
{
- sub_8018884(str);
+ AddTextPrinterToWindow1(str);
}
if (++(*counter) > 120)
{
*counter = 0;
- sub_80188DC();
+ ClearTextWindow();
return TRUE;
}
else
@@ -624,45 +625,45 @@ bool32 sub_8018A1C(u8 * counter, const u8 * str)
}
}
-u32 sub_8018A50(u8 * unused0, u16 * unused1, bool8 r2)
+static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whichMenu)
{
- struct ListMenuTemplate listMenuTemplate = gUnknown_082F0638;
- struct WindowTemplate windowTemplate = gUnknown_082F05E0;
- s32 r3;
- s32 r4;
+ struct ListMenuTemplate listMenuTemplate = sListMenuTemplate_ThreeOptions;
+ struct WindowTemplate windowTemplate = sWindowTemplate_ThreeOptions;
+ s32 width;
+ s32 response;
- if (r2 == FALSE)
+ if (whichMenu == 0)
{
- listMenuTemplate.items = gUnknown_082F0608;
+ listMenuTemplate.items = sListMenuItems_CardsOrNews;
}
else
{
- listMenuTemplate.items = gUnknown_082F0620;
+ listMenuTemplate.items = sListMenuItems_WirelessOrFriend;
}
- r3 = sub_81DB41C(&listMenuTemplate);
- if (r3 & 1)
+ width = Intl_GetListMenuWidth(&listMenuTemplate);
+ if (width & 1)
{
- r3++;
+ width++;
}
- windowTemplate.width = r3;
- if (r3 < 30)
+ windowTemplate.width = width;
+ if (width < 30)
{
- windowTemplate.tilemapLeft = (30 - r3) / 2;
+ windowTemplate.tilemapLeft = (30 - width) / 2;
}
else
{
windowTemplate.tilemapLeft = 0;
}
- r4 = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, 0xE0);
- if (r4 != -1)
+ response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, 0xE0);
+ if (response != -1)
{
ClearWindowTilemap(2);
CopyWindowToVram(2, 1);
}
- return r4;
+ return response;
}
-s8 sub_8018B08(u8 * textState, u16 * windowId, bool8 r6, const u8 * str)
+s8 mevent_message_print_and_prompt_yes_no(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, const u8 * str)
{
struct WindowTemplate windowTemplate;
s8 input;
@@ -671,24 +672,24 @@ s8 sub_8018B08(u8 * textState, u16 * windowId, bool8 r6, const u8 * str)
{
case 0:
StringExpandPlaceholders(gStringVar4, str);
- if (r6 == 0)
+ if (yesNoBoxPlacement == 0)
{
- *windowId = AddWindow(&gUnknown_082F05C8);
+ *windowId = AddWindow(&sWindowTemplate_PromptYesOrNo_Width28);
}
else
{
- *windowId = AddWindow(&gUnknown_082F05D0);
+ *windowId = AddWindow(&sWindowTemplate_PromptYesOrNo_Width20);
}
FillWindowPixelBuffer(*windowId, 0x11);
- AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, gUnknown_082F0728, 0, gStringVar4);
- sub_8098858(*windowId, 0x001, 0x0F);
+ AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4);
+ DrawTextBorderOuter(*windowId, 0x001, 0x0F);
CopyWindowToVram(*windowId, 2);
PutWindowTilemap(*windowId);
(*textState)++;
break;
case 1:
- windowTemplate = gUnknown_082F05E8;
- if (r6 == 0)
+ windowTemplate = sWindowTemplate_YesNoBox;
+ if (yesNoBoxPlacement == 0)
{
windowTemplate.tilemapTop = 9;
}
@@ -723,7 +724,7 @@ s8 sub_8018B08(u8 * textState, u16 * windowId, bool8 r6, const u8 * str)
return -2;
}
-s32 sub_8018C4C(u8 * textState, u16 * windowId, bool32 r2, bool32 r3)
+static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cannotToss, bool32 cannotSend)
{
struct WindowTemplate windowTemplate;
s32 input;
@@ -731,7 +732,7 @@ s32 sub_8018C4C(u8 * textState, u16 * windowId, bool32 r2, bool32 r3)
switch (*textState)
{
case 0:
- if (r2 == 0)
+ if (cannotToss == 0)
{
StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithCards);
}
@@ -739,36 +740,36 @@ s32 sub_8018C4C(u8 * textState, u16 * windowId, bool32 r2, bool32 r3)
{
StringExpandPlaceholders(gStringVar4, gText_WhatToDoWithNews);
}
- *windowId = AddWindow(&gUnknown_082F05D8);
+ *windowId = AddWindow(&sMysteryGiftMenuWindowTemplate);
FillWindowPixelBuffer(*windowId, 0x11);
- AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, gUnknown_082F0728, 0, gStringVar4);
- sub_8098858(*windowId, 0x001, 0x0F);
+ AddTextPrinterParameterized4(*windowId, 1, 0, 1, 0, 0, sMG_Ereader_TextColor_2, 0, gStringVar4);
+ DrawTextBorderOuter(*windowId, 0x001, 0x0F);
CopyWindowToVram(*windowId, 2);
PutWindowTilemap(*windowId);
(*textState)++;
break;
case 1:
- windowTemplate = gUnknown_082F05E8;
- if (r3)
+ windowTemplate = sWindowTemplate_YesNoBox;
+ if (cannotSend)
{
- if (r2 == 0)
+ if (cannotToss == 0)
{
- input = DoMysteryGiftListMenu(&gUnknown_082F05F8, &gUnknown_082F06C8, 1, 0x00A, 0xE0);
+ input = DoMysteryGiftListMenu(&sWindowTemplate_7by6, &sListMenu_ReceiveToss, 1, 0x00A, 0xE0);
}
else
{
- input = DoMysteryGiftListMenu(&gUnknown_082F0600, &gUnknown_082F06F8, 1, 0x00A, 0xE0);
+ input = DoMysteryGiftListMenu(&sWindowTemplate_7by4, &sListMenu_Receive, 1, 0x00A, 0xE0);
}
}
else
{
- if (r2 == 0)
+ if (cannotToss == 0)
{
- input = DoMysteryGiftListMenu(&gUnknown_082F05F0, &gUnknown_082F06B0, 1, 0x00A, 0xE0);
+ input = DoMysteryGiftListMenu(&sWindowTemplate_7by8, &sListMenu_ReceiveSendToss, 1, 0x00A, 0xE0);
}
else
{
- input = DoMysteryGiftListMenu(&gUnknown_082F05F8, &gUnknown_082F06E0, 1, 0x00A, 0xE0);
+ input = DoMysteryGiftListMenu(&sWindowTemplate_7by6, &sListMenu_ReceiveSend, 1, 0x00A, 0xE0);
}
}
if (input != -1)
@@ -793,39 +794,39 @@ s32 sub_8018C4C(u8 * textState, u16 * windowId, bool32 r2, bool32 r3)
return -1;
}
-s32 sub_8018D98(bool32 a0)
+static bool32 ValidateCardOrNews(bool32 cardOrNews)
{
- if (a0 == 0)
+ if (cardOrNews == 0)
{
- return sub_801B27C();
+ return ValidateReceivedWonderCard();
}
else
{
- return sub_801B0CC();
+ return ValidateReceivedWonderNews();
}
}
-bool32 sub_8018DAC(u8 * state, bool32 arg1)
+static bool32 HandleLoadWonderCardOrNews(u8 * state, bool32 cardOrNews)
{
s32 v0;
switch (*state)
{
case 0:
- if (arg1 == 0)
+ if (cardOrNews == 0)
{
- sub_801BAAC(sav1_get_mevent_buffer_1(), sav1_get_mevent_buffer_2());
+ InitWonderCardResources(sav1_get_mevent_buffer_1(), sav1_get_mevent_buffer_2());
}
else
{
- sub_801C6C8(sub_801B00C());
+ InitWonderNewsResources(sav1_get_mevent_buffer_0());
}
(*state)++;
break;
case 1:
- if (arg1 == 0)
+ if (cardOrNews == 0)
{
- v0 = sub_801BB74();
+ v0 = FadeToWonderCardMenu();
check:
if (v0 != 0)
{
@@ -835,7 +836,7 @@ bool32 sub_8018DAC(u8 * state, bool32 arg1)
}
else
{
- v0 = sub_801C758();
+ v0 = FadeToWonderNewsMenu();
goto check;
}
done:
@@ -846,26 +847,26 @@ bool32 sub_8018DAC(u8 * state, bool32 arg1)
return FALSE;
}
-bool32 sub_8018E08(bool32 arg0)
+static bool32 DestroyNewsOrCard(bool32 cardOrNews)
{
- if (arg0 == 0)
+ if (cardOrNews == 0)
{
- sub_801B1E8();
+ DestroyWonderCard();
}
else
{
- sub_801B06C();
+ DestroyWonderNews();
}
return TRUE;
}
-bool32 sub_8018E20(bool32 arg0, bool32 arg1)
+static bool32 TearDownCardOrNews_ReturnToTopMenu(bool32 cardOrNews, bool32 arg1)
{
- if (arg0 == 0)
+ if (cardOrNews == 0)
{
- if (sub_801BDA4(arg1) != 0)
+ if (FadeOutFromWonderCard(arg1) != 0)
{
- sub_801BB48();
+ DestroyWonderCardResources();
return TRUE;
}
else
@@ -875,9 +876,9 @@ bool32 sub_8018E20(bool32 arg0, bool32 arg1)
}
else
{
- if (sub_801CA50(arg1) != 0)
+ if (FadeOutFromWonderNews(arg1) != 0)
{
- sub_801C72C();
+ DestroyWonderNewsResources();
return TRUE;
}
else
@@ -887,36 +888,36 @@ bool32 sub_8018E20(bool32 arg0, bool32 arg1)
}
}
-s32 sub_8018E50(u8 * textState, u16 * windowId, bool32 r2)
+static s32 mevent_message_prompt_discard(u8 * textState, u16 * windowId, bool32 cardOrNews)
{
- if (r2 == 0)
+ if (cardOrNews == 0)
{
- return sub_8018B08(textState, windowId, TRUE, gText_IfThrowAwayCardEventWontHappen);
+ return mevent_message_print_and_prompt_yes_no(textState, windowId, TRUE, gText_IfThrowAwayCardEventWontHappen);
}
else
{
- return sub_8018B08(textState, windowId, TRUE, gText_OkayToDiscardNews);
+ return mevent_message_print_and_prompt_yes_no(textState, windowId, TRUE, gText_OkayToDiscardNews);
}
}
-bool32 mevent_message_was_thrown_away(u8 * textState, bool32 r1)
+static bool32 mevent_message_was_thrown_away(u8 * textState, bool32 cardOrNews)
{
- if (r1 == 0)
+ if (cardOrNews == 0)
{
- return mevent_0814257C(textState, gText_WonderCardThrownAway);
+ return MG_PrintTextOnWindow1AndWaitButton(textState, gText_WonderCardThrownAway);
}
else
{
- return mevent_0814257C(textState, gText_WonderNewsThrownAway);
+ return MG_PrintTextOnWindow1AndWaitButton(textState, gText_WonderNewsThrownAway);
}
}
-bool32 mevent_save_game(u8 * state)
+static bool32 mevent_save_game(u8 * state)
{
switch (*state)
{
case 0:
- sub_8018884(gText_DataWillBeSaved);
+ AddTextPrinterToWindow1(gText_DataWillBeSaved);
(*state)++;
break;
case 1:
@@ -924,7 +925,7 @@ bool32 mevent_save_game(u8 * state)
(*state)++;
break;
case 2:
- sub_8018884(gText_SaveCompletedPressA);
+ AddTextPrinterToWindow1(gText_SaveCompletedPressA);
(*state)++;
break;
case 3:
@@ -935,19 +936,19 @@ bool32 mevent_save_game(u8 * state)
break;
case 4:
*state = 0;
- sub_80188DC();
+ ClearTextWindow();
return TRUE;
}
return FALSE;
}
-const u8 * mevent_message(u32 * a0, u8 a1, u8 a2, u32 a3)
+static const u8 * mevent_message(u32 * a0, u8 a1, u8 cardOrNews, u32 msgId)
{
const u8 * msg = NULL;
*a0 = 0;
- switch (a3)
+ switch (msgId)
{
case 0:
*a0 = 0;
@@ -959,11 +960,11 @@ const u8 * mevent_message(u32 * a0, u8 a1, u8 a2, u32 a3)
break;
case 2:
*a0 = 1;
- msg = a2 == 0 ? gText_WonderCardReceived : gText_WonderCardReceivedFrom;
+ msg = cardOrNews == 0 ? gText_WonderCardReceived : gText_WonderCardReceivedFrom;
break;
case 3:
*a0 = 1;
- msg = a2 == 0 ? gText_WonderNewsReceived : gText_WonderNewsReceivedFrom;
+ msg = cardOrNews == 0 ? gText_WonderNewsReceived : gText_WonderNewsReceivedFrom;
break;
case 4:
*a0 = 1;
@@ -1012,14 +1013,14 @@ const u8 * mevent_message(u32 * a0, u8 a1, u8 a2, u32 a3)
return msg;
}
-bool32 mevent_08142CE8(u8 * state, const u8 * arg1, u16 * arg2)
+static bool32 PrintMGSuccessMessage(u8 * state, const u8 * arg1, u16 * arg2)
{
switch (*state)
{
case 0:
if (arg1 != NULL)
{
- sub_8018884(arg1);
+ AddTextPrinterToWindow1(arg1);
}
PlayFanfare(MUS_FANFA4);
*arg2 = 0;
@@ -1035,7 +1036,7 @@ bool32 mevent_08142CE8(u8 * state, const u8 * arg1, u16 * arg2)
if (IsFanfareTaskInactive())
{
*state = 0;
- sub_80188DC();
+ ClearTextWindow();
return TRUE;
}
break;
@@ -1043,11 +1044,11 @@ bool32 mevent_08142CE8(u8 * state, const u8 * arg1, u16 * arg2)
return FALSE;
}
-const u8 * mevent_message_stamp_card_etc_send_status(u32 * a0, u8 unused, u32 state)
+static const u8 * mevent_message_stamp_card_etc_send_status(u32 * a0, u8 unused, u32 msgId)
{
const u8 * result = gText_CommunicationError;
*a0 = 0;
- switch (state)
+ switch (msgId)
{
case 0:
result = gText_NothingSentOver;
@@ -1100,17 +1101,17 @@ const u8 * mevent_message_stamp_card_etc_send_status(u32 * a0, u8 unused, u32 st
return result;
}
-bool32 sub_8019174(u8 * state_p, u16 * arg1, u8 arg2, u32 state)
+static bool32 PrintMGSendStatus(u8 * state, u16 * arg1, u8 arg2, u32 msgId)
{
u32 flag;
- const u8 * str = mevent_message_stamp_card_etc_send_status(&flag, arg2, state);
+ const u8 * str = mevent_message_stamp_card_etc_send_status(&flag, arg2, msgId);
if (flag)
{
- return mevent_08142CE8(state_p, str, arg1);
+ return PrintMGSuccessMessage(state, str, arg1);
}
else
{
- return mevent_0814257C(state_p, str);
+ return MG_PrintTextOnWindow1AndWaitButton(state, str);
}
}
@@ -1118,18 +1119,18 @@ void task_add_00_mystery_gift(void)
{
u8 taskId = CreateTask(task00_mystery_gift, 0);
struct MysteryGiftTaskData * data = (void *)gTasks[taskId].data;
- data->unk8 = 0;
- data->unk9 = 0;
+ data->state = 0;
+ data->textState = 0;
data->unkA = 0;
data->unkB = 0;
- data->unkC = 0;
- data->unkD = 0;
- data->unk0 = 0;
+ data->IsCardOrNews = 0;
+ data->source = 0;
+ data->curPromptWindowId = 0;
data->unk2 = 0;
data->unk4 = 0;
data->unk6 = 0;
- data->unkE = 0;
- data->unk10 = AllocZeroed(0x40);
+ data->prevPromptWindowId = 0;
+ data->buffer = AllocZeroed(0x40);
}
void task00_mystery_gift(u8 taskId)
@@ -1138,95 +1139,95 @@ void task00_mystery_gift(u8 taskId)
u32 sp0;
const u8 * r1;
- switch (data->unk8)
+ switch (data->state)
{
case 0:
- data->unk8 = 1;
+ data->state = 1;
break;
case 1:
- switch (sub_8018A50(&data->unk9, &data->unk0, FALSE))
+ switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->curPromptWindowId, FALSE))
{
case 0:
- data->unkC = 0;
- if (sub_801B27C() == TRUE)
+ data->IsCardOrNews = 0;
+ if (ValidateReceivedWonderCard() == TRUE)
{
- data->unk8 = 18;
+ data->state = 18;
}
else
{
- data->unk8 = 2;
+ data->state = 2;
}
break;
case 1:
- data->unkC = 1;
- if (sub_801B0CC() == TRUE)
+ data->IsCardOrNews = 1;
+ if (ValidateReceivedWonderNews() == TRUE)
{
- data->unk8 = 18;
+ data->state = 18;
}
else
{
- data->unk8 = 2;
+ data->state = 2;
}
break;
case -2u:
- data->unk8 = 37;
+ data->state = 37;
break;
}
break;
case 2:
{
- if (data->unkC == 0)
+ if (data->IsCardOrNews == 0)
{
- if (mevent_0814257C(&data->unk9, gText_DontHaveCardNewOneInput))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_DontHaveCardNewOneInput))
{
- data->unk8 = 3;
- sub_80186EC(0, 1);
+ data->state = 3;
+ PrintMysteryGiftOrEReaderTopMenu(0, 1);
}
}
else
{
- if (mevent_0814257C(&data->unk9, gText_DontHaveNewsNewOneInput))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_DontHaveNewsNewOneInput))
{
- data->unk8 = 3;
- sub_80186EC(0, 1);
+ data->state = 3;
+ PrintMysteryGiftOrEReaderTopMenu(0, 1);
}
}
break;
}
case 3:
- if (data->unkC == 0)
+ if (data->IsCardOrNews == 0)
{
- sub_8018884(gText_WhereShouldCardBeAccessed);
+ AddTextPrinterToWindow1(gText_WhereShouldCardBeAccessed);
}
else
{
- sub_8018884(gText_WhereShouldNewsBeAccessed);
+ AddTextPrinterToWindow1(gText_WhereShouldNewsBeAccessed);
}
- data->unk8 = 4;
+ data->state = 4;
break;
case 4:
- switch (sub_8018A50(&data->unk9, &data->unk0, TRUE))
+ switch (MysteryGift_HandleThreeOptionMenu(&data->textState, &data->curPromptWindowId, TRUE))
{
case 0:
- sub_80188DC();
- data->unk8 = 5;
- data->unkD = 0;
+ ClearTextWindow();
+ data->state = 5;
+ data->source = 0;
break;
case 1:
- sub_80188DC();
- data->unk8 = 5;
- data->unkD = 1;
+ ClearTextWindow();
+ data->state = 5;
+ data->source = 1;
break;
case -2u:
- sub_80188DC();
- if (sub_8018D98(data->unkC))
+ ClearTextWindow();
+ if (ValidateCardOrNews(data->IsCardOrNews))
{
- data->unk8 = 18;
+ data->state = 18;
}
else
{
- data->unk8 = 0;
- sub_80186EC(0, 0);
+ data->state = 0;
+ PrintMysteryGiftOrEReaderTopMenu(0, 0);
}
break;
}
@@ -1238,245 +1239,245 @@ void task00_mystery_gift(u8 taskId)
gStringVar2[0] = eos;
gStringVar3[0] = eos;
}
- switch (data->unkC)
+ switch (data->IsCardOrNews)
{
case 0:
- if (data->unkD == 1)
+ if (data->source == 1)
{
- sub_8014EFC(0x15);
+ MEvent_CreateTask_CardOrNewsWithFriend(0x15);
}
- else if (data->unkD == 0)
+ else if (data->source == 0)
{
- sub_80152A8(0x15);
+ MEvent_CreateTask_CardOrNewsOverWireless(0x15);
}
break;
case 1:
- if (data->unkD == 1)
+ if (data->source == 1)
{
- sub_8014EFC(0x16);
+ MEvent_CreateTask_CardOrNewsWithFriend(0x16);
}
- else if (data->unkD == 0)
+ else if (data->source == 0)
{
- sub_80152A8(0x16);
+ MEvent_CreateTask_CardOrNewsOverWireless(0x16);
}
break;
}
- data->unk8 = 6;
+ data->state = 6;
break;
case 6:
if (gReceivedRemoteLinkPlayers != 0)
{
- sub_8018838(TRUE);
- data->unk8 = 7;
- sub_801D484(data->unkC);
+ ClearScreenInBg0(TRUE);
+ data->state = 7;
+ mevent_srv_ish_do_init(data->IsCardOrNews);
}
else if (gSpecialVar_Result == 5)
{
- sub_8018838(TRUE);
- data->unk8 = 3;
+ ClearScreenInBg0(TRUE);
+ data->state = 3;
}
break;
case 7:
- sub_8018884(gText_Communicating);
- data->unk8 = 8;
+ AddTextPrinterToWindow1(gText_Communicating);
+ data->state = 8;
break;
case 8:
- switch (sub_801D4A8(&data->unk0))
+ switch (mevent_srv_ish_do_exec(&data->curPromptWindowId))
{
case 6:
task_add_05_task_del_08FA224_when_no_RfuFunc();
- data->unkE = data->unk0;
- data->unk8 = 13;
+ data->prevPromptWindowId = data->curPromptWindowId;
+ data->state = 13;
break;
case 5:
- memcpy(data->unk10, sub_801D4F4(), 0x40);
- sub_801D4E4();
+ memcpy(data->buffer, mevent_srv_ish_get_buffer(), 0x40);
+ mevent_srv_ish_inc_flag();
break;
case 3:
- data->unk8 = 10;
+ data->state = 10;
break;
case 2:
- data->unk8 = 9;
+ data->state = 9;
break;
case 4:
- data->unk8 = 11;
+ data->state = 11;
StringCopy(gStringVar1, gLinkPlayers[0].name);
break;
}
break;
case 9:
- switch ((u32)sub_8018B08(&data->unk9, &data->unk0, FALSE, sub_801D4F4()))
+ switch ((u32)mevent_message_print_and_prompt_yes_no(&data->textState, &data->curPromptWindowId, FALSE, mevent_srv_ish_get_buffer()))
{
case 0:
- sub_801D500(0);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(0);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
break;
case 1:
- sub_801D500(1);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(1);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
break;
case -1u:
- sub_801D500(1);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(1);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
break;
}
break;
case 10:
- if (mevent_0814257C(&data->unk9, sub_801D4F4()))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, mevent_srv_ish_get_buffer()))
{
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
}
break;
case 11:
- switch ((u32)sub_8018B08(&data->unk9, &data->unk0, FALSE, gText_ThrowAwayWonderCard))
+ switch ((u32)mevent_message_print_and_prompt_yes_no(&data->textState, &data->curPromptWindowId, FALSE, gText_ThrowAwayWonderCard))
{
case 0:
- if (sub_801B3F8() == TRUE)
+ if (CheckReceivedGiftFromWonderCard() == TRUE)
{
- data->unk8 = 12;
+ data->state = 12;
}
else
{
- sub_801D500(0);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(0);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
}
break;
case 1:
- sub_801D500(1);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(1);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
break;
case -1u:
- sub_801D500(1);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(1);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
break;
}
break;
case 12:
- switch ((u32)sub_8018B08(&data->unk9, &data->unk0, FALSE, gText_HaventReceivedCardsGift))
+ switch ((u32)mevent_message_print_and_prompt_yes_no(&data->textState, &data->curPromptWindowId, FALSE, gText_HaventReceivedCardsGift))
{
case 0:
- sub_801D500(0);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(0);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
break;
case 1:
- sub_801D500(1);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(1);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
break;
case -1u:
- sub_801D500(1);
- sub_801D4E4();
- data->unk8 = 7;
+ mevent_srv_ish_set_param(1);
+ mevent_srv_ish_inc_flag();
+ data->state = 7;
break;
}
break;
case 13:
if (gReceivedRemoteLinkPlayers == 0)
{
- sub_800E084();
- data->unk8 = 14;
+ DestroyWirelessStatusIndicatorSprite();
+ data->state = 14;
}
break;
case 14:
- if (sub_8018A1C(&data->unk9, gText_CommunicationCompleted))
+ if (PrintStringAndWait2Seconds(&data->textState, gText_CommunicationCompleted))
{
- if (data->unkD == 1)
+ if (data->source == 1)
{
StringCopy(gStringVar1, gLinkPlayers[0].name);
}
- data->unk8 = 15;
+ data->state = 15;
}
break;
case 15:
{
register bool32 flag asm("r1");
- r1 = mevent_message(&sp0, data->unkC, data->unkD, data->unkE);
+ r1 = mevent_message(&sp0, data->IsCardOrNews, data->source, data->prevPromptWindowId);
if (r1 == NULL)
{
- r1 = data->unk10;
+ r1 = data->buffer;
}
if (sp0)
{
- flag = mevent_08142CE8(&data->unk9, r1, &data->unk0);
+ flag = PrintMGSuccessMessage(&data->textState, r1, &data->curPromptWindowId);
}
else
{
- flag = mevent_0814257C(&data->unk9, r1);
+ flag = MG_PrintTextOnWindow1AndWaitButton(&data->textState, r1);
}
if (flag)
{
- if (data->unkE == 3)
+ if (data->prevPromptWindowId == 3)
{
- if (data->unkD == 1)
+ if (data->source == 1)
{
- sub_801DB68(1);
+ GenerateRandomNews(1);
}
else
{
- sub_801DB68(2);
+ GenerateRandomNews(2);
}
}
if (sp0 == 0)
{
- data->unk8 = 0;
- sub_80186EC(0, 0);
+ data->state = 0;
+ PrintMysteryGiftOrEReaderTopMenu(0, 0);
}
else
{
- data->unk8 = 17;
+ data->state = 17;
}
}
break;
}
case 16:
- if (mevent_0814257C(&data->unk9, gText_CommunicationError))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_CommunicationError))
{
- data->unk8 = 0;
- sub_80186EC(0, 0);
+ data->state = 0;
+ PrintMysteryGiftOrEReaderTopMenu(0, 0);
}
break;
case 17:
- if (mevent_save_game(&data->unk9))
+ if (mevent_save_game(&data->textState))
{
- data->unk8 = 18;
+ data->state = 18;
}
break;
case 18:
- if (sub_8018DAC(&data->unk9, data->unkC))
+ if (HandleLoadWonderCardOrNews(&data->textState, data->IsCardOrNews))
{
- data->unk8 = 20;
+ data->state = 20;
}
break;
case 20:
- if (data->unkC == 0)
+ if (data->IsCardOrNews == 0)
{
if (({gMain.newKeys & A_BUTTON;}))
{
- data->unk8 = 21;
+ data->state = 21;
}
if (({gMain.newKeys & B_BUTTON;}))
{
- data->unk8 = 27;
+ data->state = 27;
}
}
else
{
- switch (sub_801CCD0(gMain.newKeys))
+ switch (MENews_GetInput(gMain.newKeys))
{
case 0:
- sub_801CC38();
- data->unk8 = 21;
+ MENews_RemoveScrollIndicatorArrowPair();
+ data->state = 21;
break;
case 1:
- data->unk8 = 27;
+ data->state = 27;
break;
}
}
@@ -1484,142 +1485,142 @@ void task00_mystery_gift(u8 taskId)
case 21:
{
u32 result;
- if (data->unkC == 0)
+ if (data->IsCardOrNews == 0)
{
- if (sub_801B308())
+ if (WonderCard_Test_Unk_08_6())
{
- result = sub_8018C4C(&data->unk9, &data->unk0, data->unkC, FALSE);
+ result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, FALSE);
}
else
{
- result = sub_8018C4C(&data->unk9, &data->unk0, data->unkC, TRUE);
+ result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, TRUE);
}
}
else
{
- if (sub_801B128())
+ if (WonderNews_Test_Unk_02())
{
- result = sub_8018C4C(&data->unk9, &data->unk0, data->unkC, FALSE);
+ result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, FALSE);
}
else
{
- result = sub_8018C4C(&data->unk9, &data->unk0, data->unkC, TRUE);
+ result = HandleMysteryGiftListMenu(&data->textState, &data->curPromptWindowId, data->IsCardOrNews, TRUE);
}
}
switch (result)
{
case 0:
- data->unk8 = 28;
+ data->state = 28;
break;
case 1:
- data->unk8 = 29;
+ data->state = 29;
break;
case 2:
- data->unk8 = 22;
+ data->state = 22;
break;
case -2u:
- if (data->unkC == 1)
+ if (data->IsCardOrNews == 1)
{
- sub_801CC80();
+ MENews_AddScrollIndicatorArrowPair();
}
- data->unk8 = 20;
+ data->state = 20;
break;
}
break;
}
case 22:
- switch (sub_8018E50(&data->unk9, &data->unk0, data->unkC))
+ switch (mevent_message_prompt_discard(&data->textState, &data->curPromptWindowId, data->IsCardOrNews))
{
case 0:
- if (data->unkC == 0 && sub_801B3F8() == TRUE)
+ if (data->IsCardOrNews == 0 && CheckReceivedGiftFromWonderCard() == TRUE)
{
- data->unk8 = 23;
+ data->state = 23;
}
else
{
- data->unk8 = 24;
+ data->state = 24;
}
break;
case 1:
- data->unk8 = 21;
+ data->state = 21;
break;
case -1:
- data->unk8 = 21;
+ data->state = 21;
break;
}
break;
case 23:
- switch ((u32)sub_8018B08(&data->unk9, &data->unk0, TRUE, gText_HaventReceivedGiftOkayToDiscard))
+ switch ((u32)mevent_message_print_and_prompt_yes_no(&data->textState, &data->curPromptWindowId, TRUE, gText_HaventReceivedGiftOkayToDiscard))
{
case 0:
- data->unk8 = 24;
+ data->state = 24;
break;
case 1:
- data->unk8 = 21;
+ data->state = 21;
break;
case -1u:
- data->unk8 = 21;
+ data->state = 21;
break;
}
break;
case 24:
- if (sub_8018E20(data->unkC, 1))
+ if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 1))
{
- sub_8018E08(data->unkC);
- data->unk8 = 25;
+ DestroyNewsOrCard(data->IsCardOrNews);
+ data->state = 25;
}
break;
case 25:
- if (mevent_save_game(&data->unk9))
+ if (mevent_save_game(&data->textState))
{
- data->unk8 = 26;
+ data->state = 26;
}
break;
case 26:
- if (mevent_message_was_thrown_away(&data->unk9, data->unkC))
+ if (mevent_message_was_thrown_away(&data->textState, data->IsCardOrNews))
{
- data->unk8 = 0;
- sub_80186EC(0, 0);
+ data->state = 0;
+ PrintMysteryGiftOrEReaderTopMenu(0, 0);
}
break;
case 27:
- if (sub_8018E20(data->unkC, 0))
+ if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 0))
{
- data->unk8 = 0;
+ data->state = 0;
}
break;
case 28:
- if (sub_8018E20(data->unkC, 1))
+ if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 1))
{
- data->unk8 = 3;
+ data->state = 3;
}
break;
case 29:
- if (sub_8018E20(data->unkC, 1))
+ if (TearDownCardOrNews_ReturnToTopMenu(data->IsCardOrNews, 1))
{
- switch (data->unkC)
+ switch (data->IsCardOrNews)
{
case 0:
- sub_8014A00(21);
+ MEvent_CreateTask_Leader(21);
break;
case 1:
- sub_8014A00(22);
+ MEvent_CreateTask_Leader(22);
break;
}
- data->unkD = 1;
- data->unk8 = 30;
+ data->source = 1;
+ data->state = 30;
}
break;
case 30:
if (gReceivedRemoteLinkPlayers != 0)
{
- sub_8018838(1);
- data->unk8 = 31;
+ ClearScreenInBg0(1);
+ data->state = 31;
}
else if (gSpecialVar_Result == 5)
{
- sub_8018838(1);
- data->unk8 = 18;
+ ClearScreenInBg0(1);
+ data->state = 18;
}
break;
case 31:
@@ -1629,64 +1630,74 @@ void task00_mystery_gift(u8 taskId)
gStringVar2[0] = eos;
gStringVar3[0] = eos;
}
- if (data->unkC == 0)
+ if (data->IsCardOrNews == 0)
{
- sub_8018884(gText_SendingWonderCard);
+ AddTextPrinterToWindow1(gText_SendingWonderCard);
mevent_srv_new_wcard();
}
else
{
- sub_8018884(gText_SendingWonderNews);
+ AddTextPrinterToWindow1(gText_SendingWonderNews);
mevent_srv_init_wnews();
}
- data->unk8 = 32;
+ data->state = 32;
break;
case 32:
- if (sub_801D0C4(&data->unk0) == 3)
+ if (mevent_srv_common_do_exec(&data->curPromptWindowId) == 3)
{
- data->unkE = data->unk0;
- data->unk8 = 33;
+ data->prevPromptWindowId = data->curPromptWindowId;
+ data->state = 33;
}
break;
case 33:
task_add_05_task_del_08FA224_when_no_RfuFunc();
StringCopy(gStringVar1, gLinkPlayers[1].name);
- data->unk8 = 34;
+ data->state = 34;
break;
case 34:
if (gReceivedRemoteLinkPlayers == 0)
{
- sub_800E084();
- data->unk8 = 35;
+ DestroyWirelessStatusIndicatorSprite();
+ data->state = 35;
}
break;
case 35:
- if (sub_8019174(&data->unk9, &data->unk0, data->unkD, data->unkE))
+ if (PrintMGSendStatus(&data->textState, &data->curPromptWindowId, data->source, data->prevPromptWindowId))
{
- if (data->unkD == 1 && data->unkE == 3)
+ if (data->source == 1 && data->prevPromptWindowId == 3)
{
- sub_801DB68(3);
- data->unk8 = 17;
+ GenerateRandomNews(3);
+ data->state = 17;
}
else
{
- data->unk8 = 0;
- sub_80186EC(0, 0);
+ data->state = 0;
+ PrintMysteryGiftOrEReaderTopMenu(0, 0);
}
}
break;
case 36:
- if (mevent_0814257C(&data->unk9, gText_CommunicationError))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_CommunicationError))
{
- data->unk8 = 0;
- sub_80186EC(0, 0);
+ data->state = 0;
+ PrintMysteryGiftOrEReaderTopMenu(0, 0);
}
break;
case 37:
CloseLink();
- Free(data->unk10);
+ Free(data->buffer);
DestroyTask(taskId);
- SetMainCallback2(sub_80186A4);
+ SetMainCallback2(MainCB_FreeAllBuffersAndReturnToInitTitleScreen);
break;
}
}
+
+u16 GetMysteryGiftBaseBlock(void)
+{
+ return 0x1A9;
+}
+
+void bgid_upload_textbox_1(u8 bgId)
+{
+ DecompressAndLoadBgGfxUsingHeap(bgId, gUnkTextboxBorderGfx, 0x100, 0, 0);
+}
diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c
index 30f5af14c..fb1be0698 100644
--- a/src/pokemon_storage_system.c
+++ b/src/pokemon_storage_system.c
@@ -4419,7 +4419,7 @@ static void PrintStorageActionText(u8 id)
DynamicPlaceholderTextUtil_ExpandPlaceholders(sPSSData->field_2190, gPCStorageActionTexts[id].text);
FillWindowPixelBuffer(1, PIXEL_FILL(1));
AddTextPrinterParameterized(1, 1, sPSSData->field_2190, 0, 1, TEXT_SPEED_FF, NULL);
- sub_8098858(1, 2, 14);
+ DrawTextBorderOuter(1, 2, 14);
PutWindowTilemap(1);
CopyWindowToVram(1, 2);
schedule_bg_copy_tilemap_to_vram(0);
diff --git a/src/script.c b/src/script.c
index 91690dd33..cb06300bf 100644
--- a/src/script.c
+++ b/src/script.c
@@ -405,7 +405,7 @@ bool32 sub_80991F8(void)
u8 *sub_8099244(void)
{
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
- if (!sub_801B27C())
+ if (!ValidateReceivedWonderCard())
return NULL;
if (scriptData->magic != RAM_SCRIPT_MAGIC)
return NULL;
diff --git a/src/script_pokemon_util_80F87D8.c b/src/script_pokemon_util_80F87D8.c
index 7d6020c7a..7e4c14531 100755
--- a/src/script_pokemon_util_80F87D8.c
+++ b/src/script_pokemon_util_80F87D8.c
@@ -488,7 +488,7 @@ void sub_80F910C(void)
if (gIsLinkContest & 2)
{
if (gReceivedRemoteLinkPlayers)
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
}
}
diff --git a/src/start_menu.c b/src/start_menu.c
index f573f9bdf..5b527e15e 100644
--- a/src/start_menu.c
+++ b/src/start_menu.c
@@ -1185,7 +1185,7 @@ static bool32 sub_80A03E4(u8 *par1)
InitBgsFromTemplates(0, sUnknown_085105A8, ARRAY_COUNT(sUnknown_085105A8));
InitWindows(sUnknown_085105AC);
LoadUserWindowBorderGfx_(0, 8, 224);
- sub_81978B0(240);
+ Menu_LoadStdPalAt(240);
break;
case 3:
ShowBg(0);
@@ -1234,7 +1234,7 @@ static void sub_80A0550(u8 taskId)
2,
1,
3);
- sub_8098858(0, 8, 14);
+ DrawTextBorderOuter(0, 8, 14);
PutWindowTilemap(0);
CopyWindowToVram(0, 3);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0);
diff --git a/src/text_window.c b/src/text_window.c
index 517f4bdb9..98fc09e87 100644
--- a/src/text_window.c
+++ b/src/text_window.c
@@ -113,7 +113,7 @@ void LoadUserWindowBorderGfx(u8 windowId, u16 destOffset, u8 palOffset)
LoadWindowGfx(windowId, gSaveBlock2Ptr->optionsWindowFrameType, destOffset, palOffset);
}
-void sub_8098858(u8 windowId, u16 tileNum, u8 palNum)
+void DrawTextBorderOuter(u8 windowId, u16 tileNum, u8 palNum)
{
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
@@ -131,7 +131,7 @@ void sub_8098858(u8 windowId, u16 tileNum, u8 palNum)
FillBgTilemapBufferRect(bgLayer, tileNum + 8, tilemapLeft + width, tilemapTop + height, 1, 1, palNum);
}
-void sub_80989E0(u8 windowId, u16 tileNum, u8 palNum)
+void DrawTextBorderInner(u8 windowId, u16 tileNum, u8 palNum)
{
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
diff --git a/src/trade.c b/src/trade.c
index 34f49060f..80c74d2cd 100644
--- a/src/trade.c
+++ b/src/trade.c
@@ -2014,7 +2014,7 @@ static void sub_80781C8(void)
FreeAllWindowBuffers();
Free(gUnknown_0203229C);
gMain.callback1 = NULL;
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
SetMainCallback2(sub_807AE50);
}
}
@@ -2543,7 +2543,7 @@ static void sub_8078DBC(void)
if (gUnknown_0203229C->tradeMenuCursorPosition < 6)
{
- sub_8098858(1, 1, 14);
+ DrawTextBorderOuter(1, 1, 14);
FillWindowPixelBuffer(1, PIXEL_FILL(1));
PrintMenuTable(1, 2, gUnknown_0832DEAC);
InitMenuInUpperLeftCornerPlaySoundWhenAPressed(1, 2, 0);
@@ -2844,7 +2844,7 @@ static void sub_80794CC(void)
Free(gUnknown_02032184);
Free(gUnknown_0203229C);
FreeAllWindowBuffers();
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
SetMainCallback2(CB2_ReturnToFieldFromMultiplayer);
}
}
@@ -3341,7 +3341,7 @@ static void sub_807A19C(u8 a0)
{
FillWindowPixelBuffer(0, PIXEL_FILL(1));
AddTextPrinterParameterized(0, 1, gUnknown_0832DEBC[a0], 0, 1, TEXT_SPEED_FF, NULL);
- sub_8098858(0, 20, 12);
+ DrawTextBorderOuter(0, 20, 12);
PutWindowTilemap(0);
CopyWindowToVram(0, 3);
}
@@ -6123,7 +6123,7 @@ static void c2_080543C4(void)
FreeMonSpritesGfx();
FREE_AND_SET_NULL(gUnknown_020322A0);
if (gWirelessCommType)
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
SetMainCallback2(gMain.savedCallback);
}
RunTasks();
diff --git a/src/union_room.c b/src/union_room.c
index df0137379..8aeaaf6fb 100644
--- a/src/union_room.c
+++ b/src/union_room.c
@@ -45,6 +45,7 @@
#include "event_obj_lock.h"
#include "union_room_chat.h"
#include "berry_crush.h"
+#include "mystery_gift.h"
EWRAM_DATA u8 gUnknown_02022C20[12] = {};
EWRAM_DATA u8 gUnknown_02022C2C = 0;
@@ -100,9 +101,8 @@ void sub_801AC54(void);
void sub_802A9A8(u8 monId, MainCallback callback);
void sub_802493C(u8 monId, MainCallback callback);
void sub_80149D8(void);
-u16 sub_8019930(void);
-void sub_8018784(u8 windowId);
-s8 sub_8018B08(u8 *textState, u8 *arg1, u8 arg2, const u8 *str);
+void MG_DrawTextBorder(u8 windowId);
+s8 mevent_message_print_and_prompt_yes_no(u8 *textState, u8 *arg1, u8 arg2, const u8 *str);
bool32 sub_8016F1C(struct UnkLinkRfuStruct_02022B14 *arg0, s16 arg1);
u8 sub_8016DF0(struct UnkStruct_Main4 *arg0, struct UnkStruct_Main4 *arg1, u32 arg2);
void sub_8019F2C(void);
@@ -1555,7 +1555,7 @@ void sub_8012780(u8 taskId)
break;
case 21:
case 23:
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
sub_800EDD4();
sub_8012F64(data);
data->state++;
@@ -2076,7 +2076,7 @@ void sub_80134E8(u8 taskId)
data->state++;
break;
case 13:
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
if (PrintOnTextbox(&data->textState, gUnknown_082EDE9C[sub_8011A74()]))
{
gSpecialVar_Result = 6;
@@ -2084,12 +2084,12 @@ void sub_80134E8(u8 taskId)
}
break;
case 11:
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
gSpecialVar_Result = 5;
data->state = 23;
break;
case 15:
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
if (PrintOnTextbox(&data->textState, gUnknown_082EDE9C[sub_8011A74()]))
{
gSpecialVar_Result = 8;
@@ -2481,7 +2481,7 @@ void sub_80143E4(void *arg0, bool32 arg1)
TrainerCard_GenerateCardForPlayer((struct TrainerCard *)argAsU16Ptr);
if (arg1)
- argAsU16Ptr[48] = sub_801B39C();
+ argAsU16Ptr[48] = GetWonderCardFlagID();
else
argAsU16Ptr[48] = 0;
}
@@ -2680,7 +2680,7 @@ void sub_8014790(u8 taskId)
case 8:
if (gReceivedRemoteLinkPlayers == 0)
{
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
EnableBothScriptContexts();
DestroyTask(taskId);
}
@@ -2699,7 +2699,7 @@ void sub_80149D8(void)
gTasks[taskId].data[0] = 0;
}
-void sub_8014A00(u32 arg0)
+void MEvent_CreateTask_Leader(u32 arg0)
{
u8 taskId;
struct UnkStruct_Leader *dataPtr;
@@ -2745,10 +2745,10 @@ void sub_8014A40(u8 taskId)
data->field_17 = sub_8016FC0(data->field_4, 0xFF);
winTemplate = gUnknown_082F011C;
- winTemplate.baseBlock = sub_8019930();
+ winTemplate.baseBlock = GetMysteryGiftBaseBlock();
winTemplate.paletteNum = 0xC;
data->listWindowId = AddWindow(&winTemplate);
- sub_8018784(data->listWindowId);
+ MG_DrawTextBorder(data->listWindowId);
gMultiuseListMenuTemplate = gUnknown_082F015C;
gMultiuseListMenuTemplate.windowId = data->listWindowId;
data->listTaskId = ListMenuInit(&gMultiuseListMenuTemplate, 0, 0);
@@ -2763,7 +2763,7 @@ void sub_8014A40(u8 taskId)
data->state = 3;
break;
case 3:
- sub_8018884(gStringVar4);
+ AddTextPrinterToWindow1(gStringVar4);
data->state = 4;
break;
case 4:
@@ -2771,11 +2771,11 @@ void sub_8014A40(u8 taskId)
if (gMain.newKeys & B_BUTTON)
{
data->state = 13;
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
}
break;
case 6:
- if (mevent_0814257C(&data->textState, gUnknown_082EDF40))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gUnknown_082EDF40))
{
data->field_13 = sub_8013398(data->field_0);
RedrawListMenu(data->listTaskId);
@@ -2786,7 +2786,7 @@ void sub_8014A40(u8 taskId)
data->state = 7;
break;
case 7:
- switch (sub_8018B08(&data->textState, &data->field_14, 0, gStringVar4))
+ switch (mevent_message_print_and_prompt_yes_no(&data->textState, &data->field_14, 0, gStringVar4))
{
case 0:
sub_800E0E8();
@@ -2837,7 +2837,7 @@ void sub_8014A40(u8 taskId)
}
break;
case 9:
- sub_8018884(gStringVar4);
+ AddTextPrinterToWindow1(gStringVar4);
data->state = 10;
break;
case 10:
@@ -2860,7 +2860,7 @@ void sub_8014A40(u8 taskId)
}
break;
case 13:
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
sub_800EDD4();
DestroyListMenuTask(data->listTaskId, 0, 0);
CopyBgTilemapBufferToVram(0);
@@ -2872,7 +2872,7 @@ void sub_8014A40(u8 taskId)
data->state++;
break;
case 14:
- if (mevent_0814257C(&data->textState, gText_PleaseStartOver))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_PleaseStartOver))
{
DestroyTask(taskId);
gSpecialVar_Result = 5;
@@ -2907,7 +2907,7 @@ void sub_8014A40(u8 taskId)
}
}
-void sub_8014EFC(u32 arg0)
+void MEvent_CreateTask_CardOrNewsWithFriend(u32 arg0)
{
u8 taskId;
struct UnkStruct_Group *dataPtr;
@@ -2940,7 +2940,7 @@ void sub_8014F48(u8 taskId)
data->state = 1;
break;
case 1:
- sub_8018884(gUnknown_082EF7F8);
+ AddTextPrinterToWindow1(gUnknown_082EF7F8);
data->state = 2;
break;
case 2:
@@ -2949,7 +2949,7 @@ void sub_8014F48(u8 taskId)
data->field_11 = sub_8016FC0(data->field_4, data->field_12 + 7);
winTemplate1 = gUnknown_082F0174;
- winTemplate1.baseBlock = sub_8019930();
+ winTemplate1.baseBlock = GetMysteryGiftBaseBlock();
winTemplate1.paletteNum = 0xC;
data->listWindowId = AddWindow(&winTemplate1);
@@ -2957,12 +2957,12 @@ void sub_8014F48(u8 taskId)
winTemplate2.paletteNum = 0xC;
data->field_D = AddWindow(&winTemplate2);
- sub_8018784(data->listWindowId);
+ MG_DrawTextBorder(data->listWindowId);
gMultiuseListMenuTemplate = gUnknown_082F0204;
gMultiuseListMenuTemplate.windowId = data->listWindowId;
data->listTaskId = ListMenuInit(&gMultiuseListMenuTemplate, 0, 0);
- sub_8018784(data->field_D);
+ MG_DrawTextBorder(data->field_D);
FillWindowPixelBuffer(data->field_D, PIXEL_FILL(1));
PutWindowTilemap(data->field_D);
sub_80125BC(data->field_D);
@@ -3013,7 +3013,7 @@ void sub_8014F48(u8 taskId)
}
break;
case 4:
- sub_8018884(gUnknown_082EFC3C);
+ AddTextPrinterToWindow1(gUnknown_082EFC3C);
sub_8018404(gStringVar1, &data->field_0->arr[data->field_F]);
data->state = 5;
break;
@@ -3032,7 +3032,7 @@ void sub_8014F48(u8 taskId)
data->state = 8;
break;
case 5:
- sub_8018884(gUnknown_082EDDF4);
+ AddTextPrinterToWindow1(gUnknown_082EDDF4);
sub_8011A64(0, 0);
break;
}
@@ -3050,17 +3050,17 @@ void sub_8014F48(u8 taskId)
data->state++;
break;
case 9:
- if (mevent_0814257C(&data->textState, gUnknown_082EDF80[sub_8011A74()]))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gUnknown_082EDF80[sub_8011A74()]))
{
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
DestroyTask(taskId);
sub_800EDD4();
gSpecialVar_Result = 5;
}
break;
case 7:
- sub_800E084();
- sub_8018884(gText_PleaseStartOver);
+ DestroyWirelessStatusIndicatorSprite();
+ AddTextPrinterToWindow1(gText_PleaseStartOver);
DestroyTask(taskId);
sub_800EDD4();
gSpecialVar_Result = 5;
@@ -3076,7 +3076,7 @@ void sub_8014F48(u8 taskId)
}
}
-void sub_80152A8(u32 arg0)
+void MEvent_CreateTask_CardOrNewsOverWireless(u32 arg0)
{
u8 taskId;
struct UnkStruct_Group *dataPtr;
@@ -3109,7 +3109,7 @@ void sub_80152F4(u8 taskId)
data->state = 1;
break;
case 1:
- sub_8018884(gUnknown_082EFBC8);
+ AddTextPrinterToWindow1(gUnknown_082EFBC8);
data->state = 2;
break;
case 2:
@@ -3120,10 +3120,10 @@ void sub_80152F4(u8 taskId)
if (data->field_13 != 0)
{
winTemplate = gUnknown_082F0174;
- winTemplate.baseBlock = sub_8019930();
+ winTemplate.baseBlock = GetMysteryGiftBaseBlock();
data->listWindowId = AddWindow(&winTemplate);
- sub_8018784(data->listWindowId);
+ MG_DrawTextBorder(data->listWindowId);
gMultiuseListMenuTemplate = gUnknown_082F0204;
gMultiuseListMenuTemplate.windowId = data->listWindowId;
data->listTaskId = ListMenuInit(&gMultiuseListMenuTemplate, 0, 0);
@@ -3178,7 +3178,7 @@ void sub_80152F4(u8 taskId)
}
break;
case 4:
- sub_8018884(gUnknown_082EFC90);
+ AddTextPrinterToWindow1(gUnknown_082EFC90);
sub_8018404(gStringVar1, &data->field_0->arr[data->field_F]);
data->state = 5;
break;
@@ -3197,7 +3197,7 @@ void sub_80152F4(u8 taskId)
data->state = 8;
break;
case 5:
- sub_8018884(gUnknown_082EDEC4);
+ AddTextPrinterToWindow1(gUnknown_082EDEC4);
sub_8011A64(0, 0);
break;
}
@@ -3218,27 +3218,27 @@ void sub_80152F4(u8 taskId)
data->state++;
break;
case 9:
- if (mevent_0814257C(&data->textState, gUnknown_082EDF04))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gUnknown_082EDF04))
{
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
DestroyTask(taskId);
sub_800EDD4();
gSpecialVar_Result = 5;
}
break;
case 7:
- if (mevent_0814257C(&data->textState, gText_WirelessSearchCanceled))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gText_WirelessSearchCanceled))
{
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
DestroyTask(taskId);
sub_800EDD4();
gSpecialVar_Result = 5;
}
break;
case 11:
- if (mevent_0814257C(&data->textState, gUnknown_082EFD58[data->field_12]))
+ if (MG_PrintTextOnWindow1AndWaitButton(&data->textState, gUnknown_082EFD58[data->field_12]))
{
- sub_800E084();
+ DestroyWirelessStatusIndicatorSprite();
DestroyTask(taskId);
sub_800EDD4();
gSpecialVar_Result = 5;
@@ -4513,7 +4513,7 @@ s32 sub_8017178(u8 *arg0, u8 *arg1, u8 *arg2, const struct WindowTemplate *winTe
{
case 0:
winTemplateCopy = *winTemplate;
- r1 = sub_81DB41C(menuTemplate);
+ r1 = Intl_GetListMenuWidth(menuTemplate);
if (winTemplateCopy.width > r1)
{
winTemplateCopy.width = r1;
diff --git a/src/union_room_chat.c b/src/union_room_chat.c
index 85cfa6e2e..120252d36 100755
--- a/src/union_room_chat.c
+++ b/src/union_room_chat.c
@@ -2074,7 +2074,7 @@ static void sub_801FDDC(u8 left, u8 top, u8 initialCursorPos)
PutWindowTilemap(gUnknown_02022C88->unk18);
AddTextPrinterParameterized(gUnknown_02022C88->unk18, 1, gText_Yes, 8, 1, TEXT_SPEED_FF, NULL);
AddTextPrinterParameterized(gUnknown_02022C88->unk18, 1, gText_No, 8, 17, TEXT_SPEED_FF, NULL);
- sub_8098858(gUnknown_02022C88->unk18, 1, 13);
+ DrawTextBorderOuter(gUnknown_02022C88->unk18, 1, 13);
InitMenuInUpperLeftCornerPlaySoundWhenAPressed(gUnknown_02022C88->unk18, 2, initialCursorPos);
}
}
@@ -2140,7 +2140,7 @@ static void sub_801FF18(int arg0, u16 arg1)
PutWindowTilemap(windowId);
if (gUnknown_082F2D40[arg0].unk4 == 1)
{
- sub_80989E0(windowId, 0xA, 2);
+ DrawTextBorderInner(windowId, 0xA, 2);
AddTextPrinterParameterized5(
windowId,
1,
@@ -2154,7 +2154,7 @@ static void sub_801FF18(int arg0, u16 arg1)
}
else
{
- sub_8098858(windowId, 0xA, 2);
+ DrawTextBorderOuter(windowId, 0xA, 2);
AddTextPrinterParameterized5(
windowId,
1,
@@ -2316,7 +2316,7 @@ static bool32 sub_8020368(void)
static void sub_80203B0(void)
{
FillWindowPixelBuffer(3, PIXEL_FILL(1));
- sub_8098858(3, 1, 13);
+ DrawTextBorderOuter(3, 1, 13);
PrintTextArray(3, 2, 8, 1, 14, 5, gUnknown_082F2DC8);
sub_81983AC(3, 2, 0, 1, 14, 5, sub_801F0B0());
PutWindowTilemap(3);
diff --git a/src/use_pokeblock.c b/src/use_pokeblock.c
index 6df826214..4eaf60be4 100644
--- a/src/use_pokeblock.c
+++ b/src/use_pokeblock.c
@@ -617,7 +617,7 @@ void sub_8166D44(void)
StringAppend(stringBuffer, gText_GetsAPokeBlockQuestion);
StringCopy(gStringVar4, stringBuffer);
FillWindowPixelBuffer(2, 17);
- sub_8098858(2, 151, 14);
+ DrawTextBorderOuter(2, 151, 14);
AddTextPrinterParameterized(2, 1, gStringVar4, 0, 1, 0, NULL);
PutWindowTilemap(2);
CopyWindowToVram(2, 3);
@@ -645,7 +645,7 @@ s8 sub_8166DE4(void)
void sub_8166E24(void)
{
- sub_8098858(2, 151, 14);
+ DrawTextBorderOuter(2, 151, 14);
FillWindowPixelBuffer(2, 17);
for (gUnknown_0203BC90->field_53 = 0; gUnknown_0203BC90->field_53 < 5; gUnknown_0203BC90->field_53++)
@@ -693,7 +693,7 @@ bool8 sub_8166EDC(void)
void sub_8166F50(void)
{
FillWindowPixelBuffer(2, 17);
- sub_8098858(2, 151, 14);
+ DrawTextBorderOuter(2, 151, 14);
AddTextPrinterParameterized(2, 1, gText_WontEatAnymore, 0, 1, 0, NULL);
PutWindowTilemap(2);
CopyWindowToVram(2, 3);