From b9acad707e895f663c769bfd12b3f661e73c05f8 Mon Sep 17 00:00:00 2001 From: toaster Date: Sat, 12 Mar 2022 22:31:52 +0000 Subject: [PATCH] Restore the v1 record attack critera (maps available by default), whilst also now allowing for specific maps to opt out. --- src/deh_soc.c | 4 ++-- src/deh_tables.c | 2 +- src/doomstat.h | 2 +- src/m_cond.c | 2 +- src/m_menu.c | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/deh_soc.c b/src/deh_soc.c index 4ab4a29aa..35133d4f9 100644 --- a/src/deh_soc.c +++ b/src/deh_soc.c @@ -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")) { diff --git a/src/deh_tables.c b/src/deh_tables.c index 7856d2c1e..cbc411ddd 100644 --- a/src/deh_tables.c +++ b/src/deh_tables.c @@ -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 diff --git a/src/doomstat.h b/src/doomstat.h index 38f4a05d2..980d7d749 100644 --- a/src/doomstat.h +++ b/src/doomstat.h @@ -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]; diff --git a/src/m_cond.c b/src/m_cond.c index d8194d4d1..ceff3c167 100644 --- a/src/m_cond.c +++ b/src/m_cond.c @@ -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) diff --git a/src/m_menu.c b/src/m_menu.c index 12986e59a..15436f417 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -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)