Mario Kart 64
|
#include <libultraship.h>
#include <macros.h>
#include <defines.h>
#include <common_structs.h>
#include <mk64.h>
#include <stubs.h>
#include "menus.h"
#include "main.h"
#include "code_800029B0.h"
#include "actors.h"
#include "audio/external.h"
#include "code_80005FD0.h"
#include "menu_items.h"
#include "code_800AF9B0.h"
#include "save.h"
#include "replays.h"
#include "save_data.h"
#include <sounds.h>
#include "spawn_players.h"
#include "port/Game.h"
Functions | |
void | update_menus (void) |
void | options_menu_act (struct Controller *controller, u16 controllerIdx) |
void | data_menu_act (struct Controller *controller, UNUSED u16 controllerIdx) |
void | course_data_menu_act (struct Controller *controller, UNUSED u16 controllerIdx) |
void | logo_intro_menu_act (struct Controller *controller, UNUSED u16 controllerIdx) |
void | controller_pak_menu_act (struct Controller *controller, UNUSED u16 controllerIdx) |
void | splash_menu_act (struct Controller *controller, u16 controllerIdx) |
void | setup_game_mode_selected (void) |
bool | is_character_spot_free (s32 gridId) |
void | player_select_menu_act (struct Controller *controller, u16 controllerIdx) |
u32 | WorldNextCup (void) |
u32 | WorldPreviousCup (void) |
u32 | GetCupIndex (void) |
void | course_select_menu_act (struct Controller *controller, u16 controllerIdx) |
void | load_menu_states (s32 menuSelection) |
void | reset_cycle_flash_menu (void) |
void | set_sound_mode (void) |
bool | is_screen_being_faded (void) |
UNUSED void | debug_print_ghost_kart_character_id (s32 arg0, s32 arg1) |
void controller_pak_menu_act | ( | struct Controller * | controller, |
UNUSED u16 | controllerIdx ) |
Navigation of the controller pak table data
void course_data_menu_act | ( | struct Controller * | controller, |
UNUSED u16 | controllerIdx ) |
Navigation of the course records data menu
void course_select_menu_act | ( | struct Controller * | controller, |
u16 | controllerIdx ) |
Navigation of the map select course menu screen
void data_menu_act | ( | struct Controller * | controller, |
UNUSED u16 | controllerIdx ) |
Navigation of the data menu
UNUSED void debug_print_ghost_kart_character_id | ( | s32 | arg0, |
s32 | arg1 ) |
Unused debug function, prints the character id for the player and both controller pak ghosts
u32 GetCupIndex | ( | void | ) |
bool is_character_spot_free | ( | s32 | gridId | ) |
Navigation of the main game mode select screen Check if there is no currently selected and/or hovered character at grid position gridId
bool is_screen_being_faded | ( | void | ) |
Checks is a fade render mode is active so menus can't be interacted while a fade transition is active
void load_menu_states | ( | s32 | menuSelection | ) |
Loads menu states so they are preserved between menu changes
void logo_intro_menu_act | ( | struct Controller * | controller, |
UNUSED u16 | controllerIdx ) |
On input skip logo screen
void options_menu_act | ( | struct Controller * | controller, |
u16 | controllerIdx ) |
Navigation of the options menu
void player_select_menu_act | ( | struct Controller * | controller, |
u16 | controllerIdx ) |
Navigation of the player select screen Grid positions are from right to left, then top to bottom
void reset_cycle_flash_menu | ( | void | ) |
Resets when moving cursor option or after a fade
void set_sound_mode | ( | void | ) |
Changes sound mode pack
void setup_game_mode_selected | ( | void | ) |
void splash_menu_act | ( | struct Controller * | controller, |
u16 | controllerIdx ) |
Navigation of the main splash start screen menu Also handles debug menu options
void update_menus | ( | void | ) |
Includes opening logo and splash screens
u32 WorldNextCup | ( | void | ) |
u32 WorldPreviousCup | ( | void | ) |
s8 gBattleResultCursorSelection |
bool gCharacterGridIsSelected[4] |
s8 gCharacterGridSelections[4] |
s8 gControllerPakMenuSelection |
s8 gControllerPakScrollDirection = CONTROLLER_PAK_SCROLL_DIR_NONE |
s8 gControllerPakSelectedTableRow = 0 |
s8 gControllerPakVisibleTableRows[12] = { 0, 0, 1, 2, 3, 4, 5, 6, 0, 0, 0, 0 } |
s8 gCourseIndexInCup |
bool gCourseMapInit |
s8 gCourseRecordsMenuSelection |
s8 gCourseRecordsSubMenuSelection |
const s16 gCupCourseOrder[5][4] |
s8 gCupSelection |
s8 gDebugGotoScene |
s8 gDebugMenuSelection |
s8 gDemoUseController |
s32 gFadeModeSelection = FADE_MODE_NONE |
s8 gGameModeMenuColumn[NUM_ROWS_GAME_MODE_MENU] = { 0, 0, 0, 0 } |
const s32 gGameModePlayerSelection[][3] |
s8 gGameModeSubMenuColumn[NUM_COLUMN_GAME_MODE_SUB_MENU][NUM_ROWS_GAME_MODE_SUB_MENU] |
bool gGhostPlayerInit |
f32 gIntroModelPosX |
f32 gIntroModelPosY |
f32 gIntroModelPosZ |
f32 gIntroModelRotX |
f32 gIntroModelRotY |
f32 gIntroModelRotZ |
f32 gIntroModelScale |
s32 gIntroModelZEye |
BSS
s8 gMainMenuSelection |
s32 gMenuDelayTimer |
s32 gMenuFadeType |
s32 gMenuSelection = HARBOUR_MASTERS_MENU |
Data
s32 gMenuTimingCounter |
s8 gNextDemoId = 0 |
s8 gPlayerCount |
const s8 gPlayerModeSelection[] = { 1, 2, 1, 1 } |
s8 gPlayerSelectMenuSelection |
s8 gScreenModeListIndex |
u8 gSoundMode |
s8 gSubMenuSelection |
s8 gTimeTrialDataCourseIndex |
s8 gTimeTrialsResultCursorSelection |
s8 gVersusResultCursorSelection |
const s8 sCharacterGridOrder[] |
const s8 sGameModePlayerColumnDefault[][3] |
const s8 sGameModePlayerColumnExtra[][3] |
const s8 sScreenModeIdxFromPlayerMode[4] = { 0, 1, 3, 4 } |
const s8 sScreenModePlayerCount[] = { 1, 2, 2, 3, 4 } |
const s8 sScreenModePlayerTable[] |
Rodata
const union GameModePack sSoundMenuPack = { { SOUND_STEREO, SOUND_HEADPHONES, SOUND_UNUSED, SOUND_MONO } } |
s8 sTempCupSelection |
u32 sVIGammaOffDitherOn = (OS_VI_GAMMA_OFF | OS_VI_DITHER_FILTER_ON) |
const s8 unref_800F2BDC[4] = { 1, 0, 0, 0 } |
s8 unref_D_800E86D4[12] = { 0 } |
s8 unref_D_800E86E0[4] = { 0, 0, 0, 1 } |
s8 unref_D_8018EE0C |