summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMegaMech <MegaMech@users.noreply.github.com>2025-01-10 14:11:46 -0700
committerGitHub <noreply@github.com>2025-01-10 14:11:46 -0700
commit53974a0d38bb7dc8ceb0730e861826a45a48bdf7 (patch)
treede700087159c14b5b25d85d281598db1e8e88782 /src
parentaaba052407728b2f13d11900f2e81a85991c1a91 (diff)
Impl CC mode option in debug menu (#151)
* Impl cc option at debug menu
Diffstat (limited to 'src')
-rw-r--r--src/main.c2
-rw-r--r--src/menu_items.c42
-rw-r--r--src/menus.c21
-rw-r--r--src/menus.h1
4 files changed, 50 insertions, 16 deletions
diff --git a/src/main.c b/src/main.c
index 2eb386197..0f938721a 100644
--- a/src/main.c
+++ b/src/main.c
@@ -193,7 +193,7 @@ s32 gPlayerCountSelection1 = 2;
s32 gModeSelection = GRAND_PRIX;
s32 D_800DC540 = 0;
s32 D_800DC544 = 0;
-s32 gCCSelection = CC_50;
+s32 gCCSelection = CC_150;
s32 gGlobalTimer = 0;
UNUSED s32 D_800DC550 = 0;
UNUSED s32 D_800DC554 = 0;
diff --git a/src/menu_items.c b/src/menu_items.c
index b6d1f168f..ded31b6cd 100644
--- a/src/menu_items.c
+++ b/src/menu_items.c
@@ -358,6 +358,13 @@ char* D_800E76DC[] = {
"extra",
};
+char* gDebugCCModeNames[] = {
+ "50CC",
+ "100CC",
+ "150CC",
+ "EXTRA",
+};
+
char* gDebugScreenModeNames[] = {
"1p", "2players UD", "2players LR", "3players", "4players",
};
@@ -2462,25 +2469,28 @@ void func_80095574(void) {
}
if (gDebugMenuSelection >= 2) {
load_debug_font();
- debug_print_str2(0x00000050, 0x00000064, "debug_mode");
+ debug_print_str2(80, 100, "debug_mode");
switch (gDebugMenuSelection) {
case DEBUG_MENU_DEBUG_MODE:
- debug_print_str2(0x00000046, 0x00000064, "*");
+ debug_print_str2(70, 100, "*");
break;
case DEBUG_MENU_COURSE:
- debug_print_str2(0x00000046, 0x0000006E, "*");
+ debug_print_str2(70, 110, "*");
+ break;
+ case DEBUG_MENU_CC:
+ debug_print_str2(70, 120, "*");
break;
case DEBUG_MENU_SCREEN_MODE:
- debug_print_str2(0x00000046, 0x00000078, "*");
+ debug_print_str2(70, 130, "*");
break;
case DEBUG_MENU_PLAYER:
- debug_print_str2(0x00000046, 0x00000082, "*");
+ debug_print_str2(70, 140, "*");
break;
case DEBUG_MENU_SOUND_MODE:
- debug_print_str2(0x00000046, 0x0000008C, "*");
+ debug_print_str2(70, 150, "*");
break;
case DEBUG_MENU_GIVE_ALL_GOLD_CUP:
- debug_print_str2(0x00000046, 0x00000096, "*");
+ debug_print_str2(70, 160, "*");
break;
}
if (gEnableDebugMode) {
@@ -2499,14 +2509,18 @@ void func_80095574(void) {
var_v0 = 8;
}
debug_print_str2(var_v0 + 0xB9, 0x0000006E, GetCoursePropsA()->DebugName);
- debug_print_str2(0x00000050, 0x00000078, "screen_mode");
- debug_print_str2(0x000000AA, 0x00000078, gDebugScreenModeNames[gScreenModeListIndex]);
- debug_print_str2(0x00000050, 0x00000082, "player");
- debug_print_str2(0x000000AA, 0x00000082, gDebugCharacterNames[gCharacterSelections[0]]);
- debug_print_str2(0x00000050, 0x0000008C, "sound mode");
- debug_print_str2(0x000000AA, 0x0000008C, gDebugSoundModeNames[gSoundMode]);
+
+ debug_print_str2(80, 120, "cc_mode");
+ debug_print_str2(170, 120, gDebugCCModeNames[gCCSelection]);
+
+ debug_print_str2(80, 130, "screen_mode");
+ debug_print_str2(170, 130, gDebugScreenModeNames[gScreenModeListIndex]);
+ debug_print_str2(80, 140, "player");
+ debug_print_str2(170, 140, gDebugCharacterNames[gCharacterSelections[0]]);
+ debug_print_str2(80, 150, "sound mode");
+ debug_print_str2(170, 150, gDebugSoundModeNames[gSoundMode]);
if (gDebugMenuSelection == DEBUG_MENU_GIVE_ALL_GOLD_CUP) {
- debug_print_str2(0x00000050, 0x00000096, "push b to get all goldcup");
+ debug_print_str2(80, 160, "push b to get all goldcup");
}
func_80057778();
}
diff --git a/src/menus.c b/src/menus.c
index 316ae8178..312c342a3 100644
--- a/src/menus.c
+++ b/src/menus.c
@@ -1072,7 +1072,26 @@ void splash_menu_act(struct Controller* controller, u16 controllerIdx) {
}
if (btnAndStick & D_JPAD) {
play_sound2(SOUND_MENU_CURSOR_MOVE);
+ gDebugMenuSelection = DEBUG_MENU_CC;
+ }
+ break;
+ }
+ case DEBUG_MENU_CC: {
+ if ((btnAndStick & R_JPAD) && (gCCSelection < 3)) {
+ gCCSelection += 1;
+ play_sound2(SOUND_MENU_CURSOR_MOVE);
+ }
+ if ((btnAndStick & L_JPAD) && (gCCSelection > 0)) {
+ gCCSelection -= 1;
+ play_sound2(SOUND_MENU_CURSOR_MOVE);
+ }
+ if (btnAndStick & U_JPAD) {
+ gDebugMenuSelection = DEBUG_MENU_COURSE;
+ play_sound2(SOUND_MENU_CURSOR_MOVE);
+ }
+ if (btnAndStick & D_JPAD) {
gDebugMenuSelection = DEBUG_MENU_SCREEN_MODE;
+ play_sound2(SOUND_MENU_CURSOR_MOVE);
}
break;
}
@@ -1088,7 +1107,7 @@ void splash_menu_act(struct Controller* controller, u16 controllerIdx) {
gScreenModeSelection = sScreenModePlayerTable[gScreenModeListIndex];
}
if (btnAndStick & U_JPAD) {
- gDebugMenuSelection = DEBUG_MENU_COURSE;
+ gDebugMenuSelection = DEBUG_MENU_CC;
play_sound2(SOUND_MENU_CURSOR_MOVE);
}
if (btnAndStick & D_JPAD) {
diff --git a/src/menus.h b/src/menus.h
index eec3027c8..534b104a9 100644
--- a/src/menus.h
+++ b/src/menus.h
@@ -120,6 +120,7 @@ enum DebugMenuSelectionTypes {
DEBUG_MENU_DISABLED,
DEBUG_MENU_DEBUG_MODE,
DEBUG_MENU_COURSE,
+ DEBUG_MENU_CC,
DEBUG_MENU_SCREEN_MODE,
DEBUG_MENU_PLAYER,
DEBUG_MENU_SOUND_MODE,