diff --git a/src/p_setup.c b/src/p_setup.c index 41b9e698..12e8dd96 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -3168,7 +3168,7 @@ boolean P_SetupLevel(boolean skipprecip, boolean reloadinggamestate) globalweather = mapheaderinfo[gamemap-1]->weather; // set up world state - P_SpawnSpecials(fromnetsave); + P_SpawnSpecials(fromnetsave, reloadinggamestate); if (loadprecip) // ugly hack for P_NetUnArchiveMisc (and P_LoadNetGame) P_SpawnPrecipitation(); diff --git a/src/p_spec.c b/src/p_spec.c index 61ae9c63..c6c2fa47 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -5689,7 +5689,7 @@ static void P_RunLevelLoadExecutors(void) * as they'll just be erased by UnArchiveThinkers. * \sa P_SpawnPrecipitation, P_SpawnFriction, P_SpawnPushers, P_SpawnScrollers */ -void P_SpawnSpecials(INT32 fromnetsave) +void P_SpawnSpecials(INT32 fromnetsave, boolean reloadinggamestate) { sector_t *sector; size_t i; @@ -6738,7 +6738,8 @@ void P_SpawnSpecials(INT32 fromnetsave) } } - P_RunLevelLoadExecutors(); + if (!reloadinggamestate) + P_RunLevelLoadExecutors(); } /** Adds 3Dfloors as appropriate based on a common control linedef.