From 50a829720125a8ee4a865094a075591b3c03e9a4 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 13 Sep 2014 11:00:25 +0200 Subject: [PATCH] - fixed: G_ChangeLevel must resolve warptrans map links before getting the next level's levelinfo. --- src/g_level.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/g_level.cpp b/src/g_level.cpp index 9437ced701..9671b81ccf 100644 --- a/src/g_level.cpp +++ b/src/g_level.cpp @@ -319,6 +319,7 @@ void G_InitNew (const char *mapname, bool bTitleLevel) bool wantFast; int i; + deathmatch = 1; G_ClearHubInfo(); if (!savegamerestore) { @@ -499,7 +500,9 @@ void G_ChangeLevel(const char *levelname, int position, int flags, int nextSkill } else if (strncmp(levelname, "enDSeQ", 6) != 0) { - nextinfo = FindLevelInfo (levelname, false); + FString reallevelname = levelname; + CheckWarpTransMap(reallevelname, true); + nextinfo = FindLevelInfo (reallevelname, false); if (nextinfo != NULL) { level_info_t *nextredir = nextinfo->CheckLevelRedirect(); @@ -507,8 +510,12 @@ void G_ChangeLevel(const char *levelname, int position, int flags, int nextSkill { nextinfo = nextredir; } + nextlevel = nextinfo->MapName; + } + else + { + nextlevel = levelname; } - nextlevel = nextinfo->MapName; } else {