script_menu data
This commit is contained in:
+1
-1
@@ -111,7 +111,7 @@ void sub_815F094(void)
|
||||
{
|
||||
struct WindowTemplate template;
|
||||
|
||||
if (QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) != TRUE)
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
{
|
||||
template = SetWindowTemplateFields(0, 1, 1, 8, 3, 15, 32);
|
||||
gUnknown_203F464 = AddWindow(&template);
|
||||
|
||||
@@ -5,8 +5,6 @@
|
||||
#include "text_window.h"
|
||||
#include "strings.h"
|
||||
|
||||
extern const u8 gUnknown_8417C2D[];
|
||||
|
||||
EWRAM_DATA static u8 sCoinsWindowId = 0;
|
||||
|
||||
#define MAX_COINS 9999
|
||||
|
||||
+1
-12
@@ -26,6 +26,7 @@
|
||||
#include "menu_indicators.h"
|
||||
#include "text_window.h"
|
||||
#include "fame_checker.h"
|
||||
#include "strings.h"
|
||||
|
||||
#define SPRITETAG_SELECTOR_CURSOR 1000
|
||||
#define SPRITETAG_QUESTION_MARK 1001
|
||||
@@ -123,18 +124,6 @@ static void Task_FCOpenOrCloseInfoBox(u8 taskId);
|
||||
static void UpdateInfoBoxTilemap(u8 bg, s16 state);
|
||||
static void PlaceListMenuCursor(bool8 isActive);
|
||||
|
||||
extern const u8 gFameCheckerText_Cancel[];
|
||||
extern const u8 gFameCheckerText_ListMenuCursor[];
|
||||
extern const u8 gFameCheckerText_FameCheckerWillBeClosed[];
|
||||
extern const u8 gFameCheckerText_ClearTextbox[];
|
||||
extern const u8 gFameCheckerText_MainScreenUI[]; // "{KEYGFX_DPAD_ANY}PICK {KEYGFX_DPAD_UP_DOWN}SELECT {KEYGFX_A_BUTTON}OK$"
|
||||
extern const u8 gFameCheckerText_PickScreenUI[]; // "{KEYGFX_DPAD_ANY}PICK {KEYGFX_DPAD_UP_DOWN}SELECT {KEYGFX_B_BUTTON}CANCEL$"
|
||||
extern const u8 gFameCheckerText_FlavorTextUI[]; // "{KEYGFX_START_BUTTON}PICK {KEYGFX_A_BUTTON}READ {KEYGFX_B_BUTTON}CANCEL$"
|
||||
extern const u8 gFameCheckerOakName[]; // "OAK$"
|
||||
extern const u8 gFameCheckerDaisyName[]; // "DAISY$"
|
||||
extern const u8 gFameCheckerBillName[]; // "BILL$"
|
||||
extern const u8 gFameCheckerMrFujiName[]; // "FUJI$"
|
||||
|
||||
static const u16 sFameCheckerTilemap[] = INCBIN_U16("data/fame_checker/tilemap_845c600.bin");
|
||||
static const u8 sQuestionMarkSpriteGfx[] = INCBIN_U8("data/fame_checker/img_845ce00.4bpp");
|
||||
static const u8 sSpinningPokeballSpriteGfx[] = INCBIN_U8("data/fame_checker/img_845cf00.4bpp");
|
||||
|
||||
@@ -1064,7 +1064,7 @@ void Special_DrawElevatorCurrentFloorWindow(void)
|
||||
{
|
||||
const u8 *floorname;
|
||||
u32 strwidth;
|
||||
if (QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) != TRUE)
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
{
|
||||
sElevatorCurrentFloorWindowId = AddWindow(&sElevatorCurrentFloorWindowTemplate);
|
||||
TextWindow_SetStdFrame0_WithPal(sElevatorCurrentFloorWindowId, 0x21D, 0xD0);
|
||||
@@ -1137,7 +1137,7 @@ void Special_ListMenu(void)
|
||||
{
|
||||
u8 taskId;
|
||||
struct Task * task;
|
||||
if (QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) != TRUE)
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
{
|
||||
taskId = CreateTask(Task_CreateScriptListMenu, 8);
|
||||
task = &gTasks[taskId];
|
||||
|
||||
+60
-62
@@ -38,6 +38,7 @@
|
||||
#include "quest_log_8150454.h"
|
||||
#include "quest_log.h"
|
||||
#include "new_menu_helpers.h"
|
||||
#include "strings.h"
|
||||
|
||||
u8 gUnknown_3005E88;
|
||||
|
||||
@@ -100,7 +101,7 @@ static EWRAM_DATA u8 gUnknown_203ADFE[3] = {0};
|
||||
static EWRAM_DATA u16 *gUnknown_203AE04 = NULL;
|
||||
static EWRAM_DATA u16 *gUnknown_203AE08 = NULL;
|
||||
static EWRAM_DATA u16 *gUnknown_203AE0C[32] = {NULL};
|
||||
static EWRAM_DATA void (* gUnknown_203AE8C)(void) = NULL;
|
||||
static EWRAM_DATA void (* sQuestLogCB)(void) = NULL;
|
||||
static EWRAM_DATA u16 *gUnknown_203AE90 = NULL;
|
||||
static EWRAM_DATA struct UnkStruct_203AE94 gUnknown_203AE94 = {0};
|
||||
static EWRAM_DATA struct UnkStruct_203AE98 gUnknown_203AE98[32] = {0};
|
||||
@@ -135,17 +136,17 @@ static u16 QuestLog_GetSaneBoxCount(void);
|
||||
static void sub_8111688(void);
|
||||
static void sub_811175C(u8, struct UnkStruct_203AE98 *);
|
||||
static void sub_81118F4(s8);
|
||||
static void sub_8111914(void);
|
||||
static void sub_8111984(void);
|
||||
static void sub_8111A34(u8);
|
||||
static void QuestLog_AdvancePlayhead(void);
|
||||
static void QuestLog_EndPlayback(void);
|
||||
static void Task_RunPlaybackCB(u8);
|
||||
static void sub_8111AD8(void);
|
||||
static void sub_8111B80(void);
|
||||
static u8 sub_8111BD4(void);
|
||||
static void sub_8111D10(void);
|
||||
static void sub_8111D90(u8);
|
||||
static void sub_8111E20(void);
|
||||
static void sub_8111E64(s8);
|
||||
static void sub_8111E84(void);
|
||||
static void QuestLog_SkipToEndOfPlayback(s8);
|
||||
static void QuestLog_WaitFadeAndCancelPlayback(void);
|
||||
static bool8 sub_8111F60(void);
|
||||
static void sub_8111F8C(u8);
|
||||
static void sub_8111FCC(u8);
|
||||
@@ -177,7 +178,7 @@ static bool8 sub_8113954(u16, u16 *);
|
||||
static void sub_8113A1C(u16);
|
||||
static void sub_811381C(void);
|
||||
static bool8 sub_8113A44(u16, u16 *);
|
||||
static u16 *sub_8113A78(u16 *, u16 **);
|
||||
static u16 *QuestLog_SkipCommand(u16 *, u16 **);
|
||||
static void sub_8113ABC(u16 *);
|
||||
static bool8 sub_8113AE8(u16 *);
|
||||
static bool8 sub_8113B44(u16 *);
|
||||
@@ -437,9 +438,9 @@ void sub_811089C(void)
|
||||
memset(gSaveBlock1Ptr->questLog, 0, sizeof(gSaveBlock1Ptr->questLog));
|
||||
gUnknown_203ADF8 = 0;
|
||||
gUnknown_203ADFA = 0;
|
||||
gUnknown_203AE8C = 0;
|
||||
sQuestLogCB = 0;
|
||||
gUnknown_203AE08 = NULL;
|
||||
gUnknown_203AE04 = 0;
|
||||
gUnknown_203AE04 = NULL;
|
||||
sub_8113BD8();
|
||||
sub_81138F8();
|
||||
}
|
||||
@@ -455,10 +456,10 @@ void sub_8110920(void)
|
||||
gUnknown_203AE04 = NULL;
|
||||
}
|
||||
|
||||
void sub_811092C(void)
|
||||
void RunQuestLogCB(void)
|
||||
{
|
||||
if (gUnknown_203AE8C)
|
||||
gUnknown_203AE8C();
|
||||
if (sQuestLogCB)
|
||||
sQuestLogCB();
|
||||
}
|
||||
|
||||
bool8 sub_8110944(const void * a0, size_t a1)
|
||||
@@ -485,9 +486,9 @@ void sub_81109CC(u8 a0)
|
||||
{
|
||||
gUnknown_203ADFA = a0;
|
||||
if (a0 == 1)
|
||||
gUnknown_203AE8C = sub_8110A00;
|
||||
sQuestLogCB = sub_8110A00;
|
||||
else
|
||||
gUnknown_203AE8C = sub_8110A3C;
|
||||
sQuestLogCB = sub_8110A3C;
|
||||
}
|
||||
|
||||
static void sub_8110A00(void)
|
||||
@@ -497,7 +498,7 @@ static void sub_8110A00(void)
|
||||
gUnknown_3005E88 = 0;
|
||||
sub_8110E3C();
|
||||
gUnknown_203ADFA = 0;
|
||||
gUnknown_203AE8C = NULL;
|
||||
sQuestLogCB = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1194,7 +1195,7 @@ static void sub_811175C(u8 a0, struct UnkStruct_203AE98 * a1)
|
||||
r6++;
|
||||
break;
|
||||
default:
|
||||
r4 = sub_8113A78(r4, &gUnknown_203AE0C[r9]);
|
||||
r4 = QuestLog_SkipCommand(r4, &gUnknown_203AE0C[r9]);
|
||||
if (r9 == 0)
|
||||
sub_8113ABC(gUnknown_203AE0C[0]);
|
||||
r9++;
|
||||
@@ -1208,10 +1209,10 @@ static void sub_811175C(u8 a0, struct UnkStruct_203AE98 * a1)
|
||||
static void sub_81118F4(s8 a0)
|
||||
{
|
||||
fade_screen(1, a0);
|
||||
gUnknown_203AE8C = sub_8111914;
|
||||
sQuestLogCB = QuestLog_AdvancePlayhead;
|
||||
}
|
||||
|
||||
static void sub_8111914(void)
|
||||
static void QuestLog_AdvancePlayhead(void)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
@@ -1224,12 +1225,12 @@ static void sub_8111914(void)
|
||||
else
|
||||
{
|
||||
gUnknown_3005E88 = 0;
|
||||
sub_8111984();
|
||||
QuestLog_EndPlayback();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_8111984(void)
|
||||
static void QuestLog_EndPlayback(void)
|
||||
{
|
||||
ResetSpecialVars();
|
||||
Save_ResetSaveCounters();
|
||||
@@ -1238,15 +1239,15 @@ static void sub_8111984(void)
|
||||
gFieldCallback2 = sub_8111F60;
|
||||
FreeAllWindowBuffers();
|
||||
gUnknown_203ADFA = 3;
|
||||
gUnknown_203AE8C = NULL;
|
||||
sQuestLogCB = NULL;
|
||||
}
|
||||
|
||||
void sub_81119C8(void)
|
||||
{
|
||||
sub_8111914();
|
||||
QuestLog_AdvancePlayhead();
|
||||
}
|
||||
|
||||
bool8 QuestLog_ScheduleRoutineIfNotInPlaybackMode(void (*a0)(void))
|
||||
bool8 QuestLog_SchedulePlaybackCB(void (*callback)(void))
|
||||
{
|
||||
u8 taskId;
|
||||
|
||||
@@ -1257,16 +1258,16 @@ bool8 QuestLog_ScheduleRoutineIfNotInPlaybackMode(void (*a0)(void))
|
||||
break;
|
||||
case 2:
|
||||
gUnknown_3005E88 = 3;
|
||||
taskId = CreateTask(sub_8111A34, 80);
|
||||
taskId = CreateTask(Task_RunPlaybackCB, 80);
|
||||
gTasks[taskId].data[0] = 0;
|
||||
gTasks[taskId].data[1] = 0;
|
||||
SetWordTaskArg(taskId, 14, (uintptr_t)a0);
|
||||
SetWordTaskArg(taskId, 14, (uintptr_t)callback);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void sub_8111A34(u8 taskId)
|
||||
static void Task_RunPlaybackCB(u8 taskId)
|
||||
{
|
||||
void (*routine)(void);
|
||||
s16 *data = gTasks[taskId].data;
|
||||
@@ -1289,7 +1290,7 @@ static void sub_8111A34(u8 taskId)
|
||||
if (routine != NULL)
|
||||
routine();
|
||||
DestroyTask(taskId);
|
||||
gUnknown_203AE8C = sub_8111914;
|
||||
sQuestLogCB = QuestLog_AdvancePlayhead;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1384,7 +1385,7 @@ void sub_8111C68(void)
|
||||
{
|
||||
gUnknown_203AE94.unk_0_6 = 1;
|
||||
gUnknown_3005E88 = 0;
|
||||
sub_8111E64(-3);
|
||||
QuestLog_SkipToEndOfPlayback(-3);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1465,13 +1466,13 @@ static void sub_8111E20(void)
|
||||
CopyWindowToVram(gUnknown_203ADFE[1], 1);
|
||||
}
|
||||
|
||||
static void sub_8111E64(s8 a0)
|
||||
static void QuestLog_SkipToEndOfPlayback(s8 a0)
|
||||
{
|
||||
fade_screen(1, a0);
|
||||
gUnknown_203AE8C = sub_8111E84;
|
||||
sQuestLogCB = QuestLog_WaitFadeAndCancelPlayback;
|
||||
}
|
||||
|
||||
static void sub_8111E84(void)
|
||||
static void QuestLog_WaitFadeAndCancelPlayback(void)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
@@ -1483,7 +1484,7 @@ static void sub_8111E84(void)
|
||||
sub_811175C(gUnknown_203ADF8, gUnknown_203AE98);
|
||||
}
|
||||
gUnknown_3005E88 = 0;
|
||||
sub_8111984();
|
||||
QuestLog_EndPlayback();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1643,7 +1644,7 @@ void sub_811231C(void)
|
||||
sub_8110E68(gUnknown_203AE98);
|
||||
sub_8110E3C();
|
||||
gUnknown_203ADFA = 0;
|
||||
gUnknown_203AE8C = NULL;
|
||||
sQuestLogCB = NULL;
|
||||
gUnknown_203AE04 = NULL;
|
||||
gUnknown_203AE08 = NULL;
|
||||
gUnknown_3005E88 = 0;
|
||||
@@ -1659,7 +1660,7 @@ void sub_8112364(void)
|
||||
sub_8110E3C();
|
||||
gUnknown_3005E88 = 0;
|
||||
gUnknown_203ADFA = 0;
|
||||
gUnknown_203AE8C = NULL;
|
||||
sQuestLogCB = NULL;
|
||||
}
|
||||
gUnknown_203AE04 = NULL;
|
||||
gUnknown_203AE08 = NULL;
|
||||
@@ -3313,7 +3314,7 @@ static const u16 *(*const sQuestLogScriptParsingCBs[])(const u16 *) = {
|
||||
sub_8115800
|
||||
};
|
||||
|
||||
static const u8 gUnknown_8456AA0[] = {
|
||||
static const u8 sQuestLogEventCmdSizes[] = {
|
||||
0x08,
|
||||
0x08,
|
||||
0x08,
|
||||
@@ -3359,16 +3360,16 @@ static const u8 gUnknown_8456AA0[] = {
|
||||
0x06
|
||||
};
|
||||
|
||||
static u16 *sub_8113A78(u16 *a0, u16 **a1)
|
||||
static u16 *QuestLog_SkipCommand(u16 *curPtr, u16 **prevPtr_p)
|
||||
{
|
||||
u16 r2 = a0[0] & 0xfff;
|
||||
u16 r4 = a0[0] >> 12;
|
||||
if (r2 == 33)
|
||||
r4 = 0;
|
||||
if (r2 < 3 || r2 > 42)
|
||||
u16 idx = curPtr[0] & 0xfff;
|
||||
u16 cnt = curPtr[0] >> 12;
|
||||
if (idx == 33)
|
||||
cnt = 0;
|
||||
if (idx < 3 || idx > 42)
|
||||
return NULL;
|
||||
*a1 = a0;
|
||||
return gUnknown_8456AA0[r2] + (gUnknown_8456AA0[r2] - 4) * r4 + (void *)a0;
|
||||
*prevPtr_p = curPtr;
|
||||
return sQuestLogEventCmdSizes[idx] + (sQuestLogEventCmdSizes[idx] - 4) * cnt + (void *)curPtr;
|
||||
}
|
||||
|
||||
static void sub_8113ABC(u16 *a0)
|
||||
@@ -3484,7 +3485,7 @@ static void sub_8113BD8(void)
|
||||
|
||||
static u16 *sub_8113BF4(u16 *a0)
|
||||
{
|
||||
if (!sub_8110988(a0, gUnknown_8456AA0[39]))
|
||||
if (!sub_8110988(a0, sQuestLogEventCmdSizes[39]))
|
||||
return NULL;
|
||||
a0[0] = 39;
|
||||
return a0 + 1;
|
||||
@@ -3492,7 +3493,7 @@ static u16 *sub_8113BF4(u16 *a0)
|
||||
|
||||
static u16 *sub_8113C20(u16 *a0, struct UnkStruct_203AE98 * a1)
|
||||
{
|
||||
if (!sub_8110988(a0, gUnknown_8456AA0[39]))
|
||||
if (!sub_8110988(a0, sQuestLogEventCmdSizes[39]))
|
||||
return NULL;
|
||||
a1->unk_6 = 0xFF;
|
||||
a1->unk_4 = 0;
|
||||
@@ -3505,7 +3506,7 @@ static u16 *sub_8113C20(u16 *a0, struct UnkStruct_203AE98 * a1)
|
||||
|
||||
static u16 *sub_8113C5C(u16 *a0, u16 a1)
|
||||
{
|
||||
if (!sub_8110988(a0, gUnknown_8456AA0[41]))
|
||||
if (!sub_8110988(a0, sQuestLogEventCmdSizes[41]))
|
||||
return NULL;
|
||||
a0[0] = 41;
|
||||
a0[1] = a1;
|
||||
@@ -3514,7 +3515,7 @@ static u16 *sub_8113C5C(u16 *a0, u16 a1)
|
||||
|
||||
static u16 *sub_8113C8C(u16 *a0, struct UnkStruct_203AE98 * a1)
|
||||
{
|
||||
if (!sub_8110988(a0, gUnknown_8456AA0[41]))
|
||||
if (!sub_8110988(a0, sQuestLogEventCmdSizes[41]))
|
||||
return NULL;
|
||||
a1->unk_6 = 0xFE;
|
||||
a1->unk_4 = a0[1];
|
||||
@@ -3529,7 +3530,7 @@ static u16 *sub_8113CC8(u16 *a0, struct UnkStruct_203AE98 * a1)
|
||||
{
|
||||
u8 *r6 = (u8 *)a0 + 4;
|
||||
|
||||
if (!sub_8110988(a0, gUnknown_8456AA0[0]))
|
||||
if (!sub_8110988(a0, sQuestLogEventCmdSizes[0]))
|
||||
return NULL;
|
||||
a0[0] = 0;
|
||||
a0[1] = a1->unk_4;
|
||||
@@ -3544,7 +3545,7 @@ static u16 *sub_8113D08(u16 *a0, struct UnkStruct_203AE98 * a1)
|
||||
{
|
||||
u8 *r6 = (u8 *)a0 + 4;
|
||||
|
||||
if (!sub_8110988(a0, gUnknown_8456AA0[0]))
|
||||
if (!sub_8110988(a0, sQuestLogEventCmdSizes[0]))
|
||||
return NULL;
|
||||
a1->unk_6 = 2;
|
||||
a1->unk_4 = a0[1];
|
||||
@@ -3560,7 +3561,7 @@ static u16 *sub_8113D48(u16 *a0, struct UnkStruct_203AE98 * a1)
|
||||
u16 *r4 = a0;
|
||||
u8 *r6 = (u8 *)a0 + 4;
|
||||
|
||||
if (!sub_8110988(r4, gUnknown_8456AA0[2]))
|
||||
if (!sub_8110988(r4, sQuestLogEventCmdSizes[2]))
|
||||
return NULL;
|
||||
if (a1->unk_6 == 0)
|
||||
r4[0] = 2;
|
||||
@@ -3579,7 +3580,7 @@ static u16 *sub_8113D94(u16 *a0, struct UnkStruct_203AE98 * a1)
|
||||
u16 *r5 = a0;
|
||||
u8 *r6 = (u8 *)a0 + 4;
|
||||
|
||||
if (!sub_8110988(r5, gUnknown_8456AA0[2]))
|
||||
if (!sub_8110988(r5, sQuestLogEventCmdSizes[2]))
|
||||
return NULL;
|
||||
if (r5[0] == 2)
|
||||
a1->unk_6 = 0;
|
||||
@@ -3601,9 +3602,9 @@ u16 *sub_8113DE0(u16 a0, u16 *a1)
|
||||
u8 r1;
|
||||
|
||||
if (gUnknown_203B044.unk_1 == 0)
|
||||
r6 = gUnknown_8456AA0[a0];
|
||||
r6 = sQuestLogEventCmdSizes[a0];
|
||||
else
|
||||
r6 = gUnknown_8456AA0[a0] - 4;
|
||||
r6 = sQuestLogEventCmdSizes[a0] - 4;
|
||||
if (!sub_8110944(a1, r6))
|
||||
return NULL;
|
||||
|
||||
@@ -3635,13 +3636,10 @@ u16 *sub_8113DE0(u16 a0, u16 *a1)
|
||||
|
||||
static const u16 *sub_8113E88(u16 a0, const u16 *a1)
|
||||
{
|
||||
a1 = (const void *)a1 + (gUnknown_203B044.unk_2 * (gUnknown_8456AA0[a0] - 4) + 4);
|
||||
a1 = (const void *)a1 + (gUnknown_203B044.unk_2 * (sQuestLogEventCmdSizes[a0] - 4) + 4);
|
||||
return a1;
|
||||
}
|
||||
|
||||
// TODO: delete this declaration once data_83FECCC.s is decompiled
|
||||
extern const u8 gText_EggNickname[];
|
||||
|
||||
void QuestLog_AutoGetSpeciesName(u16 a0, u8 *a1, u8 a2)
|
||||
{
|
||||
if (a1 != NULL)
|
||||
@@ -3873,7 +3871,7 @@ static u16 *sub_81143F0(u16 *a0, const u16 *a1)
|
||||
if (gUnknown_203B044.unk_0 == 11 && gUnknown_203B044.unk_1 != 0)
|
||||
return r4;
|
||||
|
||||
if (!sub_8110944(a0, gUnknown_8456AA0[11]))
|
||||
if (!sub_8110944(a0, sQuestLogEventCmdSizes[11]))
|
||||
return NULL;
|
||||
|
||||
r4[0] = 11;
|
||||
@@ -4371,7 +4369,7 @@ static u16 *sub_8114DE8(u16 *a0, const u16 *a1)
|
||||
{
|
||||
u16 *r4 = a0;
|
||||
u8 *r5 = (u8 *)a0 + 8;
|
||||
if (!sub_8110944(r4, gUnknown_8456AA0[31]))
|
||||
if (!sub_8110944(r4, sQuestLogEventCmdSizes[31]))
|
||||
return NULL;
|
||||
if (r5[0] == 0 && r5[1] == 0)
|
||||
{
|
||||
@@ -4393,7 +4391,7 @@ static u16 *sub_8114DE8(u16 *a0, const u16 *a1)
|
||||
static const u16 *sub_8114E68(const u16 *a0)
|
||||
{
|
||||
const u8 *r6;
|
||||
if (!sub_8110944(a0, gUnknown_8456AA0[31]))
|
||||
if (!sub_8110944(a0, sQuestLogEventCmdSizes[31]))
|
||||
return NULL;
|
||||
|
||||
r6 = (const u8 *)a0 + 8;
|
||||
@@ -4473,7 +4471,7 @@ static const u16 *sub_811500C(const u16 *a0)
|
||||
|
||||
static u16 *sub_8115078(u16 *a0, const u16 *a1)
|
||||
{
|
||||
if (!sub_8110944(a0, gUnknown_8456AA0[33]))
|
||||
if (!sub_8110944(a0, sQuestLogEventCmdSizes[33]))
|
||||
return NULL;
|
||||
a0[0] = 0x2021;
|
||||
a0[1] = sQuestLogIdx;
|
||||
@@ -4487,7 +4485,7 @@ static u16 *sub_8115078(u16 *a0, const u16 *a1)
|
||||
static const u16 *sub_81150CC(const u16 *a0)
|
||||
{
|
||||
const u8 *r5;
|
||||
if (!sub_8110944(a0, gUnknown_8456AA0[33]))
|
||||
if (!sub_8110944(a0, sQuestLogEventCmdSizes[33]))
|
||||
return NULL;
|
||||
|
||||
r5 = (const u8 *)a0 + 8;
|
||||
|
||||
+2
-2
@@ -1835,7 +1835,7 @@ bool8 ScrCmd_showmoneybox(struct ScriptContext *ctx)
|
||||
u8 y = ScriptReadByte(ctx);
|
||||
u8 ignore = ScriptReadByte(ctx);
|
||||
|
||||
if (!ignore && QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) != TRUE)
|
||||
if (!ignore && QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
DrawMoneyBox(GetMoney(&gSaveBlock1Ptr->money), x, y);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -1865,7 +1865,7 @@ bool8 ScrCmd_showcoinsbox(struct ScriptContext *ctx)
|
||||
u8 x = ScriptReadByte(ctx);
|
||||
u8 y = ScriptReadByte(ctx);
|
||||
|
||||
if (QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) != TRUE)
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
ShowCoinsWindow(GetCoins(), x, y);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
+679
-65
@@ -16,6 +16,8 @@
|
||||
#include "event_scripts.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/seagallop.h"
|
||||
#include "constants/menu.h"
|
||||
|
||||
struct MultichoiceListStruct
|
||||
{
|
||||
@@ -33,20 +35,628 @@ void sub_809CD48(u8 mcId);
|
||||
void task_yes_no_maybe(u8 taskId);
|
||||
void sub_809CFDC(u8 taskId);
|
||||
void sub_809D070(void);
|
||||
bool8 sub_809D404(void);
|
||||
bool8 PicboxWait(void);
|
||||
void sub_809D6B0(u8 windowId);
|
||||
u8 CreateWindowFromRect(u8 left, u8 top, u8 width, u8 height);
|
||||
|
||||
extern const u8 *const gUnknown_83E072C[];
|
||||
extern const u8 *const gUnknown_83E0738[];
|
||||
extern const u8 *const gUnknown_83E0748[];
|
||||
extern const struct MultichoiceListStruct gUnknown_83E04B0[];
|
||||
extern const struct SpriteSheet sMuseumKabutopsSprSheets[];
|
||||
extern const u16 sMuseumKabutopsSprPalette[];
|
||||
extern const struct SpriteSheet sMuseumAerodactylSprSheets[];
|
||||
extern const u16 sMuseumAerodactylSprPalette[];
|
||||
extern const struct SpriteTemplate sMuseumFossilSprTemplate;
|
||||
extern const u8 *const gUnknown_83E17E0[];
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_0[] = {
|
||||
{ gUnknown_8417938 },
|
||||
{ gUnknown_841793C }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_2[] = {
|
||||
{ gUnknown_8417ADC },
|
||||
{ gUnknown_8417AE3 },
|
||||
{ gUnknown_8417AE9 },
|
||||
{ gUnknown_8417AEE }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_3[] = {
|
||||
{ gUnknown_84178F0 },
|
||||
{ gUnknown_8417907 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_4[] = {
|
||||
{ gUnknown_84178EB },
|
||||
{ gUnknown_8417907 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_5[] = {
|
||||
{ gUnknown_84178FD },
|
||||
{ gUnknown_8417907 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_6[] = {
|
||||
{ gUnknown_84178F0 },
|
||||
{ gUnknown_84178EB },
|
||||
{ gUnknown_8417907 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_7[] = {
|
||||
{ gUnknown_84178F0 },
|
||||
{ gUnknown_84178FD },
|
||||
{ gUnknown_8417907 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_8[] = {
|
||||
{ gUnknown_84178EB },
|
||||
{ gUnknown_84178FD },
|
||||
{ gUnknown_8417907 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_9[] = {
|
||||
{ gUnknown_84178F0 },
|
||||
{ gUnknown_84178EB },
|
||||
{ gUnknown_84178FD },
|
||||
{ gUnknown_8417907 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_15[] = {
|
||||
{ gUnknown_8417914 },
|
||||
{ gUnknown_841790C },
|
||||
{ gUnknown_8417910 },
|
||||
{ gUnknown_8417918 },
|
||||
{ gUnknown_841791C },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_16[] = {
|
||||
{ gUnknown_8417938 },
|
||||
{ gUnknown_841793C },
|
||||
{ gUnknown_84178E6 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_17[] = {
|
||||
{ gUnknown_8417944 },
|
||||
{ gUnknown_8417952 },
|
||||
{ gUnknown_8417960 },
|
||||
{ gUnknown_84178E6 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_18[] = {
|
||||
{ gUnknown_8417938 },
|
||||
{ gUnknown_841793C },
|
||||
{ gUnknown_84178E6 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_19[] = {
|
||||
{ gUnknown_841796D },
|
||||
{ gUnknown_841797F },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_20[] = {
|
||||
{ gUnknown_841806D },
|
||||
{ gUnknown_841805D },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_21[] = {
|
||||
{ gUnknown_8417D56 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_22[] = {
|
||||
{ gUnknown_8417D63 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_23[] = {
|
||||
{ gUnknown_8417D6F },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_24[] = {
|
||||
{ gUnknown_8417D56 },
|
||||
{ gUnknown_8417D6F },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_25[] = {
|
||||
{ gUnknown_8417D63 },
|
||||
{ gUnknown_8417D6F },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_26[] = {
|
||||
{ gUnknown_8417984 },
|
||||
{ gUnknown_841799A },
|
||||
{ gUnknown_84179AD },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_30[] = {
|
||||
{ gUnknown_8417A42 },
|
||||
{ gUnknown_8417A58 },
|
||||
{ gUnknown_8417A6E },
|
||||
{ gUnknown_8417A84 },
|
||||
{ gUnknown_8417A9A },
|
||||
{ gUnknown_8417D4C }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_41[] = {
|
||||
{ gUnknown_8417F4D },
|
||||
{ gUnknown_8417ED9 },
|
||||
{ gUnknown_8417EF7 },
|
||||
{ gUnknown_8417F11 },
|
||||
{ gUnknown_8417F2F },
|
||||
{ gUnknown_8417D4C }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_27[] = {
|
||||
{ gUnknown_84179C0 },
|
||||
{ gUnknown_84179D6 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_28[] = {
|
||||
{ gUnknown_84179ED },
|
||||
{ gUnknown_84179F7 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_29[] = {
|
||||
{ gUnknown_8417A37 },
|
||||
{ gUnknown_8417A3D }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_31[] = {
|
||||
{ gUnknown_8417ABC },
|
||||
{ gUnknown_8417AB9 },
|
||||
{ gUnknown_8417AB6 },
|
||||
{ gUnknown_8417AB3 },
|
||||
{ gUnknown_8417AB0 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_32[] = {
|
||||
{ gUnknown_8417C0F },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_33[] = {
|
||||
{ gUnknown_8417C1B },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_34[] = {
|
||||
{ gUnknown_8417C0F },
|
||||
{ gUnknown_8417C1B },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_35[] = {
|
||||
{ gUnknown_8417C24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_36[] = {
|
||||
{ gUnknown_8417C0F },
|
||||
{ gUnknown_8417C24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_37[] = {
|
||||
{ gUnknown_8417C1B },
|
||||
{ gUnknown_8417C24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_38[] = {
|
||||
{ gUnknown_8417C0F },
|
||||
{ gUnknown_8417C1B },
|
||||
{ gUnknown_8417C24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_Unref_Shards_0[] = {
|
||||
{ gUnknown_8417A24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_Unref_Shards_1[] = {
|
||||
{ gUnknown_8417A02 },
|
||||
{ gUnknown_8417A24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_Unref_Shards_2[] = {
|
||||
{ gUnknown_8417A0C },
|
||||
{ gUnknown_8417A24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_Unref_Shards_3[] = {
|
||||
{ gUnknown_8417A02 },
|
||||
{ gUnknown_8417A0C },
|
||||
{ gUnknown_8417A24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_Unref_Shards_4[] = {
|
||||
{ gUnknown_8417A19 },
|
||||
{ gUnknown_8417A24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_Unref_Shards_5[] = {
|
||||
{ gUnknown_8417A02 },
|
||||
{ gUnknown_8417A19 },
|
||||
{ gUnknown_8417A24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_Unref_Shards_6[] = {
|
||||
{ gUnknown_8417A0C },
|
||||
{ gUnknown_8417A19 },
|
||||
{ gUnknown_8417A24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_Unref_Shards_7[] = {
|
||||
{ gUnknown_8417A02 },
|
||||
{ gUnknown_8417A0C },
|
||||
{ gUnknown_8417A19 },
|
||||
{ gUnknown_8417A24 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_1[] = {
|
||||
{ gUnknown_8417BE2 },
|
||||
{ gUnknown_8417BE8 },
|
||||
{ gUnknown_8417BF0 },
|
||||
{ gUnknown_8417BF8 },
|
||||
{ gUnknown_8417C01 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_13[] = {
|
||||
{ gUnknown_8417C33 },
|
||||
{ gUnknown_8417C4B }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_14[] = {
|
||||
{ gUnknown_8417C55 },
|
||||
{ gUnknown_8417C6A },
|
||||
{ gUnknown_8417C83 },
|
||||
{ gUnknown_8417C9D },
|
||||
{ gUnknown_8417CB7 },
|
||||
{ gUnknown_8417D4C }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_39[] = {
|
||||
{ gUnknown_8417D79 },
|
||||
{ gUnknown_8417D86 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_40[] = {
|
||||
{ gUnknown_8417D90 },
|
||||
{ gUnknown_8417DA0 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_42[] = {
|
||||
{ gUnknown_841805D },
|
||||
{ gUnknown_8418061 },
|
||||
{ gUnknown_8418069 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_43[] = {
|
||||
{ gUnknown_841807D },
|
||||
{ gUnknown_841808E },
|
||||
{ gUnknown_841809C },
|
||||
{ gOtherText_Quit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_44[] = {
|
||||
{ gUnknown_8417DFE },
|
||||
{ gUnknown_8417E09 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_45[] = {
|
||||
{ gUnknown_8417DF3 },
|
||||
{ gUnknown_8417E09 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_46[] = {
|
||||
{ gUnknown_8417DF3 },
|
||||
{ gUnknown_8417DFE },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_47[] = {
|
||||
{ gUnknown_8417D79 },
|
||||
{ gUnknown_8417E50 },
|
||||
{ gUnknown_8417E5A },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_48[] = {
|
||||
{ gUnknown_8417E66 },
|
||||
{ gUnknown_8417E67 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_50[] = {
|
||||
{ gUnknown_8417D79 },
|
||||
{ gUnknown_8417E50 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_49[] = {
|
||||
{ gUnknown_8417E72 },
|
||||
{ gUnknown_8417E7F },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_51[] = {
|
||||
{ gUnknown_8417E94 },
|
||||
{ gUnknown_8417EA4 }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_52[] = {
|
||||
{ gUnknown_8417D79 },
|
||||
{ gUnknown_8417E50 },
|
||||
{ gUnknown_8417E71 },
|
||||
{ gUnknown_8417E5A },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_53[] = {
|
||||
{ gUnknown_8417D79 },
|
||||
{ gUnknown_8417E50 },
|
||||
{ gUnknown_8417E71 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_54[] = {
|
||||
{ gUnknown_8417EB3 },
|
||||
{ gUnknown_8417EC1 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_55[] = {
|
||||
{ gUnknown_8417EB3 },
|
||||
{ gUnknown_8417ECC },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_56[] = {
|
||||
{ gUnknown_8417EB3 },
|
||||
{ gUnknown_8417EC1 },
|
||||
{ gUnknown_8417ECC },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_57[] = {
|
||||
{ gUnknown_8417DF3 },
|
||||
{ gUnknown_8417DFE },
|
||||
{ gUnknown_8417E09 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_58[] = {
|
||||
{ gUnknown_8417E46 },
|
||||
{ gUnknown_8417DFE },
|
||||
{ gUnknown_8417E09 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_59[] = {
|
||||
{ gUnknown_8417E46 },
|
||||
{ gUnknown_8417DF3 },
|
||||
{ gUnknown_8417E09 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_60[] = {
|
||||
{ gUnknown_8417E46 },
|
||||
{ gUnknown_8417DF3 },
|
||||
{ gUnknown_8417DFE },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_61[] = {
|
||||
{ gUnknown_8417E46 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_62[] = {
|
||||
{ gUnknown_8417F68 },
|
||||
{ gUnknown_8417F67 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_63[] = {
|
||||
{ gUnknown_8417F77 },
|
||||
{ gUnknown_8417F69 },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_64[] = {
|
||||
{ gOtherText_Single },
|
||||
{ gOtherText_Double },
|
||||
{ gOtherText_Knockout },
|
||||
{ gOtherText_Mixed },
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
static const struct MenuAction sScriptMultiChoiceMenu_10[] = {
|
||||
{ gOtherText_Exit }
|
||||
};
|
||||
|
||||
const struct MultichoiceListStruct gScriptMultiChoiceMenus[] = {
|
||||
{ sScriptMultiChoiceMenu_0, NELEMS(sScriptMultiChoiceMenu_0) },
|
||||
{ sScriptMultiChoiceMenu_1, NELEMS(sScriptMultiChoiceMenu_1) },
|
||||
{ sScriptMultiChoiceMenu_2, NELEMS(sScriptMultiChoiceMenu_2) },
|
||||
{ sScriptMultiChoiceMenu_3, NELEMS(sScriptMultiChoiceMenu_3) },
|
||||
{ sScriptMultiChoiceMenu_4, NELEMS(sScriptMultiChoiceMenu_4) },
|
||||
{ sScriptMultiChoiceMenu_5, NELEMS(sScriptMultiChoiceMenu_5) },
|
||||
{ sScriptMultiChoiceMenu_6, NELEMS(sScriptMultiChoiceMenu_6) },
|
||||
{ sScriptMultiChoiceMenu_7, NELEMS(sScriptMultiChoiceMenu_7) },
|
||||
{ sScriptMultiChoiceMenu_8, NELEMS(sScriptMultiChoiceMenu_8) },
|
||||
{ sScriptMultiChoiceMenu_9, NELEMS(sScriptMultiChoiceMenu_9) },
|
||||
{ sScriptMultiChoiceMenu_10, NELEMS(sScriptMultiChoiceMenu_10) },
|
||||
{ sScriptMultiChoiceMenu_10, NELEMS(sScriptMultiChoiceMenu_10) },
|
||||
{ sScriptMultiChoiceMenu_10, NELEMS(sScriptMultiChoiceMenu_10) },
|
||||
{ sScriptMultiChoiceMenu_13, NELEMS(sScriptMultiChoiceMenu_13) },
|
||||
{ sScriptMultiChoiceMenu_14, NELEMS(sScriptMultiChoiceMenu_14) },
|
||||
{ sScriptMultiChoiceMenu_15, NELEMS(sScriptMultiChoiceMenu_15) },
|
||||
{ sScriptMultiChoiceMenu_16, NELEMS(sScriptMultiChoiceMenu_16) },
|
||||
{ sScriptMultiChoiceMenu_17, NELEMS(sScriptMultiChoiceMenu_17) },
|
||||
{ sScriptMultiChoiceMenu_18, NELEMS(sScriptMultiChoiceMenu_18) },
|
||||
{ sScriptMultiChoiceMenu_19, NELEMS(sScriptMultiChoiceMenu_19) },
|
||||
{ sScriptMultiChoiceMenu_20, NELEMS(sScriptMultiChoiceMenu_20) },
|
||||
{ sScriptMultiChoiceMenu_21, NELEMS(sScriptMultiChoiceMenu_21) },
|
||||
{ sScriptMultiChoiceMenu_22, NELEMS(sScriptMultiChoiceMenu_22) },
|
||||
{ sScriptMultiChoiceMenu_23, NELEMS(sScriptMultiChoiceMenu_23) },
|
||||
{ sScriptMultiChoiceMenu_24, NELEMS(sScriptMultiChoiceMenu_24) },
|
||||
{ sScriptMultiChoiceMenu_25, NELEMS(sScriptMultiChoiceMenu_25) },
|
||||
{ sScriptMultiChoiceMenu_26, NELEMS(sScriptMultiChoiceMenu_26) },
|
||||
{ sScriptMultiChoiceMenu_27, NELEMS(sScriptMultiChoiceMenu_27) },
|
||||
{ sScriptMultiChoiceMenu_28, NELEMS(sScriptMultiChoiceMenu_28) },
|
||||
{ sScriptMultiChoiceMenu_29, NELEMS(sScriptMultiChoiceMenu_29) },
|
||||
{ sScriptMultiChoiceMenu_30, NELEMS(sScriptMultiChoiceMenu_30) },
|
||||
{ sScriptMultiChoiceMenu_31, NELEMS(sScriptMultiChoiceMenu_31) },
|
||||
{ sScriptMultiChoiceMenu_32, NELEMS(sScriptMultiChoiceMenu_32) },
|
||||
{ sScriptMultiChoiceMenu_33, NELEMS(sScriptMultiChoiceMenu_33) },
|
||||
{ sScriptMultiChoiceMenu_34, NELEMS(sScriptMultiChoiceMenu_34) },
|
||||
{ sScriptMultiChoiceMenu_35, NELEMS(sScriptMultiChoiceMenu_35) },
|
||||
{ sScriptMultiChoiceMenu_36, NELEMS(sScriptMultiChoiceMenu_36) },
|
||||
{ sScriptMultiChoiceMenu_37, NELEMS(sScriptMultiChoiceMenu_37) },
|
||||
{ sScriptMultiChoiceMenu_38, NELEMS(sScriptMultiChoiceMenu_38) },
|
||||
{ sScriptMultiChoiceMenu_39, NELEMS(sScriptMultiChoiceMenu_39) },
|
||||
{ sScriptMultiChoiceMenu_40, NELEMS(sScriptMultiChoiceMenu_40) },
|
||||
{ sScriptMultiChoiceMenu_41, NELEMS(sScriptMultiChoiceMenu_41) },
|
||||
{ sScriptMultiChoiceMenu_42, NELEMS(sScriptMultiChoiceMenu_42) },
|
||||
{ sScriptMultiChoiceMenu_43, NELEMS(sScriptMultiChoiceMenu_43) },
|
||||
{ sScriptMultiChoiceMenu_44, NELEMS(sScriptMultiChoiceMenu_44) },
|
||||
{ sScriptMultiChoiceMenu_45, NELEMS(sScriptMultiChoiceMenu_45) },
|
||||
{ sScriptMultiChoiceMenu_46, NELEMS(sScriptMultiChoiceMenu_46) },
|
||||
{ sScriptMultiChoiceMenu_47, NELEMS(sScriptMultiChoiceMenu_47) },
|
||||
{ sScriptMultiChoiceMenu_48, NELEMS(sScriptMultiChoiceMenu_48) },
|
||||
{ sScriptMultiChoiceMenu_49, NELEMS(sScriptMultiChoiceMenu_49) },
|
||||
{ sScriptMultiChoiceMenu_50, NELEMS(sScriptMultiChoiceMenu_50) },
|
||||
{ sScriptMultiChoiceMenu_51, NELEMS(sScriptMultiChoiceMenu_51) },
|
||||
{ sScriptMultiChoiceMenu_52, NELEMS(sScriptMultiChoiceMenu_52) },
|
||||
{ sScriptMultiChoiceMenu_53, NELEMS(sScriptMultiChoiceMenu_53) },
|
||||
{ sScriptMultiChoiceMenu_54, NELEMS(sScriptMultiChoiceMenu_54) },
|
||||
{ sScriptMultiChoiceMenu_55, NELEMS(sScriptMultiChoiceMenu_55) },
|
||||
{ sScriptMultiChoiceMenu_56, NELEMS(sScriptMultiChoiceMenu_56) },
|
||||
{ sScriptMultiChoiceMenu_57, NELEMS(sScriptMultiChoiceMenu_57) },
|
||||
{ sScriptMultiChoiceMenu_58, NELEMS(sScriptMultiChoiceMenu_58) },
|
||||
{ sScriptMultiChoiceMenu_59, NELEMS(sScriptMultiChoiceMenu_59) },
|
||||
{ sScriptMultiChoiceMenu_60, NELEMS(sScriptMultiChoiceMenu_60) },
|
||||
{ sScriptMultiChoiceMenu_61, NELEMS(sScriptMultiChoiceMenu_61) },
|
||||
{ sScriptMultiChoiceMenu_62, NELEMS(sScriptMultiChoiceMenu_62) },
|
||||
{ sScriptMultiChoiceMenu_63, NELEMS(sScriptMultiChoiceMenu_63) },
|
||||
{ sScriptMultiChoiceMenu_64, NELEMS(sScriptMultiChoiceMenu_64) }
|
||||
};
|
||||
|
||||
const u8 *const gStdStringPtrs[] = {
|
||||
gUnknown_8417ABF,
|
||||
gUnknown_8417AC4,
|
||||
gUnknown_8417ACB,
|
||||
gUnknown_8417AD0,
|
||||
gUnknown_8417AD6,
|
||||
gUnknown_8417AF4,
|
||||
gUnknown_8417AF9,
|
||||
gUnknown_8417B00,
|
||||
gUnknown_8417B05,
|
||||
gUnknown_8417B0B,
|
||||
gUnknown_8417B11,
|
||||
gUnknown_8417B17,
|
||||
gUnknown_8417B21,
|
||||
gUnknown_8417B2C,
|
||||
gUnknown_8417B36,
|
||||
gUnknown_8417B3E,
|
||||
gUnknown_8417B4B,
|
||||
gUnknown_8417B58,
|
||||
gUnknown_8417B65,
|
||||
gUnknown_8417B72,
|
||||
gUnknown_8417B7C,
|
||||
gUnknown_8417B87,
|
||||
gUnknown_8417B94,
|
||||
gUnknown_8417C2D,
|
||||
gUnknown_8417DA9,
|
||||
gUnknown_8417DB6,
|
||||
gUnknown_8417DC7,
|
||||
gUnknown_8417DD9,
|
||||
gUnknown_8417DE1
|
||||
};
|
||||
|
||||
static const u8 *const gUnknown_83E072C[] = {
|
||||
Text_1BC388,
|
||||
Text_1BC3C7,
|
||||
Text_1BCB42
|
||||
};
|
||||
|
||||
static const u8 *const gUnknown_83E0738[] = {
|
||||
Text_1BCA95,
|
||||
Text_1BCACB,
|
||||
Text_1BCAF2,
|
||||
Text_1BCB42
|
||||
};
|
||||
|
||||
static const u8 *const gUnknown_83E0748[] = {
|
||||
Text_1BCA95,
|
||||
Text_1BCACB,
|
||||
Text_1BCB42
|
||||
};
|
||||
|
||||
static const union AnimCmd sMuseumFossilAnim0[] = {
|
||||
ANIMCMD_FRAME(0, 10),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
static const union AnimCmd *const sMuseumFossilAnimCmdTable[] = {
|
||||
sMuseumFossilAnim0
|
||||
};
|
||||
|
||||
static const struct OamData sMuseumFossilOamData = {
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.size = SPRITE_SIZE(64x64)
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate sMuseumFossilSprTemplate = {
|
||||
.tileTag = 7000,
|
||||
.paletteTag = 0xFFFF,
|
||||
.oam = &sMuseumFossilOamData,
|
||||
.anims = sMuseumFossilAnimCmdTable,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = SpriteCallbackDummy
|
||||
};
|
||||
|
||||
static const u16 sMuseumAerodactylSprTiles[] = INCBIN_U16("data/script_menu/aerodactyl_fossil.4bpp");
|
||||
static const u16 sMuseumAerodactylSprPalette[] = INCBIN_U16("data/script_menu/aerodactyl_fossil.gbapal");
|
||||
static const u16 sMuseumKabutopsSprTiles[] = INCBIN_U16("data/script_menu/kabutops_fossil.4bpp");
|
||||
static const u16 sMuseumKabutopsSprPalette[] = INCBIN_U16("data/script_menu/kabutops_fossil.gbapal");
|
||||
|
||||
static const struct SpriteSheet sMuseumKabutopsSprSheets[] = {
|
||||
{sMuseumKabutopsSprTiles, 0x800, 7000},
|
||||
{}
|
||||
};
|
||||
|
||||
static const struct SpriteSheet sMuseumAerodactylSprSheets[] = {
|
||||
{sMuseumAerodactylSprTiles, 0x800, 7000},
|
||||
{}
|
||||
};
|
||||
|
||||
|
||||
static const u8 *const sSeaGallopDestStrings[] = {
|
||||
gUnknown_8417E46,
|
||||
gUnknown_8417DF3,
|
||||
gUnknown_8417DFE,
|
||||
gUnknown_8417E09,
|
||||
gUnknown_8417E16,
|
||||
gUnknown_8417E22,
|
||||
gUnknown_8417E2E,
|
||||
gUnknown_8417E39
|
||||
};
|
||||
|
||||
u16 sub_809C954(const u8 *str)
|
||||
{
|
||||
@@ -72,7 +682,7 @@ bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 mcId, u8 ignoreBpress)
|
||||
{
|
||||
if (FuncIsActiveTask(sub_809CC98) == TRUE)
|
||||
return FALSE;
|
||||
gSpecialVar_Result = 0xFF;
|
||||
gSpecialVar_Result = SCR_MENU_UNSET;
|
||||
sub_809CA64(left, top, mcId, ignoreBpress, 0);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -81,7 +691,7 @@ bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 mcId, u8 ignoreBpres
|
||||
{
|
||||
if (FuncIsActiveTask(sub_809CC98) == TRUE)
|
||||
return FALSE;
|
||||
gSpecialVar_Result = 0xFF;
|
||||
gSpecialVar_Result = SCR_MENU_UNSET;
|
||||
sub_809CA64(left, top, mcId, ignoreBpress, cursorPos);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -97,11 +707,11 @@ void sub_809CA64(u8 left, u8 top, u8 mcId, u8 ignoreBpress, u8 initPos)
|
||||
u8 windowId;
|
||||
const struct MenuAction * list;
|
||||
|
||||
if ((ignoreBpress & 2) || QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) != TRUE)
|
||||
if ((ignoreBpress & 2) || QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
{
|
||||
ignoreBpress &= 1;
|
||||
count = gUnknown_83E04B0[mcId].count;
|
||||
list = gUnknown_83E04B0[mcId].list;
|
||||
count = gScriptMultiChoiceMenus[mcId].count;
|
||||
list = gScriptMultiChoiceMenus[mcId].list;
|
||||
strWidth = 0;
|
||||
for (i = 0; i < count; i++)
|
||||
{
|
||||
@@ -194,7 +804,7 @@ void sub_809CC98(u8 taskId)
|
||||
if (data[4])
|
||||
return;
|
||||
PlaySE(SE_SELECT);
|
||||
gSpecialVar_Result = 127;
|
||||
gSpecialVar_Result = SCR_MENU_CANCEL;
|
||||
break;
|
||||
default:
|
||||
gSpecialVar_Result = input;
|
||||
@@ -230,8 +840,8 @@ bool8 ScriptMenu_YesNo(u8 unused, u8 stuff)
|
||||
{
|
||||
if (FuncIsActiveTask(task_yes_no_maybe) == TRUE)
|
||||
return FALSE;
|
||||
gSpecialVar_Result = 255;
|
||||
if (!QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4))
|
||||
gSpecialVar_Result = SCR_MENU_UNSET;
|
||||
if (!QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites))
|
||||
{
|
||||
DisplayYesNoMenuDefaultYes();
|
||||
CreateTask(task_yes_no_maybe, 80);
|
||||
@@ -241,7 +851,7 @@ bool8 ScriptMenu_YesNo(u8 unused, u8 stuff)
|
||||
|
||||
bool8 sub_809CE38(void)
|
||||
{
|
||||
if (gSpecialVar_Result == 255)
|
||||
if (gSpecialVar_Result == SCR_MENU_UNSET)
|
||||
return FALSE;
|
||||
else
|
||||
return TRUE;
|
||||
@@ -284,11 +894,11 @@ bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, u8 a4, u8 co
|
||||
u8 taskId;
|
||||
if (FuncIsActiveTask(sub_809CFDC) == TRUE)
|
||||
return FALSE;
|
||||
gSpecialVar_Result = 255;
|
||||
if (QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) != TRUE)
|
||||
gSpecialVar_Result = SCR_MENU_UNSET;
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
{
|
||||
list = gUnknown_83E04B0[multichoiceId].list;
|
||||
count = gUnknown_83E04B0[multichoiceId].count;
|
||||
list = gScriptMultiChoiceMenus[multichoiceId].list;
|
||||
count = gScriptMultiChoiceMenus[multichoiceId].count;
|
||||
width = sub_809C974(list, count) + 1;
|
||||
rowCount = count / columnCount;
|
||||
taskId = CreateTask(sub_809CFDC, 80);
|
||||
@@ -314,7 +924,7 @@ void sub_809CFDC(u8 taskId)
|
||||
if (data[4])
|
||||
return;
|
||||
PlaySE(SE_SELECT);
|
||||
gSpecialVar_Result = 127;
|
||||
gSpecialVar_Result = SCR_MENU_CANCEL;
|
||||
break;
|
||||
default:
|
||||
gSpecialVar_Result = input;
|
||||
@@ -329,7 +939,7 @@ bool8 ScrSpecial_CreatePCMenu(void)
|
||||
{
|
||||
if (FuncIsActiveTask(sub_809CC98) == TRUE)
|
||||
return FALSE;
|
||||
gSpecialVar_Result = 255;
|
||||
gSpecialVar_Result = SCR_MENU_UNSET;
|
||||
sub_809D070();
|
||||
return TRUE;
|
||||
}
|
||||
@@ -392,7 +1002,7 @@ void ScriptMenu_DisplayPCStartupPrompt(void)
|
||||
AddTextPrinterParameterized2(0, 2, gUnknown_81A508A, 0, NULL, 2, 1, 3);
|
||||
}
|
||||
|
||||
void sub_809D288(u8 taskId)
|
||||
static void Task_ScriptShowMonPic(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
switch (task->data[0])
|
||||
@@ -417,12 +1027,12 @@ bool8 ScriptMenu_ShowPokemonPic(u16 species, u8 x, u8 y)
|
||||
{
|
||||
u8 spriteId;
|
||||
u8 taskId;
|
||||
if (QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) == TRUE)
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) == TRUE)
|
||||
return TRUE;
|
||||
if (FindTaskIdByFunc(sub_809D288) != 0xFF)
|
||||
if (FindTaskIdByFunc(Task_ScriptShowMonPic) != 0xFF)
|
||||
return FALSE;
|
||||
spriteId = sub_8083970(species, 8 * x + 40, 8 * y + 40, FALSE);
|
||||
taskId = CreateTask(sub_809D288, 80);
|
||||
taskId = CreateTask(Task_ScriptShowMonPic, 80);
|
||||
gTasks[taskId].data[5] = CreateWindowFromRect(x, y, 8, 8);
|
||||
gTasks[taskId].data[0] = 0;
|
||||
gTasks[taskId].data[1] = species;
|
||||
@@ -436,16 +1046,16 @@ bool8 ScriptMenu_ShowPokemonPic(u16 species, u8 x, u8 y)
|
||||
|
||||
bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void)
|
||||
{
|
||||
u8 taskId = FindTaskIdByFunc(sub_809D288);
|
||||
u8 taskId = FindTaskIdByFunc(Task_ScriptShowMonPic);
|
||||
if (taskId == 0xFF)
|
||||
return NULL;
|
||||
gTasks[taskId].data[0]++;
|
||||
return sub_809D404;
|
||||
return PicboxWait;
|
||||
}
|
||||
|
||||
bool8 sub_809D404(void)
|
||||
bool8 PicboxWait(void)
|
||||
{
|
||||
if (FindTaskIdByFunc(sub_809D288) == 0xFF)
|
||||
if (FindTaskIdByFunc(Task_ScriptShowMonPic) == 0xFF)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
@@ -453,7 +1063,7 @@ bool8 sub_809D404(void)
|
||||
|
||||
void sub_809D424(void)
|
||||
{
|
||||
u8 taskId = FindTaskIdByFunc(sub_809D288);
|
||||
u8 taskId = FindTaskIdByFunc(Task_ScriptShowMonPic);
|
||||
struct Task * task;
|
||||
if (taskId != 0xFF)
|
||||
{
|
||||
@@ -501,7 +1111,7 @@ bool8 Special_OpenMuseumFossilPic(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
u8 taskId;
|
||||
if (QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) == TRUE)
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) == TRUE)
|
||||
return TRUE;
|
||||
if (FindTaskIdByFunc(sub_809D494) != 0xFF)
|
||||
return FALSE;
|
||||
@@ -554,12 +1164,12 @@ void sub_809D6B0(u8 windowId)
|
||||
RemoveWindow(windowId);
|
||||
}
|
||||
|
||||
void sub_809D6D4(void)
|
||||
void QLPlaybackCB_DestroyScriptMenuMonPicSprites(void)
|
||||
{
|
||||
u8 taskId;
|
||||
s16 *data;
|
||||
ScriptContext1_SetupScript(EventScript_1A7AE0);
|
||||
taskId = FindTaskIdByFunc(sub_809D288);
|
||||
taskId = FindTaskIdByFunc(Task_ScriptShowMonPic);
|
||||
if (taskId != 0xFF)
|
||||
{
|
||||
data = gTasks[taskId].data;
|
||||
@@ -578,8 +1188,10 @@ void sub_809D6D4(void)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_809D764(void)
|
||||
void Special_DrawSeaGallopDestinationMenu(void)
|
||||
{
|
||||
// 8004 = Starting location
|
||||
// 8005 = Page (0: Verm, One, Two, Three, Four, Other, Exit; 1: Four, Five, Six, Seven, Other, Exit)
|
||||
u8 r4;
|
||||
u8 top;
|
||||
u8 nitems;
|
||||
@@ -587,21 +1199,21 @@ void sub_809D764(void)
|
||||
u8 fontHeight;
|
||||
u8 windowId;
|
||||
u8 i;
|
||||
gSpecialVar_Result = 255;
|
||||
if (QuestLog_ScheduleRoutineIfNotInPlaybackMode(sub_809D6D4) != TRUE)
|
||||
gSpecialVar_Result = SCR_MENU_UNSET;
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
{
|
||||
if (gSpecialVar_0x8005 == 1)
|
||||
{
|
||||
if (gSpecialVar_0x8004 < 5)
|
||||
r4 = 5;
|
||||
if (gSpecialVar_0x8004 < SEAGALLOP_FIVE_ISLAND)
|
||||
r4 = SEAGALLOP_FIVE_ISLAND;
|
||||
else
|
||||
r4 = 4;
|
||||
r4 = SEAGALLOP_FOUR_ISLAND;
|
||||
nitems = 5;
|
||||
top = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
r4 = 0;
|
||||
r4 = SEAGALLOP_VERMILION_CITY;
|
||||
nitems = 6;
|
||||
top = 0;
|
||||
}
|
||||
@@ -612,12 +1224,12 @@ void sub_809D764(void)
|
||||
for (i = 0; i < nitems - 2; i++)
|
||||
{
|
||||
if (r4 != gSpecialVar_0x8004)
|
||||
AddTextPrinterParameterized(windowId, 2, gUnknown_83E17E0[r4], cursorWidth, i * 16 + 2, 0xFF, NULL);
|
||||
AddTextPrinterParameterized(windowId, 2, sSeaGallopDestStrings[r4], cursorWidth, i * 16 + 2, 0xFF, NULL);
|
||||
else
|
||||
i--;
|
||||
r4++;
|
||||
if (r4 == 8)
|
||||
r4 = 0;
|
||||
if (r4 == SEAGALLOP_CINNABAR_ISLAND)
|
||||
r4 = SEAGALLOP_VERMILION_CITY;
|
||||
}
|
||||
AddTextPrinterParameterized(windowId, 2, gUnknown_8417DED, cursorWidth, i * 16 + 2, 0xFF, NULL);
|
||||
i++;
|
||||
@@ -628,52 +1240,54 @@ void sub_809D764(void)
|
||||
}
|
||||
}
|
||||
|
||||
u16 sub_809D8C0(void)
|
||||
u16 Special_GetSelectedSeaGallopDestination(void)
|
||||
{
|
||||
if (gSpecialVar_Result == 127)
|
||||
return 127;
|
||||
// 8004 = Starting location
|
||||
// 8005 = Page (0: Verm, One, Two, Three, Four, Other, Exit; 1: Four, Five, Six, Seven, Other, Exit)
|
||||
if (gSpecialVar_Result == SCR_MENU_CANCEL)
|
||||
return SCR_MENU_CANCEL;
|
||||
if (gSpecialVar_0x8005 == 1)
|
||||
{
|
||||
if (gSpecialVar_Result == 3)
|
||||
{
|
||||
return 254;
|
||||
return SEAGALLOP_MORE;
|
||||
}
|
||||
else if (gSpecialVar_Result == 4)
|
||||
{
|
||||
return 127;
|
||||
return SCR_MENU_CANCEL;
|
||||
}
|
||||
else if (gSpecialVar_Result == 0)
|
||||
{
|
||||
if (gSpecialVar_0x8004 > 4)
|
||||
return 4;
|
||||
if (gSpecialVar_0x8004 > SEAGALLOP_FOUR_ISLAND)
|
||||
return SEAGALLOP_FOUR_ISLAND;
|
||||
else
|
||||
return 5;
|
||||
return SEAGALLOP_FIVE_ISLAND;
|
||||
}
|
||||
else if (gSpecialVar_Result == 1)
|
||||
{
|
||||
if (gSpecialVar_0x8004 > 5)
|
||||
return 5;
|
||||
if (gSpecialVar_0x8004 > SEAGALLOP_FIVE_ISLAND)
|
||||
return SEAGALLOP_FIVE_ISLAND;
|
||||
else
|
||||
return 6;
|
||||
return SEAGALLOP_SIX_ISLAND;
|
||||
}
|
||||
else if (gSpecialVar_Result == 2)
|
||||
{
|
||||
if (gSpecialVar_0x8004 > 6)
|
||||
return 6;
|
||||
if (gSpecialVar_0x8004 > SEAGALLOP_SIX_ISLAND)
|
||||
return SEAGALLOP_SIX_ISLAND;
|
||||
else
|
||||
return 7;
|
||||
return SEAGALLOP_SEVEN_ISLAND;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (gSpecialVar_Result == 4)
|
||||
return 254;
|
||||
return SEAGALLOP_MORE;
|
||||
else if (gSpecialVar_Result == 5)
|
||||
return 127;
|
||||
return SCR_MENU_CANCEL;
|
||||
else if (gSpecialVar_Result >= gSpecialVar_0x8004)
|
||||
return gSpecialVar_Result + 1;
|
||||
else
|
||||
return gSpecialVar_Result;
|
||||
}
|
||||
return 0;
|
||||
return SEAGALLOP_VERMILION_CITY;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user