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; }