diff --git a/src/game/data/data_01a3a0.c b/src/game/data/data_01a3a0.c index 6db8ff21a..a53d192e9 100644 --- a/src/game/data/data_01a3a0.c +++ b/src/game/data/data_01a3a0.c @@ -289,7 +289,7 @@ struct menu_dialog menudialog_1b5c0 = { }; // 1b5d8 -struct menu_item menuitems_promptnextmission[] = { +struct menu_item g_MenuItemsPromptNextMission[] = { { MENUITEMTYPE_OBJECTIVES, 1, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_SELECTABLE, 0, 0x00000000, L_OPTIONS(298), 0x00000000, menuhandlerAcceptMission }, // "Accept" { MENUITEMTYPE_SELECTABLE, 0, 0x00000000, L_OPTIONS(299), 0x00000000, menuhandlerDeclineMission }, // "Decline" @@ -299,10 +299,10 @@ struct menu_item menuitems_promptnextmission[] = { }; // 1b650 -struct menu_dialog menudialog_promptnextmission = { +struct menu_dialog g_MenuDialogPromptNextMission = { MENUDIALOGTYPE_DEFAULT, (u32)&func0f10cf2c, - menuitems_promptnextmission, + g_MenuItemsPromptNextMission, menudialogRetryMission, 0x0000000c, &menudialog_briefing, diff --git a/src/game/game_10ccd0.c b/src/game/game_10ccd0.c index 44469d8a7..efbf64e8d 100644 --- a/src/game/game_10ccd0.c +++ b/src/game/game_10ccd0.c @@ -208,7 +208,7 @@ s32 menuhandlerReplayPreviousMission(u32 operation, struct menu_item *item, s32 { if (operation == MENUOP_SET) { g_MissionConfig.stageindex--; - g_MissionConfig.stagenum = g_StageNames[g_MissionConfig.stageindex].stage; + g_MissionConfig.stagenum = g_StageNames[g_MissionConfig.stageindex].stagenum; } return menuhandlerAcceptMission(operation, NULL, value); @@ -466,25 +466,13 @@ char *soloMenuTextMissionTime(struct menu_item *item) return g_StringPointer; } -GLOBAL_ASM( -glabel func0f10d730 -/* f10d730: 3c03800a */ lui $v1,%hi(g_MissionConfig) -/* f10d734: 2463dfe8 */ addiu $v1,$v1,%lo(g_MissionConfig) -/* f10d738: 906e0002 */ lbu $t6,0x2($v1) -/* f10d73c: 3c088007 */ lui $t0,%hi(g_StageNames) -/* f10d740: 3c028007 */ lui $v0,%hi(menudialog_promptnextmission) -/* f10d744: 25cf0001 */ addiu $t7,$t6,0x1 -/* f10d748: 31f800ff */ andi $t8,$t7,0xff -/* f10d74c: 0018c880 */ sll $t9,$t8,0x2 -/* f10d750: 0338c823 */ subu $t9,$t9,$t8 -/* f10d754: 0019c880 */ sll $t9,$t9,0x2 -/* f10d758: a06f0002 */ sb $t7,0x2($v1) -/* f10d75c: 01194021 */ addu $t0,$t0,$t9 -/* f10d760: 8d081e6c */ lw $t0,%lo(g_StageNames)($t0) -/* f10d764: 24425630 */ addiu $v0,$v0,%lo(menudialog_promptnextmission) -/* f10d768: 03e00008 */ jr $ra -/* f10d76c: a0680001 */ sb $t0,0x1($v1) -); +struct menu_dialog *func0f10d730(void) +{ + g_MissionConfig.stageindex++; + g_MissionConfig.stagenum = g_StageNames[g_MissionConfig.stageindex].stagenum; + + return &g_MenuDialogPromptNextMission; +} void func0f10d770(void) { @@ -504,7 +492,7 @@ void func0f10d770(void) s32 menuhandlerReplayLastLevel(u32 operation, struct menu_item *item, s32 *value) { if (operation == MENUOP_SET) { - g_MissionConfig.stagenum = g_StageNames[g_MissionConfig.stageindex].stage; + g_MissionConfig.stagenum = g_StageNames[g_MissionConfig.stageindex].stagenum; return menuhandlerAcceptMission(operation, NULL, value); } diff --git a/src/include/game/data/data_01a3a0.h b/src/include/game/data/data_01a3a0.h index c020e0429..6bbedc386 100644 --- a/src/include/game/data/data_01a3a0.h +++ b/src/include/game/data/data_01a3a0.h @@ -34,7 +34,7 @@ extern struct menu_dialog menudialog_mpdropout; extern struct menu_dialog g_MpEditSimulant4MbMenuDialog; extern struct menu_dialog g_4MbAdvancedSetupMenuDialog; extern struct menu_dialog menudialog_1b5c0; -extern struct menu_dialog menudialog_promptnextmission; +extern struct menu_dialog g_MenuDialogPromptNextMission; extern struct menu_dialog menudialog_1b7a4; extern u32 var80075968; extern struct menu_dialog menudialog_1bb44; diff --git a/src/include/game/game_10ccd0.h b/src/include/game/game_10ccd0.h index b7c9a6d2d..6b75157d0 100644 --- a/src/include/game/game_10ccd0.h +++ b/src/include/game/game_10ccd0.h @@ -26,7 +26,7 @@ u32 func0f10d588(void); u32 func0f10d61c(void); u32 func0f10d678(void); char *soloMenuTextMissionTime(struct menu_item *item); -u32 func0f10d730(void); +struct menu_dialog *func0f10d730(void); void func0f10d770(void); void func0f10d910(s32 arg0); char *soloMenuTextCheatName(struct menu_item *item); diff --git a/src/include/types.h b/src/include/types.h index d5118feff..0f6b4319a 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -3136,7 +3136,7 @@ struct mptrack { }; struct stageoverviewentry { - u32 stage; + u32 stagenum; u8 unk04; u16 name1; // "dataDyne Central" u16 name2; // " - Defection"