From 53fbeb7a812e2bf23baff5d9efa919f86fcdfa6d Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Wed, 18 Mar 2020 21:22:31 +1000 Subject: [PATCH] Identify symbols related to MP player stats --- src/game/data/data_020df0.c | 40 +++++++++++++++++----------------- src/game/game_177e00.c | 2 +- src/game/game_179060.c | 34 ++++++++++++++--------------- src/include/game/game_177e00.h | 2 +- src/include/game/game_179060.h | 34 ++++++++++++++--------------- src/include/types.h | 32 +++++++++++++-------------- 6 files changed, 72 insertions(+), 72 deletions(-) diff --git a/src/game/data/data_020df0.c b/src/game/data/data_020df0.c index c5b89e919..bab53a01c 100644 --- a/src/game/data/data_020df0.c +++ b/src/game/data/data_020df0.c @@ -10226,7 +10226,7 @@ u16 rankings[] = { // 2a950 struct menu_item menuitems_2a950[] = { { MENUITEMTYPE_LABEL, 0, 0x01000010, (u32)&mpGetCurrentPlayerName, (u32)&func0f17853c, menuhandler001785c4 }, - { MENUITEMTYPE_LABEL, 0, 0x01000000, L_MPMENU(261), (u32)&func0f178bb0, menuhandler00178a94 }, // "Title:" + { MENUITEMTYPE_LABEL, 0, 0x01000000, L_MPMENU(261), (u32)&mpMenuTextPlayerTitle, menuhandler00178a94 }, // "Title:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_LABEL, 0, L_AME(16), L_MPMENU(262), 0x00000000, NULL }, // "Weapon of Choice:" { MENUITEMTYPE_LABEL, 0, 0x00000120, (u32)&func0f178450, 0x00000000, NULL }, @@ -10571,33 +10571,33 @@ u32 var800851d4 = 0x2e280000; // 2b1f8 struct menu_item menuitems_mpplayerstats[] = { - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(146), (u32)&func0f17a658, NULL }, // "Kills:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(147), (u32)&func0f17a6ac, NULL }, // "Deaths:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(148), (u32)&func0f17ace8, NULL }, // "Accuracy:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(149), (u32)&func0f17a7fc, NULL }, // "Head Shots:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(146), (u32)&mpMenuTextKills, NULL }, // "Kills:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(147), (u32)&mpMenuTextDeaths, NULL }, // "Deaths:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(148), (u32)&mpMenuTextAccuracy, NULL }, // "Accuracy:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(149), (u32)&mpMenuTextHeadShots, NULL }, // "Head Shots:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(150), (u32)&func0f17a9a0, NULL }, // "Ammo Used:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(151), (u32)&func0f17af9c, NULL }, // "Damage Dealt:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(152), (u32)&func0f17af1c, NULL }, // "Pain Received:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(150), (u32)&mpMenuTextAmmoUsed, NULL }, // "Ammo Used:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(151), (u32)&mpMenuTextDamageDealt, NULL }, // "Damage Dealt:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(152), (u32)&mpMenuTextPainReceived, NULL }, // "Pain Received:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(153), (u32)&func0f17a700, NULL }, // "Games Played:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(154), (u32)&func0f17a754, NULL }, // "Games Won:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(155), (u32)&func0f17a7a8, NULL }, // "Games Lost:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(156), (u32)&func0f17ab38, NULL }, // "Time:" - { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(157), (u32)&func0f17aaa0, NULL }, // "Distance:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(153), (u32)&mpMenuTextGamesPlayed, NULL }, // "Games Played:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(154), (u32)&mpMenuTextGamesWon, NULL }, // "Games Won:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(155), (u32)&mpMenuTextGamesLost, NULL }, // "Games Lost:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(156), (u32)&mpMenuTextTime, NULL }, // "Time:" + { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(157), (u32)&mpMenuTextDistance, NULL }, // "Distance:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_LABEL, 0, L_AME(16), L_MPMENU(158), 0x00000000, NULL }, // "Medals Won:" - { MENUITEMTYPE_LABEL, 2, 0x00200000, L_MPMENU(159), (u32)&func0f17a850, menuhandlerMpMedal }, // "Accuracy:" - { MENUITEMTYPE_LABEL, 1, 0x00200000, L_MPMENU(160), (u32)&func0f17a8a4, menuhandlerMpMedal }, // "Head Shot:" - { MENUITEMTYPE_LABEL, 0, 0x00200000, L_MPMENU(161), (u32)&func0f17a8f8, menuhandlerMpMedal }, // "KillMaster:" - { MENUITEMTYPE_LABEL, 3, 0x00200000, L_MPMENU(162), (u32)&func0f17a94c, menuhandlerMpMedal }, // "Survivor:" + { MENUITEMTYPE_LABEL, 2, 0x00200000, L_MPMENU(159), (u32)&mpMenuTextMedalAccuracy, menuhandlerMpMedal }, // "Accuracy:" + { MENUITEMTYPE_LABEL, 1, 0x00200000, L_MPMENU(160), (u32)&mpMenuTextMedalHeadShot, menuhandlerMpMedal }, // "Head Shot:" + { MENUITEMTYPE_LABEL, 0, 0x00200000, L_MPMENU(161), (u32)&mpMenuTextMedalKillMaster, menuhandlerMpMedal }, // "KillMaster:" + { MENUITEMTYPE_LABEL, 3, 0x00200000, L_MPMENU(162), (u32)&mpMenuTextMedalSurvivor, menuhandlerMpMedal }, // "Survivor:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(163), 0x00000000, NULL }, // "Your Title:" - { MENUITEMTYPE_LABEL, 0, 0x00000020, (u32)&func0f178bb0, 0x00000000, NULL }, + { MENUITEMTYPE_LABEL, 0, 0x00000020, (u32)&mpMenuTextPlayerTitle, 0x00000000, NULL }, { MENUITEMTYPE_LABEL, 0, L_AME(0), L_MPWEAPONS(219), 0x00000000, menuhandlerMpUsernamePassword }, // "USERNAME:" - { MENUITEMTYPE_LABEL, 0, 0x00000220, (u32)&func0f17b408, 0x00000000, menuhandlerMpUsernamePassword }, + { MENUITEMTYPE_LABEL, 0, 0x00000220, (u32)&mpMenuTextUsernamePassword, 0x00000000, menuhandlerMpUsernamePassword }, { MENUITEMTYPE_LABEL, 0, L_AME(0), L_MPWEAPONS(220), 0x00000000, menuhandlerMpUsernamePassword }, // "PASSWORD:" - { MENUITEMTYPE_LABEL, 1, 0x00000220, (u32)&func0f17b408, 0x00000000, menuhandlerMpUsernamePassword }, + { MENUITEMTYPE_LABEL, 1, 0x00000220, (u32)&mpMenuTextUsernamePassword, 0x00000000, menuhandlerMpUsernamePassword }, { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_SELECTABLE, 0, 0x00000008, L_MPMENU(164), 0x00000000, NULL }, // "Back" { MENUITEMTYPE_END, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, diff --git a/src/game/game_177e00.c b/src/game/game_177e00.c index 83e2580b6..f552b57a9 100644 --- a/src/game/game_177e00.c +++ b/src/game/game_177e00.c @@ -908,7 +908,7 @@ glabel menuhandler00178a94 ); GLOBAL_ASM( -glabel func0f178bb0 +glabel mpMenuTextPlayerTitle /* f178bb0: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f178bb4: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f178bb8: 27bdffe8 */ addiu $sp,$sp,-24 diff --git a/src/game/game_179060.c b/src/game/game_179060.c index 94558a07a..a221d8f44 100644 --- a/src/game/game_179060.c +++ b/src/game/game_179060.c @@ -1395,7 +1395,7 @@ glabel menuhandler0017a20c ); GLOBAL_ASM( -glabel func0f17a658 +glabel mpMenuTextKills /* f17a658: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a65c: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a660: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1420,7 +1420,7 @@ glabel func0f17a658 ); GLOBAL_ASM( -glabel func0f17a6ac +glabel mpMenuTextDeaths /* f17a6ac: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a6b0: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a6b4: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1445,7 +1445,7 @@ glabel func0f17a6ac ); GLOBAL_ASM( -glabel func0f17a700 +glabel mpMenuTextGamesPlayed /* f17a700: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a704: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a708: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1470,7 +1470,7 @@ glabel func0f17a700 ); GLOBAL_ASM( -glabel func0f17a754 +glabel mpMenuTextGamesWon /* f17a754: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a758: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a75c: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1495,7 +1495,7 @@ glabel func0f17a754 ); GLOBAL_ASM( -glabel func0f17a7a8 +glabel mpMenuTextGamesLost /* f17a7a8: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a7ac: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a7b0: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1520,7 +1520,7 @@ glabel func0f17a7a8 ); GLOBAL_ASM( -glabel func0f17a7fc +glabel mpMenuTextHeadShots /* f17a7fc: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a800: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a804: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1545,7 +1545,7 @@ glabel func0f17a7fc ); GLOBAL_ASM( -glabel func0f17a850 +glabel mpMenuTextMedalAccuracy /* f17a850: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a854: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a858: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1570,7 +1570,7 @@ glabel func0f17a850 ); GLOBAL_ASM( -glabel func0f17a8a4 +glabel mpMenuTextMedalHeadShot /* f17a8a4: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a8a8: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a8ac: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1595,7 +1595,7 @@ glabel func0f17a8a4 ); GLOBAL_ASM( -glabel func0f17a8f8 +glabel mpMenuTextMedalKillMaster /* f17a8f8: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a8fc: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a900: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1620,7 +1620,7 @@ glabel func0f17a8f8 ); GLOBAL_ASM( -glabel func0f17a94c +glabel mpMenuTextMedalSurvivor /* f17a94c: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a950: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a954: 27bdffe8 */ addiu $sp,$sp,-24 @@ -1645,7 +1645,7 @@ glabel func0f17a94c ); GLOBAL_ASM( -glabel func0f17a9a0 +glabel mpMenuTextAmmoUsed /* f17a9a0: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17a9a4: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17a9a8: 3c06800b */ lui $a2,%hi(g_MpPlayers+0x80) @@ -1720,7 +1720,7 @@ glabel func0f17a9a0 ); GLOBAL_ASM( -glabel func0f17aaa0 +glabel mpMenuTextDistance /* f17aaa0: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17aaa4: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17aaa8: 3c18800b */ lui $t8,%hi(g_MpPlayers+0x6c) @@ -1763,7 +1763,7 @@ glabel func0f17aaa0 ); GLOBAL_ASM( -glabel func0f17ab38 +glabel mpMenuTextTime /* f17ab38: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17ab3c: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17ab40: 3c02800b */ lui $v0,%hi(g_MpPlayers+0x68) @@ -1891,7 +1891,7 @@ glabel func0f17ab38 ); GLOBAL_ASM( -glabel func0f17ace8 +glabel mpMenuTextAccuracy /* f17ace8: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17acec: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17acf0: 3c18800b */ lui $t8,%hi(g_MpPlayers+0x70) @@ -2057,7 +2057,7 @@ glabel var7f1b80ec ); GLOBAL_ASM( -glabel func0f17af1c +glabel mpMenuTextPainReceived /* f17af1c: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17af20: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17af24: 3c18800b */ lui $t8,%hi(g_MpPlayers+0x78) @@ -2094,7 +2094,7 @@ glabel func0f17af1c ); GLOBAL_ASM( -glabel func0f17af9c +glabel mpMenuTextDamageDealt /* f17af9c: 3c0e8007 */ lui $t6,%hi(g_MpPlayerNum) /* f17afa0: 8dce1448 */ lw $t6,%lo(g_MpPlayerNum)($t6) /* f17afa4: 3c18800b */ lui $t8,%hi(g_MpPlayers+0x74) @@ -2390,7 +2390,7 @@ s32 menuhandlerMpUsernamePassword(u32 operation, struct menu_item *item, s32 *va } GLOBAL_ASM( -glabel func0f17b408 +glabel mpMenuTextUsernamePassword /* f17b408: 3c0f8008 */ lui $t7,%hi(var800851bc) /* f17b40c: 25ef51bc */ addiu $t7,$t7,%lo(var800851bc) /* f17b410: 8de10000 */ lw $at,0x0($t7) diff --git a/src/include/game/game_177e00.h b/src/include/game/game_177e00.h index 3313ab1c4..e89659f33 100644 --- a/src/include/game/game_177e00.h +++ b/src/include/game/game_177e00.h @@ -16,7 +16,7 @@ u32 func0f17853c(void); s32 menuhandler001785c4(u32, u32, u32 *); s32 menuhandler001786d8(u32, u32, u32 *); s32 menuhandler00178a94(u32, u32, u32 *); -u32 func0f178bb0(void); +u32 mpMenuTextPlayerTitle(void); s32 menuhandler00178bf4(u32, u32, u32 *); u32 func0f178dbc(void); u32 func0f178ef0(void); diff --git a/src/include/game/game_179060.h b/src/include/game/game_179060.h index 18f1c27a7..045d29261 100644 --- a/src/include/game/game_179060.h +++ b/src/include/game/game_179060.h @@ -11,26 +11,26 @@ u32 func0f179b58(void); s32 func0f179da4(u32 operation, struct menu_item *item, s32 *value, s32 arg3, s32 arg4, s32 arg5); s32 menudialog0017a174(u32, u32, u32 *); s32 menuhandler0017a20c(u32, u32, u32 *); -u32 func0f17a658(void); -u32 func0f17a6ac(void); -u32 func0f17a700(void); -u32 func0f17a754(void); -u32 func0f17a7a8(void); -u32 func0f17a7fc(void); -u32 func0f17a850(void); -u32 func0f17a8a4(void); -u32 func0f17a8f8(void); -u32 func0f17a94c(void); -u32 func0f17a9a0(void); -u32 func0f17aaa0(void); -u32 func0f17ab38(void); -u32 func0f17ace8(void); +u32 mpMenuTextKills(void); +u32 mpMenuTextDeaths(void); +u32 mpMenuTextGamesPlayed(void); +u32 mpMenuTextGamesWon(void); +u32 mpMenuTextGamesLost(void); +u32 mpMenuTextHeadShots(void); +u32 mpMenuTextMedalAccuracy(void); +u32 mpMenuTextMedalHeadShot(void); +u32 mpMenuTextMedalKillMaster(void); +u32 mpMenuTextMedalSurvivor(void); +u32 mpMenuTextAmmoUsed(void); +u32 mpMenuTextDistance(void); +u32 mpMenuTextTime(void); +u32 mpMenuTextAccuracy(void); u32 func0f17ad80(void); -u32 func0f17af1c(void); -u32 func0f17af9c(void); +u32 mpMenuTextPainReceived(void); +u32 mpMenuTextDamageDealt(void); s32 menuhandlerMpMedal(u32, u32, u32 *); u32 func0f17b360(void); -u32 func0f17b408(void); +u32 mpMenuTextUsernamePassword(void); s32 func0f17b4f8(u32 operation, struct menu_item *item, s32 *value, s32 arg3, s32 arg4); u32 func0f17b8b0(void); u32 func0f17b8f0(void); diff --git a/src/include/types.h b/src/include/types.h index 96bbce0b4..9999a1f25 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -4365,22 +4365,22 @@ struct mpplayer { /*0x48*/ u16 options; /*0x4c*/ u32 unk4c; /*0x50*/ u16 unk50; - /*0x54*/ u32 unk54; - /*0x58*/ u32 unk58; - /*0x5c*/ u32 unk5c; - /*0x60*/ u32 unk60; - /*0x64*/ u32 unk64; - /*0x68*/ u32 unk68; - /*0x6c*/ u32 unk6c; - /*0x70*/ u32 unk70; - /*0x74*/ u32 unk74; - /*0x78*/ u32 unk78; - /*0x7c*/ u32 unk7c; - /*0x80*/ u32 unk80; - /*0x84*/ u32 unk84; - /*0x88*/ u32 unk88; - /*0x8c*/ u32 unk8c; - /*0x90*/ u32 unk90; + /*0x54*/ u32 kills; + /*0x58*/ u32 deaths; + /*0x5c*/ u32 gamesplayed; + /*0x60*/ u32 gameswon; + /*0x64*/ u32 gameslost; + /*0x68*/ u32 time; + /*0x6c*/ f32 distance; + /*0x70*/ f32 accuracy; + /*0x74*/ f32 damagedealt; + /*0x78*/ f32 painreceived; + /*0x7c*/ u32 headshots; + /*0x80*/ u32 ammoused; + /*0x84*/ u32 accuracymedals; + /*0x88*/ u32 headshotmedals; + /*0x8c*/ u32 killmastermedals; + /*0x90*/ u32 survivormedals; /*0x94*/ u8 unk94; /*0x95*/ u8 title; /*0x96*/ u8 unk96;