From ec8e0e667c60ae0828f4d13ce11dddddc1d380e8 Mon Sep 17 00:00:00 2001 From: Rachael Alexanderson Date: Sat, 1 Feb 2025 07:38:47 -0500 Subject: [PATCH] - apparently, this was broken before which is why this neeeded this commit in the first place, but now it's been fixed in the official distribution, which makes this commit unnecessary. Or so I am told. Revert "make the broken ID24 levelnums work somehow so that Legacy of Rust's intermissions play." This reverts commit 59b567689a8cc971c43e513fc5ae5a692516b441. --- src/gamedata/g_mapinfo.cpp | 4 ---- src/gamedata/g_mapinfo.h | 1 - src/gamedata/umapinfo.cpp | 13 ++++--------- src/wi_stuff.cpp | 4 ++-- 4 files changed, 6 insertions(+), 16 deletions(-) diff --git a/src/gamedata/g_mapinfo.cpp b/src/gamedata/g_mapinfo.cpp index 22981062bd..9f6d94f2e5 100644 --- a/src/gamedata/g_mapinfo.cpp +++ b/src/gamedata/g_mapinfo.cpp @@ -2409,13 +2409,9 @@ static void SetLevelNum (level_info_t *info, int num) for (unsigned int i = 0; i < wadlevelinfos.Size(); ++i) { if (wadlevelinfos[i].levelnum == num) - { wadlevelinfos[i].levelnum = 0; - wadlevelinfos[i].broken_id24_levelnum = 0; - } } info->levelnum = num; - info->broken_id24_levelnum = num; // at least make it work - somehow. } //========================================================================== diff --git a/src/gamedata/g_mapinfo.h b/src/gamedata/g_mapinfo.h index 5d3309f4a9..5f4a5cc182 100644 --- a/src/gamedata/g_mapinfo.h +++ b/src/gamedata/g_mapinfo.h @@ -324,7 +324,6 @@ struct FExitText struct level_info_t { int levelnum; - int broken_id24_levelnum; FString MapName; FString NextMap; diff --git a/src/gamedata/umapinfo.cpp b/src/gamedata/umapinfo.cpp index d574bdcb95..67fa5c671f 100644 --- a/src/gamedata/umapinfo.cpp +++ b/src/gamedata/umapinfo.cpp @@ -60,7 +60,6 @@ struct UMapEntry char intermusic[9] = ""; int partime = 0; int nointermission = 0; - int id24_levelnum = 0; // note that this one's semantics are massively screwed up. Only to be used for ID24-style intermissions. }; static TArray Maps; @@ -127,7 +126,7 @@ static int ParseLumpName(FScanner &scanner, char *buffer) // // ----------------------------------------------- -static int ParseStandardProperty(FScanner &scanner, UMapEntry *mape, int *id24_levelnum) +static int ParseStandardProperty(FScanner &scanner, UMapEntry *mape) { // find the next line with content. // this line is no property. @@ -281,7 +280,6 @@ static int ParseStandardProperty(FScanner &scanner, UMapEntry *mape, int *id24_l epi.mEpisodeMap = mape->MapName; epi.mPicName = split[0]; epi.mNoSkill = false; - mape->id24_levelnum = *id24_levelnum = 1; unsigned i; for (i = 0; i < AllEpisodes.Size(); i++) @@ -352,16 +350,15 @@ static int ParseStandardProperty(FScanner &scanner, UMapEntry *mape, int *id24_l // // ----------------------------------------------- -static int ParseMapEntry(FScanner &scanner, UMapEntry *val, int *id24_levelnum) +static int ParseMapEntry(FScanner &scanner, UMapEntry *val) { scanner.MustGetToken(TK_Identifier); val->MapName = scanner.String; - val->id24_levelnum = ++(*id24_levelnum); scanner.MustGetToken('{'); while(!scanner.CheckToken('}')) { - ParseStandardProperty(scanner, val, id24_levelnum); + ParseStandardProperty(scanner, val); } return 1; } @@ -377,13 +374,12 @@ int ParseUMapInfo(int lumpnum) FScanner scanner(lumpnum); unsigned int i; - int id24_levelnum = 1; while (scanner.GetToken()) { scanner.TokenMustBe(TK_Map); UMapEntry parsed; - ParseMapEntry(scanner, &parsed, &id24_levelnum); + ParseMapEntry(scanner, &parsed); // Endpic overrides level exits. if (parsed.endpic[0]) @@ -493,7 +489,6 @@ void CommitUMapinfo(level_info_t *defaultinfo) if (map.exitpic[0]) levelinfo->ExitPic = map.exitpic; if (map.enteranim[0]) levelinfo->EnterAnim = map.enteranim; if (map.exitanim[0]) levelinfo->ExitAnim = map.exitanim; - levelinfo->broken_id24_levelnum = map.id24_levelnum; /* UMAPINFO's intermusic is for the text screen, not the summary. if (map.intermusic[0]) { diff --git a/src/wi_stuff.cpp b/src/wi_stuff.cpp index 3af0a7829a..8a5c7945cc 100644 --- a/src/wi_stuff.cpp +++ b/src/wi_stuff.cpp @@ -302,7 +302,7 @@ private: auto* li = FindLevelInfo(state != StatCount ? wbs->next.GetChars() : wbs->current.GetChars()); if (!li) return false; - if (li->broken_id24_levelnum != condition.param) + if (li->levelnum != condition.param) return false; break; } @@ -311,7 +311,7 @@ private: auto* li = FindLevelInfo(state != StatCount ? wbs->next.GetChars() : wbs->current.GetChars()); if (!li) return false; - if (li->broken_id24_levelnum <= condition.param) + if (li->levelnum <= condition.param) return false; break; }