mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-11-17 02:01:15 +00:00
Some unlockable stuff
- Secrets renamed to Extras - Extras leads to the checklist instead of another menu - Credits & Sound Test are on the Options menu now - New title screen cheat for unlocking everything ("banana", or "← ↑ → → ↑ ← ↓ → Enter")
This commit is contained in:
parent
b0be1c7bbf
commit
1a6730fb72
3 changed files with 40 additions and 31 deletions
|
@ -74,19 +74,20 @@ typedef struct
|
||||||
|
|
||||||
static UINT8 cheatf_warp(void)
|
static UINT8 cheatf_warp(void)
|
||||||
{
|
{
|
||||||
if (modifiedgame)
|
UINT8 i;
|
||||||
return 0;
|
|
||||||
|
/*if (modifiedgame)
|
||||||
|
return 0;*/
|
||||||
|
|
||||||
if (menuactive && currentMenu != &MainDef)
|
if (menuactive && currentMenu != &MainDef)
|
||||||
return 0; // Only on the main menu!
|
return 0; // Only on the main menu!
|
||||||
|
|
||||||
S_StartSound(0, sfx_itemup);
|
S_StartSound(0, sfx_kc42);
|
||||||
|
|
||||||
// Temporarily unlock stuff.
|
// Temporarily unlock EVERYTHING.
|
||||||
G_SetGameModified(false);
|
G_SetGameModified(false);
|
||||||
unlockables[1].unlocked = true; // credits
|
for (i = 0; i < MAXUNLOCKABLES; i++)
|
||||||
unlockables[2].unlocked = true; // sound test
|
unlockables[i].unlocked = true;
|
||||||
//unlockables[16].unlocked = true; // level select
|
|
||||||
|
|
||||||
// Refresh secrets menu existing.
|
// Refresh secrets menu existing.
|
||||||
M_ClearMenus(true);
|
M_ClearMenus(true);
|
||||||
|
@ -135,14 +136,19 @@ static UINT8 cheatf_devmode(void)
|
||||||
|
|
||||||
static cheatseq_t cheat_warp = {
|
static cheatseq_t cheat_warp = {
|
||||||
0, cheatf_warp,
|
0, cheatf_warp,
|
||||||
{ SCRAMBLE('r'), SCRAMBLE('e'), SCRAMBLE('d'), SCRAMBLE('x'), SCRAMBLE('v'), SCRAMBLE('i'), 0xff }
|
//{ SCRAMBLE('r'), SCRAMBLE('e'), SCRAMBLE('d'), SCRAMBLE('x'), SCRAMBLE('v'), SCRAMBLE('i'), 0xff }
|
||||||
|
{ SCRAMBLE('b'), SCRAMBLE('a'), SCRAMBLE('n'), SCRAMBLE('a'), SCRAMBLE('n'), SCRAMBLE('a'), 0xff }
|
||||||
};
|
};
|
||||||
|
|
||||||
static cheatseq_t cheat_warp_joy = {
|
static cheatseq_t cheat_warp_joy = {
|
||||||
0, cheatf_warp,
|
0, cheatf_warp,
|
||||||
{ SCRAMBLE(KEY_LEFTARROW), SCRAMBLE(KEY_LEFTARROW), SCRAMBLE(KEY_UPARROW),
|
/*{ SCRAMBLE(KEY_LEFTARROW), SCRAMBLE(KEY_LEFTARROW), SCRAMBLE(KEY_UPARROW),
|
||||||
SCRAMBLE(KEY_RIGHTARROW), SCRAMBLE(KEY_RIGHTARROW), SCRAMBLE(KEY_UPARROW),
|
SCRAMBLE(KEY_RIGHTARROW), SCRAMBLE(KEY_RIGHTARROW), SCRAMBLE(KEY_UPARROW),
|
||||||
SCRAMBLE(KEY_LEFTARROW), SCRAMBLE(KEY_UPARROW),
|
SCRAMBLE(KEY_LEFTARROW), SCRAMBLE(KEY_UPARROW),
|
||||||
|
SCRAMBLE(KEY_ENTER), 0xff }*/
|
||||||
|
{ SCRAMBLE(KEY_LEFTARROW), SCRAMBLE(KEY_UPARROW), SCRAMBLE(KEY_RIGHTARROW),
|
||||||
|
SCRAMBLE(KEY_RIGHTARROW), SCRAMBLE(KEY_UPARROW), SCRAMBLE(KEY_LEFTARROW),
|
||||||
|
SCRAMBLE(KEY_DOWNARROW), SCRAMBLE(KEY_RIGHTARROW),
|
||||||
SCRAMBLE(KEY_ENTER), 0xff }
|
SCRAMBLE(KEY_ENTER), 0xff }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
33
src/m_menu.c
33
src/m_menu.c
|
@ -207,8 +207,8 @@ menu_t MessageDef;
|
||||||
menu_t SPauseDef;
|
menu_t SPauseDef;
|
||||||
|
|
||||||
// Sky Room
|
// Sky Room
|
||||||
static void M_CustomLevelSelect(INT32 choice);
|
//static void M_CustomLevelSelect(INT32 choice);
|
||||||
static void M_CustomWarp(INT32 choice);
|
//static void M_CustomWarp(INT32 choice);
|
||||||
FUNCNORETURN static ATTRNORETURN void M_UltimateCheat(INT32 choice);
|
FUNCNORETURN static ATTRNORETURN void M_UltimateCheat(INT32 choice);
|
||||||
static void M_LoadGameLevelSelect(INT32 choice);
|
static void M_LoadGameLevelSelect(INT32 choice);
|
||||||
static void M_GetAllEmeralds(INT32 choice);
|
static void M_GetAllEmeralds(INT32 choice);
|
||||||
|
@ -231,7 +231,7 @@ static void M_ConfirmSpectate(INT32 choice);
|
||||||
static void M_ConfirmEnterGame(INT32 choice);
|
static void M_ConfirmEnterGame(INT32 choice);
|
||||||
static void M_ConfirmTeamScramble(INT32 choice);
|
static void M_ConfirmTeamScramble(INT32 choice);
|
||||||
static void M_ConfirmTeamChange(INT32 choice);
|
static void M_ConfirmTeamChange(INT32 choice);
|
||||||
static void M_SecretsMenu(INT32 choice);
|
//static void M_SecretsMenu(INT32 choice);
|
||||||
static void M_SetupChoosePlayer(INT32 choice);
|
static void M_SetupChoosePlayer(INT32 choice);
|
||||||
static void M_QuitSRB2(INT32 choice);
|
static void M_QuitSRB2(INT32 choice);
|
||||||
menu_t SP_MainDef, MP_MainDef, OP_MainDef;
|
menu_t SP_MainDef, MP_MainDef, OP_MainDef;
|
||||||
|
@ -475,11 +475,11 @@ static consvar_t cv_dummystaff = {"dummystaff", "0", CV_HIDEN|CV_CALL, dummystaf
|
||||||
// ---------
|
// ---------
|
||||||
static menuitem_t MainMenu[] =
|
static menuitem_t MainMenu[] =
|
||||||
{
|
{
|
||||||
{IT_CALL |IT_STRING, NULL, "Secrets", M_SecretsMenu, 84},
|
{IT_SUBMENU|IT_STRING, NULL, "Extras", &SR_UnlockChecklistDef, 84},
|
||||||
{IT_CALL |IT_STRING, NULL, "1 Player", M_SinglePlayerMenu, 92},
|
{IT_CALL |IT_STRING, NULL, "1 Player", M_SinglePlayerMenu, 92},
|
||||||
{IT_SUBMENU|IT_STRING, NULL, "Multiplayer", &MP_MainDef, 100},
|
{IT_SUBMENU|IT_STRING, NULL, "Multiplayer", &MP_MainDef, 100},
|
||||||
{IT_CALL |IT_STRING, NULL, "Options", M_Options, 108},
|
{IT_CALL |IT_STRING, NULL, "Options", M_Options, 108},
|
||||||
{IT_CALL |IT_STRING, NULL, "Quit Game", M_QuitSRB2, 116},
|
{IT_CALL |IT_STRING, NULL, "Quit Game", M_QuitSRB2, 116},
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
|
@ -1040,6 +1040,9 @@ static menuitem_t OP_MainMenu[] =
|
||||||
|
|
||||||
{IT_SUBMENU | IT_STRING, NULL, "Game Options...", &OP_GameOptionsDef, 70},
|
{IT_SUBMENU | IT_STRING, NULL, "Game Options...", &OP_GameOptionsDef, 70},
|
||||||
{IT_SUBMENU | IT_STRING, NULL, "Server Options...", &OP_ServerOptionsDef, 80},
|
{IT_SUBMENU | IT_STRING, NULL, "Server Options...", &OP_ServerOptionsDef, 80},
|
||||||
|
|
||||||
|
{IT_CALL | IT_STRING, NULL, "Play Credits", M_Credits, 90},
|
||||||
|
{IT_KEYHANDLER | IT_STRING, NULL, "Sound Test", M_HandleSoundTest, 100},
|
||||||
};
|
};
|
||||||
|
|
||||||
static menuitem_t OP_ControlsMenu[] =
|
static menuitem_t OP_ControlsMenu[] =
|
||||||
|
@ -2692,7 +2695,7 @@ void M_StartControlPanel(void)
|
||||||
if (!Playing())
|
if (!Playing())
|
||||||
{
|
{
|
||||||
// Secret menu!
|
// Secret menu!
|
||||||
MainMenu[secrets].status = (M_AnySecretUnlocked()) ? (IT_STRING | IT_CALL) : (IT_DISABLED);
|
//MainMenu[secrets].status = (M_AnySecretUnlocked()) ? (IT_STRING | IT_CALL) : (IT_DISABLED);
|
||||||
|
|
||||||
currentMenu = &MainDef;
|
currentMenu = &MainDef;
|
||||||
itemOn = singleplr;
|
itemOn = singleplr;
|
||||||
|
@ -4403,7 +4406,7 @@ static void M_HandleSoundTest(INT32 choice)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Entering secrets menu
|
// Entering secrets menu
|
||||||
static void M_SecretsMenu(INT32 choice)
|
/*static void M_SecretsMenu(INT32 choice)
|
||||||
{
|
{
|
||||||
INT32 i, j, ul;
|
INT32 i, j, ul;
|
||||||
UINT8 done[MAXUNLOCKABLES];
|
UINT8 done[MAXUNLOCKABLES];
|
||||||
|
@ -4478,7 +4481,7 @@ static void M_SecretsMenu(INT32 choice)
|
||||||
}
|
}
|
||||||
|
|
||||||
M_SetupNextMenu(&SR_MainDef);
|
M_SetupNextMenu(&SR_MainDef);
|
||||||
}
|
}*/
|
||||||
|
|
||||||
// ==================
|
// ==================
|
||||||
// NEW GAME FUNCTIONS
|
// NEW GAME FUNCTIONS
|
||||||
|
@ -4496,14 +4499,14 @@ static void M_NewGame(void)
|
||||||
M_SetupChoosePlayer(0);
|
M_SetupChoosePlayer(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void M_CustomWarp(INT32 choice)
|
/*static void M_CustomWarp(INT32 choice)
|
||||||
{
|
{
|
||||||
INT32 ul = skyRoomMenuTranslations[choice-1];
|
INT32 ul = skyRoomMenuTranslations[choice-1];
|
||||||
|
|
||||||
startmap = (INT16)(unlockables[ul].variable);
|
startmap = (INT16)(unlockables[ul].variable);
|
||||||
|
|
||||||
M_SetupChoosePlayer(0);
|
M_SetupChoosePlayer(0);
|
||||||
}
|
}*/
|
||||||
|
|
||||||
static void M_Credits(INT32 choice)
|
static void M_Credits(INT32 choice)
|
||||||
{
|
{
|
||||||
|
@ -4513,7 +4516,7 @@ static void M_Credits(INT32 choice)
|
||||||
F_StartCredits();
|
F_StartCredits();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void M_CustomLevelSelect(INT32 choice)
|
/*static void M_CustomLevelSelect(INT32 choice)
|
||||||
{
|
{
|
||||||
INT32 ul = skyRoomMenuTranslations[choice-1];
|
INT32 ul = skyRoomMenuTranslations[choice-1];
|
||||||
|
|
||||||
|
@ -4528,7 +4531,7 @@ static void M_CustomLevelSelect(INT32 choice)
|
||||||
|
|
||||||
M_PrepareLevelSelect();
|
M_PrepareLevelSelect();
|
||||||
M_SetupNextMenu(&SR_LevelSelectDef);
|
M_SetupNextMenu(&SR_LevelSelectDef);
|
||||||
}
|
}*/
|
||||||
|
|
||||||
// ==================
|
// ==================
|
||||||
// SINGLE PLAYER MENU
|
// SINGLE PLAYER MENU
|
||||||
|
|
14
src/sounds.h
14
src/sounds.h
|
@ -583,7 +583,7 @@ typedef enum
|
||||||
sfx_kc2c,
|
sfx_kc2c,
|
||||||
sfx_kc2d,
|
sfx_kc2d,
|
||||||
sfx_kc2e,
|
sfx_kc2e,
|
||||||
sfx_kc2f,
|
sfx_kc2f, // Pogo Spring
|
||||||
sfx_kc30,
|
sfx_kc30,
|
||||||
sfx_kc31,
|
sfx_kc31,
|
||||||
sfx_kc32,
|
sfx_kc32,
|
||||||
|
@ -593,7 +593,7 @@ typedef enum
|
||||||
sfx_kc36,
|
sfx_kc36,
|
||||||
sfx_kc37,
|
sfx_kc37,
|
||||||
sfx_kc38,
|
sfx_kc38,
|
||||||
sfx_kc39,
|
sfx_kc39, // Voting roulette
|
||||||
sfx_kc3a,
|
sfx_kc3a,
|
||||||
sfx_kc3b,
|
sfx_kc3b,
|
||||||
sfx_kc3c,
|
sfx_kc3c,
|
||||||
|
@ -602,15 +602,15 @@ typedef enum
|
||||||
sfx_kc3f,
|
sfx_kc3f,
|
||||||
sfx_kc40,
|
sfx_kc40,
|
||||||
sfx_kc41,
|
sfx_kc41,
|
||||||
sfx_kc42,
|
sfx_kc42, // Unlock everything cheat
|
||||||
sfx_kc43,
|
sfx_kc43,
|
||||||
sfx_kc44,
|
sfx_kc44,
|
||||||
sfx_kc45,
|
sfx_kc45,
|
||||||
sfx_kc46,
|
sfx_kc46,
|
||||||
sfx_kc47,
|
sfx_kc47,
|
||||||
sfx_kc48,
|
sfx_kc48, // Vote picked
|
||||||
sfx_kc49,
|
sfx_kc49,
|
||||||
sfx_kc4a,
|
sfx_kc4a, // Voting beep
|
||||||
sfx_kc4b,
|
sfx_kc4b,
|
||||||
sfx_kc4c,
|
sfx_kc4c,
|
||||||
sfx_kc4d,
|
sfx_kc4d,
|
||||||
|
@ -625,8 +625,8 @@ typedef enum
|
||||||
sfx_kc56,
|
sfx_kc56,
|
||||||
sfx_kc57,
|
sfx_kc57,
|
||||||
sfx_kc58,
|
sfx_kc58,
|
||||||
sfx_kc59,
|
sfx_kc59, // Shrink
|
||||||
sfx_kc5a,
|
sfx_kc5a, // Grow
|
||||||
sfx_kc5b,
|
sfx_kc5b,
|
||||||
sfx_kc5c,
|
sfx_kc5c,
|
||||||
sfx_kc5d,
|
sfx_kc5d,
|
||||||
|
|
Loading…
Reference in a new issue