From c8b51d49b67c511637e247948b765f24b2a25e5e Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Thu, 24 Sep 2020 22:37:10 +1000 Subject: [PATCH] Decompile menuInitItemPlayerStats --- src/game/game_0e5ce0.c | 23 +++++++---------------- src/gvars/gvars.c | 2 +- src/include/gvars/gvars.h | 2 +- src/include/types.h | 8 ++++++++ 4 files changed, 17 insertions(+), 18 deletions(-) diff --git a/src/game/game_0e5ce0.c b/src/game/game_0e5ce0.c index 8082e42c7..44da9753f 100644 --- a/src/game/game_0e5ce0.c +++ b/src/game/game_0e5ce0.c @@ -11912,22 +11912,13 @@ glabel func0f0ef2fc /* f0ef35c: 00000000 */ nop ); -GLOBAL_ASM( -glabel menuInitItemPlayerStats -/* f0ef360: 27bdffe8 */ addiu $sp,$sp,-24 -/* f0ef364: afbf0014 */ sw $ra,0x14($sp) -/* f0ef368: a4a0000c */ sh $zero,0xc($a1) -/* f0ef36c: 3c028007 */ lui $v0,%hi(g_MpPlayerNum) -/* f0ef370: 8c421448 */ lw $v0,%lo(g_MpPlayerNum)($v0) -/* f0ef374: 3c01800a */ lui $at,%hi(var8009deb0) -/* f0ef378: 00220821 */ addu $at,$at,$v0 -/* f0ef37c: 0fc39e66 */ jal func0f0e7998 -/* f0ef380: a022deb0 */ sb $v0,%lo(var8009deb0)($at) -/* f0ef384: 8fbf0014 */ lw $ra,0x14($sp) -/* f0ef388: 27bd0018 */ addiu $sp,$sp,0x18 -/* f0ef38c: 03e00008 */ jr $ra -/* f0ef390: 00000000 */ nop -); +void menuInitItemPlayerStats(struct menuitem *item, union menuitemtickdata *data) +{ + data->dropdown.unk0c = 0; + var8009deb0[g_MpPlayerNum] = g_MpPlayerNum; + + func0f0e7998(item, data); +} GLOBAL_ASM( glabel func0f0ef394 diff --git a/src/gvars/gvars.c b/src/gvars/gvars.c index f504245c3..39369ee81 100644 --- a/src/gvars/gvars.c +++ b/src/gvars/gvars.c @@ -15366,7 +15366,7 @@ u32 g_NextHudMessageId = 0; u32 var8009dea4 = 0; u32 var8009dea8 = 0; u32 var8009deac = 0; -u32 var8009deb0 = 0; +u8 var8009deb0[4] = {0}; u32 var8009deb4 = 0; u32 var8009deb8 = 0; u32 var8009debc = 0; diff --git a/src/include/gvars/gvars.h b/src/include/gvars/gvars.h index 88536f358..6a9774d6f 100644 --- a/src/include/gvars/gvars.h +++ b/src/include/gvars/gvars.h @@ -634,7 +634,7 @@ extern u32 var8009de78; extern u32 var8009de98; extern u32 var8009de9c; extern u32 g_NextHudMessageId; -extern u32 var8009deb0; +extern u8 var8009deb0[4]; extern char g_CheatMarqueeString[]; extern u32 var8009dfbc; extern s32 var8009dfc0; diff --git a/src/include/types.h b/src/include/types.h index e9c0e9c82..3e1256c54 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -3258,6 +3258,13 @@ struct menuitemtickdata_controller { s8 unk04; }; +struct menuitemtickdata_dropdown { + u32 unk00; + u32 unk04; + u32 unk08; + u16 unk0c; +}; + struct menuitemtickdata_marquee { u16 totalmoved; u16 sum; @@ -3282,6 +3289,7 @@ struct menuitemtickdata_slider { union menuitemtickdata { struct menuitemtickdata_controller controller; + struct menuitemtickdata_dropdown dropdown; struct menuitemtickdata_marquee marquee; struct menuitemtickdata_ranking ranking; struct menuitemtickdata_scrollable scrollable;