mirror of https://github.com/n64decomp/mk64.git
Various documentation (#309)
* Various matches * Various documentation * fix
This commit is contained in:
parent
da05f2e245
commit
eda4a3f117
|
@ -250,7 +250,7 @@ glabel gActorList
|
|||
glabel D_80162578
|
||||
.skip 112
|
||||
|
||||
glabel D_801625E8
|
||||
glabel gDebugPathCount
|
||||
.skip 2
|
||||
|
||||
glabel sIsController1Unplugged
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
glabel func_800729EC
|
||||
/* 0735EC 800729EC 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0735F0 800729F0 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 0735F4 800729F4 0C0A3B6A */ jal func_8028EDA8
|
||||
/* 0735F4 800729F4 0C0A3B6A */ jal start_race
|
||||
/* 0735F8 800729F8 AFA40018 */ sw $a0, 0x18($sp)
|
||||
/* 0735FC 800729FC 0C01C922 */ jal func_80072488
|
||||
/* 073600 80072A00 8FA40018 */ lw $a0, 0x18($sp)
|
||||
|
|
|
@ -1,6 +1,60 @@
|
|||
#ifndef DEFINES_H
|
||||
#define DEFINES_H
|
||||
|
||||
/**
|
||||
* Enable debug mode
|
||||
*
|
||||
* Press start to skip through menus
|
||||
*
|
||||
* Toggle resource meters by holding R and tapping B. L must not be held.
|
||||
*
|
||||
* Reset to start screen by holding A, B, R, and R.
|
||||
*
|
||||
* View player direction and currentPathPoint in a single player race during staging tap L while holding A and B.
|
||||
* Turn off this UI by tapping R while holding A and B.
|
||||
* @bug This looks like it should work at any point in the race.
|
||||
*
|
||||
* Set player 1 to the final lap by tapping D-pad up.
|
||||
* Set player 1 and player 2 to the final lap by tapping D-pad right.
|
||||
* Set player all players to the final lap by tapping D-pad down.
|
||||
*
|
||||
* Immediately start the race if any controller presses Z.
|
||||
*
|
||||
* As the ceremony cutscene starts hold a C or D-pad to switch characters.
|
||||
* C UP = LUIGI
|
||||
* C LEFT = YOSHI
|
||||
* C RIGHT = TOAD
|
||||
* C DOWN = DK
|
||||
* D-pad UP = WARIO
|
||||
* D-pad LEFT = PEACH
|
||||
* D-pad RIGHT = BOWSER
|
||||
* D-pad DOWN = MARIO
|
||||
*
|
||||
*/
|
||||
#define DEBUG_MODE FALSE
|
||||
#define HOLD_ALL_DPAD_AND_C_BUTTONS (U_JPAD | L_JPAD | R_JPAD | D_JPAD | U_CBUTTONS | L_CBUTTONS | R_CBUTTONS | D_CBUTTONS)
|
||||
|
||||
/**
|
||||
* Options for gDebugMenuSelection
|
||||
*/
|
||||
#define DEBUG_MENU_DISABLED 1
|
||||
#define DEBUG_MENU_DEBUG_MODE 2
|
||||
#define DEBUG_MENU_COURSE 3
|
||||
#define DEBUG_MENU_SCREEN_MODE 4
|
||||
#define DEBUG_MENU_PLAYER 5
|
||||
#define DEBUG_MENU_SOUND_MODE 6
|
||||
#define DEBUG_MENU_GIVE_ALL_GOLD_CUP 7
|
||||
#define DEBUG_MENU_EXITED 64
|
||||
|
||||
/**
|
||||
* Options for gDebugGotoScene
|
||||
*/
|
||||
#define DEBUG_GOTO_RACING 0
|
||||
#define DEBUG_GOTO_ENDING_SEQUENCE 1
|
||||
#define DEBUG_GOTO_CREDITS_SEQUENCE_CC_50 2
|
||||
#define DEBUG_GOTO_CREDITS_SEQUENCE_CC_EXTRA 3
|
||||
|
||||
|
||||
/**
|
||||
* Racing terms:
|
||||
* Staging means aligning a racecar to the starting line.
|
||||
|
@ -138,26 +192,6 @@
|
|||
#define CONTROLLER_PAK_MENU_ERASE_ERROR_NO_PAK 9
|
||||
#define CONTROLLER_PAK_MENU_ERASE_ERROR_PAK_CHANGED 10
|
||||
|
||||
/**
|
||||
* Options for gDebugMenuSelection
|
||||
*/
|
||||
#define DEBUG_MENU_DISABLED 1
|
||||
#define DEBUG_MENU_DEBUG_MODE 2
|
||||
#define DEBUG_MENU_COURSE 3
|
||||
#define DEBUG_MENU_SCREEN_MODE 4
|
||||
#define DEBUG_MENU_PLAYER 5
|
||||
#define DEBUG_MENU_SOUND_MODE 6
|
||||
#define DEBUG_MENU_GIVE_ALL_GOLD_CUP 7
|
||||
#define DEBUG_MENU_EXITED 64
|
||||
|
||||
/**
|
||||
* Options for gDebugGotoScene
|
||||
*/
|
||||
#define DEBUG_GOTO_RACING 0
|
||||
#define DEBUG_GOTO_ENDING_SEQUENCE 1
|
||||
#define DEBUG_GOTO_CREDITS_SEQUENCE_CC_50 2
|
||||
#define DEBUG_GOTO_CREDITS_SEQUENCE_CC_EXTRA 3
|
||||
|
||||
/**
|
||||
* Options for gScreenModeSelection and gActiveScreenMode
|
||||
*/
|
||||
|
|
|
@ -367,7 +367,7 @@ void func_800729EC(s32 arg0) {
|
|||
s8 temp_v1;
|
||||
struct_8018CA70_entry *var_v0;
|
||||
|
||||
func_8028EDA8();
|
||||
start_race();
|
||||
func_80072488(arg0);
|
||||
D_8018D2BC = 1;
|
||||
D_8018D2A4 = 1;
|
||||
|
|
|
@ -1675,7 +1675,7 @@ void func_80095574(void) {
|
|||
debug_print_str2(0x00000046, 0x00000096, "*");
|
||||
break;
|
||||
}
|
||||
if (gEnableDebugMode != 0) {
|
||||
if (gEnableDebugMode) {
|
||||
debug_print_str2(0x000000AA, 0x00000064, "on");
|
||||
} else {
|
||||
debug_print_str2(0x000000AA, 0x00000064, "off");
|
||||
|
|
|
@ -14,10 +14,9 @@
|
|||
#include "code_80005FD0.h"
|
||||
#include "code_802AAA70.h"
|
||||
|
||||
// unk4 is buttonDown?
|
||||
void func_80281780(void) {
|
||||
if (gEnableDebugMode != 0) {
|
||||
if (gControllerOne->button & 0x0F0F) {
|
||||
void debug_switch_character_ceremony_cutscene(void) {
|
||||
if (gEnableDebugMode) {
|
||||
if (gControllerOne->button & HOLD_ALL_DPAD_AND_C_BUTTONS) {
|
||||
// Allows to switch character in debug mode?
|
||||
if (gControllerOne->button & U_CBUTTONS) {
|
||||
gCharacterSelections[0] = LUIGI;
|
||||
|
@ -42,6 +41,7 @@ void func_80281780(void) {
|
|||
} else {
|
||||
gCharacterSelections[0] = MARIO;
|
||||
}
|
||||
// D_80284ED0 appears to be unused.
|
||||
bcopy(&D_80284ED0, &gCharacterIdByGPOverallRank, 8);
|
||||
}
|
||||
}
|
||||
|
@ -132,7 +132,7 @@ void load_ceremony_cutscene(void) {
|
|||
func_802AF5AC(0x70023F8, 1);
|
||||
func_802AF5AC(0x7002478, 1);
|
||||
func_80295C6C();
|
||||
func_80281780();
|
||||
debug_switch_character_ceremony_cutscene();
|
||||
func_802818BC();
|
||||
func_8003D080();
|
||||
func_8006E9C0();
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
/* Function Prototypes */
|
||||
|
||||
void func_80281780(void);
|
||||
void debug_switch_character_ceremony_cutscene(void);
|
||||
s32 func_80281880(s32 arg0);
|
||||
void func_802818BC(void);
|
||||
void load_ceremony_cutscene(void);
|
||||
|
|
31
src/main.c
31
src/main.c
|
@ -32,6 +32,7 @@
|
|||
#include "render_courses.h"
|
||||
#include "actors.h"
|
||||
#include "staff_ghosts.h"
|
||||
#include <defines.h>
|
||||
|
||||
// Declarations (not in this file)
|
||||
void func_80091B78(void);
|
||||
|
@ -59,7 +60,7 @@ struct Controller *gControllerOne = &gControllers[0];
|
|||
struct Controller *gControllerTwo = &gControllers[1];
|
||||
struct Controller *gControllerThree = &gControllers[2];
|
||||
struct Controller *gControllerFour = &gControllers[3];
|
||||
struct Controller *gControllerFive = &gControllers[4];
|
||||
struct Controller *gControllerFive = &gControllers[4]; // All physical controllers combined.`
|
||||
struct Controller *gControllerSix = &gControllers[5];
|
||||
struct Controller *gControllerSeven = &gControllers[6];
|
||||
struct Controller *gControllerEight = &gControllers[7];
|
||||
|
@ -167,7 +168,7 @@ u16 D_800DC510 = 0;
|
|||
u16 D_800DC514 = 0;
|
||||
u16 D_800DC518 = 0;
|
||||
u16 D_800DC51C = 0;
|
||||
u16 gEnableDebugMode = 0;
|
||||
u16 gEnableDebugMode = DEBUG_MODE;
|
||||
s32 gGamestateNext = 7; // = COURSE_DATA_MENU?;
|
||||
UNUSED s32 D_800DC528 = 1;
|
||||
s32 gActiveScreenMode = SCREEN_MODE_1P;
|
||||
|
@ -581,36 +582,36 @@ void race_logic_loop(void) {
|
|||
profiler_log_thread5_time(LEVEL_SCRIPT_EXECUTE);
|
||||
D_8015F788 = 0;
|
||||
func_802A59A4();
|
||||
if (gEnableDebugMode == 0) {
|
||||
D_800DC514 = 0;
|
||||
if (!gEnableDebugMode) {
|
||||
D_800DC514 = FALSE;
|
||||
} else {
|
||||
if (D_800DC514 != 0) {
|
||||
if (D_800DC514) {
|
||||
|
||||
if ((gControllerOne->buttonPressed & R_TRIG) &&
|
||||
(gControllerOne->button & A_BUTTON) &&
|
||||
(gControllerOne->button & B_BUTTON)) {
|
||||
D_800DC514 = 0;
|
||||
D_800DC514 = FALSE;
|
||||
}
|
||||
|
||||
rotY = camera1->rot[1];
|
||||
D_801625E8 = D_800DC5EC->pathCounter;
|
||||
gDebugPathCount = D_800DC5EC->pathCounter;
|
||||
if (rotY < 0x2000) {
|
||||
func_80057A50(40, 100, "SOUTH ", D_801625E8);
|
||||
func_80057A50(40, 100, "SOUTH ", gDebugPathCount);
|
||||
} else if (rotY < 0x6000) {
|
||||
func_80057A50(40, 100, "EAST ", D_801625E8);
|
||||
func_80057A50(40, 100, "EAST ", gDebugPathCount);
|
||||
} else if (rotY < 0xA000) {
|
||||
func_80057A50(40, 100, "NORTH ", D_801625E8);
|
||||
func_80057A50(40, 100, "NORTH ", gDebugPathCount);
|
||||
} else if (rotY < 0xE000) {
|
||||
func_80057A50(40, 100, "WEST ", D_801625E8);
|
||||
func_80057A50(40, 100, "WEST ", gDebugPathCount);
|
||||
} else {
|
||||
func_80057A50(40, 100, "SOUTH ", D_801625E8);
|
||||
func_80057A50(40, 100, "SOUTH ", gDebugPathCount);
|
||||
}
|
||||
|
||||
} else {
|
||||
if ((gControllerOne->buttonPressed & L_TRIG) &&
|
||||
(gControllerOne->button & A_BUTTON) &&
|
||||
(gControllerOne->button & B_BUTTON)) {
|
||||
D_800DC514 = 1;
|
||||
D_800DC514 = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -793,10 +794,10 @@ void race_logic_loop(void) {
|
|||
break;
|
||||
}
|
||||
|
||||
if (gEnableDebugMode == 0) {
|
||||
if (!gEnableDebugMode) {
|
||||
gEnableResourceMeters = 0;
|
||||
} else {
|
||||
if (gEnableResourceMeters != 0) {
|
||||
if (gEnableResourceMeters) {
|
||||
resource_display();
|
||||
if ((!(gControllerOne->button & L_TRIG)) &&
|
||||
(gControllerOne->button & R_TRIG) &&
|
||||
|
|
|
@ -121,7 +121,7 @@ extern u16 gIsInQuitToMenuTransition;
|
|||
|
||||
|
||||
extern s32 D_8015F788;
|
||||
extern s16 D_801625E8;
|
||||
extern s16 gDebugPathCount;
|
||||
extern struct UnkStruct_800DC5EC *D_800DC5EC;
|
||||
|
||||
extern u16 D_800DC5B0;
|
||||
|
|
195
src/menus.c
195
src/menus.c
|
@ -235,8 +235,8 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
|
||||
btnAndStick = (controller->buttonPressed | controller->stickPressed);
|
||||
|
||||
if (!gEnableDebugMode && (btnAndStick & CONT_START)) {
|
||||
btnAndStick |= CONT_A;
|
||||
if (!gEnableDebugMode && (btnAndStick & START_BUTTON)) {
|
||||
btnAndStick |= A_BUTTON;
|
||||
}
|
||||
|
||||
if (!func_800B4520()) {
|
||||
|
@ -249,7 +249,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
case 0x18:
|
||||
{
|
||||
sp2C = FALSE;
|
||||
if ((btnAndStick & CONT_DOWN) && (D_8018EDEC < 0x18)) {
|
||||
if ((btnAndStick & D_JPAD) && (D_8018EDEC < 0x18)) {
|
||||
D_8018EDEC += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -258,7 +258,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
sp38->unk8 = 1;
|
||||
sp2C = TRUE;
|
||||
}
|
||||
if ((btnAndStick & CONT_UP) && (D_8018EDEC >= 0x16)) {
|
||||
if ((btnAndStick & U_JPAD) && (D_8018EDEC >= 0x16)) {
|
||||
D_8018EDEC -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -273,7 +273,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
update_save_data_backup();
|
||||
sp38->unk4 = gSoundMode;
|
||||
}
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
func_8009E280();
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
if (gSoundMode != sp38->unk4) {
|
||||
|
@ -284,7 +284,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
return;
|
||||
}
|
||||
if (btnAndStick & CONT_A) {
|
||||
if (btnAndStick & A_BUTTON) {
|
||||
switch (D_8018EDEC) {
|
||||
case 0x16:
|
||||
if (gSoundMode < 3) {
|
||||
|
@ -384,7 +384,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
case 0x1E:
|
||||
case 0x1F:
|
||||
{
|
||||
if ((btnAndStick & CONT_DOWN) && (D_8018EDEC < 0x1F)) {
|
||||
if ((btnAndStick & D_JPAD) && (D_8018EDEC < 0x1F)) {
|
||||
D_8018EDEC += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -392,7 +392,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
sp38->unk8 = 1;
|
||||
}
|
||||
if ((btnAndStick & CONT_UP) && (D_8018EDEC >= 0x1F)) {
|
||||
if ((btnAndStick & U_JPAD) && (D_8018EDEC >= 0x1F)) {
|
||||
D_8018EDEC -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -400,12 +400,12 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
sp38->unk8 = -1;
|
||||
}
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
D_8018EDEC = 0x18;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
return;
|
||||
}
|
||||
if (btnAndStick & CONT_A) {
|
||||
if (btnAndStick & A_BUTTON) {
|
||||
switch (D_8018EDEC) {
|
||||
case 0x1E:
|
||||
D_8018EDEC = 0x18;
|
||||
|
@ -423,7 +423,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case 0x20:
|
||||
{
|
||||
if (btnAndStick & (CONT_A | CONT_B | CONT_START)) {
|
||||
if (btnAndStick & (A_BUTTON | B_BUTTON | START_BUTTON)) {
|
||||
D_8018EDEC = 0x18;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
}
|
||||
|
@ -432,7 +432,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
case 0x28:
|
||||
case 0x29:
|
||||
{
|
||||
if ((btnAndStick & CONT_DOWN) && (D_8018EDEC < 0x29) && (sp30[1].ghostDataSaved)) {
|
||||
if ((btnAndStick & D_JPAD) && (D_8018EDEC < 0x29) && (sp30[1].ghostDataSaved)) {
|
||||
D_8018EDEC += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -440,7 +440,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
sp38->unk8 = 1;
|
||||
}
|
||||
if ((btnAndStick & CONT_UP) && (D_8018EDEC >= 0x29) && sp30[0].ghostDataSaved) {
|
||||
if ((btnAndStick & U_JPAD) && (D_8018EDEC >= 0x29) && sp30[0].ghostDataSaved) {
|
||||
D_8018EDEC -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -448,12 +448,12 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
sp38->unk8 = -1;
|
||||
}
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
D_8018EDEC = 0x17;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
return;
|
||||
}
|
||||
if (btnAndStick & CONT_A) {
|
||||
if (btnAndStick & A_BUTTON) {
|
||||
sp38->unk20 = D_8018EDEC - 0x28;
|
||||
if (sp30[sp38->unk20].courseIndex == D_8018EE10[1].courseIndex && D_8018EE10[1].ghostDataSaved) {
|
||||
D_8018EDEC = 0x33;
|
||||
|
@ -469,7 +469,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
{
|
||||
// bit of a fake match, but if it works it works?
|
||||
if ((sp30[sp38->unk20].courseIndex != ((0, (D_8018EE10 + (D_8018EDEC - 0x32))->courseIndex))) || ((D_8018EE10 + (D_8018EDEC - 0x32))->ghostDataSaved == 0)) {
|
||||
if ((btnAndStick & CONT_DOWN) && (D_8018EDEC < 0x33)) {
|
||||
if ((btnAndStick & D_JPAD) && (D_8018EDEC < 0x33)) {
|
||||
D_8018EDEC += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -477,7 +477,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
sp38->unk8 = 1;
|
||||
}
|
||||
if ((btnAndStick & CONT_UP) && (D_8018EDEC >= 0x33)) {
|
||||
if ((btnAndStick & U_JPAD) && (D_8018EDEC >= 0x33)) {
|
||||
D_8018EDEC -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -486,10 +486,10 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
sp38->unk8 = -1;
|
||||
}
|
||||
}
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
D_8018EDEC = sp38->unk20 + 0x28;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
} else if (btnAndStick & CONT_A) {
|
||||
} else if (btnAndStick & A_BUTTON) {
|
||||
sp38->unk1C = D_8018EDEC - 0x32;
|
||||
if (D_8018EE10[(sp38->unk1C)].ghostDataSaved) {
|
||||
D_8018EDEC = 0x38;
|
||||
|
@ -512,7 +512,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
case 0x41:
|
||||
case 0x42:
|
||||
{
|
||||
if (btnAndStick & (CONT_A | CONT_B | CONT_START)) {
|
||||
if (btnAndStick & (A_BUTTON | B_BUTTON | START_BUTTON)) {
|
||||
D_8018EDEC = 0x17;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
}
|
||||
|
@ -521,7 +521,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
case 0x38:
|
||||
case 0x39:
|
||||
{
|
||||
if ((btnAndStick & CONT_RIGHT) && D_8018EDEC < 0x39) {
|
||||
if ((btnAndStick & R_JPAD) && D_8018EDEC < 0x39) {
|
||||
D_8018EDEC += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -529,7 +529,7 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
sp38->unk8 = 1;
|
||||
}
|
||||
if ((btnAndStick & CONT_LEFT) && D_8018EDEC >= 0x39) {
|
||||
if ((btnAndStick & L_JPAD) && D_8018EDEC >= 0x39) {
|
||||
D_8018EDEC -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp38->unk24 < 4.2) {
|
||||
|
@ -537,12 +537,12 @@ void options_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
sp38->unk8 = -1;
|
||||
}
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
D_8018EDEC = sp38->unk1C + 0x32;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
return;
|
||||
}
|
||||
if (btnAndStick & CONT_A) {
|
||||
if (btnAndStick & A_BUTTON) {
|
||||
if (D_8018EDEC == 0x38) {
|
||||
D_8018EDEC = 0x17;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
|
@ -686,20 +686,20 @@ void course_data_menu_act(struct Controller *controller, UNUSED u16 arg1) {
|
|||
|
||||
btnAndStick = (controller->buttonPressed | controller->stickPressed);
|
||||
|
||||
if (!gEnableDebugMode && (btnAndStick & CONT_START)) {
|
||||
btnAndStick |= CONT_A;
|
||||
if (!gEnableDebugMode && (btnAndStick & START_BUTTON)) {
|
||||
btnAndStick |= A_BUTTON;
|
||||
}
|
||||
|
||||
if (!func_800B4520()) {
|
||||
switch(D_8018EDEC) {
|
||||
case 0x0B:
|
||||
{
|
||||
if ((btnAndStick & CONT_LEFT) && (gTimeTrialDataCourseIndex > 0)) {
|
||||
if ((btnAndStick & L_JPAD) && (gTimeTrialDataCourseIndex > 0)) {
|
||||
gTimeTrialDataCourseIndex -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
|
||||
if ((btnAndStick & CONT_RIGHT) && (gTimeTrialDataCourseIndex < 15)) {
|
||||
if ((btnAndStick & R_JPAD) && (gTimeTrialDataCourseIndex < 15)) {
|
||||
gTimeTrialDataCourseIndex += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
|
@ -716,7 +716,7 @@ void course_data_menu_act(struct Controller *controller, UNUSED u16 arg1) {
|
|||
gCourseRecordsMenuSelection -= 1;
|
||||
}
|
||||
|
||||
if ((btnAndStick & CONT_UP) && (gCourseRecordsMenuSelection > 0)) {
|
||||
if ((btnAndStick & U_JPAD) && (gCourseRecordsMenuSelection > 0)) {
|
||||
gCourseRecordsMenuSelection -= 1;
|
||||
if (gCourseRecordsMenuSelection == 1 && sp24->unknownBytes[0] == 0) {
|
||||
gCourseRecordsMenuSelection -= 1;
|
||||
|
@ -728,7 +728,7 @@ void course_data_menu_act(struct Controller *controller, UNUSED u16 arg1) {
|
|||
sp28->unk8 = -1;
|
||||
}
|
||||
|
||||
if ((btnAndStick & CONT_DOWN) && (gCourseRecordsMenuSelection < 2)) {
|
||||
if ((btnAndStick & D_JPAD) && (gCourseRecordsMenuSelection < 2)) {
|
||||
gCourseRecordsMenuSelection += 1;
|
||||
if (gCourseRecordsMenuSelection == 1 && sp24->unknownBytes[0] == 0) {
|
||||
gCourseRecordsMenuSelection += 1;
|
||||
|
@ -749,10 +749,10 @@ void course_data_menu_act(struct Controller *controller, UNUSED u16 arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
func_8009E208();
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
} else if (btnAndStick & CONT_A) {
|
||||
} else if (btnAndStick & A_BUTTON) {
|
||||
if (sp28->unk24 < 4.2) {
|
||||
sp28->unk24 += 4.0;
|
||||
}
|
||||
|
@ -770,7 +770,7 @@ void course_data_menu_act(struct Controller *controller, UNUSED u16 arg1) {
|
|||
case 0x0C:
|
||||
{
|
||||
sp28 = find_8018D9E0_entry_dupe(0xE9);
|
||||
if ((btnAndStick & CONT_UP) && (D_8018EDF9 > 0)) {
|
||||
if ((btnAndStick & U_JPAD) && (D_8018EDF9 > 0)) {
|
||||
D_8018EDF9 -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp28->unk24 < 4.2) {
|
||||
|
@ -779,7 +779,7 @@ void course_data_menu_act(struct Controller *controller, UNUSED u16 arg1) {
|
|||
sp28->unk8 = -1;
|
||||
}
|
||||
|
||||
if ((btnAndStick & CONT_DOWN) && (D_8018EDF9 <= 0)) {
|
||||
if ((btnAndStick & D_JPAD) && (D_8018EDF9 <= 0)) {
|
||||
D_8018EDF9 += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (sp28->unk24 < 4.2) {
|
||||
|
@ -788,10 +788,10 @@ void course_data_menu_act(struct Controller *controller, UNUSED u16 arg1) {
|
|||
sp28->unk8 = 1;
|
||||
}
|
||||
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
D_8018EDEC = 0xB;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
} else if (btnAndStick & CONT_A) {
|
||||
} else if (btnAndStick & A_BUTTON) {
|
||||
if (D_8018EDF9 != 0) {
|
||||
res = 0;
|
||||
switch (gCourseRecordsMenuSelection) {
|
||||
|
@ -831,7 +831,7 @@ void course_data_menu_act(struct Controller *controller, UNUSED u16 arg1) {
|
|||
}
|
||||
case 0x0D:
|
||||
{
|
||||
if (btnAndStick & (CONT_A | CONT_B | CONT_START)) {
|
||||
if (btnAndStick & (A_BUTTON | B_BUTTON | START_BUTTON)) {
|
||||
D_8018EDEC = 0xB;
|
||||
}
|
||||
break;
|
||||
|
@ -1008,12 +1008,11 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
if (arg1 == 0) {
|
||||
gMenuDelayTimer += 1;
|
||||
}
|
||||
|
||||
switch (gDebugMenuSelection) {
|
||||
case DEBUG_MENU_DISABLED:
|
||||
{
|
||||
sp28 = FALSE;
|
||||
if ((gMenuDelayTimer >= 0x2E) && (btnAndStick & (CONT_A | CONT_START))) {
|
||||
if ((gMenuDelayTimer >= 0x2E) && (btnAndStick & (A_BUTTON | START_BUTTON))) {
|
||||
func_8009E1C0();
|
||||
func_800CA330(0x19);
|
||||
play_sound2(SOUND_INTRO_ENTER_MENU);
|
||||
|
@ -1024,15 +1023,15 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case DEBUG_MENU_DEBUG_MODE:
|
||||
{
|
||||
if (btnAndStick & (CONT_RIGHT | CONT_LEFT)) {
|
||||
if (btnAndStick & (R_JPAD | L_JPAD)) {
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (gEnableDebugMode) {
|
||||
gEnableDebugMode = FALSE;
|
||||
gEnableDebugMode = DEBUG_MODE;
|
||||
} else {
|
||||
gEnableDebugMode = TRUE;
|
||||
}
|
||||
}
|
||||
if (btnAndStick & CONT_DOWN) {
|
||||
if (btnAndStick & D_JPAD) {
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
gDebugMenuSelection = DEBUG_MENU_COURSE;
|
||||
}
|
||||
|
@ -1040,7 +1039,7 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case DEBUG_MENU_COURSE:
|
||||
{
|
||||
if (btnAndStick & CONT_RIGHT) {
|
||||
if (btnAndStick & R_JPAD) {
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (gCurrentCourseId < 0x13) {
|
||||
gCurrentCourseId += 1;
|
||||
|
@ -1048,7 +1047,7 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
gCurrentCourseId = 0;
|
||||
}
|
||||
}
|
||||
if (btnAndStick & CONT_LEFT) {
|
||||
if (btnAndStick & L_JPAD) {
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
if (gCurrentCourseId > 0) {
|
||||
gCurrentCourseId -= 1;
|
||||
|
@ -1056,11 +1055,11 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
gCurrentCourseId = 0x13;
|
||||
}
|
||||
}
|
||||
if (btnAndStick & CONT_UP) {
|
||||
if (btnAndStick & U_JPAD) {
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
gDebugMenuSelection = DEBUG_MENU_DEBUG_MODE;
|
||||
}
|
||||
if (btnAndStick & CONT_DOWN) {
|
||||
if (btnAndStick & D_JPAD) {
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
gDebugMenuSelection = DEBUG_MENU_SCREEN_MODE;
|
||||
}
|
||||
|
@ -1068,21 +1067,21 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case DEBUG_MENU_SCREEN_MODE:
|
||||
{
|
||||
if ((btnAndStick & CONT_RIGHT) && (D_8018EDF1 < 4)) {
|
||||
if ((btnAndStick & R_JPAD) && (D_8018EDF1 < 4)) {
|
||||
D_8018EDF1 += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
gScreenModeSelection = D_800F2B50[D_8018EDF1];
|
||||
}
|
||||
if ((btnAndStick & CONT_LEFT) && (D_8018EDF1 > 0)) {
|
||||
if ((btnAndStick & L_JPAD) && (D_8018EDF1 > 0)) {
|
||||
D_8018EDF1 -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
gScreenModeSelection = D_800F2B50[D_8018EDF1];
|
||||
}
|
||||
if (btnAndStick & CONT_UP) {
|
||||
if (btnAndStick & U_JPAD) {
|
||||
gDebugMenuSelection = DEBUG_MENU_COURSE;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
if (btnAndStick & CONT_DOWN) {
|
||||
if (btnAndStick & D_JPAD) {
|
||||
gDebugMenuSelection = DEBUG_MENU_PLAYER;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
|
@ -1090,19 +1089,19 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case DEBUG_MENU_PLAYER:
|
||||
{
|
||||
if ((btnAndStick & CONT_RIGHT) && (*gCharacterSelections < 7)) {
|
||||
if ((btnAndStick & R_JPAD) && (*gCharacterSelections < 7)) {
|
||||
gCharacterSelections[0] += 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
if ((btnAndStick & CONT_LEFT) && (gCharacterSelections[0] > 0)) {
|
||||
if ((btnAndStick & L_JPAD) && (gCharacterSelections[0] > 0)) {
|
||||
gCharacterSelections[0] -= 1;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
if (btnAndStick & CONT_UP) {
|
||||
if (btnAndStick & U_JPAD) {
|
||||
gDebugMenuSelection = DEBUG_MENU_SCREEN_MODE;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
if (btnAndStick & CONT_DOWN) {
|
||||
if (btnAndStick & D_JPAD) {
|
||||
gDebugMenuSelection = DEBUG_MENU_SOUND_MODE;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
|
@ -1110,7 +1109,7 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case DEBUG_MENU_SOUND_MODE:
|
||||
{
|
||||
if ((btnAndStick & CONT_RIGHT) && (gSoundMode < 3)) {
|
||||
if ((btnAndStick & R_JPAD) && (gSoundMode < 3)) {
|
||||
gSoundMode += 1;
|
||||
if (gSoundMode == SOUND_UNUSED) {
|
||||
gSoundMode = SOUND_MONO;
|
||||
|
@ -1121,7 +1120,7 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
write_save_data_grand_prix_points_and_sound_mode();
|
||||
update_save_data_backup();
|
||||
}
|
||||
if ((btnAndStick & CONT_LEFT) && (gSoundMode > 0)) {
|
||||
if ((btnAndStick & L_JPAD) && (gSoundMode > 0)) {
|
||||
gSoundMode -= 1;
|
||||
if (gSoundMode == SOUND_UNUSED) {
|
||||
gSoundMode = SOUND_HEADPHONES;
|
||||
|
@ -1131,11 +1130,11 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
gSaveDataSoundMode = gSoundMode;
|
||||
write_save_data_grand_prix_points_and_sound_mode();
|
||||
}
|
||||
if (btnAndStick & CONT_UP) {
|
||||
if (btnAndStick & U_JPAD) {
|
||||
gDebugMenuSelection = DEBUG_MENU_PLAYER;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
if (btnAndStick & CONT_DOWN) {
|
||||
if (btnAndStick & D_JPAD) {
|
||||
gDebugMenuSelection = DEBUG_MENU_GIVE_ALL_GOLD_CUP;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
|
@ -1143,11 +1142,11 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case DEBUG_MENU_GIVE_ALL_GOLD_CUP:
|
||||
{
|
||||
if (btnAndStick & CONT_UP) {
|
||||
if (btnAndStick & U_JPAD) {
|
||||
gDebugMenuSelection = DEBUG_MENU_SOUND_MODE;
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
for (i = 0; i < 16; i++) {
|
||||
func_800B5404(0, i);
|
||||
}
|
||||
|
@ -1160,7 +1159,7 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
play_sound2(SOUND_MENU_SELECT);
|
||||
break;
|
||||
} else if (btnAndStick & CONT_LEFT) {
|
||||
} else if (btnAndStick & L_JPAD) {
|
||||
reset_save_data_grand_prix_points_and_sound_mode();
|
||||
for (i = 0; i < 16; i++) {
|
||||
if (i % 4 == 2) {
|
||||
|
@ -1181,7 +1180,7 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
gPlayerCountSelection1 = D_8018EDF3 = D_800F2B58[D_8018EDF1];
|
||||
|
||||
if (sp28) {
|
||||
if (btnAndStick & (CONT_A | CONT_START)) {
|
||||
if (btnAndStick & (A_BUTTON | START_BUTTON)) {
|
||||
func_8009E1C0();
|
||||
func_800CA330(0x19);
|
||||
gDebugMenuSelection = DEBUG_MENU_EXITED;
|
||||
|
@ -1193,14 +1192,14 @@ void splash_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
|
||||
if (controller->button & Z_TRIG) {
|
||||
if (btnAndStick & CONT_A) {
|
||||
if (btnAndStick & A_BUTTON) {
|
||||
gDebugGotoScene = DEBUG_GOTO_ENDING_SEQUENCE;
|
||||
} else {
|
||||
gDebugGotoScene = DEBUG_GOTO_CREDITS_SEQUENCE_CC_EXTRA;
|
||||
}
|
||||
}
|
||||
play_sound2(SOUND_MENU_OK_CLICKED);
|
||||
} else if ((btnAndStick & CONT_B) && (controller->button & Z_TRIG)) {
|
||||
} else if ((btnAndStick & B_BUTTON) && (controller->button & Z_TRIG)) {
|
||||
func_8009E1C0();
|
||||
func_800CA330(0x19);
|
||||
gDebugMenuSelection = DEBUG_MENU_EXITED;
|
||||
|
@ -1256,8 +1255,8 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
s32 newMode; // temp_v1_2?
|
||||
|
||||
btnAndStick = controller->buttonPressed | controller->stickPressed;
|
||||
if (!gEnableDebugMode && (btnAndStick & CONT_START)) {
|
||||
btnAndStick |= CONT_A;
|
||||
if (!gEnableDebugMode && (btnAndStick & START_BUTTON)) {
|
||||
btnAndStick |= A_BUTTON;
|
||||
}
|
||||
|
||||
if (!func_800B4520()) {
|
||||
|
@ -1269,12 +1268,12 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case PLAYER_NUM_SELECTION:
|
||||
{
|
||||
if ((btnAndStick & CONT_RIGHT) && D_8018EDF3 < 4) {
|
||||
if ((btnAndStick & R_JPAD) && D_8018EDF3 < 4) {
|
||||
D_8018EDF3 += 1;
|
||||
func_800B44AC();
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
if ((btnAndStick & CONT_LEFT) && D_8018EDF3 >= 2) {
|
||||
if ((btnAndStick & L_JPAD) && D_8018EDF3 >= 2) {
|
||||
D_8018EDF3 -= 1;
|
||||
func_800B44AC();
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
|
@ -1288,13 +1287,13 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
case 4: gScreenModeSelection = SCREEN_MODE_3P_4P_SPLITSCREEN; break;
|
||||
}
|
||||
// L800B2B94
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
func_8009E0F0(0x14);
|
||||
func_800CA330(0x19);
|
||||
D_8018EDE0 = 1;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
newMode = gGameModeFromNumPlayersAndRowSelection[D_8018EDF3][D_800E86AC[D_8018EDF3 - 1]];
|
||||
} else if (btnAndStick & CONT_A) {
|
||||
} else if (btnAndStick & A_BUTTON) {
|
||||
// L800B2C00
|
||||
gMainMenuSelectionDepth = GAME_MODE_SELECTION;
|
||||
func_800B44AC();
|
||||
|
@ -1318,7 +1317,7 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
case GAME_MODE_SELECTION:
|
||||
{
|
||||
if (btnAndStick & CONT_DOWN) {
|
||||
if (btnAndStick & D_JPAD) {
|
||||
if (D_800E86AC[D_8018EDF3 - 1] < D_800F2B58[D_8018EDF3 + 7]) {
|
||||
D_800E86AC[D_8018EDF3 - 1] += 1;
|
||||
func_800B44AC();
|
||||
|
@ -1326,7 +1325,7 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
}
|
||||
// L800B2D94
|
||||
if (btnAndStick & CONT_UP) {
|
||||
if (btnAndStick & U_JPAD) {
|
||||
if (D_800E86AC[D_8018EDF3 - 1] > 0) {
|
||||
D_800E86AC[D_8018EDF3 - 1] -= 1;
|
||||
func_800B44AC();
|
||||
|
@ -1334,12 +1333,12 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
}
|
||||
// L800B2DE0
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
gMainMenuSelectionDepth = PLAYER_NUM_SELECTION;
|
||||
func_800B44AC();
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
newMode = gGameModeFromNumPlayersAndRowSelection[D_8018EDF3][D_800E86AC[D_8018EDF3 - 1]];
|
||||
} else if (btnAndStick & CONT_A) {
|
||||
} else if (btnAndStick & A_BUTTON) {
|
||||
// L800B2E3C
|
||||
switch(gGameModeFromNumPlayersAndRowSelection[D_8018EDF3][D_800E86AC[D_8018EDF3 - 1]]) {
|
||||
case 0:
|
||||
|
@ -1383,13 +1382,13 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
// L800B3000
|
||||
sp28 = D_800E86B0[D_8018EDF3 - 1][D_800E86AC[D_8018EDF3 - 1]];
|
||||
if ((btnAndStick & CONT_UP) && (sp28 > 0)) {
|
||||
if ((btnAndStick & U_JPAD) && (sp28 > 0)) {
|
||||
D_800E86B0[D_8018EDF3 - 1][D_800E86AC[D_8018EDF3 - 1]] -= 1;
|
||||
func_800B44AC();
|
||||
play_sound2(SOUND_MENU_CURSOR_MOVE);
|
||||
}
|
||||
// L800B3068
|
||||
if (btnAndStick & CONT_DOWN) {
|
||||
if (btnAndStick & D_JPAD) {
|
||||
sp24 = FALSE;
|
||||
if (func_800B555C()) {
|
||||
if (sp28 < D_800F2B60[D_8018EDF3 + 4][D_800E86AC[D_8018EDF3 - 1] + 1]) {
|
||||
|
@ -1410,12 +1409,12 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
// L800B3150
|
||||
sp28 = D_800E86B0[D_8018EDF3 - 1][D_800E86AC[D_8018EDF3 - 1]];
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
gMainMenuSelectionDepth = GAME_MODE_SELECTION;
|
||||
func_800B44AC();
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
newMode = gGameModeFromNumPlayersAndRowSelection[D_8018EDF3][D_800E86AC[D_8018EDF3 - 1]];
|
||||
} else if (btnAndStick & CONT_A) {
|
||||
} else if (btnAndStick & A_BUTTON) {
|
||||
// L800B31DC
|
||||
func_800B44AC();
|
||||
if (D_8018EDF3 == 1 && D_800E86AC[D_8018EDF3 - 1] == 1 && sp28 == 1) {
|
||||
|
@ -1440,7 +1439,7 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
play_sound2(SOUND_MENU_OK);
|
||||
}
|
||||
// L800B330C
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
switch (gGameModeFromNumPlayersAndRowSelection[D_8018EDF3][D_800E86AC[D_8018EDF3 - 1]]) {
|
||||
case 0:
|
||||
case 1:
|
||||
|
@ -1457,7 +1456,7 @@ void main_menu_act(struct Controller *controller, u16 arg1) {
|
|||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
gMenuTimingCounter = 0;
|
||||
newMode = gGameModeFromNumPlayersAndRowSelection[D_8018EDF3][D_800E86AC[D_8018EDF3 - 1]];
|
||||
} else if (btnAndStick & CONT_A) {
|
||||
} else if (btnAndStick & A_BUTTON) {
|
||||
// L800B33D8
|
||||
func_8009E1C0();
|
||||
play_sound2(SOUND_MENU_OK_CLICKED);
|
||||
|
@ -1507,8 +1506,8 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
s8 i;
|
||||
|
||||
btnAndStick = (controller->buttonPressed) | (controller->stickPressed);
|
||||
if (!gEnableDebugMode && btnAndStick & CONT_START) {
|
||||
btnAndStick |= CONT_A;
|
||||
if (!gEnableDebugMode && btnAndStick & START_BUTTON) {
|
||||
btnAndStick |= A_BUTTON;
|
||||
}
|
||||
|
||||
if (!func_800B4520()) {
|
||||
|
@ -1516,14 +1515,14 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
case 1:
|
||||
{
|
||||
if (gCharacterGridSelections[arg1] == 0) {
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
func_8009E208();
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
}
|
||||
return;
|
||||
}
|
||||
// L800B3630
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
if (D_8018EDE8[arg1]) {
|
||||
D_8018EDE8[arg1] = FALSE;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
|
@ -1533,7 +1532,7 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
}
|
||||
// L800B3684
|
||||
if ((btnAndStick & CONT_A) && !D_8018EDE8[arg1]) {
|
||||
if ((btnAndStick & A_BUTTON) && !D_8018EDE8[arg1]) {
|
||||
D_8018EDE8[arg1] = TRUE;
|
||||
func_800C90F4(
|
||||
arg1,
|
||||
|
@ -1556,7 +1555,7 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
}
|
||||
// L800B3768
|
||||
if (D_8018EDE8[arg1]) {
|
||||
if ((btnAndStick & CONT_RIGHT) && (btnAndStick & CONT_DOWN)) {
|
||||
if ((btnAndStick & R_JPAD) && (btnAndStick & D_JPAD)) {
|
||||
if (gCharacterGridSelections[arg1] == 1 || gCharacterGridSelections[arg1] == 2 || gCharacterGridSelections[arg1] == 3) {
|
||||
// L800B37B0
|
||||
if (is_character_spot_free(gCharacterGridSelections[arg1] + 5)) {
|
||||
|
@ -1567,7 +1566,7 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
return;
|
||||
}
|
||||
// L800B37E4
|
||||
if ((btnAndStick & CONT_LEFT) && (btnAndStick & CONT_DOWN)) {
|
||||
if ((btnAndStick & L_JPAD) && (btnAndStick & D_JPAD)) {
|
||||
if (gCharacterGridSelections[arg1] == 2 || gCharacterGridSelections[arg1] == 3 || gCharacterGridSelections[arg1] == 4) {
|
||||
if (is_character_spot_free(gCharacterGridSelections[arg1] + 3)) {
|
||||
gCharacterGridSelections[arg1] += 3;
|
||||
|
@ -1577,7 +1576,7 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
return;
|
||||
}
|
||||
// L800B3844
|
||||
if ((btnAndStick & CONT_RIGHT) && (btnAndStick & CONT_UP)) {
|
||||
if ((btnAndStick & R_JPAD) && (btnAndStick & U_JPAD)) {
|
||||
if (gCharacterGridSelections[arg1] == 5 || gCharacterGridSelections[arg1] == 6 || gCharacterGridSelections[arg1] == 7) {
|
||||
if (is_character_spot_free(gCharacterGridSelections[arg1] - 3)) {
|
||||
gCharacterGridSelections[arg1] -= 3;
|
||||
|
@ -1587,7 +1586,7 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
return;
|
||||
}
|
||||
// L800B38A0
|
||||
if ((btnAndStick & CONT_LEFT) && (btnAndStick & CONT_UP)) {
|
||||
if ((btnAndStick & L_JPAD) && (btnAndStick & U_JPAD)) {
|
||||
if (gCharacterGridSelections[arg1] == 6 || gCharacterGridSelections[arg1] == 7 || gCharacterGridSelections[arg1] == 8) {
|
||||
if (is_character_spot_free(gCharacterGridSelections[arg1] - 5)) {
|
||||
gCharacterGridSelections[arg1] -= 5;
|
||||
|
@ -1597,7 +1596,7 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
return;
|
||||
}
|
||||
// L800B38FC
|
||||
if (btnAndStick & CONT_RIGHT) {
|
||||
if (btnAndStick & R_JPAD) {
|
||||
if (gCharacterGridSelections[arg1] != 4 && gCharacterGridSelections[arg1] != 8) {
|
||||
do {
|
||||
// L800B391C
|
||||
|
@ -1613,7 +1612,7 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
return;
|
||||
}
|
||||
// L800B3978
|
||||
if (btnAndStick & CONT_LEFT) {
|
||||
if (btnAndStick & L_JPAD) {
|
||||
if (gCharacterGridSelections[arg1] != 1 && gCharacterGridSelections[arg1] != 5) {
|
||||
do {
|
||||
if (is_character_spot_free(gCharacterGridSelections[arg1] - 1)) {
|
||||
|
@ -1627,10 +1626,10 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
return;
|
||||
}
|
||||
// L800B39F4
|
||||
if ((btnAndStick & CONT_UP) && (gCharacterGridSelections[arg1] >= 5)) {
|
||||
if ((btnAndStick & U_JPAD) && (gCharacterGridSelections[arg1] >= 5)) {
|
||||
gCharacterGridSelections[arg1] -= 4;
|
||||
}
|
||||
if ((btnAndStick & CONT_DOWN) && (gCharacterGridSelections[arg1] < 5)) {
|
||||
if ((btnAndStick & D_JPAD) && (gCharacterGridSelections[arg1] < 5)) {
|
||||
gCharacterGridSelections[arg1] += 4;
|
||||
}
|
||||
// L800B3A30
|
||||
|
@ -1648,11 +1647,11 @@ void player_select_menu_act(struct Controller *controller, u16 arg1) {
|
|||
play_sound2(SOUND_MENU_OK);
|
||||
}
|
||||
// L800B3AA4
|
||||
if (btnAndStick & CONT_B) {
|
||||
if (btnAndStick & B_BUTTON) {
|
||||
D_8018EDEE = 1;
|
||||
D_8018EDE8[arg1] = FALSE;
|
||||
play_sound2(SOUND_MENU_GO_BACK);
|
||||
} else if (btnAndStick & CONT_A) {
|
||||
} else if (btnAndStick & A_BUTTON) {
|
||||
func_8009E1C0();
|
||||
play_sound2(SOUND_MENU_OK_CLICKED);
|
||||
func_8000F124();
|
||||
|
@ -1675,7 +1674,7 @@ GLOBAL_ASM("asm/non_matchings/menus/player_select_menu_act.s")
|
|||
void course_select_menu_act(struct Controller *arg0, u16 arg1) {
|
||||
u16 buttonAndStickPress = (arg0->buttonPressed | arg0->stickPressed);
|
||||
|
||||
if ((gEnableDebugMode == 0) && ((buttonAndStickPress & 0x1000) != 0)) {
|
||||
if ((!gEnableDebugMode) && ((buttonAndStickPress & 0x1000) != 0)) {
|
||||
buttonAndStickPress |= 0x8000;
|
||||
}
|
||||
|
||||
|
@ -1813,7 +1812,7 @@ void func_800B3F74(s32 menuSelection) {
|
|||
case 10:
|
||||
{
|
||||
gIsMirrorMode = 0;
|
||||
gEnableDebugMode = 0;
|
||||
gEnableDebugMode = DEBUG_MODE;
|
||||
gCupSelection = MUSHROOM_CUP;
|
||||
gCupCourseSelection = 0;
|
||||
gTimeTrialDataCourseIndex = 0;
|
||||
|
@ -1832,7 +1831,7 @@ void func_800B3F74(s32 menuSelection) {
|
|||
case 1:
|
||||
case 11:
|
||||
{
|
||||
gEnableDebugMode = 0;
|
||||
gEnableDebugMode = DEBUG_MODE;
|
||||
gIsMirrorMode = 0;
|
||||
D_8018EDFC = 0;
|
||||
func_800B5F30();
|
||||
|
|
|
@ -535,7 +535,7 @@ void func_8028EC98(s32 arg0) {
|
|||
|
||||
}
|
||||
|
||||
void func_8028EDA8(void) {
|
||||
void start_race(void) {
|
||||
s32 i;
|
||||
|
||||
D_8015011E = -1;
|
||||
|
@ -738,11 +738,11 @@ void func_8028F474(void) {
|
|||
}
|
||||
|
||||
void func_8028F4E8(void) {
|
||||
if (gEnableDebugMode != 0) {
|
||||
if (((gControllerFive->button & 0x10) != 0) &&
|
||||
((gControllerFive->button & 0x20) != 0) &&
|
||||
((gControllerFive->button & 0x8000) != 0) &&
|
||||
((gControllerFive->button & 0x4000) != 0)) {
|
||||
if (gEnableDebugMode) {
|
||||
if (((gControllerFive->button & R_TRIG) != 0) &&
|
||||
((gControllerFive->button & L_TRIG) != 0) &&
|
||||
((gControllerFive->button & A_BUTTON) != 0) &&
|
||||
((gControllerFive->button & B_BUTTON) != 0)) {
|
||||
|
||||
func_800CA330(0x19);
|
||||
func_800CA388(0x19);
|
||||
|
@ -1040,11 +1040,11 @@ void func_8028FCBC(void) {
|
|||
func_8028F4E8();
|
||||
break;
|
||||
case 2:
|
||||
if (D_800DC51C != 0) {
|
||||
func_8028EDA8();
|
||||
if (D_800DC51C) {
|
||||
start_race();
|
||||
}
|
||||
if ((gEnableDebugMode != 0) && ((gControllerFive->buttonPressed & 0x2000) != 0)) {
|
||||
func_8028EDA8();
|
||||
if ((gEnableDebugMode) && (gControllerFive->buttonPressed & Z_TRIG)) {
|
||||
start_race();
|
||||
}
|
||||
func_8028F4E8();
|
||||
break;
|
||||
|
|
|
@ -14,7 +14,7 @@ void func_8028E438();
|
|||
void func_8028E678();
|
||||
void func_8028EC38(s32);
|
||||
void func_8028EC98(s32);
|
||||
void func_8028EDA8();
|
||||
void start_race();
|
||||
f32 func_8028EE8C(s32);
|
||||
void func_8028EEF0(s32);
|
||||
void func_8028EF28();
|
||||
|
|
Loading…
Reference in New Issue