Skip to content

Commit

Permalink
- fixed portal restoration on revisiting level in hub
Browse files Browse the repository at this point in the history
Added function to FLevelLocals to test if map is being reentered

https://forum.zdoom.org/viewtopic.php?t=60455
  • Loading branch information
alexey-lysiuk authored and coelckers committed Jun 13, 2018
1 parent 7c9f1dd commit 2fb1274
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 2 deletions.
6 changes: 6 additions & 0 deletions src/g_levellocals.h
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,12 @@ struct FLevelLocals
return headgamenode;
}

// Returns true if level is loaded from saved game or is being revisited as a part of a hub
bool IsReentering() const
{
return savegamerestore
|| (info != nullptr && info->Snapshot.mBuffer != nullptr && info->isValid());
}
};

extern FLevelLocals level;
Expand Down
2 changes: 1 addition & 1 deletion src/p_setup.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4127,7 +4127,7 @@ void P_SetupLevel (const char *lumpname, int position)
times[16].Clock();
if (reloop) P_LoopSidedefs (false);
PO_Init (); // Initialize the polyobjs
if (!savegamerestore)
if (!level.IsReentering())
P_FinalizePortals(); // finalize line portals after polyobjects have been initialized. This info is needed for properly flagging them.
times[16].Unclock();

Expand Down
2 changes: 1 addition & 1 deletion src/s_sound.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -470,7 +470,7 @@ void S_Start ()

// Don't start the music if loading a savegame, because the music is stored there.
// Don't start the music if revisiting a level in a hub for the same reason.
if (!savegamerestore && (level.info == nullptr || level.info->Snapshot.mBuffer == nullptr || !level.info->isValid()))
if (!level.IsReentering())
{
if (level.cdtrack == 0 || !S_ChangeCDMusic (level.cdtrack, level.cdid))
S_ChangeMusic (level.Music, level.musicorder);
Expand Down

0 comments on commit 2fb1274

Please sign in to comment.