- fixed: G_ChangeLevel must resolve warptrans map links before getting the next level's levelinfo.

This commit is contained in:
Christoph Oelckers 2014-09-13 11:00:25 +02:00
parent f0e9fde336
commit 50a8297201

View file

@ -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
{