Restore the v1 record attack critera (maps available by default), whilst also now allowing for specific maps to opt out.

This commit is contained in:
toaster 2022-03-12 22:31:52 +00:00
parent a45b163bd1
commit b9acad707e
5 changed files with 7 additions and 7 deletions

View file

@ -1631,9 +1631,9 @@ void readlevelheader(MYFILE *f, INT32 num)
else if (fastcmp(word, "TIMEATTACK") || fastcmp(word, "RECORDATTACK"))
{ // RECORDATTACK is an accepted alias
if (i || word2[0] == 'T' || word2[0] == 'Y')
mapheaderinfo[num-1]->menuflags |= LF2_TIMEATTACK;
mapheaderinfo[num-1]->menuflags &= ~LF2_NOTIMEATTACK;
else
mapheaderinfo[num-1]->menuflags &= ~LF2_TIMEATTACK;
mapheaderinfo[num-1]->menuflags |= LF2_NOTIMEATTACK;
}
else if (fastcmp(word, "VISITNEEDED"))
{

View file

@ -6473,7 +6473,7 @@ struct int_const_s const INT_CONST[] = {
// And map flags
{"LF2_HIDEINMENU",LF2_HIDEINMENU},
{"LF2_HIDEINSTATS",LF2_HIDEINSTATS},
{"LF2_TIMEATTACK",LF2_TIMEATTACK},
{"LF2_NOTIMEATTACK",LF2_NOTIMEATTACK},
{"LF2_VISITNEEDED",LF2_VISITNEEDED},
// Emeralds

View file

@ -414,7 +414,7 @@ typedef struct
#define LF2_HIDEINMENU (1<<0) ///< Hide in the multiplayer menu
#define LF2_HIDEINSTATS (1<<1) ///< Hide in the statistics screen
#define LF2_TIMEATTACK (1<<2) ///< Show this map in Time Attack modes
#define LF2_NOTIMEATTACK (1<<2) ///< Hide this map in Time Attack modes
#define LF2_VISITNEEDED (1<<3) ///< Not available in Time Attack modes until you visit the level
extern mapheader_t* mapheaderinfo[NUMMAPS];

View file

@ -440,7 +440,7 @@ UINT8 M_GotLowEnoughTime(INT32 tictime)
for (i = 0; i < NUMMAPS; ++i)
{
if (!mapheaderinfo[i] || !(mapheaderinfo[i]->menuflags & LF2_TIMEATTACK))
if (!mapheaderinfo[i] || (mapheaderinfo[i]->menuflags & LF2_NOTIMEATTACK))
continue;
if (!mainrecords[i] || !mainrecords[i]->time)

View file

@ -4458,7 +4458,7 @@ boolean M_CanShowLevelInList(INT32 mapnum, INT32 gt)
return true;*/
case LLM_TIMEATTACK:
case LLM_BREAKTHECAPSULES:
if (!(mapheaderinfo[mapnum]->menuflags & LF2_TIMEATTACK))
if (mapheaderinfo[mapnum]->menuflags & LF2_NOTIMEATTACK)
return false;
if ((levellistmode == LLM_TIMEATTACK && !(mapheaderinfo[mapnum]->typeoflevel & TOL_RACE))
@ -7667,7 +7667,7 @@ static void M_DrawLevelStats(void)
for (i = 0; i < NUMMAPS; i++)
{
if (!mapheaderinfo[i] || !(mapheaderinfo[i]->menuflags & LF2_TIMEATTACK))
if (!mapheaderinfo[i] || (mapheaderinfo[i]->menuflags & LF2_NOTIMEATTACK))
continue;
if (!mainrecords[i] || mainrecords[i]->time <= 0)