Rename some menu related symbols

This commit is contained in:
Ryan Dwyer
2020-07-10 23:00:52 +10:00
parent 917decce3e
commit 23091a58ec
50 changed files with 1651 additions and 1576 deletions
+25 -25
View File
@@ -363,7 +363,7 @@ glabel cheatMenuHandleCheatCheckbox
);
// Mismatch due to different registers in case 6 (v1/a0)
//s32 cheatMenuHandleCheatCheckbox(u32 arg0, struct menu_item *item, s32 arg2)
//s32 cheatMenuHandleCheatCheckbox(u32 arg0, struct menuitem *item, s32 arg2)
//{
// switch (arg0) {
// case 8:
@@ -410,7 +410,7 @@ glabel cheatMenuHandleCheatCheckbox
// return 0;
//}
s32 cheatMenuHandleBuddyCheckbox(s32 operation, struct menu_item *item, s32 arg2)
s32 cheatMenuHandleBuddyCheckbox(s32 operation, struct menuitem *item, s32 arg2)
{
switch (operation) {
case MENUOP_GET:
@@ -451,7 +451,7 @@ s32 cheatMenuHandleBuddyCheckbox(s32 operation, struct menu_item *item, s32 arg2
return 0;
}
char *cheatGetNameIfUnlocked(struct menu_item *item)
char *cheatGetNameIfUnlocked(struct menuitem *item)
{
if (cheatIsUnlocked(item->param)) {
return langGet(g_Cheats[item->param].nametextid);
@@ -531,7 +531,7 @@ glabel cheatMenuHandleDialog
// Mismatch because it optimises the `end = &ptr[4]` line.
// It's calculating it as &func00002148 + 24 rather than ptr + 4.
//bool cheatMenuHandleDialog(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
//bool cheatMenuHandleDialog(u32 operation, struct menudialog *dialog, struct menu *menu)
//{
// if (operation == MENUOP_100) {
// func0f14a52c();
@@ -575,17 +575,17 @@ glabel cheatMenuHandleDialog
// return 0;
//}
char *cheatGetMarquee(struct menu_item *arg0)
char *cheatGetMarquee(struct menuitem *arg0)
{
u32 cheat_id;
char *ptr;
char difficultyname[256];
char cheatname[256];
if (g_MenuStack[g_MpPlayerNum].curframe && g_MenuStack[g_MpPlayerNum].curframe->item && g_MenuStack[g_MpPlayerNum].curframe->item->type == MENUITEMTYPE_CHECKBOX) {
cheat_id = g_MenuStack[g_MpPlayerNum].curframe->item->param;
if (g_Menus[g_MpPlayerNum].curframe && g_Menus[g_MpPlayerNum].curframe->item && g_Menus[g_MpPlayerNum].curframe->item->type == MENUITEMTYPE_CHECKBOX) {
cheat_id = g_Menus[g_MpPlayerNum].curframe->item->param;
if (g_MenuStack[g_MpPlayerNum].curframe->dialog == &g_CheatsBuddiesMenuDialog && g_MenuStack[g_MpPlayerNum].curframe->item == &g_CheatsBuddiesMenuItems[0]) {
if (g_Menus[g_MpPlayerNum].curframe->dialog == &g_CheatsBuddiesMenuDialog && g_Menus[g_MpPlayerNum].curframe->item == &g_CheatsBuddiesMenuItems[0]) {
// Velvet
sprintf(g_CheatMarqueeString, "%s: %s", langGet(L_MPWEAPONS(143)), langGet(L_MPWEAPONS(117))); // "Buddy Available", "Velvet Dark"
return g_CheatMarqueeString;
@@ -594,7 +594,7 @@ char *cheatGetMarquee(struct menu_item *arg0)
if (cheatIsUnlocked(cheat_id)) {
// Show cheat name
sprintf(g_CheatMarqueeString, "%s: %s\n",
g_MenuStack[g_MpPlayerNum].curframe->dialog == &g_CheatsBuddiesMenuDialog ? langGet(L_MPWEAPONS(143)) : langGet(L_MPWEAPONS(136)), // "Buddy Available", "Cheat available"
g_Menus[g_MpPlayerNum].curframe->dialog == &g_CheatsBuddiesMenuDialog ? langGet(L_MPWEAPONS(143)) : langGet(L_MPWEAPONS(136)), // "Buddy Available", "Cheat available"
langGet(g_Cheats[cheat_id].nametextid)
);
return g_CheatMarqueeString;
@@ -705,14 +705,14 @@ char *cheatGetName(s32 cheat_id)
return langGet(g_Cheats[cheat_id].nametextid);
}
struct menu_item g_CheatWarningMenuItems[] = {
struct menuitem g_CheatWarningMenuItems[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(479), 0x00000000, NULL }, // "If you activate any cheats, then you will be unable to progress further in the game while those cheats are active."
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000028, L_MPMENU(480), 0x00000000, NULL }, // "OK"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000028, L_MPMENU(481), 0x00000000, NULL }, // "Cancel"
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_CheatWarningMenuDialog = {
struct menudialog g_CheatWarningMenuDialog = {
MENUDIALOGTYPE_SUCCESS,
L_MPMENU(478), // "Warning"
g_CheatWarningMenuItems,
@@ -721,7 +721,7 @@ struct menu_dialog g_CheatWarningMenuDialog = {
NULL,
};
struct menu_item g_CheatsFunMenuItems[] = {
struct menuitem g_CheatsFunMenuItems[] = {
{ MENUITEMTYPE_CHECKBOX, CHEAT_DKMODE, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_SMALLJO, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_SMALLCHARACTERS, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
@@ -735,7 +735,7 @@ struct menu_item g_CheatsFunMenuItems[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_CheatsFunMenuDialog = {
struct menudialog g_CheatsFunMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPWEAPONS(118), // "Fun"
g_CheatsFunMenuItems,
@@ -744,7 +744,7 @@ struct menu_dialog g_CheatsFunMenuDialog = {
NULL,
};
struct menu_item g_CheatsGameplayMenuItems[] = {
struct menuitem g_CheatsGameplayMenuItems[] = {
{ MENUITEMTYPE_CHECKBOX, CHEAT_INVINCIBLE, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_CLOAKINGDEVICE, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_MARQUIS, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
@@ -760,7 +760,7 @@ struct menu_item g_CheatsGameplayMenuItems[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_CheatsGameplayMenuDialog = {
struct menudialog g_CheatsGameplayMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPWEAPONS(119), // "Gameplay"
g_CheatsGameplayMenuItems,
@@ -769,7 +769,7 @@ struct menu_dialog g_CheatsGameplayMenuDialog = {
NULL,
};
struct menu_item g_CheatsSoloWeaponsMenuItems[] = {
struct menuitem g_CheatsSoloWeaponsMenuItems[] = {
{ MENUITEMTYPE_CHECKBOX, CHEAT_ROCKETLAUNCHER, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_SNIPERRIFLE, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_SUPERDRAGON, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
@@ -785,7 +785,7 @@ struct menu_item g_CheatsSoloWeaponsMenuItems[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_CheatsSoloWeaponsMenuDialog = {
struct menudialog g_CheatsSoloWeaponsMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPWEAPONS(122), // "Weapons for Jo in Solo"
g_CheatsSoloWeaponsMenuItems,
@@ -794,7 +794,7 @@ struct menu_dialog g_CheatsSoloWeaponsMenuDialog = {
NULL,
};
struct menu_item g_CheatsClassicWeaponsMenuItems[] = {
struct menuitem g_CheatsClassicWeaponsMenuItems[] = {
{ MENUITEMTYPE_CHECKBOX, CHEAT_PP9I, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_CC13, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_KL01313, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
@@ -810,7 +810,7 @@ struct menu_item g_CheatsClassicWeaponsMenuItems[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_CheatsClassicWeaponsMenuDialog = {
struct menudialog g_CheatsClassicWeaponsMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPWEAPONS(123), // "Classic Weapons for Jo in Solo"
g_CheatsClassicWeaponsMenuItems,
@@ -819,7 +819,7 @@ struct menu_dialog g_CheatsClassicWeaponsMenuDialog = {
NULL,
};
struct menu_item g_CheatsWeaponsMenuItems[] = {
struct menuitem g_CheatsWeaponsMenuItems[] = {
{ MENUITEMTYPE_CHECKBOX, CHEAT_CLASSICSIGHT, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_UNLIMITEDAMMOLAPTOP, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_HURRICANEFISTS, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleCheatCheckbox },
@@ -835,7 +835,7 @@ struct menu_item g_CheatsWeaponsMenuItems[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_CheatsWeaponsMenuDialog = {
struct menudialog g_CheatsWeaponsMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPWEAPONS(120), // "Weapons"
g_CheatsWeaponsMenuItems,
@@ -844,7 +844,7 @@ struct menu_dialog g_CheatsWeaponsMenuDialog = {
NULL,
};
struct menu_item g_CheatsBuddiesMenuItems[] = {
struct menuitem g_CheatsBuddiesMenuItems[] = {
{ MENUITEMTYPE_CHECKBOX, 0, 0x00000000, L_MPWEAPONS(117), 0x00000000, cheatMenuHandleBuddyCheckbox }, // "Velvet Dark"
{ MENUITEMTYPE_CHECKBOX, CHEAT_PUGILIST, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleBuddyCheckbox },
{ MENUITEMTYPE_CHECKBOX, CHEAT_HOTSHOT, 0x00000000, (u32)&cheatGetNameIfUnlocked, 0x00000000, cheatMenuHandleBuddyCheckbox },
@@ -857,7 +857,7 @@ struct menu_item g_CheatsBuddiesMenuItems[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_CheatsBuddiesMenuDialog = {
struct menudialog g_CheatsBuddiesMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPWEAPONS(121), // "Buddies"
g_CheatsBuddiesMenuItems,
@@ -866,7 +866,7 @@ struct menu_dialog g_CheatsBuddiesMenuDialog = {
NULL,
};
struct menu_item g_CheatsMenuItems[] = {
struct menuitem g_CheatsMenuItems[] = {
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPWEAPONS(118), 0x00000000, &g_CheatsFunMenuDialog }, // "Fun"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPWEAPONS(119), 0x00000000, &g_CheatsGameplayMenuDialog }, // "Gameplay"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPWEAPONS(122), 0x00000000, &g_CheatsSoloWeaponsMenuDialog }, // "Weapons for Jo in Solo"
@@ -880,7 +880,7 @@ struct menu_item g_CheatsMenuItems[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_CheatsMenuDialog = {
struct menudialog g_CheatsMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(476), // "Cheats"
g_CheatsMenuItems,
+53 -53
View File
@@ -21,7 +21,7 @@
#include "types.h"
// 1ae10
struct menu_item menuitems_gamefiles2[] = {
struct menuitem menuitems_gamefiles2[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00004010, L_OPTIONS(100), 0x00000000, NULL }, // "Copy:"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000000, L_OPTIONS(103), 0x00000000, menuhandlerOpenCopyFile }, // "Single Player Agent File"
{ MENUITEMTYPE_SELECTABLE, 1, 0x00000000, L_OPTIONS(104), 0x00000000, menuhandlerOpenCopyFile }, // "Combat Simulator Settings File"
@@ -37,7 +37,7 @@ struct menu_item menuitems_gamefiles2[] = {
};
// 1af00
struct menu_dialog menudialog_gamefiles2 = {
struct menudialog menudialog_gamefiles2 = {
MENUDIALOGTYPE_DEFAULT,
L_OPTIONS(99), // "Game Files"
menuitems_gamefiles2,
@@ -47,14 +47,14 @@ struct menu_dialog menudialog_gamefiles2 = {
};
// 1af18
struct menu_item menuitems_fileselect2[] = {
struct menuitem menuitems_fileselect2[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00004010, L_OPTIONS(96), 0x00000000, NULL }, // "Choose Your Reality"
{ MENUITEMTYPE_CUSTOM, 0, 0x00200000, 0x000000f5, 0x00000000, menucustomChooseAgent },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 1af54
struct menu_dialog menudialog_fileselect2 = {
struct menudialog menudialog_fileselect2 = {
MENUDIALOGTYPE_DEFAULT,
L_OPTIONS(95), // "Perfect Dark"
menuitems_fileselect2,
@@ -64,7 +64,7 @@ struct menu_dialog menudialog_fileselect2 = {
};
// 1af6c
struct menu_item menuitems_audiovisual[] = {
struct menuitem menuitems_audiovisual[] = {
{ MENUITEMTYPE_SLIDER, 0, 0x00002800, L_OPTIONS(308), L_MPMENU(0), menuhandlerSfxVolume }, // "Sound"
{ MENUITEMTYPE_SLIDER, 0, 0x00002800, L_OPTIONS(309), L_MPMENU(0), menuhandlerMusicVolume }, // "Music"
{ MENUITEMTYPE_DROPDOWN, 0, 0x00000000, L_OPTIONS(310), 0x00000000, menuhandlerSoundMode }, // "Sound Mode"
@@ -76,7 +76,7 @@ struct menu_item menuitems_audiovisual[] = {
};
// 1b00c
struct menu_dialog menudialog_1b00c = {
struct menudialog menudialog_1b00c = {
MENUDIALOGTYPE_DEFAULT,
L_OPTIONS(307), // "Audio/Visual"
menuitems_audiovisual,
@@ -86,7 +86,7 @@ struct menu_dialog menudialog_1b00c = {
};
// 1b024
struct menu_item menuitems_mpplayersetup[] = {
struct menuitem menuitems_mpplayersetup[] = {
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPMENU(30), (u32)&mpGetCurrentPlayerName, &menudialog_mpplayername }, // "Name"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPMENU(33), 0x00000000, &menudialog_mpcontrol }, // "Control"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPMENU(34), 0x00000000, &menudialog_mpoptions }, // "Player Options"
@@ -98,7 +98,7 @@ struct menu_item menuitems_mpplayersetup[] = {
};
// 1b0c4
struct menu_dialog menudialog_mpplayersetup = {
struct menudialog menudialog_mpplayersetup = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(28), // "Player Setup"
menuitems_mpplayersetup,
@@ -107,10 +107,10 @@ struct menu_dialog menudialog_mpplayersetup = {
&menudialog_mpchallengedetails,
};
struct menu_dialog menudialog_mpdropout;
struct menudialog menudialog_mpdropout;
// 1b0dc
struct menu_item menuitems_mpquickgo2[] = {
struct menuitem menuitems_mpquickgo2[] = {
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MISC(456), 0x00000000, &g_MpReadyMenuDialog }, // "Start Game"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPMENU(29), 0x00000000, &menudialog_mploadplayer }, // "Load Player"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MISC(458), 0x00000000, &menudialog_mpplayersetup }, // "Player Settings"
@@ -119,7 +119,7 @@ struct menu_item menuitems_mpquickgo2[] = {
};
// 1b140
struct menu_dialog menudialog_mpquickgo2 = {
struct menudialog menudialog_mpquickgo2 = {
MENUDIALOGTYPE_DEFAULT,
L_MISC(460), // "Quick Go"
menuitems_mpquickgo2,
@@ -129,7 +129,7 @@ struct menu_dialog menudialog_mpquickgo2 = {
};
// 1b158
struct menu_item menuitems_1b158[] = {
struct menuitem menuitems_1b158[] = {
{ MENUITEMTYPE_SCROLLABLE, DESCRIPTION_MPCONFIG, 0x00000000, 0x0000007c, 0x00000037, NULL },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000000, L_MPMENU(57), 0x00000000, menuhandler0010cabc }, // "Accept"
@@ -138,7 +138,7 @@ struct menu_item menuitems_1b158[] = {
};
// 1b1bc
struct menu_dialog menudialog_1b1bc = {
struct menudialog menudialog_1b1bc = {
MENUDIALOGTYPE_DEFAULT,
(u32)&func0f17e318,
menuitems_1b158,
@@ -148,13 +148,13 @@ struct menu_dialog menudialog_1b1bc = {
};
// 1b1d4
struct menu_item menuitems_mpcombatchallenges[] = {
struct menuitem menuitems_mpcombatchallenges[] = {
{ MENUITEMTYPE_CUSTOM, 1, 0x00200000, 0x00000078, 0x0000004d, menuhandler0017e4d4 },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 1b1fc
struct menu_dialog menudialog_mpcombatchallenges = {
struct menudialog menudialog_mpcombatchallenges = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(50), // "Combat Challenges"
menuitems_mpcombatchallenges,
@@ -164,7 +164,7 @@ struct menu_dialog menudialog_mpcombatchallenges = {
};
// 1b214
struct menu_item menuitems_smallbutperfectmenu[] = {
struct menuitem menuitems_smallbutperfectmenu[] = {
{ MENUITEMTYPE_SELECTABLE, 0, 0x00400004, L_MISC(441), 0x00000000, &menudialog_mpcombatchallenges }, // "Challenges"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00400004, L_MISC(442), 0x00000001, &menudialog_mploadgamesettingstype1 }, // "Load/Preset Games"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00400004, L_MISC(443), 0x00000002, &menudialog_mpquickteam }, // "Quick Start"
@@ -176,7 +176,7 @@ struct menu_item menuitems_smallbutperfectmenu[] = {
};
// 1b2b4
struct menu_dialog g_4MbMainMenu = {
struct menudialog g_4MbMainMenu = {
MENUDIALOGTYPE_DEFAULT,
L_OPTIONS(302), // "Small but Perfect Menu"
menuitems_smallbutperfectmenu,
@@ -186,7 +186,7 @@ struct menu_dialog g_4MbMainMenu = {
};
// 1b2cc
struct menu_item menuitems_mpdropout[] = {
struct menuitem menuitems_mpdropout[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPMENU(196), 0x00000000, NULL }, // "Are you sure you want to drop out?"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000000, L_MPMENU(197), 0x00000000, menuhandler4MbDropOut }, // "Drop Out"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000008, L_MPMENU(198), 0x00000000, NULL }, // "Cancel"
@@ -194,7 +194,7 @@ struct menu_item menuitems_mpdropout[] = {
};
// 1b31c
struct menu_dialog menudialog_mpdropout = {
struct menudialog menudialog_mpdropout = {
MENUDIALOGTYPE_DANGER,
L_MPMENU(195), // "Drop Out"
menuitems_mpdropout,
@@ -204,7 +204,7 @@ struct menu_dialog menudialog_mpdropout = {
};
// 1b334
struct menu_item menuitems_mpabort[] = {
struct menuitem menuitems_mpabort[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPMENU(53), 0x00000000, NULL }, // "Are you sure you want to abort the game?"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000000, L_MPMENU(54), 0x00000000, menuhandler0010ca1c }, // "Abort"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000008, L_MPMENU(55), 0x00000000, NULL }, // "Cancel"
@@ -212,7 +212,7 @@ struct menu_item menuitems_mpabort[] = {
};
// 1b384
struct menu_dialog menudialog_mpabort = {
struct menudialog menudialog_mpabort = {
MENUDIALOGTYPE_DANGER,
L_MPMENU(52), // "Abort"
menuitems_mpabort,
@@ -222,7 +222,7 @@ struct menu_dialog menudialog_mpabort = {
};
// 1b39c
struct menu_item menuitems_1b39c[] = {
struct menuitem menuitems_1b39c[] = {
{ MENUITEMTYPE_DROPDOWN, 0, 0x00020000, L_MPMENU(95), 0x00000000, menuhandlerMpSimulantDifficulty }, // "Difficulty:"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000000, L_MPMENU(96), 0x00000000, menuhandlerMpChangeSimulantType }, // "Change Type..."
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
@@ -232,7 +232,7 @@ struct menu_item menuitems_1b39c[] = {
};
// 1b414
struct menu_dialog g_MpEditSimulant4MbMenuDialog = {
struct menudialog g_MpEditSimulant4MbMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
(u32)&func0f17cfc0,
menuitems_1b39c,
@@ -242,7 +242,7 @@ struct menu_dialog g_MpEditSimulant4MbMenuDialog = {
};
// 1b42c
struct menu_item menuitems_mpgamesetup[] = {
struct menuitem menuitems_mpgamesetup[] = {
{ MENUITEMTYPE_SELECTABLE, 0, 0x00020004, L_MPMENU(19), (u32)&mpMenuTextScenarioShortName, &menudialog_mpscenario }, // "Scenario"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000000, L_MPMENU(21), 0x00000000, menuhandlerMpOpenOptions }, // "Options"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPMENU(20), (u32)&mpMenuTextArenaName, &menudialog_mparena }, // "Arena"
@@ -261,7 +261,7 @@ struct menu_item menuitems_mpgamesetup[] = {
};
// 1b558
struct menu_dialog g_4MbAdvancedSetupMenuDialog = {
struct menudialog g_4MbAdvancedSetupMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(17), // "Game Setup"
menuitems_mpgamesetup,
@@ -271,7 +271,7 @@ struct menu_dialog g_4MbAdvancedSetupMenuDialog = {
};
// 1b570
struct menu_item menuitems_1b570[] = {
struct menuitem menuitems_1b570[] = {
{ 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"
@@ -279,7 +279,7 @@ struct menu_item menuitems_1b570[] = {
};
// 1b5c0
struct menu_dialog menudialog_1b5c0 = {
struct menudialog menudialog_1b5c0 = {
MENUDIALOGTYPE_DEFAULT,
(u32)&menuDialogTitleRetryStageName,
menuitems_1b570,
@@ -289,7 +289,7 @@ struct menu_dialog menudialog_1b5c0 = {
};
// 1b5d8
struct menu_item g_MenuItemsPromptNextMission[] = {
struct menuitem 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,7 +299,7 @@ struct menu_item g_MenuItemsPromptNextMission[] = {
};
// 1b650
struct menu_dialog g_MenuDialogPromptNextMission = {
struct menudialog g_MenuDialogPromptNextMission = {
MENUDIALOGTYPE_DEFAULT,
(u32)&menuDialogTitleNextMissionStageName,
g_MenuItemsPromptNextMission,
@@ -309,7 +309,7 @@ struct menu_dialog g_MenuDialogPromptNextMission = {
};
// 1b668
struct menu_item menuitems_1b668[] = {
struct menuitem menuitems_1b668[] = {
{ MENUITEMTYPE_OBJECTIVES, 2, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_OPTIONS(301), 0x00000000, NULL }, // "Press START"
@@ -317,7 +317,7 @@ struct menu_item menuitems_1b668[] = {
};
// 1b6b8
struct menu_item menuitems_1b6b8[] = {
struct menuitem menuitems_1b6b8[] = {
{ MENUITEMTYPE_OBJECTIVES, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_OPTIONS(301), 0x00000000, NULL }, // "Press START"
@@ -325,7 +325,7 @@ struct menu_item menuitems_1b6b8[] = {
};
// 1b708
struct menu_dialog menudialog_1b708 = {
struct menudialog menudialog_1b708 = {
MENUDIALOGTYPE_DANGER,
L_OPTIONS(300), // "Objectives"
menuitems_1b6b8,
@@ -335,7 +335,7 @@ struct menu_dialog menudialog_1b708 = {
};
// 1b720
struct menu_dialog menudialog_1b720 = {
struct menudialog menudialog_1b720 = {
MENUDIALOGTYPE_SUCCESS,
L_OPTIONS(300), // "Objectives"
menuitems_1b6b8,
@@ -345,7 +345,7 @@ struct menu_dialog menudialog_1b720 = {
};
// 1b738
struct menu_dialog menudialog_1b738 = {
struct menudialog menudialog_1b738 = {
MENUDIALOGTYPE_DANGER,
L_OPTIONS(300), // "Objectives"
menuitems_1b668,
@@ -355,7 +355,7 @@ struct menu_dialog menudialog_1b738 = {
};
// 1b750
struct menu_dialog menudialog_1b750 = {
struct menudialog menudialog_1b750 = {
MENUDIALOGTYPE_SUCCESS,
L_OPTIONS(300), // "Objectives"
menuitems_1b668,
@@ -365,14 +365,14 @@ struct menu_dialog menudialog_1b750 = {
};
// 1b768
struct menu_item menuitems_1b768[] = {
struct menuitem menuitems_1b768[] = {
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_MPWEAPONS(244), 0x00000000, menuhandlerContinueMission }, // "Continue"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_MPWEAPONS(245), 0x00000000, menuhandlerReplayLastLevel }, // "Replay Last Level"
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 1b7a4
struct menu_dialog menudialog_1b7a4 = {
struct menudialog menudialog_1b7a4 = {
MENUDIALOGTYPE_DEFAULT,
(u32)&menuTextCurrentStageName3,
menuitems_1b768,
@@ -382,7 +382,7 @@ struct menu_dialog menudialog_1b7a4 = {
};
// 1b7bc
struct menu_item g_MenuItemsSoloEndscreenNarrow[] = {
struct menuitem g_MenuItemsSoloEndscreenNarrow[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000210, L_OPTIONS(278), 0x00000000, NULL }, // "Mission Status:"
{ MENUITEMTYPE_LABEL, 0, 0x00000020, (u32)&soloMenuTextMissionStatus, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000210, L_OPTIONS(279), 0x00000000, NULL }, // "Agent Status:"
@@ -411,16 +411,16 @@ struct menu_item g_MenuItemsSoloEndscreenNarrow[] = {
u32 g_CheatColour = 0xff7f7fff;
// 1b98c
struct menu_item g_MenuItemsSoloEndscreenWide[] = {
struct menuitem g_MenuItemsSoloEndscreenWide[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(278), (u32)&soloMenuTextMissionStatus, NULL }, // "Mission Status:"
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(279), (u32)&soloMenuTextAgentStatus, NULL }, // "Agent Status:"
{ MENUITEMTYPE_LABEL, 0, 0x01000000, L_OPTIONS(280), (u32)&soloMenuTextMissionTime, menuhandlerEndscreenMisc }, // "Mission Time:"
{ MENUITEMTYPE_LABEL, 1, 0x01000000, L_MPWEAPONS(242), (u32)&soloMenuTextTargetTime, menuhandlerEndscreenMisc }, // "Target Time:"
{ MENUITEMTYPE_LABEL, 0, 0x01000000, L_OPTIONS(280), (u32)&soloMenuTextMissionTime, menuhandlerEndscreenCheats }, // "Mission Time:"
{ MENUITEMTYPE_LABEL, 1, 0x01000000, L_MPWEAPONS(242), (u32)&soloMenuTextTargetTime, menuhandlerEndscreenCheats }, // "Target Time:"
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPWEAPONS(129), (u32)&soloMenuTextDifficulty, NULL }, // "Difficulty:"
{ MENUITEMTYPE_SEPARATOR, 2, 0x00000000, 0x00000000, 0x00000000, menuhandlerEndscreenMisc },
{ MENUITEMTYPE_LABEL, 2, 0x00000000, L_MPWEAPONS(243), 0x00000000, menuhandlerEndscreenMisc }, // "New Cheat Available!:"
{ MENUITEMTYPE_LABEL, 3, 0x01000020, (u32)&soloMenuTextCheatName, 0x00000000, menuhandlerEndscreenMisc },
{ MENUITEMTYPE_LABEL, 5, 0x01000020, (u32)&soloMenuTextCheatName2, 0x00000000, menuhandlerEndscreenMisc },
{ MENUITEMTYPE_SEPARATOR, 2, 0x00000000, 0x00000000, 0x00000000, menuhandlerEndscreenCheats },
{ MENUITEMTYPE_LABEL, 2, 0x00000000, L_MPWEAPONS(243), 0x00000000, menuhandlerEndscreenCheats }, // "New Cheat Available!:"
{ MENUITEMTYPE_LABEL, 3, 0x01000020, (u32)&soloMenuTextCheatName, 0x00000000, menuhandlerEndscreenCheats },
{ MENUITEMTYPE_LABEL, 5, 0x01000020, (u32)&soloMenuTextCheatName2, 0x00000000, menuhandlerEndscreenCheats },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(281), (u32)&mpMenuTextWeaponOfChoiceName, NULL }, // "Weapon of Choice"
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(282), (u32)&soloMenuTextNumKills, NULL }, // "Kills:"
@@ -429,15 +429,15 @@ struct menu_item g_MenuItemsSoloEndscreenWide[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(284), (u32)&soloMenuTextNumShots, NULL }, // "Shot Total:"
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(285), (u32)&soloMenuTextNumHeadShots, NULL }, // "Head Shots:"
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(286), (u32)&soloMenuTextNumBodyShots, NULL }, // "Body Shots:"
{ MENUITEMTYPE_LABEL, 6, 0x00000000, L_OPTIONS(287), (u32)&soloMenuTextNumLimbShots, menuhandlerEndscreenMisc }, // "Limb Shots:"
{ MENUITEMTYPE_LABEL, 4, 0x00000000, L_OPTIONS(288), (u32)&soloMenuTextNumOtherShots, menuhandlerEndscreenMisc }, // "Others:"
{ MENUITEMTYPE_LABEL, 6, 0x00000000, L_OPTIONS(287), (u32)&soloMenuTextNumLimbShots, menuhandlerEndscreenCheats }, // "Limb Shots:"
{ MENUITEMTYPE_LABEL, 4, 0x00000000, L_OPTIONS(288), (u32)&soloMenuTextNumOtherShots, menuhandlerEndscreenCheats }, // "Others:"
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_OPTIONS(289), 0x00000000, NULL }, // "Press START"
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 1bb44
struct menu_dialog g_MenuDialogSoloEndscreenCompleted = {
struct menudialog g_MenuDialogSoloEndscreenCompleted = {
MENUDIALOGTYPE_SUCCESS,
(u32)&menuTitleStageCompleted,
g_MenuItemsSoloEndscreenWide,
@@ -447,7 +447,7 @@ struct menu_dialog g_MenuDialogSoloEndscreenCompleted = {
};
// 1bb5c
struct menu_dialog g_MenuDialogSoloEndscreenFailed = {
struct menudialog g_MenuDialogSoloEndscreenFailed = {
MENUDIALOGTYPE_DANGER,
(u32)&menuTitleStageFailed,
g_MenuItemsSoloEndscreenWide,
@@ -457,7 +457,7 @@ struct menu_dialog g_MenuDialogSoloEndscreenFailed = {
};
// 1bb74
struct menu_dialog g_MenuDialogSolo2PEndscreenCompletedWide = {
struct menudialog g_MenuDialogSolo2PEndscreenCompletedWide = {
MENUDIALOGTYPE_SUCCESS,
(u32)&menuTitleStageCompleted,
g_MenuItemsSoloEndscreenWide,
@@ -467,7 +467,7 @@ struct menu_dialog g_MenuDialogSolo2PEndscreenCompletedWide = {
};
// 1bb8c
struct menu_dialog g_MenuDialogSolo2PEndscreenFailedWide = {
struct menudialog g_MenuDialogSolo2PEndscreenFailedWide = {
MENUDIALOGTYPE_DANGER,
(u32)&menuTitleStageFailed,
g_MenuItemsSoloEndscreenWide,
@@ -477,7 +477,7 @@ struct menu_dialog g_MenuDialogSolo2PEndscreenFailedWide = {
};
// 1bba4
struct menu_dialog g_MenuDialogSolo2PEndscreenCompletedNarrow = {
struct menudialog g_MenuDialogSolo2PEndscreenCompletedNarrow = {
MENUDIALOGTYPE_SUCCESS,
L_OPTIONS(276), // "Completed"
g_MenuItemsSoloEndscreenNarrow,
@@ -487,7 +487,7 @@ struct menu_dialog g_MenuDialogSolo2PEndscreenCompletedNarrow = {
};
// 1bbbc
struct menu_dialog g_MenuDialogSolo2PEndscreenFailedNarrow = {
struct menudialog g_MenuDialogSolo2PEndscreenFailedNarrow = {
MENUDIALOGTYPE_DANGER,
L_OPTIONS(277), // "Failed"
g_MenuItemsSoloEndscreenNarrow,
File diff suppressed because it is too large Load Diff
+43 -43
View File
@@ -45,7 +45,7 @@ u32 var80088ca4 = 0x00000000;
u32 var80088ca8 = 0x00000000;
// 2eccc
struct menu_item menuitems_frdifficulty[] = {
struct menuitem menuitems_frdifficulty[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000012, L_MPMENU(444), L_MPMENU(445), NULL }, // "Select Difficulty:"
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_MPMENU(439), L_OPTIONS(3), menuhandlerFrDifficulty }, // "Bronze"
{ MENUITEMTYPE_SELECTABLE, 1, 0x00000020, L_MPMENU(440), L_OPTIONS(3), menuhandlerFrDifficulty }, // "Silver"
@@ -56,7 +56,7 @@ struct menu_item menuitems_frdifficulty[] = {
};
// 2ed58
struct menu_dialog menudialog_frdifficulty = {
struct menudialog menudialog_frdifficulty = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(442), // "Difficulty"
menuitems_frdifficulty,
@@ -66,13 +66,13 @@ struct menu_dialog menudialog_frdifficulty = {
};
// 2ed70
struct menu_item menuitems_frweapon[] = {
struct menuitem menuitems_frweapon[] = {
{ MENUITEMTYPE_CUSTOM, 0, 0x00200008, 0x000000aa, 0x00000000, menuhandler001a348c },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 2ed98
struct menu_dialog g_FrWeaponListMenuDialog = {
struct menudialog g_FrWeaponListMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(446), // "Weapon"
menuitems_frweapon,
@@ -82,7 +82,7 @@ struct menu_dialog g_FrWeaponListMenuDialog = {
};
// 2edb0
struct menu_item menuitems_frtraininginfo[] = {
struct menuitem menuitems_frtraininginfo[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(443), (u32)&frMenuTextDifficultyName, NULL }, // "Difficulty"
{ MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&frMenuTextGoalScoreLabel, (u32)&frMenuTextGoalScoreValue, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&frMenuTextMinAccuracyOrTargetsLabel, (u32)&frMenuTextMinAccuracyOrTargetsValue, NULL },
@@ -97,7 +97,7 @@ struct menu_item menuitems_frtraininginfo[] = {
};
// 2ee8c
struct menu_dialog g_FrTrainingInfoMenuDialog = {
struct menudialog g_FrTrainingInfoMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(447), // "Training Info"
menuitems_frtraininginfo,
@@ -107,7 +107,7 @@ struct menu_dialog g_FrTrainingInfoMenuDialog = {
};
// 2eea4
struct menu_item menuitems_frtraininginfo2[] = {
struct menuitem menuitems_frtraininginfo2[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(443), (u32)&frMenuTextDifficultyName, NULL }, // "Difficulty:"
{ MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&frMenuTextGoalScoreLabel, (u32)&frMenuTextGoalScoreValue, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&frMenuTextMinAccuracyOrTargetsLabel, (u32)&frMenuTextMinAccuracyOrTargetsValue, NULL },
@@ -122,7 +122,7 @@ struct menu_item menuitems_frtraininginfo2[] = {
};
// 2ef80
struct menu_dialog menudialog_frtraininginfo2 = {
struct menudialog menudialog_frtraininginfo2 = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(447), // "Training Info"
menuitems_frtraininginfo2,
@@ -132,7 +132,7 @@ struct menu_dialog menudialog_frtraininginfo2 = {
};
// 2ef98
struct menu_item menuitems_frtrainingstats[] = {
struct menuitem menuitems_frtrainingstats[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000020, L_MPMENU(449), 0x00000000, NULL }, // "Completed!"
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(450), (u32)&frMenuTextScoreValue, NULL }, // "Score:"
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(451), (u32)&frMenuTextTargetsDestroyedValue, NULL }, // "Targets Destroyed:"
@@ -149,7 +149,7 @@ struct menu_item menuitems_frtrainingstats[] = {
};
// 2f09c
struct menu_dialog menudialog_frtrainingstats = {
struct menudialog menudialog_frtrainingstats = {
MENUDIALOGTYPE_SUCCESS,
L_MPMENU(448), // "Training Stats"
menuitems_frtrainingstats,
@@ -159,7 +159,7 @@ struct menu_dialog menudialog_frtrainingstats = {
};
// 2f0b4
struct menu_item menuitems_frtrainingstats2[] = {
struct menuitem menuitems_frtrainingstats2[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000020, (u32)&frMenuTextFailReason, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(450), (u32)&frMenuTextScoreValue, NULL }, // "Score:"
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(451), (u32)&frMenuTextTargetsDestroyedValue, NULL }, // "Targets Destroyed:"
@@ -176,7 +176,7 @@ struct menu_item menuitems_frtrainingstats2[] = {
};
// 2f1b8
struct menu_dialog menudialog_frtrainingstats2 = {
struct menudialog menudialog_frtrainingstats2 = {
MENUDIALOGTYPE_DANGER,
L_MPMENU(448), // "Training Stats"
menuitems_frtrainingstats2,
@@ -191,13 +191,13 @@ u32 var800891b8 = 0x00000000;
u32 var800891bc = 0x51a60000; // "Other Information"
// 2f1e0
struct menu_item menuitems_information[] = {
struct menuitem menuitems_information[] = {
{ MENUITEMTYPE_CUSTOM, 0, 0x00000008, 0x000000c8, 0x00000000, menuhandler001a5dc0 },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 2f208
struct menu_dialog menudialog_information = {
struct menudialog menudialog_information = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(418), // "Information"
menuitems_information,
@@ -207,7 +207,7 @@ struct menu_dialog menudialog_information = {
};
// 2f220
struct menu_item menuitems_nowsafe[] = {
struct menuitem menuitems_nowsafe[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000020, L_MPMENU(437), 0x00000000, NULL }, // "It is now safe to turn off your computer"
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000008, L_MPMENU(438), 0x00000000, NULL }, // "Cancel"
@@ -215,7 +215,7 @@ struct menu_item menuitems_nowsafe[] = {
};
// 2f270
struct menu_dialog menudialog_nowsafe = {
struct menudialog menudialog_nowsafe = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(436), // "Cheats"
menuitems_nowsafe,
@@ -233,7 +233,7 @@ u32 var8008927c = 0xff000000;
u32 var80089280 = 0x0300ff00;
// 2f2a4
struct menu_item menuitems_characterprofile[] = {
struct menuitem menuitems_characterprofile[] = {
{ MENUITEMTYPE_MODEL, 0, 0x00000002, 0x00000046, 0x00000096, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000003, L_MPMENU(432), (u32)&ciMenuTextBioName, NULL }, // "Name:"
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(433), (u32)&ciMenuTextBioAge, NULL }, // "Age:"
@@ -246,7 +246,7 @@ struct menu_item menuitems_characterprofile[] = {
};
// 2f358
struct menu_dialog menudialog_characterprofile = {
struct menudialog menudialog_characterprofile = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(431), // "Character Profile"
menuitems_characterprofile,
@@ -256,7 +256,7 @@ struct menu_dialog menudialog_characterprofile = {
};
// 2f370
struct menu_item menuitems_2f370[] = {
struct menuitem menuitems_2f370[] = {
{ MENUITEMTYPE_SCROLLABLE, DESCRIPTION_MISCBIO, 0x00000000, 0x000000c8, 0x00000096, NULL },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000022, L_MPMENU(414), 0x00000000, NULL }, // "Press the B Button to go back."
@@ -264,7 +264,7 @@ struct menu_item menuitems_2f370[] = {
};
// 2f3c0
struct menu_dialog menudialog_2f3c0 = {
struct menudialog menudialog_2f3c0 = {
MENUDIALOGTYPE_DEFAULT,
(u32)&func0f1a6388,
menuitems_2f370,
@@ -274,13 +274,13 @@ struct menu_dialog menudialog_2f3c0 = {
};
// 2f3d8
struct menu_item menuitems_devicelist[] = {
struct menuitem menuitems_devicelist[] = {
{ MENUITEMTYPE_CUSTOM, 0, 0x00000008, 0x000000a0, 0x00000000, menuhandler001a63e4 },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 2f400
struct menu_dialog g_DeviceTrainingListMenuDialog = {
struct menudialog g_DeviceTrainingListMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(417), // "Device List"
menuitems_devicelist,
@@ -294,7 +294,7 @@ u32 var800893fc = 0x64326464;
u32 var80089400 = 0x32960000;
// 2f424
struct menu_item menuitems_2f424[] = {
struct menuitem menuitems_2f424[] = {
{ MENUITEMTYPE_SCROLLABLE, DESCRIPTION_DEVICETRAINING, 0x00000000, 0x000000aa, 0x000000be, NULL },
{ MENUITEMTYPE_MODEL, 0, 0x00000003, 0x0000008c, 0x0000009c, NULL },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
@@ -304,7 +304,7 @@ struct menu_item menuitems_2f424[] = {
};
// 2f49c
struct menu_dialog g_DeviceTrainingDetailsMenuDialog = {
struct menudialog g_DeviceTrainingDetailsMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
(u32)&func0f1a64a0,
menuitems_2f424,
@@ -314,7 +314,7 @@ struct menu_dialog g_DeviceTrainingDetailsMenuDialog = {
};
// 2f4b4
struct menu_item menuitems_trainingstats_failed[] = {
struct menuitem menuitems_trainingstats_failed[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000032, L_MPMENU(426), 0x00000000, NULL }, // "Failed!"
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(424), (u32)&dtMenuTextTimeTakenValue, NULL }, // "Time Taken:"
@@ -324,7 +324,7 @@ struct menu_item menuitems_trainingstats_failed[] = {
};
// 2f52c
struct menu_dialog g_DeviceTrainingStatsFailedMenuDialog = {
struct menudialog g_DeviceTrainingStatsFailedMenuDialog = {
MENUDIALOGTYPE_DANGER,
L_MPMENU(423), // "Training Stats"
menuitems_trainingstats_failed,
@@ -334,7 +334,7 @@ struct menu_dialog g_DeviceTrainingStatsFailedMenuDialog = {
};
// 2f544
struct menu_item menuitems_trainingstats_completed[] = {
struct menuitem menuitems_trainingstats_completed[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000032, L_MPMENU(425), 0x00000000, NULL }, // "Completed!"
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(424), (u32)&dtMenuTextTimeTakenValue, NULL }, // "Time Taken:"
@@ -344,7 +344,7 @@ struct menu_item menuitems_trainingstats_completed[] = {
};
// 2f5bc
struct menu_dialog g_DeviceTrainingStatsCompletedMenuDialog = {
struct menudialog g_DeviceTrainingStatsCompletedMenuDialog = {
MENUDIALOGTYPE_SUCCESS,
L_MPMENU(423), // "Training Stats"
menuitems_trainingstats_completed,
@@ -354,13 +354,13 @@ struct menu_dialog g_DeviceTrainingStatsCompletedMenuDialog = {
};
// 2f5d4
struct menu_item menuitems_holotraining[] = {
struct menuitem menuitems_holotraining[] = {
{ MENUITEMTYPE_CUSTOM, 0, 0x00000008, 0x000000a0, 0x00000000, menuhandler001a6950 },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 2f5fc
struct menu_dialog g_HoloTrainingListMenuDialog = {
struct menudialog g_HoloTrainingListMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(416), // "Holotraining"
menuitems_holotraining,
@@ -370,7 +370,7 @@ struct menu_dialog g_HoloTrainingListMenuDialog = {
};
// 2f614
struct menu_item menuitems_2f614[] = {
struct menuitem menuitems_2f614[] = {
{ MENUITEMTYPE_SCROLLABLE, DESCRIPTION_HOLOTRAINING, 0x00000000, 0x000000aa, 0x000000be, NULL },
{ MENUITEMTYPE_MODEL, 0, 0x00000003, 0x0000008c, 0x0000009c, NULL },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
@@ -380,7 +380,7 @@ struct menu_item menuitems_2f614[] = {
};
// 2f68c
struct menu_dialog g_HoloTrainingDetailsMenuDialog = {
struct menudialog g_HoloTrainingDetailsMenuDialog = {
MENUDIALOGTYPE_DEFAULT,
(u32)&func0f1a6a04,
menuitems_2f614,
@@ -390,7 +390,7 @@ struct menu_dialog g_HoloTrainingDetailsMenuDialog = {
};
// 2f6a4
struct menu_item menuitems_trainingstats_failed2[] = {
struct menuitem menuitems_trainingstats_failed2[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000032, L_MPMENU(426), 0x00000000, NULL }, // "Failed!"
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(424), (u32)&htMenuTextTimeTakenValue, NULL }, // "Time Taken:"
@@ -400,7 +400,7 @@ struct menu_item menuitems_trainingstats_failed2[] = {
};
// 2f71c
struct menu_dialog g_HoloTrainingStatsFailedMenuDialog = {
struct menudialog g_HoloTrainingStatsFailedMenuDialog = {
MENUDIALOGTYPE_DANGER,
L_MPMENU(423), // "Training Stats"
menuitems_trainingstats_failed2,
@@ -410,7 +410,7 @@ struct menu_dialog g_HoloTrainingStatsFailedMenuDialog = {
};
// 2f734
struct menu_item menuitems_trainingstats_completed2[] = {
struct menuitem menuitems_trainingstats_completed2[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000032, L_MPMENU(425), 0x00000000, NULL }, // "Completed!"
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(424), (u32)&htMenuTextTimeTakenValue, NULL }, // "Time Taken:"
@@ -420,7 +420,7 @@ struct menu_item menuitems_trainingstats_completed2[] = {
};
// 2f7ac
struct menu_dialog g_HoloTrainingStatsCompletedMenuDialog = {
struct menudialog g_HoloTrainingStatsCompletedMenuDialog = {
MENUDIALOGTYPE_SUCCESS,
L_MPMENU(423), // "Training Stats"
menuitems_trainingstats_completed2,
@@ -456,7 +456,7 @@ struct hoverprop hoverprops[] = {
};
// 2f858
struct menu_item menuitems_2f858[] = {
struct menuitem menuitems_2f858[] = {
{ MENUITEMTYPE_MODEL, 0, 0x00200002, 0x00000104, 0x0000002c, menuhandler001a6ea4 },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SCROLLABLE, DESCRIPTION_HANGARBIO, 0x00000000, 0x00000104, 0x0000005a, NULL },
@@ -466,7 +466,7 @@ struct menu_item menuitems_2f858[] = {
};
// 2f8d0
struct menu_item menuitems_holograph[] = {
struct menuitem menuitems_holograph[] = {
{ MENUITEMTYPE_MODEL, 0, 0x00000002, 0x00000104, 0x0000006e, NULL },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000002, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x00000022, L_MPMENU(414), 0x00000000, NULL }, // "Press the B Button to go back."
@@ -474,7 +474,7 @@ struct menu_item menuitems_holograph[] = {
};
// 2f920
struct menu_dialog menudialog_holograph = {
struct menudialog menudialog_holograph = {
MENUDIALOGTYPE_DEFAULT,
L_MISC(471), // "Holograph"
menuitems_holograph,
@@ -484,7 +484,7 @@ struct menu_dialog menudialog_holograph = {
};
// 2f938
struct menu_dialog menudialog_2f938 = {
struct menudialog menudialog_2f938 = {
MENUDIALOGTYPE_DEFAULT,
(u32)&func0f1a6c8c,
menuitems_2f858,
@@ -494,7 +494,7 @@ struct menu_dialog menudialog_2f938 = {
};
// 2f950
struct menu_dialog menudialog_2f950 = {
struct menudialog menudialog_2f950 = {
MENUDIALOGTYPE_DEFAULT,
(u32)&func0f1a6c8c,
menuitems_2f858,
@@ -504,13 +504,13 @@ struct menu_dialog menudialog_2f950 = {
};
// 2f968
struct menu_item menuitems_hangarinformation[] = {
struct menuitem menuitems_hangarinformation[] = {
{ MENUITEMTYPE_CUSTOM, 0, 0x00000008, 0x000000a0, 0x00000000, menuhandler001a6d4c },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 2f990
struct menu_dialog menudialog_hangarinformation = {
struct menudialog menudialog_hangarinformation = {
MENUDIALOGTYPE_DEFAULT,
L_MPMENU(415), // "Hangar Information"
menuitems_hangarinformation,
+89 -89
View File
@@ -33,7 +33,7 @@
#include "lib/lib_13130.h"
#include "types.h"
s32 menuhandlerDeclineMission(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerDeclineMission(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPopDialog();
@@ -43,7 +43,7 @@ s32 menuhandlerDeclineMission(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
void menudialogRetryMission(u32 operation, struct menu_dialog *dialog, struct menuthing **thingptr)
void menudialogRetryMission(u32 operation, struct menudialog *dialog, struct menuthing **thingptr)
{
switch (operation) {
case MENUOP_102:
@@ -55,9 +55,9 @@ void menudialogRetryMission(u32 operation, struct menu_dialog *dialog, struct me
* when the dialog is not on screen?
*/
#if VERSION >= VERSION_NTSC_FINAL
if (g_MenuStack[g_MpPlayerNum].curframe) {
if (dialog == g_MenuStack[g_MpPlayerNum].curframe->dialog
|| (dialog->nextsibling && dialog->nextsibling == g_MenuStack[g_MpPlayerNum].curframe->dialog)) {
if (g_Menus[g_MpPlayerNum].curframe) {
if (dialog == g_Menus[g_MpPlayerNum].curframe->dialog
|| (dialog->nextsibling && dialog->nextsibling == g_Menus[g_MpPlayerNum].curframe->dialog)) {
#endif
struct menuthing *thing = *thingptr;
bool pass = false;
@@ -76,9 +76,9 @@ void menudialogRetryMission(u32 operation, struct menu_dialog *dialog, struct me
thing->unk0a = 0;
if (thing->unk02
&& g_MenuStack[g_MpPlayerNum].curframe
&& g_Menus[g_MpPlayerNum].curframe
&& dialog->nextsibling
&& dialog->nextsibling == g_MenuStack[g_MpPlayerNum].curframe->dialog) {
&& dialog->nextsibling == g_Menus[g_MpPlayerNum].curframe->dialog) {
pass = true;
thing->unk02 = 0;
}
@@ -97,12 +97,12 @@ void menudialogRetryMission(u32 operation, struct menu_dialog *dialog, struct me
menudialog00103608(operation, dialog, thingptr);
}
char *menuDialogTitleRetryStageName(struct menu_dialog *dialog)
char *menuDialogTitleRetryStageName(struct menudialog *dialog)
{
char *name;
char *prefix;
if (g_MenuStack[g_MpPlayerNum].curframe->dialog != dialog) {
if (g_Menus[g_MpPlayerNum].curframe->dialog != dialog) {
return langGet(L_OPTIONS(300)); // "Objectives"
}
@@ -114,12 +114,12 @@ char *menuDialogTitleRetryStageName(struct menu_dialog *dialog)
return g_StringPointer;
}
char *menuDialogTitleNextMissionStageName(struct menu_dialog *dialog)
char *menuDialogTitleNextMissionStageName(struct menudialog *dialog)
{
char *name;
char *prefix;
if (g_MenuStack[g_MpPlayerNum].curframe->dialog != dialog) {
if (g_Menus[g_MpPlayerNum].curframe->dialog != dialog) {
return langGet(L_OPTIONS(300)); // "Objectives"
}
@@ -131,7 +131,7 @@ char *menuDialogTitleNextMissionStageName(struct menu_dialog *dialog)
return g_StringPointer;
}
s32 menuhandlerReplayPreviousMission(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerReplayPreviousMission(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
g_MissionConfig.stageindex--;
@@ -141,44 +141,44 @@ s32 menuhandlerReplayPreviousMission(u32 operation, struct menu_item *item, s32
return menuhandlerAcceptMission(operation, NULL, value);
}
char *soloMenuTextNumKills(struct menu_item *item)
char *soloMenuTextNumKills(struct menuitem *item)
{
sprintf(g_StringPointer, "%d", currentPlayerGetNumKills());
return g_StringPointer;
}
char *soloMenuTextNumShots(struct menu_item *item)
char *soloMenuTextNumShots(struct menuitem *item)
{
sprintf(g_StringPointer, "%d", currentPlayerGetShotCount(SHOTCOUNT_TOTAL));
return g_StringPointer;
}
char *soloMenuTextNumHeadShots(struct menu_item *item)
char *soloMenuTextNumHeadShots(struct menuitem *item)
{
sprintf(g_StringPointer, "%d", currentPlayerGetShotCount(SHOTCOUNT_HEAD));
return g_StringPointer;
}
char *soloMenuTextNumBodyShots(struct menu_item *item)
char *soloMenuTextNumBodyShots(struct menuitem *item)
{
sprintf(g_StringPointer, "%d", currentPlayerGetShotCount(SHOTCOUNT_BODY));
return g_StringPointer;
}
char *soloMenuTextNumLimbShots(struct menu_item *item)
char *soloMenuTextNumLimbShots(struct menuitem *item)
{
sprintf(g_StringPointer, "%d", currentPlayerGetShotCount(SHOTCOUNT_LIMB));
return g_StringPointer;
}
char *soloMenuTextNumOtherShots(struct menu_item *item)
char *soloMenuTextNumOtherShots(struct menuitem *item)
{
u32 total = currentPlayerGetShotCount(SHOTCOUNT_GUN) + currentPlayerGetShotCount(SHOTCOUNT_5);
sprintf(g_StringPointer, "%d", total);
return g_StringPointer;
}
char *soloMenuTextAccuracy(struct menu_item *item)
char *soloMenuTextAccuracy(struct menuitem *item)
{
s32 total = currentPlayerGetShotCount(SHOTCOUNT_TOTAL);
s32 numhead = currentPlayerGetShotCount(SHOTCOUNT_HEAD);
@@ -204,7 +204,7 @@ char *soloMenuTextAccuracy(struct menu_item *item)
return g_StringPointer;
}
char *soloMenuTextMissionStatus(struct menu_item *item)
char *soloMenuTextMissionStatus(struct menuitem *item)
{
if (g_CheatsActiveBank0 || g_CheatsActiveBank1) {
return langGet(L_MPWEAPONS(135)); // "Cheated"
@@ -261,7 +261,7 @@ char *soloMenuTextMissionStatus(struct menu_item *item)
return langGet(L_OPTIONS(294)); // "Completed"
}
char *soloMenuTextAgentStatus(struct menu_item *item)
char *soloMenuTextAgentStatus(struct menuitem *item)
{
if (g_CheatsActiveBank0 || g_CheatsActiveBank1) {
return langGet(L_MPWEAPONS(134)); // "Dishonored"
@@ -282,16 +282,16 @@ char *soloMenuTextAgentStatus(struct menu_item *item)
return langGet(L_OPTIONS(291)); // "Active"
}
char *menuTitleStageCompleted(struct menu_item *item)
char *menuTitleStageCompleted(struct menuitem *item)
{
sprintf(g_StringPointer, "%s: %s\n",
langGet(g_StageNames[g_MenuStack[g_MpPlayerNum].unke2c].name3),
langGet(g_StageNames[g_Menus[g_MpPlayerNum].data.endscreen.stageindex].name3),
langGet(L_OPTIONS(276))); // "Completed"
return g_StringPointer;
}
char *menuTextCurrentStageName3(struct menu_item *item)
char *menuTextCurrentStageName3(struct menuitem *item)
{
char *name = langGet(g_StageNames[g_MissionConfig.stageindex].name3);
sprintf(g_StringPointer, "%s\n", name);
@@ -299,7 +299,7 @@ char *menuTextCurrentStageName3(struct menu_item *item)
return g_StringPointer;
}
char *menuTitleStageFailed(struct menu_item *item)
char *menuTitleStageFailed(struct menuitem *item)
{
sprintf(g_StringPointer, "%s: %s\n",
langGet(g_StageNames[g_MissionConfig.stageindex].name3),
@@ -308,7 +308,7 @@ char *menuTitleStageFailed(struct menu_item *item)
return g_StringPointer;
}
char *soloMenuTextMissionTime(struct menu_item *item)
char *soloMenuTextMissionTime(struct menuitem *item)
{
formatTime(g_StringPointer, getMissionTime(), 3);
strcat(g_StringPointer, "\n");
@@ -316,7 +316,7 @@ char *soloMenuTextMissionTime(struct menu_item *item)
return g_StringPointer;
}
struct menu_dialog *func0f10d730(void)
struct menudialog *func0f10d730(void)
{
g_MissionConfig.stageindex++;
g_MissionConfig.stagenum = g_StageNames[g_MissionConfig.stageindex].stagenum;
@@ -326,20 +326,20 @@ struct menu_dialog *func0f10d730(void)
void func0f10d770(void)
{
func0f0f8bb4(&g_MenuStack[0].unk840, func0f09ddfc() - func0f0e4fe0(), 0);
g_MenuStack[0].unk844 = func0f09ddec() + func0f0e4fe0();
func0f0f8bb4(&g_Menus[0].unk840, func0f09ddfc() - func0f0e4fe0(), 0);
g_Menus[0].unk844 = func0f09ddec() + func0f0e4fe0();
func0f0f8bb4(&g_MenuStack[1].unk840, func0f09ddfc() - func0f0e4fe0(), 0);
g_MenuStack[1].unk844 = func0f09ddec() + func0f0e4fe0();
func0f0f8bb4(&g_Menus[1].unk840, func0f09ddfc() - func0f0e4fe0(), 0);
g_Menus[1].unk844 = func0f09ddec() + func0f0e4fe0();
func0f0f8bb4(&g_MenuStack[2].unk840, func0f09ddfc() - func0f0e4fe0(), 0);
g_MenuStack[2].unk844 = func0f09ddec() + func0f0e4fe0();
func0f0f8bb4(&g_Menus[2].unk840, func0f09ddfc() - func0f0e4fe0(), 0);
g_Menus[2].unk844 = func0f09ddec() + func0f0e4fe0();
func0f0f8bb4(&g_MenuStack[3].unk840, func0f09ddfc() - func0f0e4fe0(), 0);
g_MenuStack[3].unk844 = func0f09ddec() + func0f0e4fe0();
func0f0f8bb4(&g_Menus[3].unk840, func0f09ddfc() - func0f0e4fe0(), 0);
g_Menus[3].unk844 = func0f09ddec() + func0f0e4fe0();
}
s32 menuhandlerReplayLastLevel(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerReplayLastLevel(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
g_MissionConfig.stagenum = g_StageNames[g_MissionConfig.stageindex].stagenum;
@@ -352,7 +352,7 @@ s32 menuhandlerReplayLastLevel(u32 operation, struct menu_item *item, s32 *value
/**
* Displayed after Defense and Skedar Ruins completion screens.
*/
s32 menuhandlerContinueMission(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerContinueMission(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
func0f10d910(2);
@@ -429,7 +429,7 @@ glabel func0f10d910
/* f10d9f0: 10e1000f */ beq $a3,$at,.L0f10da30
/* f10d9f4: 3c0d8007 */ lui $t5,%hi(g_MpPlayerNum)
/* f10d9f8: 8dad1448 */ lw $t5,%lo(g_MpPlayerNum)($t5)
/* f10d9fc: 3c0f800a */ lui $t7,%hi(g_MenuStack+0xe24)
/* f10d9fc: 3c0f800a */ lui $t7,%hi(g_Menus+0xe24)
/* f10da00: 24010001 */ addiu $at,$zero,0x1
/* f10da04: 000d70c0 */ sll $t6,$t5,0x3
/* f10da08: 01cd7023 */ subu $t6,$t6,$t5
@@ -439,7 +439,7 @@ glabel func0f10d910
/* f10da18: 01cd7023 */ subu $t6,$t6,$t5
/* f10da1c: 000e7100 */ sll $t6,$t6,0x4
/* f10da20: 01ee7821 */ addu $t7,$t7,$t6
/* f10da24: 8defee24 */ lw $t7,%lo(g_MenuStack+0xe24)($t7)
/* f10da24: 8defee24 */ lw $t7,%lo(g_Menus+0xe24)($t7)
/* f10da28: 11e00063 */ beqz $t7,.L0f10dbb8
/* f10da2c: 00000000 */ nop
.L0f10da30:
@@ -661,7 +661,7 @@ glabel menudialog0010dd28
/* f10dd34: afbf0014 */ sw $ra,0x14($sp)
/* f10dd38: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f10dd3c: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f10dd40: 3c01800a */ lui $at,%hi(g_MenuStack+0xe1c)
/* f10dd40: 3c01800a */ lui $at,%hi(g_Menus+0xe1c)
/* f10dd44: 000e78c0 */ sll $t7,$t6,0x3
/* f10dd48: 01ee7823 */ subu $t7,$t7,$t6
/* f10dd4c: 000f7880 */ sll $t7,$t7,0x2
@@ -670,7 +670,7 @@ glabel menudialog0010dd28
/* f10dd58: 01ee7823 */ subu $t7,$t7,$t6
/* f10dd5c: 000f7900 */ sll $t7,$t7,0x4
/* f10dd60: 002f0821 */ addu $at,$at,$t7
/* f10dd64: ac20ee1c */ sw $zero,%lo(g_MenuStack+0xe1c)($at)
/* f10dd64: ac20ee1c */ sw $zero,%lo(g_Menus+0xe1c)($at)
.L0f10dd68:
/* f10dd68: 24010066 */ addiu $at,$zero,0x66
/* f10dd6c: 14810035 */ bne $a0,$at,.L0f10de44
@@ -751,7 +751,7 @@ glabel menudialog0010de58
/* f10de68: 00c03825 */ or $a3,$a2,$zero
/* f10de6c: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f10de70: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f10de74: 3c01800a */ lui $at,%hi(g_MenuStack+0xe1c)
/* f10de74: 3c01800a */ lui $at,%hi(g_Menus+0xe1c)
/* f10de78: 000e78c0 */ sll $t7,$t6,0x3
/* f10de7c: 01ee7823 */ subu $t7,$t7,$t6
/* f10de80: 000f7880 */ sll $t7,$t7,0x2
@@ -760,7 +760,7 @@ glabel menudialog0010de58
/* f10de8c: 01ee7823 */ subu $t7,$t7,$t6
/* f10de90: 000f7900 */ sll $t7,$t7,0x4
/* f10de94: 002f0821 */ addu $at,$at,$t7
/* f10de98: ac20ee1c */ sw $zero,%lo(g_MenuStack+0xe1c)($at)
/* f10de98: ac20ee1c */ sw $zero,%lo(g_Menus+0xe1c)($at)
.L0f10de9c:
/* f10de9c: 24010066 */ addiu $at,$zero,0x66
/* f10dea0: 1481006b */ bne $a0,$at,.L0f10e050
@@ -900,38 +900,38 @@ glabel menudialog0010de58
* 0 = mission time
* 1 = target time
* 2 = separator and new cheat available
* 3 = cheat name
* 3 = completion cheat name
* 4 = others (shots)
* 5 = cheat name 2
* 5 = timed cheat name
* 6 = limb shots
*/
s32 menuhandlerEndscreenMisc(u32 operation, struct menu_item *item, u32 *values)
s32 menuhandlerEndscreenCheats(u32 operation, struct menuitem *item, u32 *values)
{
if (operation == MENUOP_GETCOLOUR
&& ((g_MenuStack[g_MpPlayerNum].slotcount & 0x200) || item->param == 5)) { // cheat name 2
&& ((g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0x200) || item->param == 5)) { // timed cheat name
u32 weight = func0f006b08(40) * 255;
func0000db30("ctcol", &g_CheatColour);
if (item->param == 0
&& cheatGetTime(g_MenuStack[g_MpPlayerNum].slotcount & 0xff) == 0) {
&& cheatGetTime(g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0xff) == 0) {
return 0;
}
values[1] = colourBlend(values[1], g_CheatColour, weight);
if (item->param == 3) { // cheat name
if (item->param == 3) { // completion cheat name
values[0] = colourBlend(values[0], g_CheatColour, weight);
}
if (item->param == 5) { // cheat name 2
if (item->param == 5) { // timed cheat name
values[0] = colourBlend(values[0], g_CheatColour, weight);
}
}
if (operation == MENUOP_CHECKHIDDEN) {
if (item->param == 1) { // target time
u32 info = g_MenuStack[g_MpPlayerNum].slotcount;
u32 info = g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo;
if (info & 0x800) {
return true;
@@ -942,20 +942,20 @@ s32 menuhandlerEndscreenMisc(u32 operation, struct menu_item *item, u32 *values)
}
return true;
} else if (item->param == 2 && (g_MenuStack[g_MpPlayerNum].slotcount & 0xa00) == 0) {
} else if (item->param == 2 && (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0xa00) == 0) {
// new cheat available
return true;
} else if (item->param == 3 && (g_MenuStack[g_MpPlayerNum].slotcount & 0x200) == 0) {
// cheat name
} else if (item->param == 3 && (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0x200) == 0) {
// completion cheat name
return true;
} else if (item->param == 4 && (g_MenuStack[g_MpPlayerNum].slotcount & 0xa00)) {
} else if (item->param == 4 && (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0xa00)) {
// others (shots)
return true;
} else if (item->param == 6 && (g_MenuStack[g_MpPlayerNum].slotcount & 0xa00) == 0xa00) {
} else if (item->param == 6 && (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0xa00) == 0xa00) {
// limb shots
return true;
} else if (item->param == 5 && (g_MenuStack[g_MpPlayerNum].slotcount & 0x800) == 0) {
// cheat name 2
} else if (item->param == 5 && (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0x800) == 0) {
// timed cheat name
return true;
}
}
@@ -963,19 +963,19 @@ s32 menuhandlerEndscreenMisc(u32 operation, struct menu_item *item, u32 *values)
return false;
}
char *soloMenuTextCheatName(struct menu_item *item)
char *soloMenuTextCheatName(struct menuitem *item)
{
if (g_MenuStack[g_MpPlayerNum].slotcount & 0x00000300) {
return cheatGetName(g_MenuStack[g_MpPlayerNum].slotcount & 0xff);
if (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0x00000300) {
return cheatGetName(g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0xff);
}
return NULL;
}
char *soloMenuTextCheatName2(struct menu_item *item)
char *soloMenuTextCheatName2(struct menuitem *item)
{
if (g_MenuStack[g_MpPlayerNum].slotcount & 0x00000800) {
return cheatGetName((g_MenuStack[g_MpPlayerNum].slotcount >> 16) & 0xff);
if (g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0x00000800) {
return cheatGetName((g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo >> 16) & 0xff);
}
return NULL;
@@ -985,7 +985,7 @@ GLOBAL_ASM(
glabel soloMenuTextTargetTime
/* f10e4d8: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f10e4dc: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f10e4e0: 3c02800a */ lui $v0,%hi(g_MenuStack+0xe20)
/* f10e4e0: 3c02800a */ lui $v0,%hi(g_Menus+0xe20)
/* f10e4e4: 27bdffe8 */ addiu $sp,$sp,-24
/* f10e4e8: 000e78c0 */ sll $t7,$t6,0x3
/* f10e4ec: 01ee7823 */ subu $t7,$t7,$t6
@@ -995,7 +995,7 @@ glabel soloMenuTextTargetTime
/* f10e4fc: 01ee7823 */ subu $t7,$t7,$t6
/* f10e500: 000f7900 */ sll $t7,$t7,0x4
/* f10e504: 004f1021 */ addu $v0,$v0,$t7
/* f10e508: 8c42ee20 */ lw $v0,%lo(g_MenuStack+0xe20)($v0)
/* f10e508: 8c42ee20 */ lw $v0,%lo(g_Menus+0xe20)($v0)
/* f10e50c: afbf0014 */ sw $ra,0x14($sp)
/* f10e510: afa40018 */ sw $a0,0x18($sp)
/* f10e514: 30580100 */ andi $t8,$v0,0x100
@@ -1035,15 +1035,15 @@ glabel soloMenuTextTargetTime
const char var7f1b38bc[] = "\n";
// regalloc
//char *soloMenuTextTargetTime(struct menu_item *item)
//char *soloMenuTextTargetTime(struct menuitem *item)
//{
// s32 time;
//
// if ((g_MenuStack[g_MpPlayerNum].slotcount & 0x00000100) == 0) {
// if ((g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0x00000100) == 0) {
// return NULL;
// }
//
// time = cheatGetTime(g_MenuStack[g_MpPlayerNum].slotcount & 0xff);
// time = cheatGetTime(g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo & 0xff);
//
// if (!time) {
// return NULL;
@@ -1058,7 +1058,7 @@ void endscreenSetCoopCompleted(void)
{
if (g_CheatsActiveBank0 == 0 && g_CheatsActiveBank1 == 0) {
if (g_SoloSaveFile.coopcompletions[g_MissionConfig.difficulty] & (1 << g_MissionConfig.stageindex)) {
g_MenuStack[g_MpPlayerNum].unke24 = 1;
g_Menus[g_MpPlayerNum].data.endscreen.unke24 = true;
}
g_SoloSaveFile.coopcompletions[g_MissionConfig.difficulty] |= (1 << g_MissionConfig.stageindex);
@@ -1119,7 +1119,7 @@ glabel func0f10e620
/* f10e6e4: 0460000d */ bltz $v1,.L0f10e71c
/* f10e6e8: 00000000 */ nop
/* f10e6ec: 8f181448 */ lw $t8,%lo(g_MpPlayerNum)($t8)
/* f10e6f0: 3c01800a */ lui $at,%hi(g_MenuStack+0xe20)
/* f10e6f0: 3c01800a */ lui $at,%hi(g_Menus+0xe20)
/* f10e6f4: 346f0100 */ ori $t7,$v1,0x100
/* f10e6f8: 0018c8c0 */ sll $t9,$t8,0x3
/* f10e6fc: 0338c823 */ subu $t9,$t9,$t8
@@ -1129,7 +1129,7 @@ glabel func0f10e620
/* f10e70c: 0338c823 */ subu $t9,$t9,$t8
/* f10e710: 0019c900 */ sll $t9,$t9,0x4
/* f10e714: 00390821 */ addu $at,$at,$t9
/* f10e718: ac2fee20 */ sw $t7,%lo(g_MenuStack+0xe20)($at)
/* f10e718: ac2fee20 */ sw $t7,%lo(g_Menus+0xe20)($at)
.L0f10e71c:
/* f10e71c: 04400011 */ bltz $v0,.L0f10e764
/* f10e720: 00000000 */ nop
@@ -1196,7 +1196,7 @@ glabel func0f10e620
/* f10e804: 05c00117 */ bltz $t6,.L0f10ec64
/* f10e808: 00000000 */ nop
/* f10e80c: 8f181448 */ lw $t8,%lo(g_MpPlayerNum)($t8)
/* f10e810: 3c02800a */ lui $v0,%hi(g_MenuStack+0xe20)
/* f10e810: 3c02800a */ lui $v0,%hi(g_Menus+0xe20)
/* f10e814: afa00020 */ sw $zero,0x20($sp)
/* f10e818: 001878c0 */ sll $t7,$t8,0x3
/* f10e81c: 01f87823 */ subu $t7,$t7,$t8
@@ -1206,7 +1206,7 @@ glabel func0f10e620
/* f10e82c: 01f87823 */ subu $t7,$t7,$t8
/* f10e830: 000f7900 */ sll $t7,$t7,0x4
/* f10e834: 004f1021 */ addu $v0,$v0,$t7
/* f10e838: 8c42ee20 */ lw $v0,%lo(g_MenuStack+0xe20)($v0)
/* f10e838: 8c42ee20 */ lw $v0,%lo(g_Menus+0xe20)($v0)
/* f10e83c: afa0001c */ sw $zero,0x1c($sp)
/* f10e840: 30590100 */ andi $t9,$v0,0x100
/* f10e844: 13200014 */ beqz $t9,.L0f10e898
@@ -1233,7 +1233,7 @@ glabel func0f10e620
.L0f10e898:
/* f10e898: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f10e89c: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f10e8a0: 3c02800a */ lui $v0,%hi(g_MenuStack+0xe20)
/* f10e8a0: 3c02800a */ lui $v0,%hi(g_Menus+0xe20)
/* f10e8a4: 000ec0c0 */ sll $t8,$t6,0x3
/* f10e8a8: 030ec023 */ subu $t8,$t8,$t6
/* f10e8ac: 0018c080 */ sll $t8,$t8,0x2
@@ -1242,7 +1242,7 @@ glabel func0f10e620
/* f10e8b8: 030ec023 */ subu $t8,$t8,$t6
/* f10e8bc: 0018c100 */ sll $t8,$t8,0x4
/* f10e8c0: 00581021 */ addu $v0,$v0,$t8
/* f10e8c4: 8c42ee20 */ lw $v0,%lo(g_MenuStack+0xe20)($v0)
/* f10e8c4: 8c42ee20 */ lw $v0,%lo(g_Menus+0xe20)($v0)
/* f10e8c8: 304f1000 */ andi $t7,$v0,0x1000
/* f10e8cc: 11e00005 */ beqz $t7,.L0f10e8e4
/* f10e8d0: 00022402 */ srl $a0,$v0,0x10
@@ -1345,7 +1345,7 @@ glabel func0f10e620
/* f10ea3c: 1460000d */ bnez $v1,.L0f10ea74
/* f10ea40: 3c0f8007 */ lui $t7,%hi(g_MpPlayerNum)
/* f10ea44: 8d8c1448 */ lw $t4,%lo(g_MpPlayerNum)($t4)
/* f10ea48: 3c01800a */ lui $at,%hi(g_MenuStack+0xe24)
/* f10ea48: 3c01800a */ lui $at,%hi(g_Menus+0xe24)
/* f10ea4c: 240d0001 */ addiu $t5,$zero,0x1
/* f10ea50: 000c70c0 */ sll $t6,$t4,0x3
/* f10ea54: 01cc7023 */ subu $t6,$t6,$t4
@@ -1355,7 +1355,7 @@ glabel func0f10e620
/* f10ea64: 01cc7023 */ subu $t6,$t6,$t4
/* f10ea68: 000e7100 */ sll $t6,$t6,0x4
/* f10ea6c: 002e0821 */ addu $at,$at,$t6
/* f10ea70: ac2dee24 */ sw $t5,%lo(g_MenuStack+0xe24)($at)
/* f10ea70: ac2dee24 */ sw $t5,%lo(g_Menus+0xe24)($at)
.L0f10ea74:
/* f10ea74: 8def1448 */ lw $t7,%lo(g_MpPlayerNum)($t7)
/* f10ea78: 2529e000 */ addiu $t1,$t1,-8192
@@ -1438,7 +1438,7 @@ glabel func0f10e620
.L0f10eb90:
/* f10eb90: 3c198007 */ lui $t9,%hi(g_MpPlayerNum)
/* f10eb94: 8f391448 */ lw $t9,%lo(g_MpPlayerNum)($t9)
/* f10eb98: 3c02800a */ lui $v0,%hi(g_MenuStack+0xe20)
/* f10eb98: 3c02800a */ lui $v0,%hi(g_Menus+0xe20)
/* f10eb9c: 001958c0 */ sll $t3,$t9,0x3
/* f10eba0: 01795823 */ subu $t3,$t3,$t9
/* f10eba4: 000b5880 */ sll $t3,$t3,0x2
@@ -1447,7 +1447,7 @@ glabel func0f10e620
/* f10ebb0: 01795823 */ subu $t3,$t3,$t9
/* f10ebb4: 000b5900 */ sll $t3,$t3,0x4
/* f10ebb8: 004b1021 */ addu $v0,$v0,$t3
/* f10ebbc: 8c42ee20 */ lw $v0,%lo(g_MenuStack+0xe20)($v0)
/* f10ebbc: 8c42ee20 */ lw $v0,%lo(g_Menus+0xe20)($v0)
/* f10ebc0: 304c1000 */ andi $t4,$v0,0x1000
/* f10ebc4: 11800017 */ beqz $t4,.L0f10ec24
/* f10ebc8: 00022402 */ srl $a0,$v0,0x10
@@ -1524,10 +1524,10 @@ void soloPushCoopModeEndscreen(void)
g_MpPlayerNum = g_Vars.currentplayerstats->mpindex;
g_MenuStack[g_MpPlayerNum].slotcount = 0;
g_MenuStack[g_MpPlayerNum].unke24 = 0;
g_MenuStack[g_MpPlayerNum].unke2c = g_MissionConfig.stageindex;
g_MenuStack[g_MpPlayerNum].playernum = g_Vars.currentplayernum;
g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo = 0;
g_Menus[g_MpPlayerNum].data.endscreen.unke24 = false;
g_Menus[g_MpPlayerNum].data.endscreen.stageindex = g_MissionConfig.stageindex;
g_Menus[g_MpPlayerNum].playernum = g_Vars.currentplayernum;
if ((g_Vars.bond->isdead && g_Vars.coop->isdead)
|| g_Vars.bond->aborted
@@ -1562,7 +1562,7 @@ void soloPushSoloModeEndscreen(void)
u32 prevplayernum = g_MpPlayerNum;
g_MpPlayerNum = 0;
g_MenuStack[g_MpPlayerNum].playernum = 0;
g_Menus[g_MpPlayerNum].playernum = 0;
if ((g_Vars.bond->isdead && g_Vars.coop->isdead)
|| g_Vars.bond->aborted
@@ -1587,10 +1587,10 @@ void soloPushAntiModeEndscreen(void)
g_MpPlayerNum = g_Vars.currentplayerstats->mpindex;
g_MenuStack[g_MpPlayerNum].slotcount = 0;
g_MenuStack[g_MpPlayerNum].unke24 = 0;
g_MenuStack[g_MpPlayerNum].unke2c = g_MissionConfig.stageindex;
g_MenuStack[g_MpPlayerNum].playernum = g_Vars.currentplayernum;
g_Menus[g_MpPlayerNum].data.endscreen.cheatinfo = 0;
g_Menus[g_MpPlayerNum].data.endscreen.unke24 = false;
g_Menus[g_MpPlayerNum].data.endscreen.stageindex = g_MissionConfig.stageindex;
g_Menus[g_MpPlayerNum].playernum = g_Vars.currentplayernum;
if (g_Vars.currentplayer == g_Vars.bond) {
if (g_Vars.anti->aborted == 0 &&
+4 -4
View File
@@ -82,25 +82,25 @@ glabel func0f00c490
/* f00c4f8: 3c028009 */ lui $v0,%hi(g_Is4Mb)
/* f00c4fc: 90420af0 */ lbu $v0,%lo(g_Is4Mb)($v0)
/* f00c500: 24040001 */ addiu $a0,$zero,0x1
/* f00c504: 3c0a800a */ lui $t2,%hi(g_MenuStack+0x2000)
/* f00c504: 3c0a800a */ lui $t2,%hi(g_Menus+0x2000)
/* f00c508: 14820005 */ bne $a0,$v0,.L0f00c520
/* f00c50c: 3c0f800a */ lui $t7,%hi(g_Vars+0x4b4)
/* f00c510: 3c0a800a */ lui $t2,%hi(var8009ce50)
/* f00c514: 254ace50 */ addiu $t2,$t2,%lo(var8009ce50)
/* f00c518: 10000004 */ b .L0f00c52c
/* f00c51c: ad430000 */ sw $v1,%lo(g_MenuStack+0x2000)($t2)
/* f00c51c: ad430000 */ sw $v1,%lo(g_Menus+0x2000)($t2)
.L0f00c520:
/* f00c520: 254ace50 */ addiu $t2,$t2,-12720
/* f00c524: 24190064 */ addiu $t9,$zero,0x64
/* f00c528: ad590000 */ sw $t9,0x0($t2)
.L0f00c52c:
/* f00c52c: 14820006 */ bne $a0,$v0,.L0f00c548
/* f00c530: 3c0b800a */ lui $t3,%hi(g_MenuStack+0x2000)
/* f00c530: 3c0b800a */ lui $t3,%hi(g_Menus+0x2000)
/* f00c534: 3c0b800a */ lui $t3,%hi(var8009ce54)
/* f00c538: 256bce54 */ addiu $t3,$t3,%lo(var8009ce54)
/* f00c53c: 240d0028 */ addiu $t5,$zero,0x28
/* f00c540: 10000004 */ b .L0f00c554
/* f00c544: ad6d0000 */ sw $t5,%lo(g_MenuStack+0x2000)($t3)
/* f00c544: ad6d0000 */ sw $t5,%lo(g_Menus+0x2000)($t3)
.L0f00c548:
/* f00c548: 256bce54 */ addiu $t3,$t3,-12716
/* f00c54c: 240e0050 */ addiu $t6,$zero,0x50
+2 -2
View File
@@ -111,7 +111,7 @@ glabel func0f013550
/* f013684: 00003025 */ or $a2,$zero,$zero
.L0f013688:
/* f013688: 10c00008 */ beqz $a2,.L0f0136ac
/* f01368c: 3c0b800a */ lui $t3,%hi(g_MenuStack+0x2000)
/* f01368c: 3c0b800a */ lui $t3,%hi(g_Menus+0x2000)
/* f013690: 10c80022 */ beq $a2,$t0,.L0f01371c
/* f013694: 3c0b800a */ lui $t3,%hi(var8009cc44)
/* f013698: 24010002 */ addiu $at,$zero,0x2
@@ -122,7 +122,7 @@ glabel func0f013550
.L0f0136ac:
/* f0136ac: 256bcc44 */ addiu $t3,$t3,%lo(var8009cc44)
/* f0136b0: 24180050 */ addiu $t8,$zero,0x50
/* f0136b4: ad780000 */ sw $t8,%lo(g_MenuStack+0x2000)($t3)
/* f0136b4: ad780000 */ sw $t8,%lo(g_Menus+0x2000)($t3)
/* f0136b8: 2419000a */ addiu $t9,$zero,0xa
/* f0136bc: 3c01800a */ lui $at,%hi(var8009cc5c)
/* f0136c0: ac39cc5c */ sw $t9,%lo(var8009cc5c)($at)
+2 -2
View File
@@ -611,7 +611,7 @@ glabel activemenuTick
/* f01b8b8: 1561000e */ bne $t3,$at,.L0f01b8f4
/* f01b8bc: 00000000 */ nop
/* f01b8c0: 8d8c1448 */ lw $t4,%lo(g_MpPlayerNum)($t4)
/* f01b8c4: 3c0e800a */ lui $t6,%hi(g_MenuStack+0x4f8)
/* f01b8c4: 3c0e800a */ lui $t6,%hi(g_Menus+0x4f8)
/* f01b8c8: 000c68c0 */ sll $t5,$t4,0x3
/* f01b8cc: 01ac6823 */ subu $t5,$t5,$t4
/* f01b8d0: 000d6880 */ sll $t5,$t5,0x2
@@ -620,7 +620,7 @@ glabel activemenuTick
/* f01b8dc: 01ac6823 */ subu $t5,$t5,$t4
/* f01b8e0: 000d6900 */ sll $t5,$t5,0x4
/* f01b8e4: 01cd7021 */ addu $t6,$t6,$t5
/* f01b8e8: 8dcee4f8 */ lw $t6,%lo(g_MenuStack+0x4f8)($t6)
/* f01b8e8: 8dcee4f8 */ lw $t6,%lo(g_Menus+0x4f8)($t6)
/* f01b8ec: 15c00005 */ bnez $t6,.L0f01b904
/* f01b8f0: 00000000 */ nop
.L0f01b8f4:
+11 -11
View File
@@ -69,7 +69,7 @@ void menuCountDialogs(void)
g_MenuData.count = 0;
for (i = 0; i < 4; i++) {
if (g_MenuStack[i].curframe) {
if (g_Menus[i].curframe) {
g_MenuData.count++;
}
}
@@ -1606,16 +1606,16 @@ glabel var7f1a863c
/* f01d408: 51e1000d */ beql $t7,$at,.L0f01d440
/* f01d40c: 8e6f006c */ lw $t7,0x6c($s3)
/* f01d410: 92b805d5 */ lbu $t8,0x5d5($s5)
/* f01d414: 3c19800a */ lui $t9,%hi(g_MenuStack+0x844)
/* f01d414: 3c19800a */ lui $t9,%hi(g_Menus+0x844)
/* f01d418: 370d0080 */ ori $t5,$t8,0x80
/* f01d41c: a2ad05d5 */ sb $t5,0x5d5($s5)
/* f01d420: 8f39e844 */ lw $t9,%lo(g_MenuStack+0x844)($t9)
/* f01d420: 8f39e844 */ lw $t9,%lo(g_Menus+0x844)($t9)
/* f01d424: 53200006 */ beqzl $t9,.L0f01d440
/* f01d428: 8e6f006c */ lw $t7,0x6c($s3)
/* f01d42c: 0fc277d4 */ jal func0f09df50
/* f01d430: 00000000 */ nop
/* f01d434: 3c01800a */ lui $at,%hi(g_MenuStack+0x844)
/* f01d438: ac20e844 */ sw $zero,%lo(g_MenuStack+0x844)($at)
/* f01d434: 3c01800a */ lui $at,%hi(g_Menus+0x844)
/* f01d438: ac20e844 */ sw $zero,%lo(g_Menus+0x844)($at)
/* f01d43c: 8e6f006c */ lw $t7,0x6c($s3)
.L0f01d440:
/* f01d440: a26004d0 */ sb $zero,0x4d0($s3)
@@ -1692,9 +1692,9 @@ glabel var7f1a863c
/* f01d540: 0018c0c0 */ sll $t8,$t8,0x3
/* f01d544: 0303c023 */ subu $t8,$t8,$v1
/* f01d548: 0018c100 */ sll $t8,$t8,0x4
/* f01d54c: 3c0d800a */ lui $t5,%hi(g_MenuStack+0x4f8)
/* f01d54c: 3c0d800a */ lui $t5,%hi(g_Menus+0x4f8)
/* f01d550: 01b86821 */ addu $t5,$t5,$t8
/* f01d554: 8dade4f8 */ lw $t5,%lo(g_MenuStack+0x4f8)($t5)
/* f01d554: 8dade4f8 */ lw $t5,%lo(g_Menus+0x4f8)($t5)
/* f01d558: 55a00006 */ bnezl $t5,.L0f01d574
/* f01d55c: 904e1c50 */ lbu $t6,0x1c50($v0)
/* f01d560: 82b9001b */ lb $t9,0x1b($s5)
@@ -1729,9 +1729,9 @@ glabel var7f1a863c
/* f01d5c4: 0018c0c0 */ sll $t8,$t8,0x3
/* f01d5c8: 0303c023 */ subu $t8,$t8,$v1
/* f01d5cc: 0018c100 */ sll $t8,$t8,0x4
/* f01d5d0: 3c0d800a */ lui $t5,%hi(g_MenuStack+0x4f8)
/* f01d5d0: 3c0d800a */ lui $t5,%hi(g_Menus+0x4f8)
/* f01d5d4: 01b86821 */ addu $t5,$t5,$t8
/* f01d5d8: 8dade4f8 */ lw $t5,%lo(g_MenuStack+0x4f8)($t5)
/* f01d5d8: 8dade4f8 */ lw $t5,%lo(g_Menus+0x4f8)($t5)
/* f01d5dc: 51a00003 */ beqzl $t5,.L0f01d5ec
/* f01d5e0: 8d190064 */ lw $t9,0x64($t0)
/* f01d5e4: a26a04d0 */ sb $t2,0x4d0($s3)
@@ -1784,9 +1784,9 @@ glabel var7f1a863c
/* f01d684: 0019c8c0 */ sll $t9,$t9,0x3
/* f01d688: 0323c823 */ subu $t9,$t9,$v1
/* f01d68c: 0019c900 */ sll $t9,$t9,0x4
/* f01d690: 3c0f800a */ lui $t7,%hi(g_MenuStack+0x4f8)
/* f01d690: 3c0f800a */ lui $t7,%hi(g_Menus+0x4f8)
/* f01d694: 01f97821 */ addu $t7,$t7,$t9
/* f01d698: 8defe4f8 */ lw $t7,%lo(g_MenuStack+0x4f8)($t7)
/* f01d698: 8defe4f8 */ lw $t7,%lo(g_Menus+0x4f8)($t7)
/* f01d69c: 51e00004 */ beqzl $t7,.L0f01d6b0
/* f01d6a0: 8e78006c */ lw $t8,0x6c($s3)
/* f01d6a4: 8d0e0064 */ lw $t6,0x64($t0)
+2 -2
View File
@@ -23857,11 +23857,11 @@ glabel func0f0abc28
GLOBAL_ASM(
glabel func0f0abc74
/* f0abc74: 10a00008 */ beqz $a1,.L0f0abc98
/* f0abc78: 3c02800a */ lui $v0,%hi(g_MenuStack+0x37a4)
/* f0abc78: 3c02800a */ lui $v0,%hi(g_Menus+0x37a4)
/* f0abc7c: 3c02800a */ lui $v0,%hi(g_Vars+0x284)
/* f0abc80: 8c42a244 */ lw $v0,%lo(g_Vars+0x284)($v0)
/* f0abc84: 00807827 */ nor $t7,$a0,$zero
/* f0abc88: 8c4e17a4 */ lw $t6,%lo(g_MenuStack+0x37a4)($v0)
/* f0abc88: 8c4e17a4 */ lw $t6,%lo(g_Menus+0x37a4)($v0)
/* f0abc8c: 01cfc024 */ and $t8,$t6,$t7
/* f0abc90: 03e00008 */ jr $ra
/* f0abc94: ac5817a4 */ sw $t8,0x17a4($v0)
+2 -2
View File
@@ -1209,7 +1209,7 @@ glabel func0f0b1948
/* f0b1988: 14ef001d */ bne $a3,$t7,.L0f0b1a00
/* f0b198c: 00000000 */ nop
/* f0b1990: 8fb8001c */ lw $t8,0x1c($sp)
/* f0b1994: 3c02800a */ lui $v0,%hi(g_MenuStack+0x20c4)
/* f0b1994: 3c02800a */ lui $v0,%hi(g_Menus+0x20c4)
/* f0b1998: 13000012 */ beqz $t8,.L0f0b19e4
/* f0b199c: 00000000 */ nop
/* f0b19a0: 8ca30014 */ lw $v1,0x14($a1)
@@ -1219,7 +1219,7 @@ glabel func0f0b1948
/* f0b19b0: 00000000 */ nop
/* f0b19b4: 8c42a244 */ lw $v0,%lo(g_Vars+0x284)($v0)
/* f0b19b8: 2401fff0 */ addiu $at,$zero,-16
/* f0b19bc: 8c4900c4 */ lw $t1,%lo(g_MenuStack+0x20c4)($v0)
/* f0b19bc: 8c4900c4 */ lw $t1,%lo(g_Menus+0x20c4)($v0)
/* f0b19c0: 01215024 */ and $t2,$t1,$at
/* f0b19c4: ac4a00c4 */ sw $t2,0xc4($v0)
/* f0b19c8: 8ca30014 */ lw $v1,0x14($a1)
+50 -39
View File
@@ -8576,7 +8576,7 @@ glabel func0f0e98ac
.L0f0e9c28:
/* f0e9c28: 3c098007 */ lui $t1,%hi(g_MpPlayerNum)
/* f0e9c2c: 8d291448 */ lw $t1,%lo(g_MpPlayerNum)($t1)
/* f0e9c30: 3c0c800a */ lui $t4,%hi(g_MenuStack+0x4f8)
/* f0e9c30: 3c0c800a */ lui $t4,%hi(g_Menus+0x4f8)
/* f0e9c34: 8fae0134 */ lw $t6,0x134($sp)
/* f0e9c38: 000950c0 */ sll $t2,$t1,0x3
/* f0e9c3c: 01495023 */ subu $t2,$t2,$t1
@@ -8586,7 +8586,7 @@ glabel func0f0e98ac
/* f0e9c4c: 01495023 */ subu $t2,$t2,$t1
/* f0e9c50: 000a5100 */ sll $t2,$t2,0x4
/* f0e9c54: 018a6021 */ addu $t4,$t4,$t2
/* f0e9c58: 8d8ce4f8 */ lw $t4,%lo(g_MenuStack+0x4f8)($t4)
/* f0e9c58: 8d8ce4f8 */ lw $t4,%lo(g_Menus+0x4f8)($t4)
/* f0e9c5c: 27a400c0 */ addiu $a0,$sp,0xc0
/* f0e9c60: 27a500c4 */ addiu $a1,$sp,0xc4
/* f0e9c64: 11cc0004 */ beq $t6,$t4,.L0f0e9c78
@@ -10960,7 +10960,7 @@ glabel func0f0ebec8
/* f0ebf2c: 15000017 */ bnez $t0,.L0f0ebf8c
/* f0ebf30: 01002825 */ or $a1,$t0,$zero
/* f0ebf34: 8d291448 */ lw $t1,%lo(g_MpPlayerNum)($t1)
/* f0ebf38: 3c0b800a */ lui $t3,%hi(g_MenuStack+0x82c)
/* f0ebf38: 3c0b800a */ lui $t3,%hi(g_Menus+0x82c)
/* f0ebf3c: 8fac0050 */ lw $t4,0x50($sp)
/* f0ebf40: 000950c0 */ sll $t2,$t1,0x3
/* f0ebf44: 01495023 */ subu $t2,$t2,$t1
@@ -10970,7 +10970,7 @@ glabel func0f0ebec8
/* f0ebf54: 01495023 */ subu $t2,$t2,$t1
/* f0ebf58: 000a5100 */ sll $t2,$t2,0x4
/* f0ebf5c: 016a5821 */ addu $t3,$t3,$t2
/* f0ebf60: 856be82c */ lh $t3,%lo(g_MenuStack+0x82c)($t3)
/* f0ebf60: 856be82c */ lh $t3,%lo(g_Menus+0x82c)($t3)
/* f0ebf64: 3c0142c8 */ lui $at,0x42c8
/* f0ebf68: 55600009 */ bnezl $t3,.L0f0ebf90
/* f0ebf6c: 84ce0000 */ lh $t6,0x0($a2)
@@ -11051,7 +11051,7 @@ glabel func0f0ebec8
/* f0ec084: 45020013 */ bc1fl .L0f0ec0d4
/* f0ec088: 84cc0000 */ lh $t4,0x0($a2)
/* f0ec08c: 8f391448 */ lw $t9,%lo(g_MpPlayerNum)($t9)
/* f0ec090: 3c09800a */ lui $t1,%hi(g_MenuStack+0x82c)
/* f0ec090: 3c09800a */ lui $t1,%hi(g_Menus+0x82c)
/* f0ec094: 8faa0050 */ lw $t2,0x50($sp)
/* f0ec098: 001940c0 */ sll $t0,$t9,0x3
/* f0ec09c: 01194023 */ subu $t0,$t0,$t9
@@ -11061,7 +11061,7 @@ glabel func0f0ebec8
/* f0ec0ac: 01194023 */ subu $t0,$t0,$t9
/* f0ec0b0: 00084100 */ sll $t0,$t0,0x4
/* f0ec0b4: 01284821 */ addu $t1,$t1,$t0
/* f0ec0b8: 8529e82c */ lh $t1,%lo(g_MenuStack+0x82c)($t1)
/* f0ec0b8: 8529e82c */ lh $t1,%lo(g_Menus+0x82c)($t1)
/* f0ec0bc: 11200034 */ beqz $t1,.L0f0ec190
/* f0ec0c0: 00000000 */ nop
/* f0ec0c4: 814b0000 */ lb $t3,0x0($t2)
@@ -11901,15 +11901,15 @@ glabel func0f0ecbfc
/* f0ecc94: 00000000 */ nop
);
char *menuGetDescription(u32 type)
char *menuTrainGetDescription(u32 type)
{
switch (type) {
case DESCRIPTION_MPCONFIG:
return mpconfigGetDescription(g_MenuStack[g_MpPlayerNum].mpconfig);
return mpconfigGetDescription(g_Menus[g_MpPlayerNum].data.train.mpconfig);
case DESCRIPTION_MPCHALLENGE:
if (!mpIsChallengeLoaded()) {
g_MenuStack[g_MpPlayerNum].unk850 = 0x4fac5ace;
mpLoadAndStoreCurrentChallenge(g_MenuStack[g_MpPlayerNum].mpconfigbuffer, g_MenuStack[g_MpPlayerNum].mpconfigbufferlen);
g_Menus[g_MpPlayerNum].unk850 = 0x4fac5ace;
mpLoadAndStoreCurrentChallenge(g_Menus[g_MpPlayerNum].mpconfigbuffer, g_Menus[g_MpPlayerNum].mpconfigbufferlen);
}
return mpGetCurrentChallengeDescription();
case DESCRIPTION_CHRBIO: return ciGetChrBioDescription();
@@ -11957,7 +11957,7 @@ glabel menuRenderItemScrollable
/* f0ece80: afac004c */ sw $t4,0x4c($sp)
/* f0ece84: afab0060 */ sw $t3,0x60($sp)
/* f0ece88: 8e0d0008 */ lw $t5,0x8($s0)
/* f0ece8c: 0fc3b326 */ jal menuGetDescription
/* f0ece8c: 0fc3b326 */ jal menuTrainGetDescription
/* f0ece90: 91a40001 */ lbu $a0,0x1($t5)
/* f0ece94: 8e040008 */ lw $a0,0x8($s0)
/* f0ece98: 0fc3c94d */ jal func0f0f2534
@@ -12289,7 +12289,7 @@ glabel func0f0ed264
/* f0ed368: afac004c */ sw $t4,0x4c($sp)
.L0f0ed36c:
/* f0ed36c: 8fad1f98 */ lw $t5,0x1f98($sp)
/* f0ed370: 0fc3b326 */ jal menuGetDescription
/* f0ed370: 0fc3b326 */ jal menuTrainGetDescription
/* f0ed374: 91a40001 */ lbu $a0,0x1($t5)
/* f0ed378: 10400009 */ beqz $v0,.L0f0ed3a0
/* f0ed37c: 00402825 */ or $a1,$v0,$zero
@@ -14988,19 +14988,20 @@ glabel func0f0ef758
/* f0efa8c: 27bd00a0 */ addiu $sp,$sp,0xa0
);
// These are the action names, like "AIM", and "LOOK UP"
u16 var80071354[][9] = {
/* 0*/ { 0x54c2, 0x54c4, 0x54ca, 0x54c5, 0x54cb, 0x54cc, 0x54ce, 0x54cd, 0x54d2 },
/* 1*/ { 0x54c2, 0x54c8, 0x54ca, 0x54c9, 0x54cb, 0x54cc, 0x54cf, 0x54cd, 0x54d2 },
/* 2*/ { 0x54cb, 0x54c4, 0x54ca, 0x54c5, 0x54cd, 0x54cc, 0x54ce, 0x54c2, 0x54d2 },
/* 3*/ { 0x54cb, 0x54c8, 0x54ca, 0x54c9, 0x54cd, 0x54cc, 0x54cf, 0x54c2, 0x54d2 },
/* 4*/ { 0x5603, 0x5603, 0x54d3, 0x5603, 0x54cb, 0x54cc, 0x54ce, 0x54cd, 0x5603 },
/* 5*/ { 0x5603, 0x5603, 0x54d3, 0x5603, 0x54cb, 0x54cc, 0x54cf, 0x54cd, 0x5603 },
/* 6*/ { 0x5603, 0x5603, 0x54d3, 0x5603, 0x54cb, 0x54cc, 0x54ce, 0x54c2, 0x5603 },
/* 7*/ { 0x5603, 0x5603, 0x54d3, 0x5603, 0x54cb, 0x54cc, 0x54cf, 0x54c2, 0x5603 },
/* 8*/ { 0x5603, 0x5603, 0x54d4, 0x5603, 0x54cb, 0x54cc, 0x54d1, 0x54c2, 0x5603 },
/* 9*/ { 0x5603, 0x5603, 0x54d4, 0x5603, 0x54cb, 0x54cc, 0x54d0, 0x54c2, 0x5603 },
/*10*/ { 0x5603, 0x5603, 0x54d4, 0x5603, 0x54cb, 0x54cc, 0x54d1, 0x54cd, 0x5603 },
/*11*/ { 0x5603, 0x5603, 0x54d4, 0x5603, 0x54cb, 0x54cc, 0x54d0, 0x54cd, 0x5603 },
/*0*/ { L_MPWEAPONS(194), L_MPWEAPONS(196), L_MPWEAPONS(202), L_MPWEAPONS(197), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(206), L_MPWEAPONS(205), L_MPWEAPONS(210) },
/*1*/ { L_MPWEAPONS(194), L_MPWEAPONS(200), L_MPWEAPONS(202), L_MPWEAPONS(201), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(207), L_MPWEAPONS(205), L_MPWEAPONS(210) },
/*2*/ { L_MPWEAPONS(203), L_MPWEAPONS(196), L_MPWEAPONS(202), L_MPWEAPONS(197), L_MPWEAPONS(205), L_MPWEAPONS(204), L_MPWEAPONS(206), L_MPWEAPONS(194), L_MPWEAPONS(210) },
/*3*/ { L_MPWEAPONS(203), L_MPWEAPONS(200), L_MPWEAPONS(202), L_MPWEAPONS(201), L_MPWEAPONS(205), L_MPWEAPONS(204), L_MPWEAPONS(207), L_MPWEAPONS(194), L_MPWEAPONS(210) },
/*4*/ { L_OPTIONS(3), L_OPTIONS(3), L_MPWEAPONS(211), L_OPTIONS(3), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(206), L_MPWEAPONS(205), L_OPTIONS(3) },
/*5*/ { L_OPTIONS(3), L_OPTIONS(3), L_MPWEAPONS(211), L_OPTIONS(3), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(207), L_MPWEAPONS(205), L_OPTIONS(3) },
/*6*/ { L_OPTIONS(3), L_OPTIONS(3), L_MPWEAPONS(211), L_OPTIONS(3), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(206), L_MPWEAPONS(194), L_OPTIONS(3) },
/*7*/ { L_OPTIONS(3), L_OPTIONS(3), L_MPWEAPONS(211), L_OPTIONS(3), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(207), L_MPWEAPONS(194), L_OPTIONS(3) },
/*8*/ { L_OPTIONS(3), L_OPTIONS(3), L_MPWEAPONS(212), L_OPTIONS(3), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(209), L_MPWEAPONS(194), L_OPTIONS(3) },
/*9*/ { L_OPTIONS(3), L_OPTIONS(3), L_MPWEAPONS(212), L_OPTIONS(3), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(208), L_MPWEAPONS(194), L_OPTIONS(3) },
/*10*/ { L_OPTIONS(3), L_OPTIONS(3), L_MPWEAPONS(212), L_OPTIONS(3), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(209), L_MPWEAPONS(205), L_OPTIONS(3) },
/*11*/ { L_OPTIONS(3), L_OPTIONS(3), L_MPWEAPONS(212), L_OPTIONS(3), L_MPWEAPONS(203), L_MPWEAPONS(204), L_MPWEAPONS(208), L_MPWEAPONS(205), L_OPTIONS(3) },
};
u16 func0f0efa90(s32 row, s32 col)
@@ -15008,24 +15009,34 @@ u16 func0f0efa90(s32 row, s32 col)
u32 textid = var80071354[row][col];
if (textid == L_MPWEAPONS(194) // "AIM"
&& optionsGetAimControl(g_MenuStack[g_MpPlayerNum].unke24) == AIMCONTROL_TOGGLE) {
&& optionsGetAimControl(g_Menus[g_MpPlayerNum].data.main.mpindex) == AIMCONTROL_TOGGLE) {
textid = L_MPWEAPONS(195); // "AIM TOGGLE"
}
if (textid == L_MPWEAPONS(196) // "LOOK UP"
&& optionsGetForwardPitch(g_MenuStack[g_MpPlayerNum].unke24) == false) {
&& optionsGetForwardPitch(g_Menus[g_MpPlayerNum].data.main.mpindex) == false) {
textid = L_MPWEAPONS(198); // "LOOK DOWN"
}
if (textid == L_MPWEAPONS(197) // "LOOK DOWN"
&& optionsGetForwardPitch(g_MenuStack[g_MpPlayerNum].unke24) == false) {
&& optionsGetForwardPitch(g_Menus[g_MpPlayerNum].data.main.mpindex) == false) {
textid = L_MPWEAPONS(199); // "LOOK UP"
}
return textid;
}
u16 var8007142c[] = { 0x54b9, 0x54ba, 0x54bb, 0x54bc, 0x54bd, 0x54be, 0x54bf, 0x54c0, 0x54c1 };
u16 var8007142c[] = {
L_MPWEAPONS(185), // "L/R BUTTONS:"
L_MPWEAPONS(186), // "UP C BUTTON:"
L_MPWEAPONS(187), // "LEFT/RIGHT C BUTTONS:"
L_MPWEAPONS(188), // "DOWN C BUTTON:"
L_MPWEAPONS(189), // "A BUTTON:"
L_MPWEAPONS(190), // "B BUTTON:"
L_MPWEAPONS(191), // "CONTROL STICK:"
L_MPWEAPONS(192), // "Z BUTTON:"
L_MPWEAPONS(193), // "+ CONTROL PAD:"
};
GLOBAL_ASM(
glabel func0f0efbb4
@@ -15455,7 +15466,7 @@ glabel menuRenderItemController
/* f0f01e0: 8c842298 */ lw $a0,%lo(var7f1b2298)($a0)
/* f0f01e4: 3c0f8007 */ lui $t7,%hi(g_MpPlayerNum)
/* f0f01e8: 8def1448 */ lw $t7,%lo(g_MpPlayerNum)($t7)
/* f0f01ec: 3c19800a */ lui $t9,%hi(g_MenuStack+0xe20)
/* f0f01ec: 3c19800a */ lui $t9,%hi(g_Menus+0xe20)
/* f0f01f0: 000fc0c0 */ sll $t8,$t7,0x3
/* f0f01f4: 030fc023 */ subu $t8,$t8,$t7
/* f0f01f8: 0018c080 */ sll $t8,$t8,0x2
@@ -15464,7 +15475,7 @@ glabel menuRenderItemController
/* f0f0204: 030fc023 */ subu $t8,$t8,$t7
/* f0f0208: 0018c100 */ sll $t8,$t8,0x4
/* f0f020c: 0338c821 */ addu $t9,$t9,$t8
/* f0f0210: 8f39ee20 */ lw $t9,%lo(g_MenuStack+0xe20)($t9)
/* f0f0210: 8f39ee20 */ lw $t9,%lo(g_Menus+0xe20)($t9)
/* f0f0214: 2f210004 */ sltiu $at,$t9,0x4
/* f0f0218: 1420001f */ bnez $at,.L0f0f0298
/* f0f021c: 00000000 */ nop
@@ -15472,7 +15483,7 @@ glabel menuRenderItemController
/* f0f0224: 240454d5 */ addiu $a0,$zero,0x54d5
/* f0f0228: 3c098007 */ lui $t1,%hi(g_MpPlayerNum)
/* f0f022c: 8d291448 */ lw $t1,%lo(g_MpPlayerNum)($t1)
/* f0f0230: 3c0a800a */ lui $t2,%hi(g_MenuStack+0xe20)
/* f0f0230: 3c0a800a */ lui $t2,%hi(g_Menus+0xe20)
/* f0f0234: 3c048007 */ lui $a0,%hi(g_ControlStyleOptions)
/* f0f0238: 000958c0 */ sll $t3,$t1,0x3
/* f0f023c: 01695823 */ subu $t3,$t3,$t1
@@ -15482,7 +15493,7 @@ glabel menuRenderItemController
/* f0f024c: 01695823 */ subu $t3,$t3,$t1
/* f0f0250: 000b5900 */ sll $t3,$t3,0x4
/* f0f0254: 014b5021 */ addu $t2,$t2,$t3
/* f0f0258: 8d4aee20 */ lw $t2,%lo(g_MenuStack+0xe20)($t2)
/* f0f0258: 8d4aee20 */ lw $t2,%lo(g_Menus+0xe20)($t2)
/* f0f025c: afa2004c */ sw $v0,0x4c($sp)
/* f0f0260: 000a6040 */ sll $t4,$t2,0x1
/* f0f0264: 008c2021 */ addu $a0,$a0,$t4
@@ -15503,7 +15514,7 @@ glabel menuRenderItemController
/* f0f029c: 240454d5 */ addiu $a0,$zero,0x54d5
/* f0f02a0: 3c0d8007 */ lui $t5,%hi(g_MpPlayerNum)
/* f0f02a4: 8dad1448 */ lw $t5,%lo(g_MpPlayerNum)($t5)
/* f0f02a8: 3c0f800a */ lui $t7,%hi(g_MenuStack+0xe20)
/* f0f02a8: 3c0f800a */ lui $t7,%hi(g_Menus+0xe20)
/* f0f02ac: 3c048007 */ lui $a0,%hi(g_ControlStyleOptions)
/* f0f02b0: 000d70c0 */ sll $t6,$t5,0x3
/* f0f02b4: 01cd7023 */ subu $t6,$t6,$t5
@@ -15513,7 +15524,7 @@ glabel menuRenderItemController
/* f0f02c4: 01cd7023 */ subu $t6,$t6,$t5
/* f0f02c8: 000e7100 */ sll $t6,$t6,0x4
/* f0f02cc: 01ee7821 */ addu $t7,$t7,$t6
/* f0f02d0: 8defee20 */ lw $t7,%lo(g_MenuStack+0xe20)($t7)
/* f0f02d0: 8defee20 */ lw $t7,%lo(g_Menus+0xe20)($t7)
/* f0f02d4: afa2004c */ sw $v0,0x4c($sp)
/* f0f02d8: 000fc040 */ sll $t8,$t7,0x1
/* f0f02dc: 00982021 */ addu $a0,$a0,$t8
@@ -15572,7 +15583,7 @@ glabel menuRenderItemController
/* f0f03ac: 8fa60064 */ lw $a2,0x64($sp)
/* f0f03b0: 3c188007 */ lui $t8,%hi(g_MpPlayerNum)
/* f0f03b4: 8f181448 */ lw $t8,%lo(g_MpPlayerNum)($t8)
/* f0f03b8: 3c03800a */ lui $v1,%hi(g_MenuStack+0xe20)
/* f0f03b8: 3c03800a */ lui $v1,%hi(g_Menus+0xe20)
/* f0f03bc: 00404025 */ or $t0,$v0,$zero
/* f0f03c0: 0018c8c0 */ sll $t9,$t8,0x3
/* f0f03c4: 0338c823 */ subu $t9,$t9,$t8
@@ -15582,7 +15593,7 @@ glabel menuRenderItemController
/* f0f03d4: 0338c823 */ subu $t9,$t9,$t8
/* f0f03d8: 0019c900 */ sll $t9,$t9,0x4
/* f0f03dc: 00791821 */ addu $v1,$v1,$t9
/* f0f03e0: 8c63ee20 */ lw $v1,%lo(g_MenuStack+0xe20)($v1)
/* f0f03e0: 8c63ee20 */ lw $v1,%lo(g_Menus+0xe20)($v1)
/* f0f03e4: 8fa400a0 */ lw $a0,0xa0($sp)
/* f0f03e8: 8fa500a4 */ lw $a1,0xa4($sp)
/* f0f03ec: 2c610004 */ sltiu $at,$v1,0x4
@@ -15604,7 +15615,7 @@ glabel menuRenderItemController
/* f0f042c: afaa0020 */ sw $t2,0x20($sp)
/* f0f0430: 3c0c8007 */ lui $t4,%hi(g_MpPlayerNum)
/* f0f0434: 8d8c1448 */ lw $t4,%lo(g_MpPlayerNum)($t4)
/* f0f0438: 3c0e800a */ lui $t6,%hi(g_MenuStack+0xe20)
/* f0f0438: 3c0e800a */ lui $t6,%hi(g_Menus+0xe20)
/* f0f043c: 8fb80064 */ lw $t8,0x64($sp)
/* f0f0440: 000c68c0 */ sll $t5,$t4,0x3
/* f0f0444: 01ac6823 */ subu $t5,$t5,$t4
@@ -15614,7 +15625,7 @@ glabel menuRenderItemController
/* f0f0454: 01ac6823 */ subu $t5,$t5,$t4
/* f0f0458: 000d6900 */ sll $t5,$t5,0x4
/* f0f045c: 01cd7021 */ addu $t6,$t6,$t5
/* f0f0460: 8dceee20 */ lw $t6,%lo(g_MenuStack+0xe20)($t6)
/* f0f0460: 8dceee20 */ lw $t6,%lo(g_Menus+0xe20)($t6)
/* f0f0464: 8fb90094 */ lw $t9,0x94($sp)
/* f0f0468: 8fa90098 */ lw $t1,0x98($sp)
/* f0f046c: 25cf0004 */ addiu $t7,$t6,0x4
@@ -15866,7 +15877,7 @@ glabel var7f1b1f48
/* f0f085c: 27bd0028 */ addiu $sp,$sp,0x28
);
void func0f0f0860(struct menu_item *item, u32 *arg1)
void func0f0f0860(struct menuitem *item, u32 *arg1)
{
switch (item->type) {
case MENUITEMTYPE_CUSTOM:
+95 -95
View File
@@ -479,7 +479,7 @@ glabel var7f1b27fc
bool menuIsSoloMissionOrMp(void)
{
switch (g_MenuData.root) {
case MENUROOT_SOLOPAUSE:
case MENUROOT_MAINMENU:
case MENUROOT_TRAINING:
if (g_Vars.stagenum == STAGE_CITRAINING) {
return false;
@@ -502,7 +502,7 @@ bool currentPlayerIsMenuOpenInSoloOrMp(void)
mpindex -= 4;
}
if (g_MenuStack[mpindex].curframe) {
if (g_Menus[mpindex].curframe) {
return true;
}
}
@@ -526,7 +526,7 @@ void func0f0f0ca0(s32 value, bool allplayers)
return;
}
g_MenuStack[g_MpPlayerNum].unkdf8 = value;
g_Menus[g_MpPlayerNum].unkdf8 = value;
}
u32 var8007144c = 0x51e451e5;
@@ -956,13 +956,13 @@ glabel func0f0f0ce8
/* f0f1334: 27bd0090 */ addiu $sp,$sp,0x90
);
struct menustackdfc *func0f0f1338(u32 arg0)
struct menudfc *func0f0f1338(u32 arg0)
{
s32 i;
for (i = 0; i < 4; i++) {
if (g_MenuStack[g_MpPlayerNum].unkdfc[i].unk00 == arg0) {
return &g_MenuStack[g_MpPlayerNum].unkdfc[i];
if (g_Menus[g_MpPlayerNum].unkdfc[i].unk00 == arg0) {
return &g_Menus[g_MpPlayerNum].unkdfc[i];
}
}
@@ -971,7 +971,7 @@ struct menustackdfc *func0f0f1338(u32 arg0)
void func0f0f139c(s32 arg0, f32 arg1)
{
struct menustackdfc *thing = func0f0f1338(arg0);
struct menudfc *thing = func0f0f1338(arg0);
if (thing) {
thing->unk04 = arg1;
@@ -988,7 +988,7 @@ void func0f0f139c(s32 arg0, f32 arg1)
void func0f0f13ec(s32 arg0)
{
struct menustackdfc *thing = func0f0f1338(arg0);
struct menudfc *thing = func0f0f1338(arg0);
if (thing) {
thing->unk00 = 0;
@@ -1000,8 +1000,8 @@ void func0f0f1418(void)
s32 i;
for (i = 0; i < 4; i++) {
if (g_MenuStack[g_MpPlayerNum].unkdfc[i].unk00) {
g_MenuStack[g_MpPlayerNum].unkdfc[i].unk04 += g_Vars.diffframe60f / 60.0f;
if (g_Menus[g_MpPlayerNum].unkdfc[i].unk00) {
g_Menus[g_MpPlayerNum].unkdfc[i].unk04 += g_Vars.diffframe60f / 60.0f;
}
}
}
@@ -1011,13 +1011,13 @@ void func0f0f1494(void)
s32 i;
for (i = 0; i < 4; i++) {
g_MenuStack[g_MpPlayerNum].unkdfc[i].unk00 = 0;
g_Menus[g_MpPlayerNum].unkdfc[i].unk00 = 0;
}
}
char *menuResolveText(u32 thing, struct menu_item *item)
char *menuResolveText(u32 thing, struct menuitem *item)
{
char *(*handler)(struct menu_item *item) = (void *)thing;
char *(*handler)(struct menuitem *item) = (void *)thing;
// Null/zero
if (thing == 0) {
@@ -1087,12 +1087,12 @@ const u32 var7f1b264c[] = {0x88445500};
const u32 var7f1b2650[] = {0x48242000};
const u32 var7f1b2654[] = {0x88445500};
char *menuResolveParam2Text(struct menu_item *item)
char *menuResolveParam2Text(struct menuitem *item)
{
return menuResolveText(item->param2, item);
}
char *menuResolveParam1Text(struct menu_item *item)
char *menuResolveParam1Text(struct menuitem *item)
{
return menuResolveText(item->param1, item);
}
@@ -3158,48 +3158,48 @@ glabel menuPushDialog
);
// regalloc: s1 (layer) and s2 (sibling) are swapped
//void menuPushDialog(struct menu_dialog *dialog)
//void menuPushDialog(struct menudialog *dialog)
//{
// if (dialog) {
// func0f0f37a4(&g_MenuStack[g_MpPlayerNum].unk840);
// func0f0f37a4(&g_Menus[g_MpPlayerNum].unk840);
//
// if (g_MenuStack[g_MpPlayerNum].depth < 6 && g_MenuStack[g_MpPlayerNum].numframes < 10) {
// struct menulayer *layer = &g_MenuStack[g_MpPlayerNum].layers[g_MenuStack[g_MpPlayerNum].depth];
// struct menu_dialog *sibling;
// if (g_Menus[g_MpPlayerNum].depth < 6 && g_Menus[g_MpPlayerNum].numframes < 10) {
// struct menulayer *layer = &g_Menus[g_MpPlayerNum].layers[g_Menus[g_MpPlayerNum].depth];
// struct menudialog *sibling;
// struct menuframe *frame;
//
// g_MenuStack[g_MpPlayerNum].depth++;
// g_Menus[g_MpPlayerNum].depth++;
//
// layer->numsiblings = 1;
// layer->cursibling = 0;
//
// frame = &g_MenuStack[g_MpPlayerNum].frames[g_MenuStack[g_MpPlayerNum].numframes];
// g_MenuStack[g_MpPlayerNum].numframes++;
// frame = &g_Menus[g_MpPlayerNum].frames[g_Menus[g_MpPlayerNum].numframes];
// g_Menus[g_MpPlayerNum].numframes++;
// layer->siblings[0] = frame;
// g_MenuStack[g_MpPlayerNum].curframe = frame;
// g_Menus[g_MpPlayerNum].curframe = frame;
// frame->unk6d = 0;
//
// func0f0f2cf4(dialog, frame, &g_MenuStack[g_MpPlayerNum]);
// func0f0f2cf4(dialog, frame, &g_Menus[g_MpPlayerNum]);
//
// frame->unk2c = (viGetX() - frame->unk1c) / 2;
// frame->unk30 = (viGetY() - frame->unk20) / 2;
//
// g_MenuStack[g_MpPlayerNum].unke40 |= 0x80;
// g_Menus[g_MpPlayerNum].unke40 |= 0x80;
// sibling = dialog->nextsibling;
//
// while (sibling && layer->numsiblings < 5) {
// // If this limit were to be reached, the game would soft lock
// // because sibling is incremented inside the if-statement block.
// if (g_MenuStack[g_MpPlayerNum].numframes < 10) {
// frame = &g_MenuStack[g_MpPlayerNum].frames[g_MenuStack[g_MpPlayerNum].numframes];
// g_MenuStack[g_MpPlayerNum].numframes++;
// if (g_Menus[g_MpPlayerNum].numframes < 10) {
// frame = &g_Menus[g_MpPlayerNum].frames[g_Menus[g_MpPlayerNum].numframes];
// g_Menus[g_MpPlayerNum].numframes++;
//
// layer->siblings[layer->numsiblings] = frame;
// layer->numsiblings++;
//
// frame->unk6d = -1;
//
// func0f0f2cf4(sibling, frame, &g_MenuStack[g_MpPlayerNum]);
// func0f0f2cf4(sibling, frame, &g_Menus[g_MpPlayerNum]);
//
// frame->unk14 = -320;
// frame->unk2c = -320;
@@ -3236,9 +3236,9 @@ glabel func0f0f3220
/* f0f323c: 24080001 */ addiu $t0,$zero,0x1
/* f0f3240: 3c078007 */ lui $a3,%hi(g_MpPlayerNum)
/* f0f3244: 24e71448 */ addiu $a3,$a3,%lo(g_MpPlayerNum)
/* f0f3248: 3c03800a */ lui $v1,%hi(g_MenuStack+0x2b50)
/* f0f3248: 3c03800a */ lui $v1,%hi(g_Menus+0x2b50)
/* f0f324c: 8ce90000 */ lw $t1,0x0($a3)
/* f0f3250: 24630b50 */ addiu $v1,$v1,%lo(g_MenuStack+0x2b50)
/* f0f3250: 24630b50 */ addiu $v1,$v1,%lo(g_Menus+0x2b50)
/* f0f3254: 24020003 */ addiu $v0,$zero,0x3
.L0f0f3258:
/* f0f3258: 8c6e04f8 */ lw $t6,0x4f8($v1)
@@ -3509,17 +3509,17 @@ glabel func0f0f33bc
void menuUpdateCurFrame(void)
{
s32 depth = g_MenuStack[g_MpPlayerNum].depth;
s32 depth = g_Menus[g_MpPlayerNum].depth;
if (depth == 0) {
// No more parent menus - return control to the player
g_Vars.currentplayer->joybutinhibit = 0xffffffff;
func0f0f8040();
g_MenuStack[g_MpPlayerNum].curframe = NULL;
g_Menus[g_MpPlayerNum].curframe = NULL;
} else {
// Set up parent menu
struct menulayer *layer = &g_MenuStack[g_MpPlayerNum].layers[depth - 1];
g_MenuStack[g_MpPlayerNum].curframe = layer->siblings[layer->cursibling];
struct menulayer *layer = &g_Menus[g_MpPlayerNum].layers[depth - 1];
g_Menus[g_MpPlayerNum].curframe = layer->siblings[layer->cursibling];
}
}
@@ -3529,7 +3529,7 @@ void menuPopDialog(void)
menuUpdateCurFrame();
}
void func0f0f3704(struct menu_dialog *dialog)
void func0f0f3704(struct menudialog *dialog)
{
func0f0f33bc();
menuPushDialog(dialog);
@@ -4691,7 +4691,7 @@ glabel var7f1b2948
/* f0f4748: 5020006f */ beqzl $at,.L0f0f4908
/* f0f474c: 8e0a0054 */ lw $t2,0x54($s0)
/* f0f4750: 11a0000e */ beqz $t5,.L0f0f478c
/* f0f4754: 3c11800a */ lui $s1,%hi(g_MenuStack+0x2004)
/* f0f4754: 3c11800a */ lui $s1,%hi(g_Menus+0x2004)
/* f0f4758: 0fc35272 */ jal func0f0d49c8
/* f0f475c: 00402025 */ or $a0,$v0,$zero
/* f0f4760: 244c0008 */ addiu $t4,$v0,0x8
@@ -4704,7 +4704,7 @@ glabel var7f1b2948
/* f0f477c: 0c012d20 */ jal osVirtualToPhysical
/* f0f4780: 00402025 */ or $a0,$v0,$zero
/* f0f4784: 1000005f */ b .L0f0f4904
/* f0f4788: ae220004 */ sw $v0,%lo(g_MenuStack+0x2004)($s1)
/* f0f4788: ae220004 */ sw $v0,%lo(g_Menus+0x2004)($s1)
.L0f0f478c:
/* f0f478c: 26312038 */ addiu $s1,$s1,8248
/* f0f4790: 3c18800a */ lui $t8,%hi(var800a203c)
@@ -7889,7 +7889,7 @@ glabel func0f0f7594
/* f0f75a4: 55c1005d */ bnel $t6,$at,.L0f0f771c
/* f0f75a8: aca00000 */ sw $zero,0x0($a1)
/* f0f75ac: 8def1448 */ lw $t7,%lo(g_MpPlayerNum)($t7)
/* f0f75b0: 3c02800a */ lui $v0,%hi(g_MenuStack+0x83b)
/* f0f75b0: 3c02800a */ lui $v0,%hi(g_Menus+0x83b)
/* f0f75b4: 3c038007 */ lui $v1,%hi(var800714d8)
/* f0f75b8: 000fc0c0 */ sll $t8,$t7,0x3
/* f0f75bc: 030fc023 */ subu $t8,$t8,$t7
@@ -7899,7 +7899,7 @@ glabel func0f0f7594
/* f0f75cc: 030fc023 */ subu $t8,$t8,$t7
/* f0f75d0: 0018c100 */ sll $t8,$t8,0x4
/* f0f75d4: 00581021 */ addu $v0,$v0,$t8
/* f0f75d8: 9042e83b */ lbu $v0,%lo(g_MenuStack+0x83b)($v0)
/* f0f75d8: 9042e83b */ lbu $v0,%lo(g_Menus+0x83b)($v0)
/* f0f75dc: aca00000 */ sw $zero,0x0($a1)
/* f0f75e0: acc00000 */ sw $zero,0x0($a2)
/* f0f75e4: 8c6314d8 */ lw $v1,%lo(var800714d8)($v1)
@@ -9118,7 +9118,7 @@ glabel var7f1b29f8
/* f0f85dc: 00000000 */ nop
);
void func0f0f85e0(struct menu_dialog *dialog, s32 root)
void func0f0f85e0(struct menudialog *dialog, s32 root)
{
if (dialog == &g_MainMenuMenuDialog) {
func0f16db14();
@@ -9214,9 +9214,9 @@ glabel func0f0f86a8
/* f0f8748: 0019c8c0 */ sll $t9,$t9,0x3
/* f0f874c: 0338c823 */ subu $t9,$t9,$t8
/* f0f8750: 0019c900 */ sll $t9,$t9,0x4
/* f0f8754: 3c10800a */ lui $s0,%hi(g_MenuStack+0x4f8)
/* f0f8754: 3c10800a */ lui $s0,%hi(g_Menus+0x4f8)
/* f0f8758: 02198021 */ addu $s0,$s0,$t9
/* f0f875c: 8e10e4f8 */ lw $s0,%lo(g_MenuStack+0x4f8)($s0)
/* f0f875c: 8e10e4f8 */ lw $s0,%lo(g_Menus+0x4f8)($s0)
/* f0f8760: 0000c012 */ mflo $t8
/* f0f8764: 8e0b001c */ lw $t3,0x1c($s0)
/* f0f8768: 8e0a0014 */ lw $t2,0x14($s0)
@@ -9409,7 +9409,7 @@ glabel func0f0f86a8
/* f0f8a1c: 27a70074 */ addiu $a3,$sp,0x74
/* f0f8a20: 3c0c8007 */ lui $t4,%hi(g_MpPlayerNum)
/* f0f8a24: 8d8c1448 */ lw $t4,%lo(g_MpPlayerNum)($t4)
/* f0f8a28: 3c19800a */ lui $t9,%hi(g_MenuStack+0xdf8)
/* f0f8a28: 3c19800a */ lui $t9,%hi(g_Menus+0xdf8)
/* f0f8a2c: 8faa0074 */ lw $t2,0x74($sp)
/* f0f8a30: 000c78c0 */ sll $t7,$t4,0x3
/* f0f8a34: 01ec7823 */ subu $t7,$t7,$t4
@@ -9419,7 +9419,7 @@ glabel func0f0f86a8
/* f0f8a44: 01ec7823 */ subu $t7,$t7,$t4
/* f0f8a48: 000f7900 */ sll $t7,$t7,0x4
/* f0f8a4c: 032fc821 */ addu $t9,$t9,$t7
/* f0f8a50: 8339edf8 */ lb $t9,%lo(g_MenuStack+0xdf8)($t9)
/* f0f8a50: 8339edf8 */ lb $t9,%lo(g_Menus+0xdf8)($t9)
/* f0f8a54: 8fa40098 */ lw $a0,0x98($sp)
/* f0f8a58: 8fa50080 */ lw $a1,0x80($sp)
/* f0f8a5c: 8fa6007c */ lw $a2,0x7c($sp)
@@ -9484,7 +9484,7 @@ glabel func0f0f86a8
/* f0f8b34: 01e08025 */ or $s0,$t7,$zero
/* f0f8b38: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f0f8b3c: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f0f8b40: 3c0b800a */ lui $t3,%hi(g_MenuStack+0xdf8)
/* f0f8b40: 3c0b800a */ lui $t3,%hi(g_Menus+0xdf8)
/* f0f8b44: 0050c821 */ addu $t9,$v0,$s0
/* f0f8b48: 000e68c0 */ sll $t5,$t6,0x3
/* f0f8b4c: 01ae6823 */ subu $t5,$t5,$t6
@@ -9494,7 +9494,7 @@ glabel func0f0f86a8
/* f0f8b5c: 01ae6823 */ subu $t5,$t5,$t6
/* f0f8b60: 000d6900 */ sll $t5,$t5,0x4
/* f0f8b64: 016d5821 */ addu $t3,$t3,$t5
/* f0f8b68: 816bedf8 */ lb $t3,%lo(g_MenuStack+0xdf8)($t3)
/* f0f8b68: 816bedf8 */ lb $t3,%lo(g_Menus+0xdf8)($t3)
/* f0f8b6c: 24180001 */ addiu $t8,$zero,0x1
/* f0f8b70: afb80014 */ sw $t8,0x14($sp)
/* f0f8b74: afb90010 */ sw $t9,0x10($sp)
@@ -9707,12 +9707,12 @@ glabel var7f1b2a0c
.L0f0f8e38:
/* f0f8e38: 2401005d */ addiu $at,$zero,0x5d
/* f0f8e3c: 14810002 */ bne $a0,$at,.L0f0f8e48
/* f0f8e40: 3c10800a */ lui $s0,%hi(g_MenuStack+0x840)
/* f0f8e40: 3c10800a */ lui $s0,%hi(g_Menus+0x840)
/* f0f8e44: 24020004 */ addiu $v0,$zero,0x4
.L0f0f8e48:
/* f0f8e48: 18400015 */ blez $v0,.L0f0f8ea0
/* f0f8e4c: 00001825 */ or $v1,$zero,$zero
/* f0f8e50: 2610e840 */ addiu $s0,$s0,%lo(g_MenuStack+0x840)
/* f0f8e50: 2610e840 */ addiu $s0,$s0,%lo(g_Menus+0x840)
.L0f0f8e54:
/* f0f8e54: 3c0f8009 */ lui $t7,%hi(g_Is4Mb)
/* f0f8e58: 91ef0af0 */ lbu $t7,%lo(g_Is4Mb)($t7)
@@ -10240,7 +10240,7 @@ glabel var7f1b2a64
/* f0f9554: 4500004b */ bc1f .L0f0f9684
/* f0f9558: 3c048007 */ lui $a0,%hi(g_MpPlayerNum)
/* f0f955c: 8c841448 */ lw $a0,%lo(g_MpPlayerNum)($a0)
/* f0f9560: 3c0a800a */ lui $t2,%hi(g_MenuStack+0x4f8)
/* f0f9560: 3c0a800a */ lui $t2,%hi(g_Menus+0x4f8)
/* f0f9564: 3c013f80 */ lui $at,0x3f80
/* f0f9568: 000448c0 */ sll $t1,$a0,0x3
/* f0f956c: 01244823 */ subu $t1,$t1,$a0
@@ -10250,7 +10250,7 @@ glabel var7f1b2a64
/* f0f957c: 01244823 */ subu $t1,$t1,$a0
/* f0f9580: 00094900 */ sll $t1,$t1,0x4
/* f0f9584: 01495021 */ addu $t2,$t2,$t1
/* f0f9588: 8d4ae4f8 */ lw $t2,%lo(g_MenuStack+0x4f8)($t2)
/* f0f9588: 8d4ae4f8 */ lw $t2,%lo(g_Menus+0x4f8)($t2)
/* f0f958c: 57ca0034 */ bnel $s8,$t2,.L0f0f9660
/* f0f9590: 93c9003c */ lbu $t1,0x3c($s8)
/* f0f9594: 92700000 */ lbu $s0,0x0($s3)
@@ -10975,7 +10975,7 @@ glabel var7f1b2a64
/* f0f9fc8: 267306dc */ addiu $s3,$s3,0x6dc
.L0f0f9fcc:
/* f0f9fcc: 8d8c1448 */ lw $t4,%lo(g_MpPlayerNum)($t4)
/* f0f9fd0: 3c0d800a */ lui $t5,%hi(g_MenuStack+0xe40)
/* f0f9fd0: 3c0d800a */ lui $t5,%hi(g_Menus+0xe40)
/* f0f9fd4: 3c0f8006 */ lui $t7,%hi(var8005dd58)
/* f0f9fd8: 000c58c0 */ sll $t3,$t4,0x3
/* f0f9fdc: 016c5823 */ subu $t3,$t3,$t4
@@ -10985,7 +10985,7 @@ glabel var7f1b2a64
/* f0f9fec: 016c5823 */ subu $t3,$t3,$t4
/* f0f9ff0: 000b5900 */ sll $t3,$t3,0x4
/* f0f9ff4: 01ab6821 */ addu $t5,$t5,$t3
/* f0f9ff8: 8dadee40 */ lw $t5,%lo(g_MenuStack+0xe40)($t5)
/* f0f9ff8: 8dadee40 */ lw $t5,%lo(g_Menus+0xe40)($t5)
/* f0f9ffc: 000d77c2 */ srl $t6,$t5,0x1f
/* f0fa000: 55c00023 */ bnezl $t6,.L0f0fa090
/* f0fa004: 92e90668 */ lbu $t1,0x668($s7)
@@ -11311,7 +11311,7 @@ glabel var7f1b2a64
/* f0fa494: afc90064 */ sw $t1,0x64($s8)
.L0f0fa498:
/* f0fa498: 8d6b1448 */ lw $t3,%lo(g_MpPlayerNum)($t3)
/* f0fa49c: 3c0d800a */ lui $t5,%hi(g_MenuStack+0xe40)
/* f0fa49c: 3c0d800a */ lui $t5,%hi(g_Menus+0xe40)
/* f0fa4a0: 3c0f8006 */ lui $t7,%hi(var8005dd58)
/* f0fa4a4: 000b60c0 */ sll $t4,$t3,0x3
/* f0fa4a8: 018b6023 */ subu $t4,$t4,$t3
@@ -11321,7 +11321,7 @@ glabel var7f1b2a64
/* f0fa4b8: 018b6023 */ subu $t4,$t4,$t3
/* f0fa4bc: 000c6100 */ sll $t4,$t4,0x4
/* f0fa4c0: 01ac6821 */ addu $t5,$t5,$t4
/* f0fa4c4: 8dadee40 */ lw $t5,%lo(g_MenuStack+0xe40)($t5)
/* f0fa4c4: 8dadee40 */ lw $t5,%lo(g_Menus+0xe40)($t5)
/* f0fa4c8: 8fb80124 */ lw $t8,0x124($sp)
/* f0fa4cc: 3c088007 */ lui $t0,%hi(g_MpPlayerNum)
/* f0fa4d0: 000d77c2 */ srl $t6,$t5,0x1f
@@ -11459,8 +11459,8 @@ glabel func0f0fa574
void func0f0fa6ac(void)
{
switch (g_MenuData.root) {
case MENUROOT_SOLOPAUSE:
case MENUROOT_COMBATSIM:
case MENUROOT_MAINMENU:
case MENUROOT_MPSETUP:
case MENUROOT_FILESELECT:
case MENUROOT_4MBMAINMENU:
case MENUROOT_TRAINING:
@@ -13220,7 +13220,7 @@ glabel var7f1b2afc
.L0f0fbef4:
/* f0fbef4: 8e380000 */ lw $t8,0x0($s1)
.L0f0fbef8:
/* f0fbef8: 3c0a800a */ lui $t2,%hi(g_MenuStack+0x4f8)
/* f0fbef8: 3c0a800a */ lui $t2,%hi(g_Menus+0x4f8)
/* f0fbefc: 3c047f1b */ lui $a0,%hi(var7f1b2788)
/* f0fbf00: 0018c8c0 */ sll $t9,$t8,0x3
/* f0fbf04: 0338c823 */ subu $t9,$t9,$t8
@@ -13230,7 +13230,7 @@ glabel var7f1b2afc
/* f0fbf14: 0338c823 */ subu $t9,$t9,$t8
/* f0fbf18: 0019c900 */ sll $t9,$t9,0x4
/* f0fbf1c: 01595021 */ addu $t2,$t2,$t9
/* f0fbf20: 8d4ae4f8 */ lw $t2,%lo(g_MenuStack+0x4f8)($t2)
/* f0fbf20: 8d4ae4f8 */ lw $t2,%lo(g_Menus+0x4f8)($t2)
/* f0fbf24: 26d69fc0 */ addiu $s6,$s6,%lo(g_Vars)
/* f0fbf28: 24842788 */ addiu $a0,$a0,%lo(var7f1b2788)
/* f0fbf2c: 15400004 */ bnez $t2,.L0f0fbf40
@@ -14008,7 +14008,7 @@ u32 menuChooseMusic(void)
missionsuccess = MUSIC_MISSION_UNKNOWN;
}
if (g_MenuData.root == MENUROOT_SOLOENDSCREEN) {
if (g_MenuData.root == MENUROOT_ENDSCREEN) {
if (g_Vars.bond->isdead || g_Vars.bond->aborted || !objectiveIsAllComplete()) {
return MUSIC_MISSION_FAILED;
}
@@ -14041,7 +14041,7 @@ u32 menuChooseMusic(void)
return MUSIC_MAINMENU;
}
if (g_MenuData.root == MENUROOT_COMBATSIM || g_MenuData.root == MENUROOT_4MBMAINMENU) {
if (g_MenuData.root == MENUROOT_MPSETUP || g_MenuData.root == MENUROOT_4MBMAINMENU) {
return MUSIC_COMBATSIM_MENU;
}
@@ -14219,10 +14219,10 @@ glabel menudialog000fcd48
/* f0fce04: 00000000 */ nop
);
s32 menuhandlerRepairPak(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerRepairPak(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
if (pakRepair(g_MenuStack[g_MpPlayerNum].savedevice)) {
if (pakRepair(g_Menus[g_MpPlayerNum].savedevice)) {
func0f0f3704(&g_PakRepairSuccessMenuDialog);
} else {
func0f0f3704(&g_PakRepairFailedMenuDialog);
@@ -14319,14 +14319,14 @@ glabel func0f0fce8c
/* f0fcfb4: ac2a1448 */ sw $t2,%lo(g_MpPlayerNum)($at)
);
struct menu_item menuitems_pakremoved[] = {
struct menuitem menuitems_pakremoved[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPWEAPONS(174), 0x00000000, NULL }, // "The Controller Pak has been removed."
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, L_MPWEAPONS(73), 0x00000000, menuhandler000fcc34 }, // "OK"
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog menudialog_pakremoved = {
struct menudialog menudialog_pakremoved = {
MENUDIALOGTYPE_DANGER,
L_MPWEAPONS(173), // "Error"
menuitems_pakremoved,
@@ -14335,14 +14335,14 @@ struct menu_dialog menudialog_pakremoved = {
NULL,
};
struct menu_item menuitems_pakrepaired[] = {
struct menuitem menuitems_pakrepaired[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, 0x000054b5, 0x00000000, NULL },
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000020, 0x00005449, 0x00000000, menuhandler000fcc34 },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_PakRepairSuccessMenuDialog = {
struct menudialog g_PakRepairSuccessMenuDialog = {
MENUDIALOGTYPE_SUCCESS,
L_MPWEAPONS(180), // "Repair Successful"
menuitems_pakrepaired,
@@ -14351,14 +14351,14 @@ struct menu_dialog g_PakRepairSuccessMenuDialog = {
NULL,
};
struct menu_item menuitems_pakrepairfailed[] = {
struct menuitem menuitems_pakrepairfailed[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPWEAPONS(183), 0x00000000, NULL }, // "The Controller Pak cannot be repaired. You will not be able to load from or save to this Controller Pak."
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000028, L_MPWEAPONS(73), 0x00000000, NULL }, // "OK"
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_PakRepairFailedMenuDialog = {
struct menudialog g_PakRepairFailedMenuDialog = {
MENUDIALOGTYPE_DANGER,
L_MPWEAPONS(182), // "Repair Failed"
menuitems_pakrepairfailed,
@@ -14367,7 +14367,7 @@ struct menu_dialog g_PakRepairFailedMenuDialog = {
NULL,
};
struct menu_item menuitems_pakattemptrepair[] = {
struct menuitem menuitems_pakattemptrepair[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPWEAPONS(176), 0x00000000, NULL }, // "Are you sure you want to attempt repair of this Controller Pak?"
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPWEAPONS(177), 0x00000000, NULL }, // "Data may be lost!"
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
@@ -14376,7 +14376,7 @@ struct menu_item menuitems_pakattemptrepair[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog g_PakAttemptRepairMenuDialog = {
struct menudialog g_PakAttemptRepairMenuDialog = {
MENUDIALOGTYPE_DANGER,
L_MPWEAPONS(175), // "Attempt Repair"
menuitems_pakattemptrepair,
@@ -14385,7 +14385,7 @@ struct menu_dialog g_PakAttemptRepairMenuDialog = {
NULL,
};
char *menuTextSaveDeviceName(struct menu_item *item)
char *menuTextSaveDeviceName(struct menuitem *item)
{
u16 devices[] = {
L_OPTIONS(112), // "Controller Pak 1"
@@ -14395,26 +14395,26 @@ char *menuTextSaveDeviceName(struct menu_item *item)
L_OPTIONS(111), // "Game Pak"
};
if ((u8)g_MenuStack[g_MpPlayerNum].savedevice < 5) {
return langGet(devices[(u8)g_MenuStack[g_MpPlayerNum].savedevice]);
if ((u8)g_Menus[g_MpPlayerNum].savedevice < 5) {
return langGet(devices[(u8)g_Menus[g_MpPlayerNum].savedevice]);
}
return NULL;
}
s32 menuhandlerRetrySavePak(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerRetrySavePak(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPopDialog();
g_Vars.unk0004e4 &= 0xfff0;
g_Vars.unk0004e4 |= 8;
g_Vars.unk0004e4 |= 1 << ((u8)g_MenuStack[g_MpPlayerNum].savedevice + 8);
g_Vars.unk0004e4 |= 1 << ((u8)g_Menus[g_MpPlayerNum].savedevice + 8);
}
return 0;
}
s32 menuhandlerWarnRepairPak(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerWarnRepairPak(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPushDialog(&g_PakAttemptRepairMenuDialog);
@@ -14506,15 +14506,15 @@ bool func0f0fd1f4(u32 arg0, u32 arg1)
result = true;
}
if (g_MenuStack[playernum].curframe) {
if (g_MenuStack[playernum].curframe->dialog == &menudialog_damagedcontrollerpak
|| g_MenuStack[playernum].curframe->dialog == &menudialog_cannotreadgameboy
|| g_MenuStack[playernum].curframe->dialog == &menudialog_datalost
|| g_MenuStack[playernum].curframe->dialog == &menudialog_fullcontrollerpak
|| g_MenuStack[playernum].curframe->dialog == &g_PakAttemptRepairMenuDialog
|| g_MenuStack[playernum].curframe->dialog == &menudialog_pakremoved
|| g_MenuStack[playernum].curframe->dialog == &g_PakRepairSuccessMenuDialog
|| g_MenuStack[playernum].curframe->dialog == &g_PakRepairFailedMenuDialog) {
if (g_Menus[playernum].curframe) {
if (g_Menus[playernum].curframe->dialog == &menudialog_damagedcontrollerpak
|| g_Menus[playernum].curframe->dialog == &menudialog_cannotreadgameboy
|| g_Menus[playernum].curframe->dialog == &menudialog_datalost
|| g_Menus[playernum].curframe->dialog == &menudialog_fullcontrollerpak
|| g_Menus[playernum].curframe->dialog == &g_PakAttemptRepairMenuDialog
|| g_Menus[playernum].curframe->dialog == &menudialog_pakremoved
|| g_Menus[playernum].curframe->dialog == &g_PakRepairSuccessMenuDialog
|| g_Menus[playernum].curframe->dialog == &g_PakRepairFailedMenuDialog) {
result = false;
}
} else if (g_MenuData.unk015 != 255 || g_MenuData.unk014 || g_MenuData.unk5d4) {
@@ -14766,7 +14766,7 @@ bool currentPlayerGetUnk1c04(void)
return g_Vars.currentplayer->unk1c04;
}
struct menu_item menuitems_damagedcontrollerpak[] = {
struct menuitem menuitems_damagedcontrollerpak[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000030, (u32)&menuTextSaveDeviceName, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x02000030, L_MPWEAPONS(65), 0x00000000, NULL }, // "is damaged or"
{ MENUITEMTYPE_LABEL, 0, 0x02000030, L_MPWEAPONS(66), 0x00000000, NULL }, // "inserted incorrectly"
@@ -14777,7 +14777,7 @@ struct menu_item menuitems_damagedcontrollerpak[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog menudialog_damagedcontrollerpak = {
struct menudialog menudialog_damagedcontrollerpak = {
MENUDIALOGTYPE_DANGER,
L_MPWEAPONS(64), // "Damaged Controller Pak"
menuitems_damagedcontrollerpak,
@@ -14786,7 +14786,7 @@ struct menu_dialog menudialog_damagedcontrollerpak = {
NULL,
};
struct menu_item menuitems_fullcontrollerpak[] = {
struct menuitem menuitems_fullcontrollerpak[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000020, (u32)&menuTextSaveDeviceName, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x02000210, L_MPWEAPONS(71), 0x00000000, NULL }, // "is too full to save note - 1 note and 28 pages required to save"
{ MENUITEMTYPE_LABEL, 0, 0x02000220, L_OPTIONS(3), 0x00000000, NULL }, // ""
@@ -14796,7 +14796,7 @@ struct menu_item menuitems_fullcontrollerpak[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog menudialog_fullcontrollerpak = {
struct menudialog menudialog_fullcontrollerpak = {
MENUDIALOGTYPE_DANGER,
L_MPWEAPONS(70), // "Full Controller Pak"
menuitems_fullcontrollerpak,
@@ -14805,14 +14805,14 @@ struct menu_dialog menudialog_fullcontrollerpak = {
NULL,
};
struct menu_item menuitems_cannotreadgameboy[] = {
struct menuitem menuitems_cannotreadgameboy[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPWEAPONS(254), 0x00000000, NULL }, // "Cannot read Game Boy Game Pak. Check connections and make sure correct Game Boy Game Pak is being used."
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000082, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000008, L_MPWEAPONS(255), 0x00000000, NULL }, // "Cancel"
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog menudialog_cannotreadgameboy = {
struct menudialog menudialog_cannotreadgameboy = {
MENUDIALOGTYPE_DANGER,
L_MPWEAPONS(253), // "Error"
menuitems_cannotreadgameboy,
@@ -14821,7 +14821,7 @@ struct menu_dialog menudialog_cannotreadgameboy = {
NULL,
};
struct menu_item menuitems_datalost[] = {
struct menuitem menuitems_datalost[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000030, (u32)&menuTextSaveDeviceName, 0x00000000, NULL },
{ MENUITEMTYPE_LABEL, 0, 0x02000030, L_MPWEAPONS(257), 0x00000000, NULL }, // "The saved data has"
{ MENUITEMTYPE_LABEL, 0, 0x02000030, L_MPWEAPONS(258), 0x00000000, NULL }, // "been erased due to"
@@ -14831,7 +14831,7 @@ struct menu_item menuitems_datalost[] = {
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
struct menu_dialog menudialog_datalost = {
struct menudialog menudialog_datalost = {
MENUDIALOGTYPE_DANGER,
L_MPWEAPONS(256), // "Error"
menuitems_datalost,
+3 -3
View File
@@ -488,7 +488,7 @@ glabel var7f1b2cd8
/* f0fdc70: 00000000 */ nop
);
bool menudialogMpPickTarget(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogMpPickTarget(u32 operation, struct menudialog *dialog, struct menu *menu)
{
switch (operation) {
case MENUOP_100:
@@ -507,13 +507,13 @@ bool menudialogMpPickTarget(u32 operation, struct menu_dialog *dialog, struct me
// 17980
struct menu_item menuitems_picktarget[] = {
struct menuitem menuitems_picktarget[] = {
{ MENUITEMTYPE_CUSTOM, 0, 0x00200000, 0x0000005a, 0x00000000, menuhandler000fd6f0 },
{ MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
};
// 179a8
struct menu_dialog menudialog_picktarget = {
struct menudialog menudialog_picktarget = {
MENUDIALOGTYPE_DANGER,
L_OPTIONS(492), // "Pick Target"
menuitems_picktarget,
+206 -206
View File
File diff suppressed because it is too large Load Diff
+166 -166
View File
File diff suppressed because it is too large Load Diff
+14 -14
View File
@@ -14,47 +14,47 @@
#include "gvars/gvars.h"
#include "types.h"
s32 menuhandler4MbDropOut(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler4MbDropOut(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPopDialog();
menuPopDialog();
if (mpGetNumChrs() == 1) {
func0f0f820c(&g_4MbMainMenu, 11);
func0f0f820c(&g_4MbMainMenu, MENUROOT_4MBMAINMENU);
}
}
return 0;
}
s32 menuhandler0010ca1c(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler0010ca1c(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
if (g_Vars.stagenum == 0x5d) {
func0f0f820c(&g_4MbMainMenu, 11);
if (g_Vars.stagenum == STAGE_4MBMENU) {
func0f0f820c(&g_4MbMainMenu, MENUROOT_4MBMAINMENU);
} else {
func0f0f820c(&g_SoloPauseMenuDialog, 2);
func0f0f820c(&g_SoloPauseMenuDialog, MENUROOT_MAINMENU);
}
}
return 0;
}
s32 menuhandler4MbAdvancedSetup(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler4MbAdvancedSetup(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
func0f0f820c(&g_4MbAdvancedSetupMenuDialog, 11);
func0f0f820c(&g_4MbAdvancedSetupMenuDialog, MENUROOT_4MBMAINMENU);
}
return 0;
}
s32 menuhandler0010cabc(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler0010cabc(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
mpSetCurrentChallenge(g_MenuStack[g_MpPlayerNum].slotindex);
func0f0f820c(&menudialog_mpquickgo2, 11);
mpSetCurrentChallenge(g_Menus[g_MpPlayerNum].data.main4mb.slotindex);
func0f0f820c(&menudialog_mpquickgo2, MENUROOT_4MBMAINMENU);
}
return 0;
@@ -90,7 +90,7 @@ void func0f10cb2c(void)
g_MpPlayerNum = prevplayernum;
}
bool menudialog4MbMainMenu(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialog4MbMainMenu(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_100) {
g_Vars.unk000494 = 0;
@@ -99,8 +99,8 @@ bool menudialog4MbMainMenu(u32 operation, struct menu_dialog *dialog, struct men
g_Vars.unk000497 = 0;
}
if (g_MenuStack[g_MpPlayerNum].curframe &&
g_MenuStack[g_MpPlayerNum].curframe->dialog == &g_4MbMainMenu &&
if (g_Menus[g_MpPlayerNum].curframe &&
g_Menus[g_MpPlayerNum].curframe->dialog == &g_4MbMainMenu &&
operation == MENUOP_102) {
g_Vars.unk000490 = 2;
g_Vars.mpquickteam = MPQUICKTEAM_5;
+4 -4
View File
@@ -6297,7 +6297,7 @@ glabel func0f1472fc
/* f147400: 00403025 */ or $a2,$v0,$zero
.L0f147404:
/* f147404: 8e0e0288 */ lw $t6,0x288($s0)
/* f147408: 3c19800a */ lui $t9,%hi(g_MenuStack+0x4f8)
/* f147408: 3c19800a */ lui $t9,%hi(g_Menus+0x4f8)
/* f14740c: 02202025 */ or $a0,$s1,$zero
/* f147410: 8dcf0070 */ lw $t7,0x70($t6)
/* f147414: 3c0500ff */ lui $a1,0xff
@@ -6309,7 +6309,7 @@ glabel func0f1472fc
/* f14742c: 030fc023 */ subu $t8,$t8,$t7
/* f147430: 0018c100 */ sll $t8,$t8,0x4
/* f147434: 0338c821 */ addu $t9,$t9,$t8
/* f147438: 8f39e4f8 */ lw $t9,%lo(g_MenuStack+0x4f8)($t9)
/* f147438: 8f39e4f8 */ lw $t9,%lo(g_Menus+0x4f8)($t9)
/* f14743c: 57200005 */ bnezl $t9,.L0f147454
/* f147440: 02201025 */ or $v0,$s1,$zero
/* f147444: 0fc5090e */ jal func0f142438
@@ -6745,7 +6745,7 @@ glabel func0f147578
/* f147a70: 320e0001 */ andi $t6,$s0,0x1
/* f147a74: 8ecf0288 */ lw $t7,0x288($s6)
.L0f147a78:
/* f147a78: 3c0b800a */ lui $t3,%hi(g_MenuStack+0x4f8)
/* f147a78: 3c0b800a */ lui $t3,%hi(g_Menus+0x4f8)
/* f147a7c: 02802025 */ or $a0,$s4,$zero
/* f147a80: 8df80070 */ lw $t8,0x70($t7)
/* f147a84: 3c05ff00 */ lui $a1,0xff00
@@ -6757,7 +6757,7 @@ glabel func0f147578
/* f147a9c: 01585023 */ subu $t2,$t2,$t8
/* f147aa0: 000a5100 */ sll $t2,$t2,0x4
/* f147aa4: 016a5821 */ addu $t3,$t3,$t2
/* f147aa8: 8d6be4f8 */ lw $t3,%lo(g_MenuStack+0x4f8)($t3)
/* f147aa8: 8d6be4f8 */ lw $t3,%lo(g_Menus+0x4f8)($t3)
/* f147aac: 55600005 */ bnezl $t3,.L0f147ac4
/* f147ab0: 02801025 */ or $v0,$s4,$zero
/* f147ab4: 0fc5090e */ jal func0f142438
+4 -4
View File
@@ -5380,7 +5380,7 @@ glabel var7f1b75d0
/* f15c69c: 02d9b021 */ addu $s6,$s6,$t9
.L0f15c6a0:
/* f15c6a0: 12c0001c */ beqz $s6,.L0f15c714
/* f15c6a4: 3c03800a */ lui $v1,%hi(g_MenuStack+0x2000)
/* f15c6a4: 3c03800a */ lui $v1,%hi(g_Menus+0x2000)
/* f15c6a8: 00162080 */ sll $a0,$s6,0x2
/* f15c6ac: 00962023 */ subu $a0,$a0,$s6
/* f15c6b0: 2484000f */ addiu $a0,$a0,0xf
@@ -5390,7 +5390,7 @@ glabel var7f1b75d0
/* f15c6c0: 24050004 */ addiu $a1,$zero,0x4
/* f15c6c4: 3c03800a */ lui $v1,%hi(var800a41a0)
/* f15c6c8: 246341a0 */ addiu $v1,$v1,%lo(var800a41a0)
/* f15c6cc: ac620000 */ sw $v0,%lo(g_MenuStack+0x2000)($v1)
/* f15c6cc: ac620000 */ sw $v0,%lo(g_Menus+0x2000)($v1)
/* f15c6d0: 1ac00013 */ blez $s6,.L0f15c720
/* f15c6d4: 0000a025 */ or $s4,$zero,$zero
/* f15c6d8: 00001025 */ or $v0,$zero,$zero
@@ -11819,7 +11819,7 @@ glabel func0f161520
.L0f1616d8:
/* f1616d8: 2a610010 */ slti $at,$s3,0x10
/* f1616dc: 10200019 */ beqz $at,.L0f161744
/* f1616e0: 3c10800a */ lui $s0,%hi(g_MenuStack+0x2000)
/* f1616e0: 3c10800a */ lui $s0,%hi(g_Menus+0x2000)
/* f1616e4: 8fa400e4 */ lw $a0,0xe4($sp)
/* f1616e8: 1a600010 */ blez $s3,.L0f16172c
/* f1616ec: 00001825 */ or $v1,$zero,$zero
@@ -11832,7 +11832,7 @@ glabel func0f161520
/* f161704: 00000000 */ nop
/* f161708: 45000006 */ bc1f .L0f161724
/* f16170c: 00000000 */ nop
/* f161710: 8e020000 */ lw $v0,%lo(g_MenuStack+0x2000)($s0)
/* f161710: 8e020000 */ lw $v0,%lo(g_Menus+0x2000)($s0)
/* f161714: ae040000 */ sw $a0,0x0($s0)
/* f161718: e6140004 */ swc1 $f20,0x4($s0)
/* f16171c: 46001506 */ mov.s $f20,$f2
+17 -17
View File
@@ -166,7 +166,7 @@ glabel menuhandler00177e00
/* f177fd4: 00000000 */ nop
);
s32 menuhandlerMpEndGame(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpEndGame(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
g_Vars.currentplayer->aborted = true;
@@ -179,7 +179,7 @@ s32 menuhandlerMpEndGame(u32 operation, struct menu_item *item, s32 *value)
/**
* This is something near the top of the "End Game" dialog during gameplay.
*/
s32 menuhandler00178018(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler00178018(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKHIDDEN) {
if (g_MpSetupSaveFile.locktype != MPLOCKTYPE_CHALLENGE) {
@@ -190,7 +190,7 @@ s32 menuhandler00178018(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
char *mpMenuTextInGameLimit(struct menu_item *item)
char *mpMenuTextInGameLimit(struct menuitem *item)
{
*g_StringPointer = 0;
@@ -209,7 +209,7 @@ char *mpMenuTextInGameLimit(struct menu_item *item)
return g_StringPointer;
}
s32 menuhandlerMpInGameLimitLabel(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpInGameLimitLabel(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKHIDDEN) {
switch (item->param) {
@@ -222,7 +222,7 @@ s32 menuhandlerMpInGameLimitLabel(u32 operation, struct menu_item *item, s32 *va
return 0;
}
s32 menuhandlerMpPause(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpPause(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
if (mpIsPaused()) {
@@ -262,9 +262,9 @@ char *menutextMatchTime(s32 arg0)
return g_StringPointer;
}
char *mpMenuTextWeaponDescription(struct menu_item *item)
char *mpMenuTextWeaponDescription(struct menuitem *item)
{
struct weapon *weapon = weaponFindById(g_MenuStack[g_MpPlayerNum].unke28);
struct weapon *weapon = weaponFindById(g_Menus[g_MpPlayerNum].data.mppause.weaponnum);
if (weapon) {
return langGet(weapon->description);
@@ -323,22 +323,22 @@ glabel func0f1783a0
/* f17844c: 00001025 */ or $v0,$zero,$zero
);
char *mpMenuTextWeaponOfChoiceName(struct menu_item *item)
char *mpMenuTextWeaponOfChoiceName(struct menuitem *item)
{
return mpPlayerGetWeaponOfChoiceName(g_MenuStack[g_MpPlayerNum].playernum, 0);
return mpPlayerGetWeaponOfChoiceName(g_Menus[g_MpPlayerNum].playernum, 0);
}
char *mpMenuTextAward1(struct menu_item *item)
char *mpMenuTextAward1(struct menuitem *item)
{
return g_Vars.players[g_MenuStack[g_MpPlayerNum].playernum]->award1;
return g_Vars.players[g_Menus[g_MpPlayerNum].playernum]->award1;
}
char *mpMenuTextAward2(struct menu_item *item)
char *mpMenuTextAward2(struct menuitem *item)
{
return g_Vars.players[g_MenuStack[g_MpPlayerNum].playernum]->award2;
return g_Vars.players[g_Menus[g_MpPlayerNum].playernum]->award2;
}
char *mpMenuTextPlacementWithSuffix(struct menu_item *item)
char *mpMenuTextPlacementWithSuffix(struct menuitem *item)
{
u16 suffixes[12] = g_OrdinalSuffixes;
@@ -900,8 +900,8 @@ void mpPushPauseDialog(void)
if (g_MpSetup.paused != 2 && var8005d9d0 == 0) {
g_MpPlayerNum = g_Vars.currentplayerstats->mpindex;
if (g_MenuStack[g_MpPlayerNum].unk83c == 0) {
g_MenuStack[g_MpPlayerNum].playernum = g_Vars.currentplayernum;
if (g_Menus[g_MpPlayerNum].unk83c == 0) {
g_Menus[g_MpPlayerNum].playernum = g_Vars.currentplayernum;
if (g_Vars.normmplayerisrunning) {
if (g_MpSetup.options & MPOPTION_TEAMSENABLED) {
@@ -927,7 +927,7 @@ void mpPushEndscreenDialog(u32 arg0, u32 playernum)
u32 prevplayernum = g_MpPlayerNum;
g_MpPlayerNum = playernum;
g_MenuStack[g_MpPlayerNum].playernum = arg0;
g_Menus[g_MpPlayerNum].playernum = arg0;
if (g_MpSetup.options & MPOPTION_TEAMSENABLED) {
if (g_MpSetupSaveFile.locktype == MPLOCKTYPE_CHALLENGE) {
+129 -129
View File
@@ -85,7 +85,7 @@ const char var7f1b8030[] = "";
const char var7f1b8034[] = "";
const char var7f1b8038[] = "%d:\n";
s32 menuhandlerMpDropOut(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpDropOut(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPopDialog();
@@ -109,7 +109,7 @@ glabel mpGetCurrentPlayerName
/* f1790c0: 01f81021 */ addu $v0,$t7,$t8
);
s32 menuhandlerMpTeamsLabel(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpTeamsLabel(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKDISABLED) {
if ((g_MpSetup.options & MPOPTION_TEAMSENABLED) == 0) {
@@ -411,7 +411,7 @@ glabel var7f1b8074
/* f1794b0: 27bd0058 */ addiu $sp,$sp,0x58
);
char *menuhandlerMpControlStyle(u32 operation, struct menu_item *item, s32 *value)
char *menuhandlerMpControlStyle(u32 operation, struct menuitem *item, s32 *value)
{
u16 labels[4] = g_MpControlStyleLabels;
@@ -432,7 +432,7 @@ char *menuhandlerMpControlStyle(u32 operation, struct menu_item *item, s32 *valu
return NULL;
}
char *menuhandlerMpWeaponSlot(u32 operation, struct menu_item *item, s32 *value)
char *menuhandlerMpWeaponSlot(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_GETOPTIONCOUNT:
@@ -450,12 +450,12 @@ char *menuhandlerMpWeaponSlot(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
char *mpMenuTextWeaponNameForSlot(struct menu_item *item)
char *mpMenuTextWeaponNameForSlot(struct menuitem *item)
{
return mpGetWeaponLabel(mpGetWeaponSlot(item->param));
}
char *menuhandlerMpWeaponSetDropdown(u32 operation, struct menu_item *item, s32 *value)
char *menuhandlerMpWeaponSetDropdown(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_GETOPTIONCOUNT:
@@ -474,7 +474,7 @@ char *menuhandlerMpWeaponSetDropdown(u32 operation, struct menu_item *item, s32
return NULL;
}
s32 menuhandlerMpControlCheckbox(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpControlCheckbox(u32 operation, struct menuitem *item, s32 *value)
{
u32 val;
@@ -511,7 +511,7 @@ s32 menuhandlerMpControlCheckbox(u32 operation, struct menu_item *item, s32 *val
return 0;
}
char *menuhandlerMpAimControl(u32 operation, struct menu_item *item, s32 *value)
char *menuhandlerMpAimControl(u32 operation, struct menuitem *item, s32 *value)
{
u16 labels[2] = g_MpAimModeLabels;
@@ -532,7 +532,7 @@ char *menuhandlerMpAimControl(u32 operation, struct menu_item *item, s32 *value)
return NULL;
}
s32 menuhandlerMpCheckboxOption(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpCheckboxOption(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_GET:
@@ -550,7 +550,7 @@ s32 menuhandlerMpCheckboxOption(u32 operation, struct menu_item *item, s32 *valu
return 0;
}
s32 menuhandlerMpTeamsEnabled(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpTeamsEnabled(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKDISABLED) {
if (g_MpSetup.scenario == MPSCENARIO_CAPTURETHECASE ||
@@ -564,7 +564,7 @@ s32 menuhandlerMpTeamsEnabled(u32 operation, struct menu_item *item, s32 *value)
return menuhandlerMpCheckboxOption(operation, item, value);
}
s32 menuhandlerMpDisplayOptionCheckbox(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpDisplayOptionCheckbox(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_GET:
@@ -584,7 +584,7 @@ s32 menuhandlerMpDisplayOptionCheckbox(u32 operation, struct menu_item *item, s3
return 0;
}
s32 menuhandlerMpConfirmSaveChr(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpConfirmSaveChr(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPopDialog();
@@ -594,7 +594,7 @@ s32 menuhandlerMpConfirmSaveChr(u32 operation, struct menu_item *item, s32 *valu
return 0;
}
s32 menuhandlerMpPlayerName(u32 operation, struct menu_item *item, char **value)
s32 menuhandlerMpPlayerName(u32 operation, struct menuitem *item, char **value)
{
char *ptr = *value;
@@ -613,7 +613,7 @@ s32 menuhandlerMpPlayerName(u32 operation, struct menu_item *item, char **value)
return 0;
}
s32 menuhandlerMpSaveSetupOverwrite(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpSaveSetupOverwrite(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPopDialog();
@@ -623,7 +623,7 @@ s32 menuhandlerMpSaveSetupOverwrite(u32 operation, struct menu_item *item, s32 *
return 0;
}
s32 menuhandlerMpSaveSetupCopy(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpSaveSetupCopy(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPopDialog();
@@ -633,7 +633,7 @@ s32 menuhandlerMpSaveSetupCopy(u32 operation, struct menu_item *item, s32 *value
return 0;
}
char *mpMenuTextSetupName(struct menu_item *item)
char *mpMenuTextSetupName(struct menuitem *item)
{
return g_MpSetup.name;
}
@@ -936,7 +936,7 @@ glabel var7f1b80dc
/* f179ec8: 24020001 */ addiu $v0,$zero,0x1
/* f179ecc: 3c098007 */ lui $t1,%hi(g_MpPlayerNum)
/* f179ed0: 8d291448 */ lw $t1,%lo(g_MpPlayerNum)($t1)
/* f179ed4: 3c01800a */ lui $at,%hi(g_MenuStack+0x840)
/* f179ed4: 3c01800a */ lui $at,%hi(g_Menus+0x840)
/* f179ed8: 24080003 */ addiu $t0,$zero,0x3
/* f179edc: 000950c0 */ sll $t2,$t1,0x3
/* f179ee0: 01495023 */ subu $t2,$t2,$t1
@@ -947,7 +947,7 @@ glabel var7f1b80dc
/* f179ef4: 000a5100 */ sll $t2,$t2,0x4
/* f179ef8: 002a0821 */ addu $at,$at,$t2
/* f179efc: 10000045 */ b .L0f17a014
/* f179f00: a028e840 */ sb $t0,%lo(g_MenuStack+0x840)($at)
/* f179f00: a028e840 */ sb $t0,%lo(g_Menus+0x840)($at)
/* f179f04: 10000043 */ b .L0f17a014
/* f179f08: acc70000 */ sw $a3,0x0($a2)
/* f179f0c: 3c0b8007 */ lui $t3,%hi(g_MpPlayerNum)
@@ -1025,7 +1025,7 @@ glabel var7f1b80dc
/* f17a024: 00000000 */ nop
);
s32 menuhandlerMpCharacterBody(u32 operation, struct menu_item *item, struct numandtext *value)
s32 menuhandlerMpCharacterBody(u32 operation, struct menuitem *item, struct numandtext *value)
{
switch (operation) {
case MENUOP_SET:
@@ -1062,7 +1062,7 @@ glabel menudialog0017a174
/* f17a194: 14810018 */ bne $a0,$at,.L0f17a1f8
/* f17a198: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f17a19c: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f17a1a0: 3c02800a */ lui $v0,%hi(g_MenuStack+0x4f8)
/* f17a1a0: 3c02800a */ lui $v0,%hi(g_Menus+0x4f8)
/* f17a1a4: 000e78c0 */ sll $t7,$t6,0x3
/* f17a1a8: 01ee7823 */ subu $t7,$t7,$t6
/* f17a1ac: 000f7880 */ sll $t7,$t7,0x2
@@ -1071,7 +1071,7 @@ glabel menudialog0017a174
/* f17a1b8: 01ee7823 */ subu $t7,$t7,$t6
/* f17a1bc: 000f7900 */ sll $t7,$t7,0x4
/* f17a1c0: 004f1021 */ addu $v0,$v0,$t7
/* f17a1c4: 8c42e4f8 */ lw $v0,%lo(g_MenuStack+0x4f8)($v0)
/* f17a1c4: 8c42e4f8 */ lw $v0,%lo(g_Menus+0x4f8)($v0)
/* f17a1c8: 8c580000 */ lw $t8,0x0($v0)
/* f17a1cc: 54b8000b */ bnel $a1,$t8,.L0f17a1fc
/* f17a1d0: 8fbf0014 */ lw $ra,0x14($sp)
@@ -2368,7 +2368,7 @@ glabel func0f17b360
/* f17b3b4: 27bd0018 */ addiu $sp,$sp,0x18
);
s32 menuhandlerMpUsernamePassword(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpUsernamePassword(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKHIDDEN) {
if (g_MpPlayers[g_MpPlayerNum].title != MPPLAYERTITLE_PERFECT) {
@@ -2636,7 +2636,7 @@ glabel var7f1b814c
/* f17b708: acca0000 */ sw $t2,0x0($a2)
/* f17b70c: 3c0c8007 */ lui $t4,%hi(g_MpPlayerNum)
/* f17b710: 8d8c1448 */ lw $t4,%lo(g_MpPlayerNum)($t4)
/* f17b714: 3c01800a */ lui $at,%hi(g_MenuStack+0x840)
/* f17b714: 3c01800a */ lui $at,%hi(g_Menus+0x840)
/* f17b718: 240b0003 */ addiu $t3,$zero,0x3
/* f17b71c: 000c68c0 */ sll $t5,$t4,0x3
/* f17b720: 01ac6823 */ subu $t5,$t5,$t4
@@ -2647,7 +2647,7 @@ glabel var7f1b814c
/* f17b734: 000d6900 */ sll $t5,$t5,0x4
/* f17b738: 002d0821 */ addu $at,$at,$t5
/* f17b73c: 0fc62ec7 */ jal func0f18bb1c
/* f17b740: a02be840 */ sb $t3,%lo(g_MenuStack+0x840)($at)
/* f17b740: a02be840 */ sb $t3,%lo(g_Menus+0x840)($at)
/* f17b744: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f17b748: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f17b74c: 44800000 */ mtc1 $zero,$f0
@@ -2715,7 +2715,7 @@ glabel var7f1b814c
/* f17b83c: 00000000 */ nop
);
s32 menuhandlerMpCharacterHead(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpCharacterHead(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
g_MpPlayers[g_MpPlayerNum].base.headnum = *value;
@@ -2724,7 +2724,7 @@ s32 menuhandlerMpCharacterHead(u32 operation, struct menu_item *item, s32 *value
return func0f17b4f8(operation, item, value, g_MpPlayers[g_MpPlayerNum].base.headnum, 1);
}
char *mpMenuTextBodyName(struct menu_item *item)
char *mpMenuTextBodyName(struct menuitem *item)
{
return mpGetBodyName(g_MpPlayers[g_MpPlayerNum].base.bodynum);
}
@@ -3090,7 +3090,7 @@ glabel var7f1b818c
/* f17bd98: 1020000e */ beqz $at,.L0f17bdd4
/* f17bd9c: 00000000 */ nop
/* f17bda0: 8d4a1448 */ lw $t2,%lo(g_MpPlayerNum)($t2)
/* f17bda4: 3c01800a */ lui $at,%hi(g_MenuStack+0xe1c)
/* f17bda4: 3c01800a */ lui $at,%hi(g_Menus+0xe1c)
/* f17bda8: 3409ffff */ dli $t1,0xffff
/* f17bdac: 000a58c0 */ sll $t3,$t2,0x3
/* f17bdb0: 016a5823 */ subu $t3,$t3,$t2
@@ -3101,14 +3101,14 @@ glabel var7f1b818c
/* f17bdc4: 000b5900 */ sll $t3,$t3,0x4
/* f17bdc8: 002b0821 */ addu $at,$at,$t3
/* f17bdcc: 10000012 */ b .L0f17be18
/* f17bdd0: ac29ee1c */ sw $t1,%lo(g_MenuStack+0xe1c)($at)
/* f17bdd0: ac29ee1c */ sw $t1,%lo(g_Menus+0xe1c)($at)
.L0f17bdd4:
/* f17bdd4: 0fc63703 */ jal mpGetNumUnlockedPresets
/* f17bdd8: afa70038 */ sw $a3,0x38($sp)
/* f17bddc: 3c0d8007 */ lui $t5,%hi(g_MpPlayerNum)
/* f17bde0: 8dad1448 */ lw $t5,%lo(g_MpPlayerNum)($t5)
/* f17bde4: 8fa70038 */ lw $a3,0x38($sp)
/* f17bde8: 3c01800a */ lui $at,%hi(g_MenuStack+0xe1c)
/* f17bde8: 3c01800a */ lui $at,%hi(g_Menus+0xe1c)
/* f17bdec: 000d78c0 */ sll $t7,$t5,0x3
/* f17bdf0: 01ed7823 */ subu $t7,$t7,$t5
/* f17bdf4: 000f7880 */ sll $t7,$t7,0x2
@@ -3119,7 +3119,7 @@ glabel var7f1b818c
/* f17be08: 000f7900 */ sll $t7,$t7,0x4
/* f17be0c: 002f0821 */ addu $at,$at,$t7
/* f17be10: 01827023 */ subu $t6,$t4,$v0
/* f17be14: ac2eee1c */ sw $t6,%lo(g_MenuStack+0xe1c)($at)
/* f17be14: ac2eee1c */ sw $t6,%lo(g_Menus+0xe1c)($at)
.L0f17be18:
/* f17be18: 00001025 */ or $v0,$zero,$zero
.L0f17be1c:
@@ -3134,7 +3134,7 @@ GLOBAL_ASM(
glabel func0f17be2c
/* f17be2c: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f17be30: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f17be34: 3c02800a */ lui $v0,%hi(g_MenuStack+0xe1c)
/* f17be34: 3c02800a */ lui $v0,%hi(g_Menus+0xe1c)
/* f17be38: 3401ffff */ dli $at,0xffff
/* f17be3c: 000e78c0 */ sll $t7,$t6,0x3
/* f17be40: 01ee7823 */ subu $t7,$t7,$t6
@@ -3144,7 +3144,7 @@ glabel func0f17be2c
/* f17be50: 01ee7823 */ subu $t7,$t7,$t6
/* f17be54: 000f7900 */ sll $t7,$t7,0x4
/* f17be58: 004f1021 */ addu $v0,$v0,$t7
/* f17be5c: 8c42ee1c */ lw $v0,%lo(g_MenuStack+0xe1c)($v0)
/* f17be5c: 8c42ee1c */ lw $v0,%lo(g_Menus+0xe1c)($v0)
/* f17be60: 27bdffa8 */ addiu $sp,$sp,-88
/* f17be64: afbf001c */ sw $ra,0x1c($sp)
/* f17be68: 0041082b */ sltu $at,$v0,$at
@@ -3390,7 +3390,7 @@ glabel var7f1b81a8
/* f17c1a0: 27bd0050 */ addiu $sp,$sp,0x50
);
s32 menuhandlerMpTimeLimitSlider(u32 operation, struct menu_item *item, struct numandtext *value)
s32 menuhandlerMpTimeLimitSlider(u32 operation, struct menuitem *item, struct numandtext *value)
{
switch (operation) {
case MENUOP_GETSLIDER:
@@ -3409,7 +3409,7 @@ s32 menuhandlerMpTimeLimitSlider(u32 operation, struct menu_item *item, struct n
return 0;
}
s32 menuhandlerMpScoreLimitSlider(u32 operation, struct menu_item *item, struct numandtext *value)
s32 menuhandlerMpScoreLimitSlider(u32 operation, struct menuitem *item, struct numandtext *value)
{
switch (operation) {
case MENUOP_GETSLIDER:
@@ -3429,7 +3429,7 @@ s32 menuhandlerMpScoreLimitSlider(u32 operation, struct menu_item *item, struct
return 0;
}
s32 menuhandlerMpTeamScoreLimitSlider(u32 operation, struct menu_item *item, struct numandtext *value)
s32 menuhandlerMpTeamScoreLimitSlider(u32 operation, struct menuitem *item, struct numandtext *value)
{
switch (operation) {
case MENUOP_GETSLIDER:
@@ -3449,7 +3449,7 @@ s32 menuhandlerMpTeamScoreLimitSlider(u32 operation, struct menu_item *item, str
return 0;
}
s32 menuhandlerMpRestoreScoreDefaults(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpRestoreScoreDefaults(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
func0f187fec();
@@ -3556,7 +3556,7 @@ glabel func0f17c524
/* f17c568: 00000000 */ nop
);
s32 menuhandlerMpRestoreHandicapDefaults(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpRestoreHandicapDefaults(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
s32 i;
@@ -3569,7 +3569,7 @@ s32 menuhandlerMpRestoreHandicapDefaults(u32 operation, struct menu_item *item,
return 0;
}
bool menudialogMpReady(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogMpReady(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_100) {
if (g_MpPlayers[g_MpPlayerNum].saved && g_MpPlayers[g_MpPlayerNum].unk50) {
@@ -3580,10 +3580,10 @@ bool menudialogMpReady(u32 operation, struct menu_dialog *dialog, struct menusta
return false;
}
bool menudialogMpSimulant(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogMpSimulant(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_102) {
if ((u8)g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.name[0] == '\0') {
if ((u8)g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.name[0] == '\0') {
menuPopDialog();
}
}
@@ -3698,7 +3698,7 @@ glabel var7f1b81e8
/* f17c7a0: 00001025 */ or $v0,$zero,$zero
/* f17c7a4: 3c0a8007 */ lui $t2,%hi(g_MpPlayerNum)
/* f17c7a8: 8d4a1448 */ lw $t2,%lo(g_MpPlayerNum)($t2)
/* f17c7ac: 3c0c800a */ lui $t4,%hi(g_MenuStack+0xe1c)
/* f17c7ac: 3c0c800a */ lui $t4,%hi(g_Menus+0xe1c)
/* f17c7b0: afa00038 */ sw $zero,0x38($sp)
/* f17c7b4: 000a58c0 */ sll $t3,$t2,0x3
/* f17c7b8: 016a5823 */ subu $t3,$t3,$t2
@@ -3708,7 +3708,7 @@ glabel var7f1b81e8
/* f17c7c8: 016a5823 */ subu $t3,$t3,$t2
/* f17c7cc: 000b5900 */ sll $t3,$t3,0x4
/* f17c7d0: 018b6021 */ addu $t4,$t4,$t3
/* f17c7d4: 8d8cee1c */ lw $t4,%lo(g_MenuStack+0xe1c)($t4)
/* f17c7d4: 8d8cee1c */ lw $t4,%lo(g_Menus+0xe1c)($t4)
/* f17c7d8: 3c18800b */ lui $t8,%hi(g_MpSetup+0x16)
/* f17c7dc: 05810007 */ bgez $t4,.L0f17c7fc
/* f17c7e0: afac003c */ sw $t4,0x3c($sp)
@@ -3776,7 +3776,7 @@ glabel var7f1b81e8
/* f17c8bc: 3c098007 */ lui $t1,%hi(g_MpPlayerNum)
/* f17c8c0: 8d291448 */ lw $t1,%lo(g_MpPlayerNum)($t1)
/* f17c8c4: 8e880000 */ lw $t0,0x0($s4)
/* f17c8c8: 3c01800a */ lui $at,%hi(g_MenuStack+0xe20)
/* f17c8c8: 3c01800a */ lui $at,%hi(g_Menus+0xe20)
/* f17c8cc: 000950c0 */ sll $t2,$t1,0x3
/* f17c8d0: 01495023 */ subu $t2,$t2,$t1
/* f17c8d4: 000a5080 */ sll $t2,$t2,0x2
@@ -3786,7 +3786,7 @@ glabel var7f1b81e8
/* f17c8e4: 000a5100 */ sll $t2,$t2,0x4
/* f17c8e8: 002a0821 */ addu $at,$at,$t2
/* f17c8ec: 1000004b */ b .L0f17ca1c
/* f17c8f0: ac28ee20 */ sw $t0,%lo(g_MenuStack+0xe20)($at)
/* f17c8f0: ac28ee20 */ sw $t0,%lo(g_Menus+0xe20)($at)
/* f17c8f4: 3c108008 */ lui $s0,%hi(g_MpGeneralSimulants)
/* f17c8f8: 2610772c */ addiu $s0,$s0,%lo(g_MpGeneralSimulants)
/* f17c8fc: 00008825 */ or $s1,$zero,$zero
@@ -3806,7 +3806,7 @@ glabel var7f1b81e8
.L0f17c92c:
/* f17c92c: 3c0c8007 */ lui $t4,%hi(g_MpPlayerNum)
/* f17c930: 8d8c1448 */ lw $t4,%lo(g_MpPlayerNum)($t4)
/* f17c934: 3c01800a */ lui $at,%hi(g_MenuStack+0xe24)
/* f17c934: 3c01800a */ lui $at,%hi(g_Menus+0xe24)
/* f17c938: 000c68c0 */ sll $t5,$t4,0x3
/* f17c93c: 01ac6823 */ subu $t5,$t5,$t4
/* f17c940: 000d6880 */ sll $t5,$t5,0x2
@@ -3815,10 +3815,10 @@ glabel var7f1b81e8
/* f17c94c: 01ac6823 */ subu $t5,$t5,$t4
/* f17c950: 000d6900 */ sll $t5,$t5,0x4
/* f17c954: 002d0821 */ addu $at,$at,$t5
/* f17c958: ac31ee24 */ sw $s1,%lo(g_MenuStack+0xe24)($at)
/* f17c958: ac31ee24 */ sw $s1,%lo(g_Menus+0xe24)($at)
/* f17c95c: 3c0f8007 */ lui $t7,%hi(g_MpPlayerNum)
/* f17c960: 8def1448 */ lw $t7,%lo(g_MpPlayerNum)($t7)
/* f17c964: 3c0e800a */ lui $t6,%hi(g_MenuStack+0xe20)
/* f17c964: 3c0e800a */ lui $t6,%hi(g_Menus+0xe20)
/* f17c968: 000fc8c0 */ sll $t9,$t7,0x3
/* f17c96c: 032fc823 */ subu $t9,$t9,$t7
/* f17c970: 0019c880 */ sll $t9,$t9,0x2
@@ -3827,7 +3827,7 @@ glabel var7f1b81e8
/* f17c97c: 032fc823 */ subu $t9,$t9,$t7
/* f17c980: 0019c900 */ sll $t9,$t9,0x4
/* f17c984: 01d97021 */ addu $t6,$t6,$t9
/* f17c988: 8dceee20 */ lw $t6,%lo(g_MenuStack+0xe20)($t6)
/* f17c988: 8dceee20 */ lw $t6,%lo(g_Menus+0xe20)($t6)
/* f17c98c: 10000023 */ b .L0f17ca1c
/* f17c990: ae8e0000 */ sw $t6,0x0($s4)
/* f17c994: 24180002 */ addiu $t8,$zero,0x2
@@ -3880,12 +3880,12 @@ glabel var7f1b81e8
/* f17ca3c: 27bd0058 */ addiu $sp,$sp,0x58
);
char *mpMenuTextSimulantDescription(struct menu_item *item)
char *mpMenuTextSimulantDescription(struct menuitem *item)
{
return langGet(L_MISC(106) + g_MenuStack[g_MpPlayerNum].unke24);
return langGet(L_MISC(106) + g_Menus[g_MpPlayerNum].data.mpsetup.unke24);
}
s32 menuhandlerMpSimulantHead(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpSimulantHead(u32 operation, struct menuitem *item, s32 *value)
{
s32 start = 0;
@@ -3900,26 +3900,26 @@ s32 menuhandlerMpSimulantHead(u32 operation, struct menu_item *item, s32 *value)
*/
switch (operation) {
case MENUOP_SET:
g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.headnum = start + *value;
g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.headnum = start + *value;
case MENUOP_13:
if (operation == MENUOP_13 && item->param2 == 1 && g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.headnum < start) {
g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.headnum = start;
if (operation == MENUOP_13 && item->param2 == 1 && g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.headnum < start) {
g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.headnum = start;
}
break;
}
return func0f17b4f8(operation, item, value, g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.headnum, 0);
return func0f17b4f8(operation, item, value, g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.headnum, 0);
}
s32 menuhandlerMpSimulantBody(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpSimulantBody(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.bodynum = *value;
g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.bodynum = *value;
}
return func0f179da4(operation, item, value,
g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.bodynum,
g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.headnum,
g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.bodynum,
g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.headnum,
0);
}
@@ -3934,7 +3934,7 @@ glabel menudialog0017ccfc
/* f17cd14: 00a03825 */ or $a3,$a1,$zero
/* f17cd18: 3c0f8007 */ lui $t7,%hi(g_MpPlayerNum)
/* f17cd1c: 8def1448 */ lw $t7,%lo(g_MpPlayerNum)($t7)
/* f17cd20: 3c02800a */ lui $v0,%hi(g_MenuStack+0x4f8)
/* f17cd20: 3c02800a */ lui $v0,%hi(g_Menus+0x4f8)
/* f17cd24: 000fc0c0 */ sll $t8,$t7,0x3
/* f17cd28: 030fc023 */ subu $t8,$t8,$t7
/* f17cd2c: 0018c080 */ sll $t8,$t8,0x2
@@ -3943,7 +3943,7 @@ glabel menudialog0017ccfc
/* f17cd38: 030fc023 */ subu $t8,$t8,$t7
/* f17cd3c: 0018c100 */ sll $t8,$t8,0x4
/* f17cd40: 00581021 */ addu $v0,$v0,$t8
/* f17cd44: 8c42e4f8 */ lw $v0,%lo(g_MenuStack+0x4f8)($v0)
/* f17cd44: 8c42e4f8 */ lw $v0,%lo(g_Menus+0x4f8)($v0)
/* f17cd48: 8c590000 */ lw $t9,0x0($v0)
/* f17cd4c: 54b9000d */ bnel $a1,$t9,.L0f17cd84
/* f17cd50: 8fa40038 */ lw $a0,0x38($sp)
@@ -3997,7 +3997,7 @@ glabel menuhandlerMpSimulantDifficulty
/* f17cdf8: 00001025 */ or $v0,$zero,$zero
.L0f17cdfc:
/* f17cdfc: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f17ce00: 3c04800a */ lui $a0,%hi(g_MenuStack+0xe1c)
/* f17ce00: 3c04800a */ lui $a0,%hi(g_Menus+0xe1c)
/* f17ce04: 8e850000 */ lw $a1,0x0($s4)
/* f17ce08: 000e78c0 */ sll $t7,$t6,0x3
/* f17ce0c: 01ee7823 */ subu $t7,$t7,$t6
@@ -4008,14 +4008,14 @@ glabel menuhandlerMpSimulantDifficulty
/* f17ce20: 000f7900 */ sll $t7,$t7,0x4
/* f17ce24: 008f2021 */ addu $a0,$a0,$t7
/* f17ce28: 0fc632d8 */ jal func0f18cb60
/* f17ce2c: 8c84ee1c */ lw $a0,%lo(g_MenuStack+0xe1c)($a0)
/* f17ce2c: 8c84ee1c */ lw $a0,%lo(g_Menus+0xe1c)($a0)
/* f17ce30: 0fc63377 */ jal func0f18cddc
/* f17ce34: 00000000 */ nop
/* f17ce38: 1000003f */ b .L0f17cf38
/* f17ce3c: 00001025 */ or $v0,$zero,$zero
.L0f17ce40:
/* f17ce40: 8f181448 */ lw $t8,%lo(g_MpPlayerNum)($t8)
/* f17ce44: 3c08800a */ lui $t0,%hi(g_MenuStack+0xe1c)
/* f17ce44: 3c08800a */ lui $t0,%hi(g_Menus+0xe1c)
/* f17ce48: 3c02800b */ lui $v0,%hi(g_MpSimulants+0x48)
/* f17ce4c: 0018c8c0 */ sll $t9,$t8,0x3
/* f17ce50: 0338c823 */ subu $t9,$t9,$t8
@@ -4025,7 +4025,7 @@ glabel menuhandlerMpSimulantDifficulty
/* f17ce60: 0338c823 */ subu $t9,$t9,$t8
/* f17ce64: 0019c900 */ sll $t9,$t9,0x4
/* f17ce68: 01194021 */ addu $t0,$t0,$t9
/* f17ce6c: 8d08ee1c */ lw $t0,%lo(g_MenuStack+0xe1c)($t0)
/* f17ce6c: 8d08ee1c */ lw $t0,%lo(g_Menus+0xe1c)($t0)
/* f17ce70: 00084880 */ sll $t1,$t0,0x2
/* f17ce74: 01284821 */ addu $t1,$t1,$t0
/* f17ce78: 00094880 */ sll $t1,$t1,0x2
@@ -4097,10 +4097,10 @@ glabel menuhandlerMpSimulantDifficulty
/* f17cf54: 27bd0030 */ addiu $sp,$sp,0x30
);
s32 menuhandlerMpDeleteSimulant(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpDeleteSimulant(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
mpRemoveSimulant(g_MenuStack[g_MpPlayerNum].slotindex);
mpRemoveSimulant(g_Menus[g_MpPlayerNum].data.mpsetup.slotindex);
menuPopDialog();
}
@@ -4111,7 +4111,7 @@ GLOBAL_ASM(
glabel func0f17cfc0
/* f17cfc0: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f17cfc4: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f17cfc8: 3c18800a */ lui $t8,%hi(g_MenuStack+0xe1c)
/* f17cfc8: 3c18800a */ lui $t8,%hi(g_Menus+0xe1c)
/* f17cfcc: 27bdffe8 */ addiu $sp,$sp,-24
/* f17cfd0: 000e78c0 */ sll $t7,$t6,0x3
/* f17cfd4: 01ee7823 */ subu $t7,$t7,$t6
@@ -4121,7 +4121,7 @@ glabel func0f17cfc0
/* f17cfe4: 01ee7823 */ subu $t7,$t7,$t6
/* f17cfe8: 000f7900 */ sll $t7,$t7,0x4
/* f17cfec: 030fc021 */ addu $t8,$t8,$t7
/* f17cff0: 8f18ee1c */ lw $t8,%lo(g_MenuStack+0xe1c)($t8)
/* f17cff0: 8f18ee1c */ lw $t8,%lo(g_Menus+0xe1c)($t8)
/* f17cff4: afa40018 */ sw $a0,0x18($sp)
/* f17cff8: 3c08800b */ lui $t0,%hi(g_MpSimulants)
/* f17cffc: 0018c880 */ sll $t9,$t8,0x2
@@ -4144,14 +4144,14 @@ glabel func0f17cfc0
/* f17d040: 27bd0018 */ addiu $sp,$sp,0x18
);
s32 menuhandlerMpChangeSimulantType(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpChangeSimulantType(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
s32 i;
s32 count = 0;
s32 maxunlocked = func0f18cd68(
g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].base.simtype,
g_MpSimulants[g_MenuStack[g_MpPlayerNum].slotindex].unk48);
g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].base.simtype,
g_MpSimulants[g_Menus[g_MpPlayerNum].data.mpsetup.slotindex].unk48);
for (i = 0; i < maxunlocked; i++) {
if (mpIsChallengeComplete(g_MpGeneralSimulants[i].unlockvalue)) {
@@ -4159,7 +4159,7 @@ s32 menuhandlerMpChangeSimulantType(u32 operation, struct menu_item *item, s32 *
}
}
g_MenuStack[g_MpPlayerNum].slotcount = count;
g_Menus[g_MpPlayerNum].data.mpsetup.slotcount = count;
menuPushDialog(&g_MpChangeSimulantMenuDialog);
}
@@ -4167,7 +4167,7 @@ s32 menuhandlerMpChangeSimulantType(u32 operation, struct menu_item *item, s32 *
return 0;
}
s32 menuhandlerMpClearAllSimulants(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpClearAllSimulants(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
s32 i;
@@ -4179,11 +4179,11 @@ s32 menuhandlerMpClearAllSimulants(u32 operation, struct menu_item *item, s32 *v
return 0;
}
s32 menuhandlerMpAddSimulant(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpAddSimulant(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_SET:
g_MenuStack[g_MpPlayerNum].slotindex = -1;
g_Menus[g_MpPlayerNum].data.mpsetup.slotindex = -1;
menuPushDialog(&g_MpAddSimulantMenuDialog);
break;
case MENUOP_CHECKDISABLED:
@@ -4195,11 +4195,11 @@ s32 menuhandlerMpAddSimulant(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
s32 menuhandlerMpSimulantSlot(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpSimulantSlot(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_SET:
g_MenuStack[g_MpPlayerNum].slotindex = item->param;
g_Menus[g_MpPlayerNum].data.mpsetup.slotindex = item->param;
if ((g_MpSetup.chrslots & (1 << (item->param + 4))) == 0) {
menuPushDialog(&g_MpAddSimulantMenuDialog);
@@ -4292,10 +4292,10 @@ glabel func0f17d378
/* f17d464: 00000000 */ nop
);
bool menudialogMpSimulants(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogMpSimulants(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_100) {
g_MenuStack[g_MpPlayerNum].slotcount = 0;
g_Menus[g_MpPlayerNum].data.mpsetup.slotcount = 0;
}
return false;
@@ -4501,22 +4501,22 @@ glabel func0f17d4b0
/* f17d75c: 27bd0078 */ addiu $sp,$sp,0x78
);
s32 menuhandlerMpTwoTeams(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpTwoTeams(u32 operation, struct menuitem *item, s32 *value)
{
return func0f17d4b0(operation, item, value, 2);
}
s32 menuhandlerMpThreeTeams(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpThreeTeams(u32 operation, struct menuitem *item, s32 *value)
{
return func0f17d4b0(operation, item, value, 3);
}
s32 menuhandlerMpFourTeams(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpFourTeams(u32 operation, struct menuitem *item, s32 *value)
{
return func0f17d4b0(operation, item, value, 4);
}
s32 menuhandlerMpMaximumTeams(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpMaximumTeams(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
s32 i;
@@ -4546,7 +4546,7 @@ s32 menuhandlerMpMaximumTeams(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
s32 menuhandlerMpHumansVsSimulants(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpHumansVsSimulants(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
s32 i;
@@ -4571,7 +4571,7 @@ s32 menuhandlerMpHumansVsSimulants(u32 operation, struct menu_item *item, s32 *v
return 0;
}
s32 menuhandlerMpHumanSimulantPairs(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpHumanSimulantPairs(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
u8 team_ids[4] = g_TeamIdsForPairing; // literally {0, 1, 2, 3}
@@ -4607,7 +4607,7 @@ s32 menuhandlerMpHumanSimulantPairs(u32 operation, struct menu_item *item, s32 *
return 0;
}
char *mpMenuTextChrNameForTeamSetup(struct menu_item *item)
char *mpMenuTextChrNameForTeamSetup(struct menuitem *item)
{
struct mpchr *mpchr = func0f18c794(item->param);
@@ -4667,7 +4667,7 @@ glabel func0f17dac4
/* f17db58: 00000000 */ nop
);
char *menuhandlerMpTeamSlot(u32 operation, struct menu_item *item, s32 *value)
char *menuhandlerMpTeamSlot(u32 operation, struct menuitem *item, s32 *value)
{
struct mpchr *mpchr;
@@ -4699,7 +4699,7 @@ char *menuhandlerMpTeamSlot(u32 operation, struct menu_item *item, s32 *value)
return func0f17dac4(operation, item, value);
}
char *mpMenuTextSelectTuneOrTunes(struct menu_item *item)
char *mpMenuTextSelectTuneOrTunes(struct menuitem *item)
{
if (mpGetUsingMultipleTunes()) {
return langGet(L_MPMENU(69)); // "Select Tune"
@@ -4948,7 +4948,7 @@ glabel var7f1b8228
/* f17df70: 00000000 */ nop
);
bool menudialogMpSelectTune(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogMpSelectTune(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_100) {
var800840e0 = 80;
@@ -4961,7 +4961,7 @@ bool menudialogMpSelectTune(u32 operation, struct menu_dialog *dialog, struct me
return false;
}
char *mpMenuTextCurrentTrack(struct menu_item *item)
char *mpMenuTextCurrentTrack(struct menuitem *item)
{
s32 slotnum;
@@ -4978,7 +4978,7 @@ char *mpMenuTextCurrentTrack(struct menu_item *item)
return langGet(L_MPMENU(67)); // "Random"
}
s32 menuhandlerMpMultipleTunes(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpMultipleTunes(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_GET:
@@ -5074,7 +5074,7 @@ glabel menuhandler0017e06c
/* f17e18c: 11e0001d */ beqz $t7,.L0f17e204
/* f17e190: 25291448 */ addiu $t1,$t1,%lo(g_MpPlayerNum)
/* f17e194: 8f181448 */ lw $t8,%lo(g_MpPlayerNum)($t8)
/* f17e198: 3c0d800a */ lui $t5,%hi(g_MenuStack+0xe1c)
/* f17e198: 3c0d800a */ lui $t5,%hi(g_Menus+0xe1c)
/* f17e19c: 00403021 */ addu $a2,$v0,$zero
/* f17e1a0: 0018c8c0 */ sll $t9,$t8,0x3
/* f17e1a4: 0338c823 */ subu $t9,$t9,$t8
@@ -5084,7 +5084,7 @@ glabel menuhandler0017e06c
/* f17e1b4: 0338c823 */ subu $t9,$t9,$t8
/* f17e1b8: 0019c900 */ sll $t9,$t9,0x4
/* f17e1bc: 01b96821 */ addu $t5,$t5,$t9
/* f17e1c0: 8dadee1c */ lw $t5,%lo(g_MenuStack+0xe1c)($t5)
/* f17e1c0: 8dadee1c */ lw $t5,%lo(g_Menus+0xe1c)($t5)
/* f17e1c4: 3c18800b */ lui $t8,%hi(g_MpSetup+0x28)
/* f17e1c8: 2718cbb0 */ addiu $t8,$t8,%lo(g_MpSetup+0x28)
/* f17e1cc: 000d7080 */ sll $t6,$t5,0x2
@@ -5154,10 +5154,10 @@ glabel func0f17e288
/* f17e2a8: 01cf1021 */ addu $v0,$t6,$t7
);
s32 menuhandlerMpTeamNameSlot(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpTeamNameSlot(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
g_MenuStack[g_MpPlayerNum].slotindex = item->param2 - 0x5608;
g_Menus[g_MpPlayerNum].data.mpsetup.slotindex = item->param2 - 0x5608;
menuPushDialog(&g_MpChangeTeamNameMenuDialog);
}
@@ -5173,7 +5173,7 @@ glabel func0f17e318
/* f17e328: 24045038 */ addiu $a0,$zero,0x5038
/* f17e32c: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f17e330: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f17e334: 3c04800a */ lui $a0,%hi(g_MenuStack+0xe1c)
/* f17e334: 3c04800a */ lui $a0,%hi(g_Menus+0xe1c)
/* f17e338: afa20018 */ sw $v0,0x18($sp)
/* f17e33c: 000e78c0 */ sll $t7,$t6,0x3
/* f17e340: 01ee7823 */ subu $t7,$t7,$t6
@@ -5184,7 +5184,7 @@ glabel func0f17e318
/* f17e354: 000f7900 */ sll $t7,$t7,0x4
/* f17e358: 008f2021 */ addu $a0,$a0,$t7
/* f17e35c: 0fc66dbe */ jal mpGetChallengeNameBySlot
/* f17e360: 8c84ee1c */ lw $a0,%lo(g_MenuStack+0xe1c)($a0)
/* f17e360: 8c84ee1c */ lw $a0,%lo(g_Menus+0xe1c)($a0)
/* f17e364: 3c048007 */ lui $a0,%hi(g_StringPointer)
/* f17e368: 8c841440 */ lw $a0,%lo(g_StringPointer)($a0)
/* f17e36c: 8fa50018 */ lw $a1,0x18($sp)
@@ -5200,12 +5200,12 @@ glabel func0f17e318
/**
* An "Accept" item somewhere. Probably accepting a challenge.
*/
s32 menuhandler0017e38c(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler0017e38c(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
mpClearCurrentChallenge();
menuPopDialog();
mpSetCurrentChallenge(g_MenuStack[g_MpPlayerNum].slotindex);
mpSetCurrentChallenge(g_Menus[g_MpPlayerNum].data.mpsetup.slotindex);
}
return 0;
@@ -5246,7 +5246,7 @@ glabel menudialog0017e3fc
/* f17e470: 8c460848 */ lw $a2,0x848($v0)
/* f17e474: 3c198007 */ lui $t9,%hi(g_MpPlayerNum)
/* f17e478: 8f391448 */ lw $t9,%lo(g_MpPlayerNum)($t9)
/* f17e47c: 3c01800a */ lui $at,%hi(g_MenuStack+0xe20)
/* f17e47c: 3c01800a */ lui $at,%hi(g_Menus+0xe20)
/* f17e480: 001940c0 */ sll $t0,$t9,0x3
/* f17e484: 01194023 */ subu $t0,$t0,$t9
/* f17e488: 00084080 */ sll $t0,$t0,0x2
@@ -5256,7 +5256,7 @@ glabel menudialog0017e3fc
/* f17e498: 00084100 */ sll $t0,$t0,0x4
/* f17e49c: 00280821 */ addu $at,$at,$t0
/* f17e4a0: 10000007 */ b .L0f17e4c0
/* f17e4a4: ac22ee20 */ sw $v0,%lo(g_MenuStack+0xe20)($at)
/* f17e4a4: ac22ee20 */ sw $v0,%lo(g_Menus+0xe20)($at)
.L0f17e4a8:
/* f17e4a8: 9129cc10 */ lbu $t1,%lo(g_MpSetup+0x88)($t1)
/* f17e4ac: 24010005 */ addiu $at,$zero,0x5
@@ -5365,7 +5365,7 @@ glabel var7f1b8288
.L0f17e568:
/* f17e568: 8d8c1448 */ lw $t4,%lo(g_MpPlayerNum)($t4)
/* f17e56c: 8ecb0000 */ lw $t3,0x0($s6)
/* f17e570: 3c01800a */ lui $at,%hi(g_MenuStack+0xe1c)
/* f17e570: 3c01800a */ lui $at,%hi(g_Menus+0xe1c)
/* f17e574: 000c68c0 */ sll $t5,$t4,0x3
/* f17e578: 01ac6823 */ subu $t5,$t5,$t4
/* f17e57c: 000d6880 */ sll $t5,$t5,0x2
@@ -5374,7 +5374,7 @@ glabel var7f1b8288
/* f17e588: 01ac6823 */ subu $t5,$t5,$t4
/* f17e58c: 000d6900 */ sll $t5,$t5,0x4
/* f17e590: 002d0821 */ addu $at,$at,$t5
/* f17e594: ac2bee1c */ sw $t3,%lo(g_MenuStack+0xe1c)($at)
/* f17e594: ac2bee1c */ sw $t3,%lo(g_Menus+0xe1c)($at)
/* f17e598: 90ae0001 */ lbu $t6,0x1($a1)
/* f17e59c: 3c048008 */ lui $a0,%hi(menudialog_2bfa8)
/* f17e5a0: 15c00005 */ bnez $t6,.L0f17e5b8
@@ -5664,7 +5664,7 @@ glabel var7f1b8288
* This is for a separator and fixed height thing in the dialog at:
* Combat Simulator > Advanced Setup > Challenges > pick one > Accept
*/
s32 menuhandler0017e9d8(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler0017e9d8(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKHIDDEN) {
if (g_MpSetupSaveFile.locktype != MPLOCKTYPE_CHALLENGE) {
@@ -5675,7 +5675,7 @@ s32 menuhandler0017e9d8(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
s32 menuhandlerMpAbortChallenge(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpAbortChallenge(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKHIDDEN) {
if (g_MpSetupSaveFile.locktype != MPLOCKTYPE_CHALLENGE) {
@@ -5690,7 +5690,7 @@ s32 menuhandlerMpAbortChallenge(u32 operation, struct menu_item *item, s32 *valu
return 0;
}
s32 menuhandlerMpStartChallenge(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpStartChallenge(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKHIDDEN) {
if (g_MpSetupSaveFile.locktype != MPLOCKTYPE_CHALLENGE) {
@@ -5704,7 +5704,7 @@ s32 menuhandlerMpStartChallenge(u32 operation, struct menu_item *item, s32 *valu
return 0;
}
char *mpMenuTextChallengeName(struct menu_item *item)
char *mpMenuTextChallengeName(struct menuitem *item)
{
if (g_MpSetupSaveFile.locktype != MPLOCKTYPE_CHALLENGE) {
return langGet(L_MPMENU(50)); // "Combat Challenges"
@@ -5729,7 +5729,7 @@ glabel menudialog0017eb34
/* f17eb5c: 55e10027 */ bnel $t7,$at,.L0f17ebfc
/* f17eb60: 8fad0018 */ lw $t5,0x18($sp)
/* f17eb64: 8f181448 */ lw $t8,%lo(g_MpPlayerNum)($t8)
/* f17eb68: 3c02800a */ lui $v0,%hi(g_MenuStack+0x4f8)
/* f17eb68: 3c02800a */ lui $v0,%hi(g_Menus+0x4f8)
/* f17eb6c: 0018c8c0 */ sll $t9,$t8,0x3
/* f17eb70: 0338c823 */ subu $t9,$t9,$t8
/* f17eb74: 0019c880 */ sll $t9,$t9,0x2
@@ -5738,7 +5738,7 @@ glabel menudialog0017eb34
/* f17eb80: 0338c823 */ subu $t9,$t9,$t8
/* f17eb84: 0019c900 */ sll $t9,$t9,0x4
/* f17eb88: 00591021 */ addu $v0,$v0,$t9
/* f17eb8c: 8c42e4f8 */ lw $v0,%lo(g_MenuStack+0x4f8)($v0)
/* f17eb8c: 8c42e4f8 */ lw $v0,%lo(g_Menus+0x4f8)($v0)
/* f17eb90: 5040001a */ beqzl $v0,.L0f17ebfc
/* f17eb94: 8fad0018 */ lw $t5,0x18($sp)
/* f17eb98: 8c480000 */ lw $t0,0x0($v0)
@@ -5773,7 +5773,7 @@ glabel menudialog0017eb34
/* f17ec04: 55a10013 */ bnel $t5,$at,.L0f17ec54
/* f17ec08: 8fbf0014 */ lw $ra,0x14($sp)
/* f17ec0c: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f17ec10: 3c18800a */ lui $t8,%hi(g_MenuStack+0x850)
/* f17ec10: 3c18800a */ lui $t8,%hi(g_Menus+0x850)
/* f17ec14: 3c014fac */ lui $at,0x4fac
/* f17ec18: 000e78c0 */ sll $t7,$t6,0x3
/* f17ec1c: 01ee7823 */ subu $t7,$t7,$t6
@@ -5783,7 +5783,7 @@ glabel menudialog0017eb34
/* f17ec2c: 01ee7823 */ subu $t7,$t7,$t6
/* f17ec30: 000f7900 */ sll $t7,$t7,0x4
/* f17ec34: 030fc021 */ addu $t8,$t8,$t7
/* f17ec38: 8f18e850 */ lw $t8,%lo(g_MenuStack+0x850)($t8)
/* f17ec38: 8f18e850 */ lw $t8,%lo(g_Menus+0x850)($t8)
/* f17ec3c: 34215ace */ ori $at,$at,0x5ace
/* f17ec40: 57010004 */ bnel $t8,$at,.L0f17ec54
/* f17ec44: 8fbf0014 */ lw $ra,0x14($sp)
@@ -5797,17 +5797,17 @@ glabel menudialog0017eb34
/* f17ec60: 00000000 */ nop
);
s32 menuhandler0017ec64(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler0017ec64(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
mpSetCurrentChallenge(g_MenuStack[g_MpPlayerNum].slotindex);
mpSetCurrentChallenge(g_Menus[g_MpPlayerNum].data.mpsetup.slotindex);
func0f0f820c(&g_MpQuickGoMenuDialog, 3);
}
return 0;
}
char *menuhandlerMpLock(u32 operation, struct menu_item *item, s32 *value)
char *menuhandlerMpLock(u32 operation, struct menuitem *item, s32 *value)
{
u16 labels[4] = mplockoptions;
@@ -5848,7 +5848,7 @@ char *menuhandlerMpLock(u32 operation, struct menu_item *item, s32 *value)
return NULL;
}
s32 menuhandlerMpSavePlayer(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpSavePlayer(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
if (g_MpPlayers[g_MpPlayerNum].saved == false) {
@@ -5861,7 +5861,7 @@ s32 menuhandlerMpSavePlayer(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
char *mpMenuTextSavePlayerOrCopy(struct menu_item *item)
char *mpMenuTextSavePlayerOrCopy(struct menuitem *item)
{
if (g_MpPlayers[g_MpPlayerNum].saved == false) {
return langGet(L_MPMENU(38)); // "Save Player"
@@ -5870,7 +5870,7 @@ char *mpMenuTextSavePlayerOrCopy(struct menu_item *item)
return langGet(L_MPMENU(39)); // "Save Copy of Player"
}
s32 menuhandler0017ef30(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler0017ef30(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
if (g_Vars.stagenum == STAGE_CITRAINING) {
@@ -5887,7 +5887,7 @@ s32 menuhandler0017ef30(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
s32 menuhandlerMpSaveSettings(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpSaveSettings(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
if (g_MpSetup.saved == false) {
@@ -5901,7 +5901,7 @@ s32 menuhandlerMpSaveSettings(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
char *mpMenuTextArenaName(struct menu_item *item)
char *mpMenuTextArenaName(struct menuitem *item)
{
s32 i;
@@ -5914,12 +5914,12 @@ char *mpMenuTextArenaName(struct menu_item *item)
return "\n";
}
char *mpMenuTextWeaponSetName(struct menu_item *item)
char *mpMenuTextWeaponSetName(struct menuitem *item)
{
return mpGetWeaponSetName(func0f18961c());
}
bool menudialogMpGameSetup(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogMpGameSetup(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_100) {
g_Vars.unk000490 = 1;
@@ -5929,7 +5929,7 @@ bool menudialogMpGameSetup(u32 operation, struct menu_dialog *dialog, struct men
return false;
}
bool menudialogMpQuickGo(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogMpQuickGo(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_100) {
g_Vars.unk000490 = 3;
@@ -6243,7 +6243,7 @@ glabel func0f17f428
/* f17f47c: 00000000 */ nop
);
s32 menuhandlerMpFinishedSetup(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpFinishedSetup(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKPREFOCUSED) {
return true;
@@ -6256,7 +6256,7 @@ s32 menuhandlerMpFinishedSetup(u32 operation, struct menu_item *item, s32 *value
return 0;
}
s32 menuhandlerQuickTeamSeparator(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerQuickTeamSeparator(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKHIDDEN) {
if (g_Vars.mpquickteam == MPQUICKTEAM_PLAYERSONLY) {
@@ -6345,7 +6345,7 @@ glabel var7f1b8310
);
// Mismatch because it calculates the address of g_MpSetup.teamnames differently
//s32 menuhandlerPlayerTeam(u32 operation, struct menu_item *item, s32 *value)
//s32 menuhandlerPlayerTeam(u32 operation, struct menuitem *item, s32 *value)
//{
// switch (operation) {
// case MENUOP_GETOPTIONCOUNT:
@@ -6369,7 +6369,7 @@ glabel var7f1b8310
// return 0;
//}
u32 menuhandlerMpNumberOfSimulants(u32 operation, struct menu_item *item, s32 *value)
u32 menuhandlerMpNumberOfSimulants(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_GETOPTIONCOUNT:
@@ -6398,7 +6398,7 @@ u32 menuhandlerMpNumberOfSimulants(u32 operation, struct menu_item *item, s32 *v
return 0;
}
u32 menuhandlerMpSimulantsPerTeam(u32 operation, struct menu_item *item, s32 *value)
u32 menuhandlerMpSimulantsPerTeam(u32 operation, struct menuitem *item, s32 *value)
{
switch (operation) {
case MENUOP_GETOPTIONCOUNT:
@@ -6566,7 +6566,7 @@ glabel var7f1b8430
/* f17f88c: 27bd0030 */ addiu $sp,$sp,0x30
);
s32 menuhandlerMpQuickTeamOption(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpQuickTeamOption(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
g_Vars.mpquickteam = item->param;
+17 -17
View File
@@ -73,7 +73,7 @@ const char var7f1b8878[] = "PopACapReset -> Done\n";
const char var7f1b8890[] = "PopACapTick : Current Victim = %d (Player %d)\n";
const char var7f1b88c0[] = "%d:%02d";
bool menudialogCombatSimulator(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogCombatSimulator(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_100) {
g_Vars.unk000494 = 0;
@@ -82,8 +82,8 @@ bool menudialogCombatSimulator(u32 operation, struct menu_dialog *dialog, struct
g_Vars.unk000497 = 0;
}
if (g_MenuStack[g_MpPlayerNum].curframe
&& g_MenuStack[g_MpPlayerNum].curframe->dialog == &g_CombatSimulatorMenuDialog
if (g_Menus[g_MpPlayerNum].curframe
&& g_Menus[g_MpPlayerNum].curframe->dialog == &g_CombatSimulatorMenuDialog
&& operation == MENUOP_102) {
g_Vars.unk000490 = 2;
g_Vars.mpquickteam = MPQUICKTEAM_5;
@@ -95,7 +95,7 @@ bool menudialogCombatSimulator(u32 operation, struct menu_dialog *dialog, struct
return false;
}
s32 menuhandlerMpAdvancedSetup(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpAdvancedSetup(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
func0f0f820c(&menudialog_mpgamesetup3, 3);
@@ -152,10 +152,10 @@ glabel func0f17fa28
/* f17fad0: 0018c0c0 */ sll $t8,$t8,0x3
/* f17fad4: 0302c023 */ subu $t8,$t8,$v0
/* f17fad8: 0018c100 */ sll $t8,$t8,0x4
/* f17fadc: 3c19800a */ lui $t9,%hi(g_MenuStack+0x4f8)
/* f17fadc: 3c19800a */ lui $t9,%hi(g_Menus+0x4f8)
/* f17fae0: afe20000 */ sw $v0,0x0($ra)
/* f17fae4: 0338c821 */ addu $t9,$t9,$t8
/* f17fae8: 8f39e4f8 */ lw $t9,%lo(g_MenuStack+0x4f8)($t9)
/* f17fae8: 8f39e4f8 */ lw $t9,%lo(g_Menus+0x4f8)($t9)
/* f17faec: 5320005f */ beqzl $t9,.L0f17fc6c
/* f17faf0: 24420001 */ addiu $v0,$v0,0x1
/* f17faf4: afa20044 */ sw $v0,0x44($sp)
@@ -291,16 +291,16 @@ glabel func0f17fa28
void func0f17fcb0(bool silent)
{
g_MenuStack[g_MpPlayerNum].playernum = g_MpPlayerNum;
g_Menus[g_MpPlayerNum].playernum = g_MpPlayerNum;
if (g_Is4Mb == true) {
menuPushRootDialog(&g_4MbAdvancedSetupMenuDialog, MENUROOT_4MBMAINMENU);
func0f0f8300();
} else {
if (g_MpSetupSaveFile.locktype == MPLOCKTYPE_CHALLENGE) {
menuPushRootDialog(&menudialog_mpchallengedetails2, MENUROOT_COMBATSIM);
menuPushRootDialog(&menudialog_mpchallengedetails2, MENUROOT_MPSETUP);
} else {
menuPushRootDialog(&menudialog_mpgamesetup3, MENUROOT_COMBATSIM);
menuPushRootDialog(&menudialog_mpgamesetup3, MENUROOT_MPSETUP);
}
func0f0f8300();
@@ -312,7 +312,7 @@ void func0f17fcb0(bool silent)
}
}
s32 menuhandlerMpDisplayTeam(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpDisplayTeam(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKDISABLED) {
if (g_MpSetup.options & MPOPTION_TEAMSENABLED) {
@@ -325,7 +325,7 @@ s32 menuhandlerMpDisplayTeam(u32 operation, struct menu_item *item, s32 *value)
return menuhandlerMpCheckboxOption(operation, item, value);
}
s32 menuhandlerMpOneHitKills(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpOneHitKills(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_CHECKDISABLED || operation == MENUOP_CHECKHIDDEN) {
if (mpIsChallengeComplete(CHALLENGE_7)) {
@@ -1769,7 +1769,7 @@ glabel scenarioCtcCallback38
/* f181a94: 00000000 */ nop
);
s32 menuhandlerMpHillTime(u32 operation, struct menu_item *item, struct numandtext *value)
s32 menuhandlerMpHillTime(u32 operation, struct menuitem *item, struct numandtext *value)
{
switch (operation) {
case MENUOP_GETSLIDER:
@@ -5130,10 +5130,10 @@ glabel menudialog00184ec0
/* f184ef8: 000f78c0 */ sll $t7,$t7,0x3
/* f184efc: 01ee7823 */ subu $t7,$t7,$t6
/* f184f00: 000f7900 */ sll $t7,$t7,0x4
/* f184f04: 3c18800a */ lui $t8,%hi(g_MenuStack+0x4f8)
/* f184f04: 3c18800a */ lui $t8,%hi(g_Menus+0x4f8)
/* f184f08: 030fc021 */ addu $t8,$t8,$t7
/* f184f0c: 001940c0 */ sll $t0,$t9,0x3
/* f184f10: 8f18e4f8 */ lw $t8,%lo(g_MenuStack+0x4f8)($t8)
/* f184f10: 8f18e4f8 */ lw $t8,%lo(g_Menus+0x4f8)($t8)
/* f184f14: 3c098008 */ lui $t1,%hi(g_MpScenarios)
/* f184f18: 01194021 */ addu $t0,$t0,$t9
/* f184f1c: 000840c0 */ sll $t0,$t0,0x3
@@ -5179,13 +5179,13 @@ glabel menudialog00184ec0
/* f184fac: 00000000 */ nop
);
char *mpMenuTextScenarioShortName(struct menu_item *item)
char *mpMenuTextScenarioShortName(struct menuitem *item)
{
sprintf(g_StringPointer, "%s\n", langGet(g_MpScenarioOverviews[g_MpSetup.scenario].shortname));
return g_StringPointer;
}
char *mpMenuTextScenarioName(struct menu_item *item)
char *mpMenuTextScenarioName(struct menuitem *item)
{
sprintf(g_StringPointer, "%s\n", langGet(g_MpScenarioOverviews[g_MpSetup.scenario].name));
return g_StringPointer;
@@ -5437,7 +5437,7 @@ glabel var7f1b897c
/* f18537c: 27bd0050 */ addiu $sp,$sp,0x50
);
s32 menuhandlerMpOpenOptions(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerMpOpenOptions(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
menuPushDialog(g_MpScenarios[g_MpSetup.scenario].optionsdialog);
+2 -2
View File
@@ -2948,7 +2948,7 @@ glabel func0f19f524
/* f19f8b8: 00001025 */ or $v0,$zero,$zero
.L0f19f8bc:
/* f19f8bc: 14400014 */ bnez $v0,.L0f19f910
/* f19f8c0: 3c0f800a */ lui $t7,%hi(g_MenuStack+0x2220)
/* f19f8c0: 3c0f800a */ lui $t7,%hi(g_Menus+0x2220)
/* f19f8c4: 8fa402bc */ lw $a0,0x2bc($sp)
/* f19f8c8: 0fc2a685 */ jal weaponGetAmmoType
/* f19f8cc: 00002825 */ or $a1,$zero,$zero
@@ -2961,7 +2961,7 @@ glabel func0f19f524
/* f19f8e8: 8faf0034 */ lw $t7,0x34($sp)
/* f19f8ec: 2419012c */ addiu $t9,$zero,0x12c
/* f19f8f0: 3c01800b */ lui $at,%hi(g_FiringRangeData+0x474)
/* f19f8f4: 8df80220 */ lw $t8,%lo(g_MenuStack+0x2220)($t7)
/* f19f8f4: 8df80220 */ lw $t8,%lo(g_Menus+0x2220)($t7)
/* f19f8f8: 03027021 */ addu $t6,$t8,$v0
/* f19f8fc: 15c00002 */ bnez $t6,.L0f19f908
/* f19f900: 00000000 */ nop
+42 -42
View File
@@ -36,7 +36,7 @@
const char var7f1b97d0[] = "\n";
const char var7f1b97d4[] = "\n";
s32 frDetailsOkMenuHandler(u32 operation, struct menu_item *item, s32 *value)
s32 frDetailsOkMenuHandler(u32 operation, struct menuitem *item, s32 *value)
{
s32 i;
@@ -78,7 +78,7 @@ s32 frDetailsOkMenuHandler(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
s32 menuhandler001a3448(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler001a3448(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
if (frIsInTraining()) {
@@ -499,7 +499,7 @@ glabel var7f1b9944
/* f1a39e4: 00402025 */ or $a0,$v0,$zero
/* f1a39e8: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum)
/* f1a39ec: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6)
/* f1a39f0: 3c01800a */ lui $at,%hi(g_MenuStack+0xe28)
/* f1a39f0: 3c01800a */ lui $at,%hi(g_Menus+0xe28)
/* f1a39f4: afa20018 */ sw $v0,0x18($sp)
/* f1a39f8: 000e78c0 */ sll $t7,$t6,0x3
/* f1a39fc: 01ee7823 */ subu $t7,$t7,$t6
@@ -509,7 +509,7 @@ glabel var7f1b9944
/* f1a3a0c: 01ee7823 */ subu $t7,$t7,$t6
/* f1a3a10: 000f7900 */ sll $t7,$t7,0x4
/* f1a3a14: 002f0821 */ addu $at,$at,$t7
/* f1a3a18: ac22ee28 */ sw $v0,%lo(g_MenuStack+0xe28)($at)
/* f1a3a18: ac22ee28 */ sw $v0,%lo(g_Menus+0xe28)($at)
/* f1a3a1c: 0fc41652 */ jal func0f105948
/* f1a3a20: 00402025 */ or $a0,$v0,$zero
/* f1a3a24: 0fc6830c */ jal frIsInTraining
@@ -763,7 +763,7 @@ glabel menuhandlerFrDifficulty
/* f1a3d94: 00000000 */ nop
);
char *frMenuTextFailReason(struct menu_item *item)
char *frMenuTextFailReason(struct menuitem *item)
{
u16 reasons[5] = g_FiringRangeFailReasons;
struct frdata *frdata = getFiringRangeData();
@@ -771,7 +771,7 @@ char *frMenuTextFailReason(struct menu_item *item)
return langGet(reasons[frdata->failreason]);
}
char *frMenuTextDifficultyName(struct menu_item *item)
char *frMenuTextDifficultyName(struct menuitem *item)
{
u16 names[3] = g_FiringRangeDifficultyNames;
@@ -780,7 +780,7 @@ char *frMenuTextDifficultyName(struct menu_item *item)
return langGet(names[frdata->difficulty]);
}
char *frMenuTextTimeTakenValue(struct menu_item *item)
char *frMenuTextTimeTakenValue(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
f32 secs = frdata->timetaken / 60.0f;
@@ -806,7 +806,7 @@ char *frMenuTextTimeTakenValue(struct menu_item *item)
return g_StringPointer;
}
char *frMenuTextScoreValue(struct menu_item *item)
char *frMenuTextScoreValue(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -814,19 +814,19 @@ char *frMenuTextScoreValue(struct menu_item *item)
return g_StringPointer;
}
char *frMenuTextGoalScoreValueUnconditional(struct menu_item *item)
char *frMenuTextGoalScoreValueUnconditional(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
sprintf(g_StringPointer, "%d\n", frdata->goalscore);
return g_StringPointer;
}
char *frMenuTextWeaponName(struct menu_item *item)
char *frMenuTextWeaponName(struct menuitem *item)
{
return weaponGetName(frGetWeaponBySlot(frGetSlot()));
}
char *frMenuTextTargetsDestroyedValue(struct menu_item *item)
char *frMenuTextTargetsDestroyedValue(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -834,7 +834,7 @@ char *frMenuTextTargetsDestroyedValue(struct menu_item *item)
return g_StringPointer;
}
char *frMenuTextAccuracyValue(struct menu_item *item)
char *frMenuTextAccuracyValue(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
f32 totalhits = (frdata->numhitstype4 + frdata->numhitstype1 + frdata->numhitstype2 + frdata->numhitstype3) * 100.0f;
@@ -852,7 +852,7 @@ char *frMenuTextAccuracyValue(struct menu_item *item)
return g_StringPointer;
}
char *frMenuTextGoalScoreLabel(struct menu_item *item)
char *frMenuTextGoalScoreLabel(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -864,7 +864,7 @@ char *frMenuTextGoalScoreLabel(struct menu_item *item)
return NULL;
}
char *frMenuTextGoalScoreValue(struct menu_item *item)
char *frMenuTextGoalScoreValue(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -876,7 +876,7 @@ char *frMenuTextGoalScoreValue(struct menu_item *item)
return NULL;
}
char *frMenuTextMinAccuracyOrTargetsLabel(struct menu_item *item)
char *frMenuTextMinAccuracyOrTargetsLabel(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -891,7 +891,7 @@ char *frMenuTextMinAccuracyOrTargetsLabel(struct menu_item *item)
return g_StringPointer;
}
char *frMenuTextMinAccuracyOrTargetsValue(struct menu_item *item)
char *frMenuTextMinAccuracyOrTargetsValue(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -906,7 +906,7 @@ char *frMenuTextMinAccuracyOrTargetsValue(struct menu_item *item)
return g_StringPointer2;
}
char *frMenuTextTimeLimitLabel(struct menu_item *item)
char *frMenuTextTimeLimitLabel(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -919,7 +919,7 @@ char *frMenuTextTimeLimitLabel(struct menu_item *item)
return g_StringPointer;
}
char *frMenuTextTimeLimitValue(struct menu_item *item)
char *frMenuTextTimeLimitValue(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -944,7 +944,7 @@ char *frMenuTextTimeLimitValue(struct menu_item *item)
return g_StringPointer2;
}
char *frMenuTextAmmoLimitLabel(struct menu_item *item)
char *frMenuTextAmmoLimitLabel(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
@@ -957,7 +957,7 @@ char *frMenuTextAmmoLimitLabel(struct menu_item *item)
return g_StringPointer;
}
char *frMenuTextAmmoLimitValue(struct menu_item *item)
char *frMenuTextAmmoLimitValue(struct menuitem *item)
{
struct frdata *frdata = getFiringRangeData();
char suffix[16];
@@ -2587,7 +2587,7 @@ glabel menuhandler001a44c0
/* f1a5d58: 00000000 */ nop
);
s32 menuhandlerFrFailedContinue(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerFrFailedContinue(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
if (g_Vars.currentplayer->prop->rooms[0] == 0xa) {
@@ -2981,7 +2981,7 @@ const char var7f1b9894[] = "%d\n";
const char var7f1b9898[] = "%d\n";
const char var7f1b989c[] = "%d\n";
char *ciMenuTextBioName(struct menu_item *item)
char *ciMenuTextBioName(struct menuitem *item)
{
struct chrbio *bio = ciGetChrBioByBodynum(ciGetChrBioIndexBySlot(var800888a0));
sprintf(g_StringPointer, "%s\n", langGet(bio->name));
@@ -2989,7 +2989,7 @@ char *ciMenuTextBioName(struct menu_item *item)
return g_StringPointer;
}
char *ciMenuTextBioAge(struct menu_item *item)
char *ciMenuTextBioAge(struct menuitem *item)
{
struct chrbio *bio = ciGetChrBioByBodynum(ciGetChrBioIndexBySlot(var800888a0));
sprintf(g_StringPointer, "%s\n", langGet(bio->age));
@@ -2997,7 +2997,7 @@ char *ciMenuTextBioAge(struct menu_item *item)
return g_StringPointer;
}
char *ciMenuTextBioRace(struct menu_item *item)
char *ciMenuTextBioRace(struct menuitem *item)
{
struct chrbio *bio = ciGetChrBioByBodynum(ciGetChrBioIndexBySlot(var800888a0));
sprintf(g_StringPointer, "%s\n", langGet(bio->race));
@@ -3120,7 +3120,7 @@ glabel func0f1a64a0
/* f1a64d4: 00000000 */ nop
);
s32 menuhandlerDtOkOrResume(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandlerDtOkOrResume(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
// @bug: dtBegin() should not be called if training is already in
@@ -3132,7 +3132,7 @@ s32 menuhandlerDtOkOrResume(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
s32 menuhandler001a6514(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler001a6514(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
dtEnd();
@@ -3179,7 +3179,7 @@ glabel var7f1b9998
/* f1a65b8: 3c088007 */ lui $t0,%hi(g_MpPlayerNum)
/* f1a65bc: 8d081448 */ lw $t0,%lo(g_MpPlayerNum)($t0)
/* f1a65c0: 8fa40034 */ lw $a0,0x34($sp)
/* f1a65c4: 3c01800a */ lui $at,%hi(g_MenuStack+0xe28)
/* f1a65c4: 3c01800a */ lui $at,%hi(g_Menus+0xe28)
/* f1a65c8: 000848c0 */ sll $t1,$t0,0x3
/* f1a65cc: 01284823 */ subu $t1,$t1,$t0
/* f1a65d0: 00094880 */ sll $t1,$t1,0x2
@@ -3189,7 +3189,7 @@ glabel var7f1b9998
/* f1a65e0: 00094900 */ sll $t1,$t1,0x4
/* f1a65e4: 00290821 */ addu $at,$at,$t1
/* f1a65e8: 0fc41652 */ jal func0f105948
/* f1a65ec: ac24ee28 */ sw $a0,%lo(g_MenuStack+0xe28)($at)
/* f1a65ec: ac24ee28 */ sw $a0,%lo(g_Menus+0xe28)($at)
/* f1a65f0: 0fc54bc7 */ jal optionsGetScreenRatio
/* f1a65f4: 00000000 */ nop
/* f1a65f8: 24010001 */ addiu $at,$zero,0x1
@@ -3238,7 +3238,7 @@ glabel var7f1b9998
.L0f1a669c:
/* f1a669c: 3c0f8007 */ lui $t7,%hi(g_MpPlayerNum)
/* f1a66a0: 8def1448 */ lw $t7,%lo(g_MpPlayerNum)($t7)
/* f1a66a4: 3c02800a */ lui $v0,%hi(g_MenuStack+0x4f8)
/* f1a66a4: 3c02800a */ lui $v0,%hi(g_Menus+0x4f8)
/* f1a66a8: 000fc8c0 */ sll $t9,$t7,0x3
/* f1a66ac: 032fc823 */ subu $t9,$t9,$t7
/* f1a66b0: 0019c880 */ sll $t9,$t9,0x2
@@ -3247,7 +3247,7 @@ glabel var7f1b9998
/* f1a66bc: 032fc823 */ subu $t9,$t9,$t7
/* f1a66c0: 0019c900 */ sll $t9,$t9,0x4
/* f1a66c4: 00591021 */ addu $v0,$v0,$t9
/* f1a66c8: 8c42e4f8 */ lw $v0,%lo(g_MenuStack+0x4f8)($v0)
/* f1a66c8: 8c42e4f8 */ lw $v0,%lo(g_Menus+0x4f8)($v0)
/* f1a66cc: 50400034 */ beqzl $v0,.L0f1a67a0
/* f1a66d0: 8fbf0014 */ lw $ra,0x14($sp)
/* f1a66d4: 8c480000 */ lw $t0,0x0($v0)
@@ -3310,7 +3310,7 @@ glabel var7f1b9998
/* f1a67ac: 00000000 */ nop
);
char *dtMenuTextOkOrResume(struct menu_item *item)
char *dtMenuTextOkOrResume(struct menuitem *item)
{
struct trainingdata *data = getDeviceTrainingData();
@@ -3321,7 +3321,7 @@ char *dtMenuTextOkOrResume(struct menu_item *item)
return langGet(L_MPMENU(427)); // "Ok"
}
char *dtMenuTextCancelOrAbort(struct menu_item *item)
char *dtMenuTextCancelOrAbort(struct menuitem *item)
{
struct trainingdata *data = getDeviceTrainingData();
@@ -3334,7 +3334,7 @@ char *dtMenuTextCancelOrAbort(struct menu_item *item)
const char var7f1b98ac[] = "%s\n";
char *dtMenuTextTimeTakenValue(struct menu_item *item)
char *dtMenuTextTimeTakenValue(struct menuitem *item)
{
struct trainingdata *data = getDeviceTrainingData();
f32 secs = data->timetaken / 60.0f;
@@ -3356,7 +3356,7 @@ char *dtMenuTextTimeTakenValue(struct menu_item *item)
return g_StringPointer;
}
bool menudialogDeviceTrainingResults(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogDeviceTrainingResults(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_101) {
chrSetStageFlag(NULL, 0x08000000);
@@ -3449,7 +3449,7 @@ glabel func0f1a6a04
/* f1a6a30: 00000000 */ nop
);
s32 menuhandler001a6a34(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler001a6a34(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
htBegin();
@@ -3459,7 +3459,7 @@ s32 menuhandler001a6a34(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
s32 menuhandler001a6a70(u32 operation, struct menu_item *item, s32 *value)
s32 menuhandler001a6a70(u32 operation, struct menuitem *item, s32 *value)
{
if (operation == MENUOP_SET) {
htEnd();
@@ -3468,7 +3468,7 @@ s32 menuhandler001a6a70(u32 operation, struct menu_item *item, s32 *value)
return 0;
}
bool menudialog001a6aa4(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialog001a6aa4(u32 operation, struct menudialog *dialog, struct menu *menu)
{
switch (operation) {
case MENUOP_100:
@@ -3481,7 +3481,7 @@ bool menudialog001a6aa4(u32 operation, struct menu_dialog *dialog, struct menust
return false;
}
char *htMenuTextOkOrResume(struct menu_item *item)
char *htMenuTextOkOrResume(struct menuitem *item)
{
struct trainingdata *data = getHoloTrainingData();
@@ -3492,7 +3492,7 @@ char *htMenuTextOkOrResume(struct menu_item *item)
return langGet(L_MPMENU(427)); // "Ok"
}
char *htMenuTextCancelOrAbort(struct menu_item *item)
char *htMenuTextCancelOrAbort(struct menuitem *item)
{
struct trainingdata *data = getHoloTrainingData();
@@ -3503,7 +3503,7 @@ char *htMenuTextCancelOrAbort(struct menu_item *item)
return langGet(L_MPMENU(429)); // "Cancel"
}
char *htMenuTextTimeTakenValue(struct menu_item *item)
char *htMenuTextTimeTakenValue(struct menuitem *item)
{
struct trainingdata *data = getHoloTrainingData();
f32 secs = data->timetaken / 60.0f;
@@ -3525,7 +3525,7 @@ char *htMenuTextTimeTakenValue(struct menu_item *item)
return g_StringPointer;
}
bool menudialogFiringRangeResults(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem)
bool menudialogFiringRangeResults(u32 operation, struct menudialog *dialog, struct menu *menu)
{
if (operation == MENUOP_101) {
chrSetStageFlag(NULL, 0x08000000);
@@ -4161,7 +4161,7 @@ glabel var7f1b99d8
/* f1a7550: 00000000 */ nop
);
struct menu_dialog *ciGetFrWeaponListMenuDialog(void)
struct menudialog *ciGetFrWeaponListMenuDialog(void)
{
return &g_FrWeaponListMenuDialog;
}
+5 -5
View File
@@ -2266,7 +2266,7 @@ bool mpIsPaused(void)
{
if (PLAYERCOUNT() == 1
&& g_Vars.mplayerisrunning
&& g_MenuStack[g_Vars.currentplayerstats->mpindex].curframe) {
&& g_Menus[g_Vars.currentplayerstats->mpindex].curframe) {
return true;
}
@@ -2333,7 +2333,7 @@ glabel func0f18973c
/* f1897f0: 03284821 */ addu $t1,$t9,$t0
/* f1897f4: afa90094 */ sw $t1,0x94($sp)
/* f1897f8: 8d4b0070 */ lw $t3,0x70($t2)
/* f1897fc: 3c0d800a */ lui $t5,%hi(g_MenuStack+0x4f8)
/* f1897fc: 3c0d800a */ lui $t5,%hi(g_Menus+0x4f8)
/* f189800: 000b60c0 */ sll $t4,$t3,0x3
/* f189804: 018b6023 */ subu $t4,$t4,$t3
/* f189808: 000c6080 */ sll $t4,$t4,0x2
@@ -2342,7 +2342,7 @@ glabel func0f18973c
/* f189814: 018b6023 */ subu $t4,$t4,$t3
/* f189818: 000c6100 */ sll $t4,$t4,0x4
/* f18981c: 01ac6821 */ addu $t5,$t5,$t4
/* f189820: 8dade4f8 */ lw $t5,%lo(g_MenuStack+0x4f8)($t5)
/* f189820: 8dade4f8 */ lw $t5,%lo(g_Menus+0x4f8)($t5)
/* f189824: 11a00006 */ beqz $t5,.L0f189840
/* f189828: 00000000 */ nop
/* f18982c: 0c002f44 */ jal viGetViewTop
@@ -2636,7 +2636,7 @@ glabel func0f18973c
/* f189c70: 3c0f800a */ lui $t7,%hi(g_Vars+0x288)
/* f189c74: 8defa248 */ lw $t7,%lo(g_Vars+0x288)($t7)
/* f189c78: afa200a0 */ sw $v0,0xa0($sp)
/* f189c7c: 3c01800a */ lui $at,%hi(g_MenuStack+0x83c)
/* f189c7c: 3c01800a */ lui $at,%hi(g_Menus+0x83c)
/* f189c80: 8df90070 */ lw $t9,0x70($t7)
/* f189c84: 2418000a */ addiu $t8,$zero,0xa
/* f189c88: 001940c0 */ sll $t0,$t9,0x3
@@ -2647,7 +2647,7 @@ glabel func0f18973c
/* f189c9c: 01194023 */ subu $t0,$t0,$t9
/* f189ca0: 00084100 */ sll $t0,$t0,0x4
/* f189ca4: 00280821 */ addu $at,$at,$t0
/* f189ca8: a038e83c */ sb $t8,%lo(g_MenuStack+0x83c)($at)
/* f189ca8: a038e83c */ sb $t8,%lo(g_Menus+0x83c)($at)
.L0f189cac:
/* f189cac: 8fbf0034 */ lw $ra,0x34($sp)
.L0f189cb0:
+6 -6
View File
@@ -229,19 +229,19 @@ s32 optionsGetEffectiveScreenSize(void)
if (g_MenuData.root == MENUROOT_TRAINING) {
g_MpPlayerNum = 0;
if (g_MenuStack[g_MpPlayerNum].curframe && var8009dfc0) {
if (g_Menus[g_MpPlayerNum].curframe && var8009dfc0) {
return SCREENSIZE_FULL;
}
}
if (g_MenuStack[g_MpPlayerNum].curframe && (
g_MenuStack[g_MpPlayerNum].curframe->dialog == &menudialog_control4 ||
g_MenuStack[g_MpPlayerNum].curframe->dialog == &menudialog_control3 ||
g_MenuStack[g_MpPlayerNum].curframe->dialog == &g_ControlStyleSingleMenuDialog)) {
if (g_Menus[g_MpPlayerNum].curframe && (
g_Menus[g_MpPlayerNum].curframe->dialog == &menudialog_control4 ||
g_Menus[g_MpPlayerNum].curframe->dialog == &menudialog_control3 ||
g_Menus[g_MpPlayerNum].curframe->dialog == &g_ControlStyleSingleMenuDialog)) {
return SCREENSIZE_FULL;
}
if (PLAYERCOUNT() >= 2 || g_MenuData.root == MENUROOT_COMBATSIM) {
if (PLAYERCOUNT() >= 2 || g_MenuData.root == MENUROOT_MPSETUP) {
return SCREENSIZE_FULL;
}
+1 -1
View File
@@ -37070,7 +37070,7 @@ bool propobjInteract(struct prop *prop)
func0f0f85e0(&menudialog_weaponsavailable, MENUROOT_TRAINING);
} else if (tag_id == 0x47) {
handled = true;
func0f0f85e0(&g_MainMenuMenuDialog, MENUROOT_SOLOPAUSE);
func0f0f85e0(&g_MainMenuMenuDialog, MENUROOT_MAINMENU);
} else if (tag_id == 0x46) {
handled = true;
func0f0f85e0(&menudialog_hangarinformation, MENUROOT_TRAINING);
+2 -2
View File
@@ -1682,11 +1682,11 @@ glabel var7f1b5d6c
/* f13f660: 00002025 */ or $a0,$zero,$zero
.L0f13f664:
/* f13f664: 12400005 */ beqz $s2,.L0f13f67c
/* f13f668: 3c02800a */ lui $v0,%hi(g_MenuStack+0x1fff)
/* f13f668: 3c02800a */ lui $v0,%hi(g_Menus+0x1fff)
/* f13f66c: 3c02800a */ lui $v0,%hi(var8009cc60)
/* f13f670: 8c42cc60 */ lw $v0,%lo(var8009cc60)($v0)
/* f13f674: 10000003 */ b .L0f13f684
/* f13f678: 2442ffff */ addiu $v0,$v0,%lo(g_MenuStack+0x1fff)
/* f13f678: 2442ffff */ addiu $v0,$v0,%lo(g_Menus+0x1fff)
.L0f13f67c:
/* f13f67c: 8c42cc68 */ lw $v0,-0x3398($v0)
/* f13f680: 2442ffff */ addiu $v0,$v0,-1
+1 -1
View File
@@ -16109,7 +16109,7 @@ struct briefing g_Briefing = {0};
u16 var8009dfe0[2] = {0};
u32 var8009dfe4 = 0;
struct missionconfig g_MissionConfig = {0};
struct menustackitem g_MenuStack[4] = {0, 0, 0, 0};
struct menu g_Menus[4] = {0, 0, 0, 0};
struct menudata g_MenuData = {0};
u32 var800a2030 = 0;
u32 var800a2034 = 0;
+11 -11
View File
@@ -1001,17 +1001,17 @@
#define MENUOP_101 101
#define MENUOP_102 102
#define MENUROOT_SOLOENDSCREEN 1
#define MENUROOT_SOLOPAUSE 2
#define MENUROOT_COMBATSIM 3
#define MENUROOT_MPPAUSE 4
#define MENUROOT_MPENDSCREEN 5
#define MENUROOT_FILESELECT 6
#define MENUROOT_BOOTPAKMGR 7
#define MENUROOT_9 9
#define MENUROOT_10 10
#define MENUROOT_4MBMAINMENU 11
#define MENUROOT_TRAINING 13
#define MENUROOT_ENDSCREEN 1
#define MENUROOT_MAINMENU 2
#define MENUROOT_MPSETUP 3
#define MENUROOT_MPPAUSE 4
#define MENUROOT_MPENDSCREEN 5
#define MENUROOT_FILESELECT 6
#define MENUROOT_BOOTPAKMGR 7
#define MENUROOT_9 9
#define MENUROOT_10 10
#define MENUROOT_4MBMAINMENU 11
#define MENUROOT_TRAINING 13
#define MISCBIO_MAIANS 0
#define MISCBIO_SKEDAR 1
+6 -6
View File
@@ -3,7 +3,7 @@
#include <ultra64.h>
#include "types.h"
extern struct menu_dialog g_CheatsMenuDialog;
extern struct menudialog g_CheatsMenuDialog;
u32 cheatIsUnlocked(s32 cheat_id);
bool cheatIsActive(s32 cheat_id);
@@ -11,15 +11,15 @@ void cheatActivate(s32 cheat_id);
void cheatDeactivate(s32 cheat_id);
void cheatsDisableAll(void);
void cheatsActivate(void);
char *cheatGetNameIfUnlocked(struct menu_item *item);
char *cheatGetMarquee(struct menu_item *item);
char *cheatGetNameIfUnlocked(struct menuitem *item);
char *cheatGetMarquee(struct menuitem *item);
s32 cheatGetByTimedStageIndex(s32 stage_index, s32 difficulty);
s32 cheatGetByCompletedStageIndex(s32 stage_index);
s32 cheatGetTime(s32 cheat_id);
char *cheatGetName(s32 cheat_id);
bool cheatMenuHandleDialog(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
s32 cheatMenuHandleCheatCheckbox(u32 arg0, struct menu_item *item, s32 arg2);
s32 cheatMenuHandleBuddyCheckbox(s32 arg0, struct menu_item *item, s32 arg2);
bool cheatMenuHandleDialog(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 cheatMenuHandleCheatCheckbox(u32 arg0, struct menuitem *item, s32 arg2);
s32 cheatMenuHandleBuddyCheckbox(s32 arg0, struct menuitem *item, s32 arg2);
bool cheatMenuHandleTurnOffAllCheats(u32 arg0, u32 arg1, u32 *arg2);
#endif
+53 -53
View File
@@ -2,8 +2,8 @@
#define IN_GAME_DATA_0160B0_H
#include <ultra64.h>
extern struct menu_dialog menudialog_18d78;
extern struct menu_dialog menudialog_18d90;
extern struct menudialog menudialog_18d78;
extern struct menudialog menudialog_18d90;
extern u32 var80070090;
extern u32 var80070098;
@@ -165,16 +165,16 @@ extern u32 var800714e0;
extern u32 var800714ec;
extern u32 var800714f0;
extern u32 var800714f4;
extern struct menu_dialog menudialog_pakremoved;
extern struct menu_dialog g_PakRepairSuccessMenuDialog;
extern struct menu_dialog g_PakRepairFailedMenuDialog;
extern struct menu_dialog g_PakAttemptRepairMenuDialog;
extern struct menudialog menudialog_pakremoved;
extern struct menudialog g_PakRepairSuccessMenuDialog;
extern struct menudialog g_PakRepairFailedMenuDialog;
extern struct menudialog g_PakAttemptRepairMenuDialog;
extern u16 savelocations[];
extern struct menu_dialog menudialog_damagedcontrollerpak;
extern struct menu_dialog menudialog_fullcontrollerpak;
extern struct menu_dialog menudialog_cannotreadgameboy;
extern struct menu_dialog menudialog_datalost;
extern struct menu_dialog menudialog_picktarget;
extern struct menudialog menudialog_damagedcontrollerpak;
extern struct menudialog menudialog_fullcontrollerpak;
extern struct menudialog menudialog_cannotreadgameboy;
extern struct menudialog menudialog_datalost;
extern struct menudialog menudialog_picktarget;
extern u32 var800719a0;
extern u32 var800719ac;
extern u32 var800719b0;
@@ -188,55 +188,55 @@ extern u16 g_SoundModeOptions[];
extern u16 g_ScreenSizeOptions[];
extern u16 g_ScreenRatioOptions[];
extern u16 g_ScreenSplitOptions[];
extern struct menu_dialog menudialog_briefing;
extern struct menu_dialog menudialog_changeagent;
extern struct menu_dialog g_ObjectivesMenuDialog;
extern struct menu_dialog g_PdModeSettingsDialog;
extern struct menu_dialog menudialog_selectdifficulty;
extern struct menu_dialog g_CoopOptionsMenuDialog;
extern struct menu_dialog g_AntiOptionsMenuDialog;
extern struct menu_dialog menudialog_selectdifficulty2;
extern struct menu_dialog menudialog_selectdifficulty3;
extern struct menudialog menudialog_briefing;
extern struct menudialog menudialog_changeagent;
extern struct menudialog g_ObjectivesMenuDialog;
extern struct menudialog g_PdModeSettingsDialog;
extern struct menudialog menudialog_selectdifficulty;
extern struct menudialog g_CoopOptionsMenuDialog;
extern struct menudialog g_AntiOptionsMenuDialog;
extern struct menudialog menudialog_selectdifficulty2;
extern struct menudialog menudialog_selectdifficulty3;
extern struct stageoverviewentry g_StageNames[NUM_SOLOSTAGES];
extern struct mission missions[];
extern struct menu_dialog g_ControlStyleMultiMenuDialog;
extern struct menu_dialog g_ControlStyleSingleMenuDialog;
extern struct menu_dialog menudialog_control3;
extern struct menu_dialog menudialog_control4;
extern struct menudialog g_ControlStyleMultiMenuDialog;
extern struct menudialog g_ControlStyleSingleMenuDialog;
extern struct menudialog menudialog_control3;
extern struct menudialog menudialog_control4;
extern u32 var80072d8c;
extern u8 g_CassNecklaceUsername[10];
extern u8 g_CassNecklacePassword[14];
extern struct menu_dialog menudialog_weaponsavailable;
extern struct menu_dialog g_SoloAbortMenuDialog;
extern struct menu_dialog g_SoloPauseMenuDialog;
extern struct menu_dialog menudialog_audiooptions;
extern struct menu_dialog menudialog_audiooptionsshort;
extern struct menu_dialog menudialog_videooptions;
extern struct menu_dialog menudialog_videooptionsshort;
extern struct menu_dialog menudialog_controloptions;
extern struct menu_dialog menudialog_displayoptions;
extern struct menu_dialog menudialog_displayoptionsshort;
extern struct menu_dialog menudialog_displayoptions_2pplayer1;
extern struct menu_dialog menudialog_18028;
extern struct menu_dialog menudialog_18040;
extern struct menu_dialog menudialog_18058;
extern struct menu_dialog menudialog_18aa8;
extern struct menu_dialog menudialog_189dc;
extern struct menu_item menuitems_18c18[];
extern struct menu_dialog menudialog_18d30;
extern struct menu_dialog menudialog_19534;
extern struct menu_dialog menudialog_196c8;
extern struct menu_dialog menudialog_status;
extern struct menudialog menudialog_weaponsavailable;
extern struct menudialog g_SoloAbortMenuDialog;
extern struct menudialog g_SoloPauseMenuDialog;
extern struct menudialog menudialog_audiooptions;
extern struct menudialog menudialog_audiooptionsshort;
extern struct menudialog menudialog_videooptions;
extern struct menudialog menudialog_videooptionsshort;
extern struct menudialog menudialog_controloptions;
extern struct menudialog menudialog_displayoptions;
extern struct menudialog menudialog_displayoptionsshort;
extern struct menudialog menudialog_displayoptions_2pplayer1;
extern struct menudialog menudialog_18028;
extern struct menudialog menudialog_18040;
extern struct menudialog menudialog_18058;
extern struct menudialog menudialog_18aa8;
extern struct menudialog menudialog_189dc;
extern struct menuitem menuitems_18c18[];
extern struct menudialog menudialog_18d30;
extern struct menudialog menudialog_19534;
extern struct menudialog menudialog_196c8;
extern struct menudialog menudialog_status;
extern struct cutscene g_Cutscenes[];
extern struct cutscenegroup cutscenegrouptable[];
extern struct menu_dialog g_CinemaMenuDialog;
extern struct menu_dialog g_SelectMissionMenuDialog;
extern struct menu_dialog menudialog_18d48;
extern struct menu_dialog menudialog_18d60;
extern struct menu_dialog g_CiMainMenuDialogViaPause;
extern struct menu_dialog g_MainMenuMenuDialog;
extern struct menudialog g_CinemaMenuDialog;
extern struct menudialog g_SelectMissionMenuDialog;
extern struct menudialog menudialog_18d48;
extern struct menudialog menudialog_18d60;
extern struct menudialog g_CiMainMenuDialogViaPause;
extern struct menudialog g_MainMenuMenuDialog;
extern struct cheat g_Cheats[NUM_CHEATS];
extern struct menu_item g_CheatsBuddiesMenuItems[];
extern struct menu_dialog g_CheatsBuddiesMenuDialog;
extern struct menuitem g_CheatsBuddiesMenuItems[];
extern struct menudialog g_CheatsBuddiesMenuDialog;
#endif
+34 -34
View File
@@ -2,47 +2,47 @@
#define IN_GAME_DATA_01A3A0_H
#include <ultra64.h>
extern struct menu_dialog menudialog_1a410;
extern struct menudialog menudialog_1a410;
extern u16 savelocations2[];
extern u16 iomessages2[];
extern u16 filetypenames[];
extern struct menu_dialog menudialog_filesaved;
extern struct menu_dialog menudialog_saveerror;
extern struct menu_dialog menudialog_savelost;
extern struct menu_dialog g_SaveElsewhereMenuDialog;
extern struct menu_dialog menudialog_1a654;
extern struct menudialog menudialog_filesaved;
extern struct menudialog menudialog_saveerror;
extern struct menudialog menudialog_savelost;
extern struct menudialog g_SaveElsewhereMenuDialog;
extern struct menudialog menudialog_1a654;
extern u32 var8007464c;
extern struct menu_dialog menudialog_changefilename;
extern struct menu_dialog menudialog_duplicatefilename;
extern struct menudialog menudialog_changefilename;
extern struct menudialog menudialog_duplicatefilename;
extern u16 savelocations3[];
extern struct menu_dialog menudialog_selectlocation;
extern struct menu_dialog menudialog_confirmdelete;
extern struct menu_dialog menudialog_1a984;
extern struct menu_dialog menudialog_deletefile;
extern struct menu_dialog menudialog_copyfile;
extern struct menudialog menudialog_selectlocation;
extern struct menudialog menudialog_confirmdelete;
extern struct menudialog menudialog_1a984;
extern struct menudialog menudialog_deletefile;
extern struct menudialog menudialog_copyfile;
extern u32 var80074a4c;
extern struct menu_dialog menudialog_deletegamenote;
extern struct menu_dialog menudialog_gamenotes;
extern struct menu_dialog menudialog_controllerpakmenu;
extern struct menu_dialog menudialog_enteragentname;
extern struct menu_dialog menudialog_fileselect;
extern struct menu_dialog menudialog_fileselect2;
extern struct menu_dialog menudialog_mpquickgo2;
extern struct menu_dialog menudialog_1b1bc;
extern struct menu_dialog g_4MbMainMenu;
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 g_MenuDialogPromptNextMission;
extern struct menu_dialog menudialog_1b7a4;
extern struct menudialog menudialog_deletegamenote;
extern struct menudialog menudialog_gamenotes;
extern struct menudialog menudialog_controllerpakmenu;
extern struct menudialog menudialog_enteragentname;
extern struct menudialog menudialog_fileselect;
extern struct menudialog menudialog_fileselect2;
extern struct menudialog menudialog_mpquickgo2;
extern struct menudialog menudialog_1b1bc;
extern struct menudialog g_4MbMainMenu;
extern struct menudialog menudialog_mpdropout;
extern struct menudialog g_MpEditSimulant4MbMenuDialog;
extern struct menudialog g_4MbAdvancedSetupMenuDialog;
extern struct menudialog menudialog_1b5c0;
extern struct menudialog g_MenuDialogPromptNextMission;
extern struct menudialog menudialog_1b7a4;
extern u32 g_CheatColour;
extern struct menu_dialog g_MenuDialogSoloEndscreenCompleted;
extern struct menu_dialog g_MenuDialogSoloEndscreenFailed;
extern struct menu_dialog g_MenuDialogSolo2PEndscreenCompletedWide;
extern struct menu_dialog g_MenuDialogSolo2PEndscreenFailedWide;
extern struct menu_dialog g_MenuDialogSolo2PEndscreenCompletedNarrow;
extern struct menu_dialog g_MenuDialogSolo2PEndscreenFailedNarrow;
extern struct menudialog g_MenuDialogSoloEndscreenCompleted;
extern struct menudialog g_MenuDialogSoloEndscreenFailed;
extern struct menudialog g_MenuDialogSolo2PEndscreenCompletedWide;
extern struct menudialog g_MenuDialogSolo2PEndscreenFailedWide;
extern struct menudialog g_MenuDialogSolo2PEndscreenCompletedNarrow;
extern struct menudialog g_MenuDialogSolo2PEndscreenFailedNarrow;
extern struct savelocation *g_SaveLocations[];
extern u32 var80075bd0;
extern u32 var80075be0;
+19 -19
View File
@@ -2,25 +2,25 @@
#define IN_GAME_DATA_020DF0_H
#include <ultra64.h>
extern struct menu_dialog menudialog_2a800;
extern struct menu_dialog menudialog_2a818;
extern struct menu_dialog menudialog_mpweapons;
extern struct menu_dialog menudialog_mpoptions;
extern struct menu_dialog menudialog_mpcontrol;
extern struct menu_dialog menudialog_mpplayerstats;
extern struct menu_dialog menudialog_mpplayername;
extern struct menu_dialog menudialog_mploadgamesettingstype0;
extern struct menu_dialog menudialog_mploadgamesettingstype1;
extern struct menu_dialog menudialog_mploadplayer;
extern struct menu_dialog menudialog_mparena;
extern struct menu_dialog menudialog_mplimits;
extern struct menu_dialog menudialog_mpplayerhandicaps;
extern struct menu_dialog g_MpReadyMenuDialog;
extern struct menu_dialog menudialog_mpsimulants;
extern struct menu_dialog menudialog_mpteamcontrol;
extern struct menu_dialog menudialog_mpchallengedetails;
extern struct menu_dialog menudialog_mpscenario;
extern struct menu_dialog menudialog_mpquickteam;
extern struct menudialog menudialog_2a800;
extern struct menudialog menudialog_2a818;
extern struct menudialog menudialog_mpweapons;
extern struct menudialog menudialog_mpoptions;
extern struct menudialog menudialog_mpcontrol;
extern struct menudialog menudialog_mpplayerstats;
extern struct menudialog menudialog_mpplayername;
extern struct menudialog menudialog_mploadgamesettingstype0;
extern struct menudialog menudialog_mploadgamesettingstype1;
extern struct menudialog menudialog_mploadplayer;
extern struct menudialog menudialog_mparena;
extern struct menudialog menudialog_mplimits;
extern struct menudialog menudialog_mpplayerhandicaps;
extern struct menudialog g_MpReadyMenuDialog;
extern struct menudialog menudialog_mpsimulants;
extern struct menudialog menudialog_mpteamcontrol;
extern struct menudialog menudialog_mpchallengedetails;
extern struct menudialog menudialog_mpscenario;
extern struct menudialog menudialog_mpquickteam;
extern s32 g_Difficulty;
+30 -30
View File
@@ -18,54 +18,54 @@ extern u32 var800844f0;
extern s32 var800845d8;
extern u32 var800845dc;
extern u32 var800845f4;
extern struct menu_dialog g_MpPausePlayerRankingMenuDialog;
extern struct menu_dialog g_MpPauseTeamRankingMenuDialog;
extern struct menudialog g_MpPausePlayerRankingMenuDialog;
extern struct menudialog g_MpPauseTeamRankingMenuDialog;
extern u16 g_OrdinalSuffixes[12];
extern struct menu_dialog g_MpEndscreenIndividualGameOverMenuDialog;
extern struct menu_dialog g_MpEndscreenTeamGameOverMenuDialog;
extern struct menu_dialog g_MpEndscreenChallengeCompletedMenuDialog;
extern struct menu_dialog g_MpEndscreenChallengeCheatedMenuDialog;
extern struct menu_dialog g_MpEndscreenChallengeFailedMenuDialog;
extern struct menu_dialog g_MpEndscreenSavePlayerMenuDialog;
extern struct menu_dialog menudialog_2aba0;
extern struct menudialog g_MpEndscreenIndividualGameOverMenuDialog;
extern struct menudialog g_MpEndscreenTeamGameOverMenuDialog;
extern struct menudialog g_MpEndscreenChallengeCompletedMenuDialog;
extern struct menudialog g_MpEndscreenChallengeCheatedMenuDialog;
extern struct menudialog g_MpEndscreenChallengeFailedMenuDialog;
extern struct menudialog g_MpEndscreenSavePlayerMenuDialog;
extern struct menudialog menudialog_2aba0;
extern struct mparena g_MpArenas[17];
extern u32 var80084bf8;
extern u32 var80084c00[];
extern u16 g_MpControlStyleLabels[4];
extern u16 g_MpAimModeLabels[2];
extern struct menu_dialog g_MpSaveChrMenuDialog;
extern struct menu_dialog menudialog_mpsavesetupname;
extern struct menu_dialog menudialog_mpsavesetup;
extern struct menudialog g_MpSaveChrMenuDialog;
extern struct menudialog menudialog_mpsavesetupname;
extern struct menudialog menudialog_mpsavesetup;
extern u32 var800851bc;
extern u32 var800851cc;
extern u32 var80085448;
extern struct menu_item menuitems_mpcharacter[];
extern struct menuitem menuitems_mpcharacter[];
extern u32 var800857d0;
extern struct menu_dialog g_MpAddSimulantMenuDialog;
extern struct menu_dialog g_MpChangeSimulantMenuDialog;
extern struct menu_dialog g_MpEditSimulantMenuDialog;
extern struct menudialog g_MpAddSimulantMenuDialog;
extern struct menudialog g_MpChangeSimulantMenuDialog;
extern struct menudialog g_MpEditSimulantMenuDialog;
extern u32 var80085a74;
extern u8 g_TeamIdsForPairing[4];
extern struct menu_dialog g_MpChangeTeamNameMenuDialog;
extern struct menu_dialog menudialog_2bfa8;
extern struct menu_dialog menudialog_mpchallengedetails2;
extern struct menu_dialog menudialog_2c0cc;
extern struct menudialog g_MpChangeTeamNameMenuDialog;
extern struct menudialog menudialog_2bfa8;
extern struct menudialog menudialog_mpchallengedetails2;
extern struct menudialog menudialog_2c0cc;
extern u16 mplockoptions[4];
extern struct menu_dialog menudialog_mpgamesetup3;
extern struct menu_dialog g_MpQuickGoMenuDialog;
extern struct menu_dialog g_MpQuickTeamGameSetupMenuDialog;
extern struct menu_dialog g_CombatSimulatorMenuDialog;
extern struct menudialog menudialog_mpgamesetup3;
extern struct menudialog g_MpQuickGoMenuDialog;
extern struct menudialog g_MpQuickTeamGameSetupMenuDialog;
extern struct menudialog g_CombatSimulatorMenuDialog;
extern u16 mpslowmotionoptions[];
extern struct menu_dialog menudialog_mpcombatoptions;
extern struct menu_dialog menudialog_mpbriefcaseoptions;
extern struct menudialog menudialog_mpcombatoptions;
extern struct menudialog menudialog_mpbriefcaseoptions;
extern struct defaultobj *var800869ec;
extern u32 var800869f0;
extern struct menu_dialog menudialog_mpcaptureoptions;
extern struct menudialog menudialog_mpcaptureoptions;
extern u32 var80086b60;
extern struct menu_dialog menudialog_mphilloptions;
extern struct menu_dialog menudialog_mphackeroptions;
extern struct menudialog menudialog_mphilloptions;
extern struct menudialog menudialog_mphackeroptions;
extern u32 var80086e14;
extern struct menu_dialog menudialog_mppopacapoptions;
extern struct menudialog menudialog_mppopacapoptions;
extern struct mpscenario g_MpScenarios[];
extern struct mpscenariooverview g_MpScenarioOverviews[];
extern u32 var8008716c;
+20 -20
View File
@@ -17,34 +17,34 @@ extern u32 var80088c9c;
extern u32 var80088ca0;
extern u32 var80088ca4;
extern u32 var80088ca8;
extern struct menu_dialog menudialog_frdifficulty;
extern struct menu_dialog g_FrWeaponListMenuDialog;
extern struct menu_dialog g_FrTrainingInfoMenuDialog;
extern struct menu_dialog menudialog_frtraininginfo2;
extern struct menu_dialog menudialog_frtrainingstats;
extern struct menu_dialog menudialog_frtrainingstats2;
extern struct menudialog menudialog_frdifficulty;
extern struct menudialog g_FrWeaponListMenuDialog;
extern struct menudialog g_FrTrainingInfoMenuDialog;
extern struct menudialog menudialog_frtraininginfo2;
extern struct menudialog menudialog_frtrainingstats;
extern struct menudialog menudialog_frtrainingstats2;
extern u32 var800891b0;
extern struct menu_dialog menudialog_information;
extern struct menudialog menudialog_information;
extern u32 var80089268;
extern u32 var80089280;
extern struct menu_dialog menudialog_characterprofile;
extern struct menu_dialog menudialog_2f3c0;
extern struct menu_dialog g_DeviceTrainingListMenuDialog;
extern struct menudialog menudialog_characterprofile;
extern struct menudialog menudialog_2f3c0;
extern struct menudialog g_DeviceTrainingListMenuDialog;
extern u32 var800893f8;
extern struct menu_dialog g_DeviceTrainingDetailsMenuDialog;
extern struct menu_dialog g_DeviceTrainingStatsFailedMenuDialog;
extern struct menu_dialog g_DeviceTrainingStatsCompletedMenuDialog;
extern struct menu_dialog g_HoloTrainingListMenuDialog;
extern struct menu_dialog g_HoloTrainingDetailsMenuDialog;
extern struct menu_dialog g_HoloTrainingStatsFailedMenuDialog;
extern struct menu_dialog g_HoloTrainingStatsCompletedMenuDialog;
extern struct menudialog g_DeviceTrainingDetailsMenuDialog;
extern struct menudialog g_DeviceTrainingStatsFailedMenuDialog;
extern struct menudialog g_DeviceTrainingStatsCompletedMenuDialog;
extern struct menudialog g_HoloTrainingListMenuDialog;
extern struct menudialog g_HoloTrainingDetailsMenuDialog;
extern struct menudialog g_HoloTrainingStatsFailedMenuDialog;
extern struct menudialog g_HoloTrainingStatsCompletedMenuDialog;
extern u32 var800897a4;
extern u32 var800897b4;
extern u32 var800897c4;
extern struct hoverprop hoverprops[];
extern struct menu_dialog menudialog_2f938;
extern struct menu_dialog menudialog_2f950;
extern struct menu_dialog menudialog_hangarinformation;
extern struct menudialog menudialog_2f938;
extern struct menudialog menudialog_2f950;
extern struct menudialog menudialog_hangarinformation;
extern u32 var80089ad0;
extern u32 var8008a2d0;
+25 -25
View File
@@ -3,35 +3,35 @@
#include <ultra64.h>
#include "types.h"
void menudialogRetryMission(u32 operation, struct menu_dialog *dialog, struct menuthing **thingptr);
void menudialogRetryMission(u32 operation, struct menudialog *dialog, struct menuthing **thingptr);
s32 menudialog0010dd28(u32, u32, u32 *);
s32 menudialog0010de58(u32, u32, u32 *);
s32 menuhandlerDeclineMission(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerEndscreenMisc(u32 operation, struct menu_item *item, u32 *values);
s32 menuhandlerContinueMission(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerReplayLastLevel(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerReplayPreviousMission(u32 operation, struct menu_item *item, s32 *value);
char *menuDialogTitleRetryStageName(struct menu_dialog *dialog);
char *menuDialogTitleNextMissionStageName(struct menu_dialog *dialog);
char *soloMenuTextNumKills(struct menu_item *item);
char *soloMenuTextNumShots(struct menu_item *item);
char *soloMenuTextNumHeadShots(struct menu_item *item);
char *soloMenuTextNumBodyShots(struct menu_item *item);
char *soloMenuTextNumLimbShots(struct menu_item *item);
char *soloMenuTextNumOtherShots(struct menu_item *item);
char *soloMenuTextAccuracy(struct menu_item *item);
char *soloMenuTextMissionStatus(struct menu_item *item);
char *soloMenuTextAgentStatus(struct menu_item *item);
char *menuTitleStageCompleted(struct menu_item *item);
char *menuTextCurrentStageName3(struct menu_item *item);
char *menuTitleStageFailed(struct menu_item *item);
char *soloMenuTextMissionTime(struct menu_item *item);
struct menu_dialog *func0f10d730(void);
s32 menuhandlerDeclineMission(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerEndscreenCheats(u32 operation, struct menuitem *item, u32 *values);
s32 menuhandlerContinueMission(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerReplayLastLevel(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerReplayPreviousMission(u32 operation, struct menuitem *item, s32 *value);
char *menuDialogTitleRetryStageName(struct menudialog *dialog);
char *menuDialogTitleNextMissionStageName(struct menudialog *dialog);
char *soloMenuTextNumKills(struct menuitem *item);
char *soloMenuTextNumShots(struct menuitem *item);
char *soloMenuTextNumHeadShots(struct menuitem *item);
char *soloMenuTextNumBodyShots(struct menuitem *item);
char *soloMenuTextNumLimbShots(struct menuitem *item);
char *soloMenuTextNumOtherShots(struct menuitem *item);
char *soloMenuTextAccuracy(struct menuitem *item);
char *soloMenuTextMissionStatus(struct menuitem *item);
char *soloMenuTextAgentStatus(struct menuitem *item);
char *menuTitleStageCompleted(struct menuitem *item);
char *menuTextCurrentStageName3(struct menuitem *item);
char *menuTitleStageFailed(struct menuitem *item);
char *soloMenuTextMissionTime(struct menuitem *item);
struct menudialog *func0f10d730(void);
void func0f10d770(void);
void func0f10d910(s32 arg0);
char *soloMenuTextCheatName(struct menu_item *item);
char *soloMenuTextCheatName2(struct menu_item *item);
char *soloMenuTextTargetTime(struct menu_item *item);
char *soloMenuTextCheatName(struct menuitem *item);
char *soloMenuTextCheatName2(struct menuitem *item);
char *soloMenuTextTargetTime(struct menuitem *item);
void endscreenSetCoopCompleted(void);
u32 func0f10e620(void);
void soloPushCoopModeEndscreen(void);
+5 -5
View File
@@ -9,14 +9,14 @@ u32 func0f0e6038(void);
u32 func0f0e6298(void);
Gfx *menuRenderItemCustom(Gfx *gdl);
u32 func0f0e75a0(void);
void func0f0e7998(struct menu_item *item, u32 *arg1);
void func0f0e7998(struct menuitem *item, u32 *arg1);
Gfx *menuRenderItemDropdown(Gfx *gdl);
u32 func0f0e8138(void);
u32 func0f0e8290(void);
u32 func0f0e855c(void);
Gfx *menuRenderItemKeyboard(Gfx *gdl);
u32 func0f0e91d0(void);
void func0f0e9744(struct menu_item *item, u32 *arg1);
void func0f0e9744(struct menuitem *item, u32 *arg1);
Gfx *menuRenderItemSeparator(Gfx *gdl);
u32 func0f0e98ac(void);
Gfx *menuRenderItemObjectives(Gfx *gdl);
@@ -32,7 +32,7 @@ Gfx *menuRenderItemCarousel(Gfx *gdl);
u32 func0f0ec4e4(void);
Gfx *menuRenderItemCheckbox(Gfx *gdl);
u32 func0f0ecbfc(void);
char *menuGetDescription(u32 type);
char *menuTrainGetDescription(u32 type);
Gfx *menuRenderItemScrollable(Gfx *gdl);
u32 func0f0ed264(void);
void func0f0ed514(u32 *arg0);
@@ -46,7 +46,7 @@ void func0f0ee640(u32 *arg0);
Gfx *menuRenderItemPlayerStats(Gfx *gdl);
u32 func0f0ef200(void);
u32 func0f0ef2fc(void);
void func0f0ef360(struct menu_item *item, u32 *arg1);
void func0f0ef360(struct menuitem *item, u32 *arg1);
u32 func0f0ef394(void);
u32 func0f0ef4bc(void);
u32 func0f0ef758(void);
@@ -57,7 +57,7 @@ Gfx *menuRenderItemController(Gfx *gdl);
void func0f0f057c(u32 *arg0);
Gfx *menuRenderItem(Gfx *gdl, struct menuframe *frame);
u32 func0f0f0704(void);
void func0f0f0860(struct menu_item *ite, u32 *arg1);
void func0f0f0860(struct menuitem *ite, u32 *arg1);
u32 func0f0f0918(void);
#endif
+11 -11
View File
@@ -9,14 +9,14 @@ bool currentPlayerIsMenuOpenInSoloOrMp(void);
bool func0f0f0c68(void);
void func0f0f0ca0(s32 value, bool allplayers);
u32 func0f0f0ce8(void);
struct menustackdfc *func0f0f1338(u32 arg0);
struct menudfc *func0f0f1338(u32 arg0);
void func0f0f139c(s32 arg0, f32 arg1);
void func0f0f13ec(s32 arg0);
void func0f0f1418(void);
void func0f0f1494(void);
char *menuResolveText(u32 thing, struct menu_item *item);
char *menuResolveParam2Text(struct menu_item *item);
char *menuResolveParam1Text(struct menu_item *item);
char *menuResolveText(u32 thing, struct menuitem *item);
char *menuResolveParam2Text(struct menuitem *item);
char *menuResolveParam1Text(struct menuitem *item);
void func0f0f15a4(u8 *arg0, u32 *arg1);
u32 func0f0f1618(void);
u32 func0f0f1d6c(void);
@@ -32,13 +32,13 @@ u32 func0f0f2928(void);
u32 func0f0f29cc(void);
u32 func0f0f2b2c(void);
u32 func0f0f2c44(void);
void func0f0f2cf4(struct menu_dialog *dialog, struct menuframe *arg1, struct menustackitem *stackitem);
void menuPushDialog(struct menu_dialog *dialog);
void func0f0f2cf4(struct menudialog *dialog, struct menuframe *arg1, struct menu *menu);
void menuPushDialog(struct menudialog *dialog);
u32 func0f0f3220(void);
u32 func0f0f33bc(void);
void menuUpdateCurFrame(void);
void menuPopDialog(void);
void func0f0f3704(struct menu_dialog *dialog);
void func0f0f3704(struct menudialog *dialog);
void func0f0f372c(u8 *arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7, s32 arg8);
void func0f0f37a4(u8 *arg0);
u32 func0f0f38b0(void);
@@ -51,11 +51,11 @@ u32 func0f0f7728(void);
u32 func0f0f7e98(void);
void func0f0f8040(void);
void func0f0f8120(void);
void func0f0f820c(struct menu_dialog *dialog, s32 arg1);
void func0f0f820c(struct menudialog *dialog, s32 arg1);
bool func0f0f82a8(s32 arg0);
void func0f0f8300(void);
void menuPushRootDialog(struct menu_dialog *dialog, s32 arg1);
void func0f0f85e0(struct menu_dialog *dialog, s32 root);
void menuPushRootDialog(struct menudialog *dialog, s32 arg1);
void func0f0f85e0(struct menudialog *dialog, s32 root);
u32 func0f0f8634(void);
u32 func0f0f86a8(void);
void func0f0f8bb4(u8 *arg0, u32 arg1, u32 arg2);
@@ -71,7 +71,7 @@ u32 func0f0fbc30(void);
u32 menuChooseMusic(void);
u32 menuGetRoot(void);
u32 func0f0fce8c(void);
char *menuTextSaveDeviceName(struct menu_item *item);
char *menuTextSaveDeviceName(struct menuitem *item);
u32 func0f0fd118(u32 arg0);
bool func0f0fd1f4(u32 arg0, u32 arg1);
u32 func0f0fd320(void);
+4 -4
View File
@@ -22,11 +22,11 @@ u32 func0f0ff7bc(void);
u32 func0f100128(void);
u32 func0f100ad0(void);
s32 menudialog000fcd48(u32, u32, u32 *);
bool menudialogMpPickTarget(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
bool menudialogMpPickTarget(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menuhandler000fcc34(u32, u32, u32 *);
s32 menuhandler000fd6f0(u32, u32, u32 *);
s32 menuhandlerRepairPak(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerRetrySavePak(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerWarnRepairPak(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerRepairPak(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerRetrySavePak(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerWarnRepairPak(u32 operation, struct menuitem *item, s32 *value);
#endif
+60 -60
View File
@@ -3,76 +3,76 @@
#include <ultra64.h>
#include "types.h"
char *menuTextCurrentStageName(struct menu_item *item);
char *soloMenuTextDifficulty(struct menu_item *item);
char *menuhandlerControlStyleImpl(u32 operation, struct menu_item *item, s32 *value, s32 arg3);
char *soloMenuTitleStageOverview(struct menu_dialog *dialog);
char *menuTextCurrentStageName(struct menuitem *item);
char *soloMenuTextDifficulty(struct menuitem *item);
char *menuhandlerControlStyleImpl(u32 operation, struct menuitem *item, s32 *value, s32 arg3);
char *soloMenuTitleStageOverview(struct menudialog *dialog);
f32 func0f1036ac(u8 value, s32 prop);
bool isStageDifficultyUnlocked(s32 stageindex, s32 difficulty);
char *soloMenuTextBestTime(struct menu_item *item);
char *soloMenuTextBestTime(struct menuitem *item);
s32 getMaxAiBuddies(void);
s32 getNumUnlockedSpecialStages(void);
s32 func0f104720(s32 value);
char *func0f105664(struct menu_item *item);
char *func0f1056a0(struct menu_item *item);
char *invMenuTextPrimaryFunction(struct menu_item *item);
char *invMenuTextSecondaryFunction(struct menu_item *item);
char *func0f105664(struct menuitem *item);
char *func0f1056a0(struct menuitem *item);
char *invMenuTextPrimaryFunction(struct menuitem *item);
char *invMenuTextSecondaryFunction(struct menuitem *item);
void func0f105948(s32 weaponnum);
char *invMenuTextWeaponName(struct menu_item *item);
char *invMenuTextWeaponManufacturer(struct menu_item *item);
char *invMenuTextWeaponDescription(struct menu_item *item);
char *invMenuTextWeaponName(struct menuitem *item);
char *invMenuTextWeaponManufacturer(struct menuitem *item);
char *invMenuTextWeaponDescription(struct menuitem *item);
bool soloChoosePauseDialog(void);
s32 menudialog00103368(u32, u32, u32 *);
s32 menudialog00103608(u32 operation, struct menu_dialog *dialog, struct menuthing **thingptr);
bool menudialogCoopAntiOptions(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
s32 menudialog0010559c(u32 operation, struct menu_dialog *dialog, s32 *arg2);
s32 menudialog00103608(u32 operation, struct menudialog *dialog, struct menuthing **thingptr);
bool menudialogCoopAntiOptions(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menudialog0010559c(u32 operation, struct menudialog *dialog, s32 *arg2);
s32 menudialog00105c54(u32, u32, u32 *);
s32 menudialog001063d4(u32, u32, u32 *);
s32 soloMenuDialogPauseStatus(u32 operation, s32 arg1, s32 arg2);
char *menuhandler001024dc(u32 operation, struct menu_item *item, s32 *value);
char *menuhandler001024fc(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerAcceptMission(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerAcceptPdModeSettings(s32 operation, struct menu_item *item, bool *value);
s32 menuhandlerBuddyOptionsContinue(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerCoopDifficulty(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerAntiDifficulty(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler0010476c(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerControlStyle(s32 operation, struct menu_item *item, u32 *value);
s32 menuhandler00106028(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandler00106178(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerAbortMission(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerCinema(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerAimControl(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerAlternativeTitle(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerAlwaysShowTarget(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerAmmoOnScreen(u32 operation, struct menu_item *item, bool *enable);
char *menuhandlerAntiPlayer(u32 operation, struct menu_dialog *dialog, s32 *value);
s32 menuhandlerAntiRadar(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerAutoAim(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerChangeAgent(s32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerCoopBuddy(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerCoopFriendlyFire(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerCoopRadar(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerCutsceneSubtitles(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerHeadRoll(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerHiRes(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerInGameSubtitles(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerLangFilter(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerLookAhead(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerMusicVolume(u32 operation, struct menu_item *item, u32 *volume);
s32 menuhandlerPaintball(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerPdMode(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerPdModeSetting(u32 operation, struct menu_item *item, struct numandtext *value);
s32 menuhandlerReversePitch(u32 operation, struct menu_item *item, bool *enable);
char *menuhandlerScreenRatio(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerScreenSize(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerScreenSplit(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerSfxVolume(u32 operation, struct menu_item *item, u32 *volume);
s32 menuhandlerShowGunFunction(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerShowMissionTime(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerShowZoomRange(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerSightOnScreen(u32 operation, struct menu_item *item, bool *enable);
s32 menuhandlerSoloDifficulty(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerSoundMode(u32 operation, struct menu_item *item, s32 *value);
char *menuhandler001024dc(u32 operation, struct menuitem *item, s32 *value);
char *menuhandler001024fc(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerAcceptMission(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerAcceptPdModeSettings(s32 operation, struct menuitem *item, bool *value);
s32 menuhandlerBuddyOptionsContinue(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerCoopDifficulty(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerAntiDifficulty(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0010476c(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerControlStyle(s32 operation, struct menuitem *item, u32 *value);
s32 menuhandler00106028(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandler00106178(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerAbortMission(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerCinema(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerAimControl(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerAlternativeTitle(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerAlwaysShowTarget(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerAmmoOnScreen(u32 operation, struct menuitem *item, bool *enable);
char *menuhandlerAntiPlayer(u32 operation, struct menudialog *dialog, s32 *value);
s32 menuhandlerAntiRadar(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerAutoAim(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerChangeAgent(s32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerCoopBuddy(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerCoopFriendlyFire(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerCoopRadar(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerCutsceneSubtitles(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerHeadRoll(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerHiRes(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerInGameSubtitles(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerLangFilter(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerLookAhead(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerMusicVolume(u32 operation, struct menuitem *item, u32 *volume);
s32 menuhandlerPaintball(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerPdMode(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerPdModeSetting(u32 operation, struct menuitem *item, struct numandtext *value);
s32 menuhandlerReversePitch(u32 operation, struct menuitem *item, bool *enable);
char *menuhandlerScreenRatio(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerScreenSize(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerScreenSplit(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerSfxVolume(u32 operation, struct menuitem *item, u32 *volume);
s32 menuhandlerShowGunFunction(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerShowMissionTime(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerShowZoomRange(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerSightOnScreen(u32 operation, struct menuitem *item, bool *enable);
s32 menuhandlerSoloDifficulty(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerSoundMode(u32 operation, struct menuitem *item, s32 *value);
#endif
+22 -22
View File
@@ -4,13 +4,13 @@
#include "types.h"
char *getSaveLocationName(s32 index);
char *pakMenuTextLocationName(struct menu_item *item);
char *pakMenuTextLocationName(struct menuitem *item);
void func0f1080d0(char *dst, u32 ar1, u32 arg2);
char *func0f1082b0(struct menu_item *item);
char *func0f1082b0(struct menuitem *item);
void func0f108324(s32 arg0);
u32 func0f1083b0(void);
void func0f1083d0(s32 arg0, s32 arg1);
char *pakMenuTextFailReason(struct menu_item *item);
char *pakMenuTextFailReason(struct menuitem *item);
u32 func0f108550(void);
u32 func0f10865c(void);
u32 func0f1086b8(void);
@@ -51,32 +51,32 @@ void menucustomChooseAgent(void);
void menucustomDeleteGameNote(void);
void menucustomFileToCopy(void);
void menucustomFileToDelete(void);
bool menudialog00108e58(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
bool menudialog00108e58(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menudialog0010b014(u32, u32, u32 *);
s32 menudialog0010b674(u32, u32, u32 *);
s32 menudialog0010ba10(u32, u32, u32 *);
s32 menudialog0010c804(u32, u32, u32 *);
s32 menuhandler00108014(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler00108254(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler00108014(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler00108254(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler001084b8(u32, u32, u32 *);
s32 menuhandlerPakErrorTryAgain(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerPakCancelSave2(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerAcknowledgePakFileLost(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler00108ecc(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler00108f08(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerPakRenameDuplicateSave(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerPakCancelDuplicateSave(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerPakCancelSave(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerDeleteFiles(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerPakConfirmDelete(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerPakErrorTryAgain(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerPakCancelSave2(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerAcknowledgePakFileLost(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler00108ecc(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler00108f08(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerPakRenameDuplicateSave(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerPakCancelDuplicateSave(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerPakCancelSave(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerDeleteFiles(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerPakConfirmDelete(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0010b14c(u32, u32, u32 *);
s32 menuhandlerPakSelection(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerAgentName(u32 operation, struct menu_item *item, char **value);
s32 menuhandlerOpenCopyFile(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerOpenDeleteFile(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerRenameFile(u32 operation, struct menu_item *item, char **value);
s32 menuhandlerPakSelection(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerAgentName(u32 operation, struct menuitem *item, char **value);
s32 menuhandlerOpenCopyFile(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerOpenDeleteFile(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerRenameFile(u32 operation, struct menuitem *item, char **value);
s32 menuhandlerSaveElsewhere(u32, u32, u32 *);
s32 menuhandlerSaveLocation(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerSaveLocation(u32 operation, struct menuitem *item, s32 *value);
extern const char var7f1b3214[];
extern const char var7f1b3218[];
+5 -5
View File
@@ -4,10 +4,10 @@
#include "types.h"
void func0f10cb2c(void);
s32 menuhandler4MbDropOut(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler0010ca1c(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler4MbAdvancedSetup(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler0010cabc(u32 operation, struct menu_item *item, s32 *value);
bool menudialog4MbMainMenu(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
s32 menuhandler4MbDropOut(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0010ca1c(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler4MbAdvancedSetup(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0010cabc(u32 operation, struct menuitem *item, s32 *value);
bool menudialog4MbMainMenu(u32 operation, struct menudialog *dialog, struct menu *menu);
#endif
+10 -10
View File
@@ -4,15 +4,15 @@
#include "types.h"
s32 menuhandler00177e00(u32, u32, u32 *);
char *mpMenuTextInGameLimit(struct menu_item *item);
char *mpMenuTextInGameLimit(struct menuitem *item);
char *menutextPauseOrUnpause(s32 arg0);
char *menutextMatchTime(s32 arg0);
char *mpMenuTextWeaponDescription(struct menu_item *item);
char *mpMenuTextWeaponDescription(struct menuitem *item);
u32 func0f1783a0(void);
char *mpMenuTextWeaponOfChoiceName(struct menu_item *item);
char *mpMenuTextAward1(struct menu_item *item);
char *mpMenuTextAward2(struct menu_item *item);
char *mpMenuTextPlacementWithSuffix(struct menu_item *item);
char *mpMenuTextWeaponOfChoiceName(struct menuitem *item);
char *mpMenuTextAward1(struct menuitem *item);
char *mpMenuTextAward2(struct menuitem *item);
char *mpMenuTextPlacementWithSuffix(struct menuitem *item);
s32 menuhandler001785c4(u32, u32, u32 *);
s32 menuhandler001786d8(u32, u32, u32 *);
s32 menuhandler00178a94(u32, u32, u32 *);
@@ -20,9 +20,9 @@ char *mpMenuTextPlayerTitle(s32 arg0);
s32 menuhandler00178bf4(u32, u32, u32 *);
void mpPushPauseDialog(void);
void mpPushEndscreenDialog(u32 arg0, u32 playernum);
s32 menuhandlerMpEndGame(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler00178018(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpInGameLimitLabel(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpPause(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpEndGame(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler00178018(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpInGameLimitLabel(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpPause(u32 operation, struct menuitem *item, s32 *value);
#endif
+77 -77
View File
@@ -3,12 +3,12 @@
#include <ultra64.h>
#include "types.h"
char *mpGetCurrentPlayerName(struct menu_item *item);
char *mpGetCurrentPlayerName(struct menuitem *item);
u32 func0f179104(void);
s32 menuhandler001791c8(u32, u32, u32 *);
char *mpMenuTextWeaponNameForSlot(struct menu_item *item);
char *mpMenuTextSetupName(struct menu_item *item);
s32 func0f179da4(u32 operation, struct menu_item *item, s32 *value, s32 arg3, s32 arg4, s32 arg5);
char *mpMenuTextWeaponNameForSlot(struct menuitem *item);
char *mpMenuTextSetupName(struct menuitem *item);
s32 func0f179da4(u32 operation, struct menuitem *item, s32 *value, s32 arg3, s32 arg4, s32 arg5);
s32 menudialog0017a174(u32, u32, u32 *);
s32 menuhandler0017a20c(u32, u32, u32 *);
u32 mpMenuTextKills(void);
@@ -31,8 +31,8 @@ u32 mpMenuTextDamageDealt(void);
s32 menuhandlerMpMedal(u32, u32, u32 *);
u32 func0f17b360(void);
u32 mpMenuTextUsernamePassword(void);
s32 func0f17b4f8(u32 operation, struct menu_item *item, s32 *value, s32 arg3, s32 arg4);
char *mpMenuTextBodyName(struct menu_item *item);
s32 func0f17b4f8(u32 operation, struct menuitem *item, s32 *value, s32 arg3, s32 arg4);
char *mpMenuTextBodyName(struct menuitem *item);
u32 func0f17b8f0(void);
s32 menuhandler0017b91c(u32, u32, u32 *);
s32 menuhandler0017bab4(u32, u32, u32 *);
@@ -41,33 +41,33 @@ s32 menuhandler0017bfc0(u32, u32, u32 *);
s32 menuhandlerMpHandicapPlayer(u32, u32, u32 *);
u32 func0f17c524(void);
s32 menuhandler0017c6a4(u32, u32, u32 *);
char *mpMenuTextSimulantDescription(struct menu_item *item);
char *mpMenuTextSimulantDescription(struct menuitem *item);
s32 menudialog0017ccfc(u32, u32, u32 *);
s32 menuhandlerMpSimulantDifficulty(u32, u32, u32 *);
u32 func0f17cfc0(void);
u32 func0f17d378(void);
s32 func0f17d4b0(u32 operation, struct menu_item *item, s32 *value, s32 numteams);
char *mpMenuTextChrNameForTeamSetup(struct menu_item *item);
char *func0f17dac4(u32 operation, struct menu_item *item, s32 *value);
char *mpMenuTextSelectTuneOrTunes(struct menu_item *item);
s32 func0f17d4b0(u32 operation, struct menuitem *item, s32 *value, s32 numteams);
char *mpMenuTextChrNameForTeamSetup(struct menuitem *item);
char *func0f17dac4(u32 operation, struct menuitem *item, s32 *value);
char *mpMenuTextSelectTuneOrTunes(struct menuitem *item);
s32 menuhandler0017dc84(u32, u32, u32 *);
char *mpMenuTextCurrentTrack(struct menu_item *item);
char *mpMenuTextCurrentTrack(struct menuitem *item);
s32 menuhandler0017e06c(u32, u32, u32 *);
u32 func0f17e288(void);
u32 func0f17e318(void);
s32 menudialog0017e3fc(u32, u32, u32 *);
s32 menuhandler0017e4d4(u32, u32, u32 *);
char *mpMenuTextChallengeName(struct menu_item *item);
char *mpMenuTextChallengeName(struct menuitem *item);
s32 menudialog0017eb34(u32, u32, u32 *);
char *mpMenuTextSavePlayerOrCopy(struct menu_item *item);
char *mpMenuTextArenaName(struct menu_item *item);
char *mpMenuTextWeaponSetName(struct menu_item *item);
char *mpMenuTextSavePlayerOrCopy(struct menuitem *item);
char *mpMenuTextArenaName(struct menuitem *item);
char *mpMenuTextWeaponSetName(struct menuitem *item);
u32 func0f17f100(void);
u32 func0f17f260(void);
u32 func0f17f428(void);
s32 menuhandlerPlayerTeam(u32 operation, struct menu_item *item, s32 *value);
u32 menuhandlerMpNumberOfSimulants(u32 operation, struct menu_item *item, s32 *value);
u32 menuhandlerMpSimulantsPerTeam(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerPlayerTeam(u32 operation, struct menuitem *item, s32 *value);
u32 menuhandlerMpNumberOfSimulants(u32 operation, struct menuitem *item, s32 *value);
u32 menuhandlerMpSimulantsPerTeam(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0017f74c(u32, u32, u32 *);
u32 func0f17fa28(void);
void func0f17fcb0(bool silent);
@@ -100,8 +100,8 @@ void scenarioPacCallback10(void);
u32 scenarioPacCallback18(void);
bool scenarioPacRadar2(Gfx **gdl, struct prop *prop);
s32 menudialog00184ec0(u32, u32, u32 *);
char *mpMenuTextScenarioShortName(struct menu_item *item);
char *mpMenuTextScenarioName(struct menu_item *item);
char *mpMenuTextScenarioShortName(struct menuitem *item);
char *mpMenuTextScenarioName(struct menuitem *item);
s32 menuhandler00185068(u32, u32, u32 *);
void func0f185568(void);
u32 func0f185774(void);
@@ -115,62 +115,62 @@ u32 chrGiveBriefcase(struct chrdata *chr, struct prop *prop);
u32 func0f187288(void);
bool chrGiveUplink(struct chrdata *chr, struct prop *prop);
void scenarioHtmActivateUplink(struct chrdata *chr, struct prop *prop);
s32 menuhandlerMpDropOut(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpTeamsLabel(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpDropOut(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpTeamsLabel(u32 operation, struct menuitem *item, s32 *value);
u32 func0f1790fc(void);
char *menuhandlerMpControlStyle(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerMpWeaponSlot(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerMpWeaponSetDropdown(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpControlCheckbox(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerMpAimControl(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpCheckboxOption(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpTeamsEnabled(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpDisplayOptionCheckbox(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpConfirmSaveChr(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpPlayerName(u32 operation, struct menu_item *item, char **value);
s32 menuhandlerMpSaveSetupOverwrite(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpSaveSetupCopy(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpCharacterBody(u32 operation, struct menu_item *item, struct numandtext *value);
s32 menuhandlerMpUsernamePassword(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpCharacterHead(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpTimeLimitSlider(u32 operation, struct menu_item *item, struct numandtext *value);
s32 menuhandlerMpScoreLimitSlider(u32 operation, struct menu_item *item, struct numandtext *value);
s32 menuhandlerMpTeamScoreLimitSlider(u32 operation, struct menu_item *item, struct numandtext *value);
s32 menuhandlerMpRestoreScoreDefaults(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpRestoreHandicapDefaults(u32 operation, struct menu_item *item, s32 *value);
bool menudialogMpReady(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
bool menudialogMpSimulant(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
s32 menuhandlerMpSimulantHead(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpSimulantBody(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpDeleteSimulant(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpChangeSimulantType(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpClearAllSimulants(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpAddSimulant(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpSimulantSlot(u32 operation, struct menu_item *item, s32 *value);
bool menudialogMpSimulants(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
s32 menuhandlerMpTwoTeams(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpThreeTeams(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpFourTeams(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpMaximumTeams(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpHumansVsSimulants(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpHumanSimulantPairs(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerMpTeamSlot(u32 operation, struct menu_item *item, s32 *value);
bool menudialogMpSelectTune(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
s32 menuhandlerMpMultipleTunes(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpTeamNameSlot(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler0017e38c(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler0017e9d8(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpAbortChallenge(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpStartChallenge(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler0017ec64(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerMpLock(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpSavePlayer(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler0017ef30(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpSaveSettings(u32 operation, struct menu_item *item, s32 *value);
bool menudialogMpGameSetup(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
bool menudialogMpQuickGo(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
s32 menuhandlerMpFinishedSetup(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerQuickTeamSeparator(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpQuickTeamOption(u32 operation, struct menu_item *item, s32 *value);
char *menuhandlerMpControlStyle(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerMpWeaponSlot(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerMpWeaponSetDropdown(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpControlCheckbox(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerMpAimControl(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpCheckboxOption(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpTeamsEnabled(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpDisplayOptionCheckbox(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpConfirmSaveChr(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpPlayerName(u32 operation, struct menuitem *item, char **value);
s32 menuhandlerMpSaveSetupOverwrite(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpSaveSetupCopy(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpCharacterBody(u32 operation, struct menuitem *item, struct numandtext *value);
s32 menuhandlerMpUsernamePassword(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpCharacterHead(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpTimeLimitSlider(u32 operation, struct menuitem *item, struct numandtext *value);
s32 menuhandlerMpScoreLimitSlider(u32 operation, struct menuitem *item, struct numandtext *value);
s32 menuhandlerMpTeamScoreLimitSlider(u32 operation, struct menuitem *item, struct numandtext *value);
s32 menuhandlerMpRestoreScoreDefaults(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpRestoreHandicapDefaults(u32 operation, struct menuitem *item, s32 *value);
bool menudialogMpReady(u32 operation, struct menudialog *dialog, struct menu *menu);
bool menudialogMpSimulant(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menuhandlerMpSimulantHead(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpSimulantBody(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpDeleteSimulant(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpChangeSimulantType(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpClearAllSimulants(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpAddSimulant(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpSimulantSlot(u32 operation, struct menuitem *item, s32 *value);
bool menudialogMpSimulants(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menuhandlerMpTwoTeams(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpThreeTeams(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpFourTeams(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpMaximumTeams(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpHumansVsSimulants(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpHumanSimulantPairs(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerMpTeamSlot(u32 operation, struct menuitem *item, s32 *value);
bool menudialogMpSelectTune(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menuhandlerMpMultipleTunes(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpTeamNameSlot(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0017e38c(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0017e9d8(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpAbortChallenge(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpStartChallenge(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0017ec64(u32 operation, struct menuitem *item, s32 *value);
char *menuhandlerMpLock(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpSavePlayer(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler0017ef30(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpSaveSettings(u32 operation, struct menuitem *item, s32 *value);
bool menudialogMpGameSetup(u32 operation, struct menudialog *dialog, struct menu *menu);
bool menudialogMpQuickGo(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menuhandlerMpFinishedSetup(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerQuickTeamSeparator(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpQuickTeamOption(u32 operation, struct menuitem *item, s32 *value);
#endif
+6 -6
View File
@@ -3,10 +3,10 @@
#include <ultra64.h>
#include "types.h"
bool menudialogCombatSimulator(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
s32 menuhandlerMpAdvancedSetup(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpDisplayTeam(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpOneHitKills(u32 operation, struct menu_item *item, s32 *value);
bool menudialogCombatSimulator(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menuhandlerMpAdvancedSetup(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpDisplayTeam(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandlerMpOneHitKills(u32 operation, struct menuitem *item, s32 *value);
void scenarioHtbInit(void);
s32 scenarioHtbCallback08(void);
void scenarioHtbReset(void);
@@ -26,7 +26,7 @@ bool scenarioCtcRadar2(Gfx **gdl, struct prop *prop);
bool scenarioCtcCallback2c(f32 arg0, struct coord *pos, s16 *arg2, struct prop *prop, f32 *arg4);
s32 scenarioCtcGetMaxTeams(void);
bool scenarioCtcIsRoomHighlighted(s16 room);
s32 menuhandlerMpHillTime(u32 operation, struct menu_item *item, struct numandtext *value);
s32 menuhandlerMpHillTime(u32 operation, struct menuitem *item, struct numandtext *value);
void scenarioKohCallback40(s32 *arg0);
void scenarioKohCallback44(s32 *arg0);
void scenarioKohInit(void);
@@ -44,7 +44,7 @@ void scenarioPacInit(void);
void scenarioPacReset(void);
void scenarioPacKill(struct mpchr *mpchr, s32 arg1, s32 *score, s32 *arg3);
Gfx *scenarioPacRadar(Gfx *gdl);
s32 menuhandlerMpOpenOptions(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerMpOpenOptions(u32 operation, struct menuitem *item, s32 *value);
void scenarioCallback40(s32 *arg0);
void scenarioCallback44(s32 *arg0);
void scenarioInit(void);
+35 -35
View File
@@ -3,36 +3,36 @@
#include <ultra64.h>
#include "types.h"
char *frMenuTextFailReason(struct menu_item *item);
char *frMenuTextDifficultyName(struct menu_item *item);
char *frMenuTextTimeTakenValue(struct menu_item *item);
char *frMenuTextScoreValue(struct menu_item *item);
char *frMenuTextWeaponName(struct menu_item *item);
char *frMenuTextTargetsDestroyedValue(struct menu_item *item);
char *frMenuTextAccuracyValue(struct menu_item *item);
char *frMenuTextGoalScoreLabel(struct menu_item *item);
char *frMenuTextGoalScoreValue(struct menu_item *item);
char *frMenuTextMinAccuracyOrTargetsLabel(struct menu_item *item);
char *frMenuTextMinAccuracyOrTargetsValue(struct menu_item *item);
char *frMenuTextTimeLimitLabel(struct menu_item *item);
char *frMenuTextTimeLimitValue(struct menu_item *item);
char *frMenuTextAmmoLimitLabel(struct menu_item *item);
char *frMenuTextAmmoLimitValue(struct menu_item *item);
char *ciMenuTextBioName(struct menu_item *item);
char *ciMenuTextBioAge(struct menu_item *item);
char *ciMenuTextBioRace(struct menu_item *item);
char *frMenuTextFailReason(struct menuitem *item);
char *frMenuTextDifficultyName(struct menuitem *item);
char *frMenuTextTimeTakenValue(struct menuitem *item);
char *frMenuTextScoreValue(struct menuitem *item);
char *frMenuTextWeaponName(struct menuitem *item);
char *frMenuTextTargetsDestroyedValue(struct menuitem *item);
char *frMenuTextAccuracyValue(struct menuitem *item);
char *frMenuTextGoalScoreLabel(struct menuitem *item);
char *frMenuTextGoalScoreValue(struct menuitem *item);
char *frMenuTextMinAccuracyOrTargetsLabel(struct menuitem *item);
char *frMenuTextMinAccuracyOrTargetsValue(struct menuitem *item);
char *frMenuTextTimeLimitLabel(struct menuitem *item);
char *frMenuTextTimeLimitValue(struct menuitem *item);
char *frMenuTextAmmoLimitLabel(struct menuitem *item);
char *frMenuTextAmmoLimitValue(struct menuitem *item);
char *ciMenuTextBioName(struct menuitem *item);
char *ciMenuTextBioAge(struct menuitem *item);
char *ciMenuTextBioRace(struct menuitem *item);
u32 func0f1a6388(void);
u32 func0f1a64a0(void);
char *dtMenuTextOkOrResume(struct menu_item *item);
char *dtMenuTextCancelOrAbort(struct menu_item *item);
char *dtMenuTextTimeTakenValue(struct menu_item *item);
char *dtMenuTextOkOrResume(struct menuitem *item);
char *dtMenuTextCancelOrAbort(struct menuitem *item);
char *dtMenuTextTimeTakenValue(struct menuitem *item);
u32 func0f1a6a04(void);
char *htMenuTextOkOrResume(struct menu_item *item);
char *htMenuTextCancelOrAbort(struct menu_item *item);
char *htMenuTextTimeTakenValue(struct menu_item *item);
char *htMenuTextOkOrResume(struct menuitem *item);
char *htMenuTextCancelOrAbort(struct menuitem *item);
char *htMenuTextTimeTakenValue(struct menuitem *item);
u32 func0f1a6c8c(void);
u32 func0f1a6cc4(void);
struct menu_dialog *ciGetFrWeaponListMenuDialog(void);
struct menudialog *ciGetFrWeaponListMenuDialog(void);
void func0f1a7560(void *ptr, u16 fileid, u32 arg2, void *arg3, s32 arg4, bool arg5);
void func0f1a7730(void *ptr);
void *func0f1a7794(u16 fileid, u8 *arg1, s32 arg2, s32 arg3);
@@ -41,22 +41,22 @@ s32 menudialog001a39a8(u32, u32, u32 *);
s32 menudialog001a3af4(u32, u32, u32 *);
s32 menudialog001a5f48(u32, u32, u32 *);
s32 menudialog001a6548(u32, u32, u32 *);
bool menudialogDeviceTrainingResults(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
bool menudialog001a6aa4(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
bool menudialogFiringRangeResults(u32 operation, struct menu_dialog *dialog, struct menustackitem *stackitem);
bool menudialogDeviceTrainingResults(u32 operation, struct menudialog *dialog, struct menu *menu);
bool menudialog001a6aa4(u32 operation, struct menudialog *dialog, struct menu *menu);
bool menudialogFiringRangeResults(u32 operation, struct menudialog *dialog, struct menu *menu);
s32 menudialog001a737c(u32, u32, u32 *);
s32 frDetailsOkMenuHandler(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler001a3448(u32 operation, struct menu_item *item, s32 *value);
s32 frDetailsOkMenuHandler(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler001a3448(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler001a348c(u32, u32, u32 *);
s32 menuhandler001a44c0(u32, u32, u32 *);
s32 menuhandlerFrFailedContinue(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerFrFailedContinue(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler001a5dc0(u32, u32, u32 *);
s32 menuhandler001a63e4(u32, u32, u32 *);
s32 menuhandlerDtOkOrResume(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler001a6514(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandlerDtOkOrResume(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler001a6514(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler001a6950(u32, u32, u32 *);
s32 menuhandler001a6a34(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler001a6a70(u32 operation, struct menu_item *item, s32 *value);
s32 menuhandler001a6a34(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler001a6a70(u32 operation, struct menuitem *item, s32 *value);
s32 menuhandler001a6d4c(u32, u32, u32 *);
s32 menuhandler001a6ea4(u32, u32, u32 *);
s32 menuhandlerFrDifficulty(u32, u32, u32 *);
+1 -1
View File
@@ -640,7 +640,7 @@ extern u32 var8009dfc0;
extern struct briefing g_Briefing;
extern u16 var8009dfe0[2];
extern struct missionconfig g_MissionConfig;
extern struct menustackitem g_MenuStack[4];
extern struct menu g_Menus[4];
extern struct menudata g_MenuData;
extern u32 var800a2038;
extern u32 var800a203c;
+83 -19
View File
@@ -3232,7 +3232,7 @@ struct hoverprop {
u16 size;
};
struct menu_item {
struct menuitem {
u8 type;
u8 param;
u32 param1;
@@ -3241,13 +3241,13 @@ struct menu_item {
void *handler;
};
struct menu_dialog {
struct menudialog {
u8 type;
u32 title;
struct menu_item *items;
struct menuitem *items;
void *unk0c;
u32 unk10;
struct menu_dialog *nextsibling;
struct menudialog *nextsibling;
};
struct twowords {
@@ -3426,9 +3426,9 @@ struct menulayer {
};
struct menuframe {
struct menu_dialog *dialog;
struct menudialog *dialog;
u32 unk04;
struct menu_item *item;
struct menuitem *item;
/*0x0c*/ u32 unk0c;
/*0x10*/ u32 unk10;
/*0x14*/ s32 unk14;
@@ -3457,12 +3457,73 @@ struct menuframe {
/*0x6d*/ s8 unk6d;
};
struct menustackdfc {
struct menudfc {
u32 unk00;
f32 unk04;
};
struct menustackitem {
struct menudata_endscreen {
u32 unke1c;
// ......xx = cheat ID
// .....1.. = ?
// .....2.. = show completion cheat name
// .....4.. = ?
// .....8.. = show timed cheat name
u32 cheatinfo;
bool unke24;
u32 unke28;
u32 stageindex;
};
struct menudata_main {
u32 unke1c;
u32 unke20;
u32 mpindex;
u32 unke28;
u32 unke2c;
};
struct menudata_mpsetup {
u32 slotindex;
u32 slotcount;
u32 unke24;
};
struct menudata_mppause {
u32 unke1c;
u32 unke20;
u32 unke24;
s32 weaponnum; // of selected weapon in inventory menu
};
struct menudata_mpend {
u32 unke1c;
};
struct menudata_filesel {
u32 slotindex;
u32 slotcount;
u32 unke24;
u32 unke28;
u32 unke2c;
};
struct menudata_pak {
u32 unke1c;
};
struct menudata_main4mb {
u32 slotindex;
};
struct menudata_train {
u32 unke1c;
struct mpconfigfull *mpconfig;
};
struct menu {
struct menuframe frames[10];
/*0x460*/ s16 numframes;
/*0x464*/ struct menulayer layers[6];
@@ -3686,12 +3747,12 @@ struct menustackitem {
union {
/*0x844*/ u32 unk844;
/*0x844*/ u8 *mpconfigbuffer;
/*0x844*/ u8 *mpconfigbuffer; // for MENUROOT_TRAINING
};
union {
/*0x848*/ u32 unk848;
/*0x848*/ u32 mpconfigbufferlen;
/*0x848*/ u32 mpconfigbufferlen; // for MENUROOT_TRAINING
};
/*0x84c*/ u32 unk84c;
@@ -4058,17 +4119,20 @@ struct menustackitem {
/*0xdf0*/ u32 unkdf0;
/*0xdf4*/ s8 *unkdf4;
/*0xdf8*/ u8 unkdf8;
/*0xdfc*/ struct menustackdfc unkdfc[4];
/*0xe1c*/ s32 slotindex;
/*0xdfc*/ struct menudfc unkdfc[4];
union {
/*0xe20*/ u32 slotcount;
/*0xe20*/ struct mpconfigfull *mpconfig;
};
struct menudata_endscreen endscreen;
struct menudata_main main;
struct menudata_mpsetup mpsetup;
struct menudata_mppause mppause;
struct menudata_mpend mpend;
struct menudata_filesel filesel;
struct menudata_pak pak;
struct menudata_main4mb main4mb;
struct menudata_train train;
} data;
/*0xe24*/ u32 unke24;
/*0xe28*/ u32 unke28;
/*0xe2c*/ u32 unke2c;
/*0xe30*/ u32 unke30;
/*0xe34*/ u16 unke34; // I/O error code
/*0xe38*/ u32 unke38;
@@ -4238,7 +4302,7 @@ struct savefile_setup {
};
struct mpscenario {
struct menu_dialog *optionsdialog;
struct menudialog *optionsdialog;
void (*initfunc)(void);
s32 (*unk08)(void);
void (*resetfunc)(void);
+2 -2
View File
@@ -997,7 +997,7 @@ glabel func00014484
/* 14498: 0c0121bc */ jal osRecvMesg
/* 1449c: 00003025 */ or $a2,$zero,$zero
/* 144a0: 14400049 */ bnez $v0,.L000145c8
/* 144a4: 3c04800a */ lui $a0,%hi(g_MenuStack+0x21ec)
/* 144a4: 3c04800a */ lui $a0,%hi(g_Menus+0x21ec)
/* 144a8: 3c0e8006 */ lui $t6,%hi(var8005ee64)
/* 144ac: 8dceee64 */ lw $t6,%lo(var8005ee64)($t6)
/* 144b0: 3c04800a */ lui $a0,%hi(var80099e78)
@@ -1028,7 +1028,7 @@ glabel func00014484
/* 14510: 91030004 */ lbu $v1,0x4($t0)
/* 14514: 1460000a */ bnez $v1,.L00014540
/* 14518: 00000000 */ nop
/* 1451c: 8c8901ec */ lw $t1,%lo(g_MenuStack+0x21ec)($a0)
/* 1451c: 8c8901ec */ lw $t1,%lo(g_Menus+0x21ec)($a0)
/* 14520: 00095080 */ sll $t2,$t1,0x2
/* 14524: 01495023 */ subu $t2,$t2,$t1
/* 14528: 000a50c0 */ sll $t2,$t2,0x3