SSBM Decomp
Loading...
Searching...
No Matches
mnmain.h File Reference
#include <placeholder.h>
#include <platform.h>
#include "gm/forward.h"
#include "mn/forward.h"
#include <dolphin/gx.h>
#include <dolphin/mtx.h>
#include <baselib/object.h>

Go to the source code of this file.

Data Structures

struct  MainMenuData
 
struct  MainMenuPanelData
 
struct  MenuFlow
 
struct  MenuInputState
 

Functions

u8 mn_802295AC (void)
 
u32 mn_80229624 (u32)
 
void mn_80229860 (s8)
 
void mn_80229894 (s32, u16, s32)
 
bool mn_80229938 (s32 arg0, s32 arg1)
 checks if a menu selection is locked
 
int mn_80229A04 (MenuKind, int)
 returns the amount of unlocked selections
 
HSD_GObjmn_80229B2C (void)
 
void fn_80229BF4 (HSD_GObj *)
 
HSD_GObjmn_80229DC0 (void)
 
void mn_80229F60 (HSD_GObj *, HSD_JObj *, MainMenuSelection)
 cursor animation on hover
 
void mn_8022A440 (HSD_GObj *, HSD_JObj *, MainMenuSelection)
 cursor animation on unhover
 
void mn_8022A5D0 (HSD_GObj *, MainMenuSelection)
 updates cursor animation
 
void mn_8022ADD8 (HSD_GObj *, bool)
 
void fn_8022AF10 (HSD_GObj *)
 
void fn_8022AFEC (HSD_GObj *)
 main menu think func that handles the updating
 
HSD_GObjmn_8022B3A0 (u8)
 sets up a new menu when transitioning from another.
 
void mn_8022BA1C (HSD_GObj *)
 updates menu camera rotation from the cstick
 
void fn_8022BCD4 (HSD_GObj *, int)
 
HSD_GObjmn_8022BCF8 (void)
 
void mn_8022BD6C (void)
 
void mn_8022BD8C (void)
 
void fn_8022BDB4 (HSD_GObj *, int)
 
HSD_GObjmn_8022BE34 (void)
 
void mn_8022BEDC (HSD_GObj *)
 
GXColor * mn_8022BFBC (int)
 
int mn_8022C010 (int, int)
 gets the menu light color index
 
void mn_8022C068 (HSD_LObj *, int, int)
 
void fn_8022C128 (HSD_GObj *)
 
void mn_8022C304 (void)
 
void mn_8022C4F4 (HSD_GObj *)
 Special Vs menu think.
 
void mn_8022C7CC (HSD_GObj *)
 Stadium menu think.
 
void mn_8022CA54 (HSD_GObj *)
 Records menu think.
 
void mn_8022CC28 (HSD_GObj *)
 Regular Match menu think.
 
void mn_8022CE6C (HSD_GObj *)
 Data menu think.
 
void mn_8022D104 (HSD_GObj *)
 Settings menu think.
 
void mn_8022D34C (HSD_GObj *)
 Trohpy menu think.
 
void mn_8022D594 (HSD_GObj *)
 Versus menu think.
 
void mn_8022D7F4 (HSD_GObj *)
 Singleplayer menu think.
 
void mn_8022DB10 (HSD_GObj *)
 Main menu think.
 
void mn_8022DD38_OnFrame (void)
 
void mn_8022DDA8_OnEnter (MenuEnterData *)
 
bool mn_8022E950 (int)
 
void mn_8022E978 (u8 item_idx, u8 enable)
 set/unset item mask bit
 
void mn_8022EA08 (char *buf, u32 num)
 
void mn_8022EA78 (char *buf, int buf_end, u32 num)
 
void mn_8022EAE0 (HSD_GObj *)
 mn_8022EA08
 
void mn_8022EB04 (void *user_data)
 
s32 mn_8022EB24 (s32, s32)
 
s32 mn_8022EB78 (s32)
 
void mn_8022EBDC (void)
 mn_8022EB24
 
float mn_8022EC18 (HSD_JObj *, float *, HSD_TypeMask)
 
float mn_8022ED6C (HSD_JObj *, AnimLoopSettings *)
 updates a jobjs animation in accordance to the passed in anim loop setting
 
float mn_8022EE84 (HSD_JObj *arg0, AnimLoopSettings *arg1, HSD_TypeMask arg2)
 
float mn_8022EFD8 (HSD_JObj *, AnimLoopSettings *)
 updates a jobjs looping animation.
 
void mn_8022F0F0 (int)
 
void mn_8022F138 (u16, u16)
 
void mn_8022F1A8 (u16, u16)
 
bool mn_8022F218 (void)
 
void mn_8022F268 (void)
 
f32 mn_8022F298 (HSD_JObj *)
 returns the current frame of jobjs animation
 
void mn_8022F360 (HSD_AObj *aobj, void *obj, u32 arg2)
 
void mn_8022F3D8 (HSD_JObj *, u8, HSD_TypeMask)
 
int mn_8022F410 (float *x, float *target, float dx)
 Moves x toward a target value in increments of dx.
 
int mn_8022F470 (int *x, int *target, int dx)
 Same as mn_8022F410, but for int values instead of float.
 
void mn_8022F4CC (void)
 

Variables

MenuFlow mn_804A04F0
 
HSD_Archivemn_804D6BB8
 
MenuInputState mn_804D6BC8
 

Function Documentation

◆ mn_802295AC()

u8 mn_802295AC ( void  )

◆ mn_80229624()

u32 mn_80229624 ( u32  slot)

◆ mn_80229860()

void mn_80229860 ( s8  pending_major)

◆ mn_80229894()

void mn_80229894 ( s32  arg0,
u16  arg1,
s32  arg2 
)

◆ mn_80229938()

bool mn_80229938 ( s32  arg0,
s32  arg1 
)

checks if a menu selection is locked

◆ mn_80229A04()

int mn_80229A04 ( MenuKind  kind,
int  selection 
)

returns the amount of unlocked selections

◆ mn_80229B2C()

HSD_GObj * mn_80229B2C ( void  )

◆ fn_80229BF4()

void fn_80229BF4 ( HSD_GObj gobj)

◆ mn_80229DC0()

HSD_GObj * mn_80229DC0 ( void  )

◆ mn_80229F60()

void mn_80229F60 ( HSD_GObj gp,
HSD_JObj root,
MainMenuSelection  selection 
)

cursor animation on hover

◆ mn_8022A440()

void mn_8022A440 ( HSD_GObj gp,
HSD_JObj root,
MainMenuSelection  selection 
)

cursor animation on unhover

◆ mn_8022A5D0()

void mn_8022A5D0 ( HSD_GObj gp,
MainMenuSelection  selection 
)

updates cursor animation

◆ mn_8022ADD8()

void mn_8022ADD8 ( HSD_GObj gp,
bool  selection_changed 
)
Todo:
there is probably a inline for this whole block

◆ fn_8022AF10()

void fn_8022AF10 ( HSD_GObj gp)

◆ fn_8022AFEC()

void fn_8022AFEC ( HSD_GObj gp)

main menu think func that handles the updating

Todo:
figure out the inlines
Todo:
problem spot

◆ mn_8022B3A0()

HSD_GObj * mn_8022B3A0 ( u8  state)

sets up a new menu when transitioning from another.

◆ mn_8022BA1C()

void mn_8022BA1C ( HSD_GObj gp)

updates menu camera rotation from the cstick

◆ fn_8022BCD4()

void fn_8022BCD4 ( HSD_GObj gobj,
int  unused 
)

◆ mn_8022BCF8()

HSD_GObj * mn_8022BCF8 ( void  )

◆ mn_8022BD6C()

void mn_8022BD6C ( void  )

◆ mn_8022BD8C()

void mn_8022BD8C ( void  )

◆ fn_8022BDB4()

void fn_8022BDB4 ( HSD_GObj gobj,
int  unused 
)

◆ mn_8022BE34()

HSD_GObj * mn_8022BE34 ( void  )

◆ mn_8022BEDC()

void mn_8022BEDC ( HSD_GObj gobj)

◆ mn_8022BFBC()

GXColor * mn_8022BFBC ( int  arg0)

◆ mn_8022C010()

int mn_8022C010 ( int  menu_kind,
int  selection 
)

gets the menu light color index

◆ mn_8022C068()

void mn_8022C068 ( HSD_LObj lobj,
int  unused,
int  div 
)
inline

◆ fn_8022C128()

void fn_8022C128 ( HSD_GObj arg0)

◆ mn_8022C304()

void mn_8022C304 ( void  )

◆ mn_8022C4F4()

void mn_8022C4F4 ( HSD_GObj gp)

Special Vs menu think.

◆ mn_8022C7CC()

void mn_8022C7CC ( HSD_GObj gp)

Stadium menu think.

◆ mn_8022CA54()

void mn_8022CA54 ( HSD_GObj gp)

Records menu think.

◆ mn_8022CC28()

void mn_8022CC28 ( HSD_GObj gp)

Regular Match menu think.

◆ mn_8022CE6C()

void mn_8022CE6C ( HSD_GObj gp)

Data menu think.

◆ mn_8022D104()

void mn_8022D104 ( HSD_GObj gp)

Settings menu think.

◆ mn_8022D34C()

void mn_8022D34C ( HSD_GObj gp)

Trohpy menu think.

◆ mn_8022D594()

void mn_8022D594 ( HSD_GObj gp)

Versus menu think.

◆ mn_8022D7F4()

void mn_8022D7F4 ( HSD_GObj gp)

Singleplayer menu think.

◆ mn_8022DB10()

void mn_8022DB10 ( HSD_GObj gp)

Main menu think.

Todo:
casting u64 here makes it match, but i dont know why

◆ mn_8022DD38_OnFrame()

void mn_8022DD38_OnFrame ( void  )

◆ mn_8022DDA8_OnEnter()

void mn_8022DDA8_OnEnter ( MenuEnterData data)

◆ mn_8022E950()

bool mn_8022E950 ( int  arg0)

◆ mn_8022E978()

void mn_8022E978 ( u8  item_idx,
u8  enable 
)

set/unset item mask bit

◆ mn_8022EA08()

void mn_8022EA08 ( char *  buf,
u32  num 
)

◆ mn_8022EA78()

void mn_8022EA78 ( char *  buf,
int  buf_end,
u32  num 
)

◆ mn_8022EAE0()

void mn_8022EAE0 ( HSD_GObj gobj)

◆ mn_8022EB04()

void mn_8022EB04 ( void *  user_data)

◆ mn_8022EB24()

s32 mn_8022EB24 ( s32  arg0,
s32  arg1 
)

◆ mn_8022EB78()

s32 mn_8022EB78 ( s32  num)

◆ mn_8022EBDC()

void mn_8022EBDC ( void  )

◆ mn_8022EC18()

float mn_8022EC18 ( HSD_JObj arg0,
float *  arg1,
HSD_TypeMask  arg2 
)

◆ mn_8022ED6C()

float mn_8022ED6C ( HSD_JObj jobj,
AnimLoopSettings anim_loop 
)

updates a jobjs animation in accordance to the passed in anim loop setting

Parameters
jobjHSD_JObj*
anim_loopAnimLoopSettings*
Returns
the current frame of the jobjs animation

◆ mn_8022EE84()

float mn_8022EE84 ( HSD_JObj arg0,
AnimLoopSettings arg1,
HSD_TypeMask  arg2 
)

◆ mn_8022EFD8()

float mn_8022EFD8 ( HSD_JObj arg0,
AnimLoopSettings arg1 
)

updates a jobjs looping animation.

Parameters
arg0HSD_JObj
arg1AnimLoopSettings

◆ mn_8022F0F0()

void mn_8022F0F0 ( int  arg0)

◆ mn_8022F138()

void mn_8022F138 ( u16  arg0,
u16  arg1 
)

◆ mn_8022F1A8()

void mn_8022F1A8 ( u16  arg0,
u16  arg1 
)

◆ mn_8022F218()

bool mn_8022F218 ( void  )

◆ mn_8022F268()

void mn_8022F268 ( void  )

◆ mn_8022F298()

f32 mn_8022F298 ( HSD_JObj jobj)

returns the current frame of jobjs animation

◆ mn_8022F360()

void mn_8022F360 ( HSD_AObj aobj,
void *  obj,
u32  arg2 
)

◆ mn_8022F3D8()

void mn_8022F3D8 ( HSD_JObj jobj,
u8  arg1,
HSD_TypeMask  mask 
)

◆ mn_8022F410()

int mn_8022F410 ( float *  x,
float *  target,
float  dx 
)

Moves x toward a target value in increments of dx.

Returns +1 if x was increased toward the target value, -1 if it was decreased toward the target value, and 0 if it was already at the target and was unchanged.

◆ mn_8022F470()

int mn_8022F470 ( int *  x,
int *  target,
int  dx 
)

Same as mn_8022F410, but for int values instead of float.

◆ mn_8022F4CC()

void mn_8022F4CC ( void  )

Variable Documentation

◆ mn_804A04F0

MenuFlow mn_804A04F0
extern

◆ mn_804D6BB8

HSD_Archive* mn_804D6BB8
extern

◆ mn_804D6BC8

MenuInputState mn_804D6BC8
extern