Implement SECRET_MEMETAUNTS

Permits "Meme" player taunt voice and "Meme" follower horn options
This commit is contained in:
toaster 2023-06-28 19:31:40 +01:00
parent e7ee979f1a
commit 1ec5b74892
6 changed files with 18 additions and 4 deletions

View file

@ -110,6 +110,8 @@ CV_PossibleValue_t gpdifficulty_cons_t[] = {
{0, NULL}
};
CV_PossibleValue_t kartvoices_cons_t[] = {{0, "Never"}, {1, "Tasteful"}, {2, "Meme"}, {0, NULL}};
// Filter consvars by EXECVERSION
// First implementation is 2 (1.0.2), so earlier configs default at 1 (1.0.0)
// Also set CV_HIDDEN during runtime, after config is loaded
@ -2260,6 +2262,11 @@ void CV_AddValue(consvar_t *var, INT32 increment)
max = KARTSPEED_HARD+1;
}
}
else if (var->PossibleValue == kartvoices_cons_t
&& !M_SecretUnlocked(SECRET_MEMETAUNTS, true))
{
max--;
}
#ifdef PARANOIA
if (currentindice == -1)
I_Error("CV_AddValue: current value %d not found in possible value\n",

View file

@ -176,6 +176,7 @@ extern CV_PossibleValue_t CV_Natural[];
// SRB2kart
// the KARTSPEED and KARTGP were previously defined here, but moved to doomstat to avoid circular dependencies
extern CV_PossibleValue_t kartspeed_cons_t[], dummykartspeed_cons_t[], gpdifficulty_cons_t[];
extern CV_PossibleValue_t kartvoices_cons_t[];
extern consvar_t cv_execversion;

View file

@ -410,7 +410,6 @@ static CV_PossibleValue_t kartencore_cons_t[] = {{-1, "Auto"}, {0, "Off"}, {1, "
consvar_t cv_kartencore = CVAR_INIT ("encore", "Auto", CV_NETVAR|CV_CALL|CV_NOINIT, kartencore_cons_t, KartEncore_OnChange);
static CV_PossibleValue_t kartspeedometer_cons_t[] = {{0, "Off"}, {1, "Percentage"}, {2, "Kilometers"}, {3, "Miles"}, {4, "Fracunits"}, {0, NULL}};
consvar_t cv_kartspeedometer = CVAR_INIT ("speedometer", "Percentage", CV_SAVE, kartspeedometer_cons_t, NULL); // use tics in display
static CV_PossibleValue_t kartvoices_cons_t[] = {{0, "Never"}, {1, "Tasteful"}, {2, "Meme"}, {0, NULL}};
consvar_t cv_kartvoices = CVAR_INIT ("tauntvoices", "Tasteful", CV_SAVE, kartvoices_cons_t, NULL);
consvar_t cv_karthorns = CVAR_INIT ("taunthorns", "Tasteful", CV_SAVE, kartvoices_cons_t, NULL);

View file

@ -2364,6 +2364,8 @@ void readunlockable(MYFILE *f, INT32 num)
unlockables[num].type = SECRET_SOUNDTEST;
else if (fastcmp(word2, "ALTTITLE"))
unlockables[num].type = SECRET_ALTTITLE;
else if (fastcmp(word2, "MEMETAUNTS"))
unlockables[num].type = SECRET_MEMETAUNTS;
else if (fastcmp(word2, "ITEMFINDER"))
unlockables[num].type = SECRET_ITEMFINDER;
else

View file

@ -5081,8 +5081,9 @@ static void M_DrawChallengeTile(INT16 i, INT16 j, INT32 x, INT32 y, boolean hili
case SECRET_ONLINE:
case SECRET_ADDONS:
case SECRET_EGGTV:
case SECRET_ALTTITLE:
case SECRET_SOUNDTEST:
case SECRET_ALTTITLE:
case SECRET_MEMETAUNTS:
categoryid = '6';
break;
case SECRET_TIMEATTACK:
@ -5169,11 +5170,14 @@ static void M_DrawChallengeTile(INT16 i, INT16 j, INT32 x, INT32 y, boolean hili
case SECRET_EGGTV:
iconid = 11;
break;
case SECRET_SOUNDTEST:
iconid = 1;
break;
case SECRET_ALTTITLE:
iconid = 6;
break;
case SECRET_SOUNDTEST:
iconid = 1;
case SECRET_MEMETAUNTS:
iconid = 13;
break;
case SECRET_TIMEATTACK:

View file

@ -203,6 +203,7 @@ typedef enum
SECRET_EGGTV, // Permit replay playback menu
SECRET_SOUNDTEST, // Permit Sound Test
SECRET_ALTTITLE, // Permit alternate titlescreen
SECRET_MEMETAUNTS, // Permit "Meme" for kartvoices_cons_t
// Assist restrictions
SECRET_ITEMFINDER, // Permit locating in-level secrets