diff --git a/Source/Game/Events/GameEventManager.cs b/Source/Game/Events/GameEventManager.cs index 5c3ac8edb..8642f84b3 100644 --- a/Source/Game/Events/GameEventManager.cs +++ b/Source/Game/Events/GameEventManager.cs @@ -1312,7 +1312,7 @@ namespace Game } foreach (var poolId in mGameEventPoolIds[internal_event_id]) - Global.PoolMgr.DespawnPool(poolId); + Global.PoolMgr.DespawnPool(poolId, true); } void ChangeEquipOrModel(short event_id, bool activate) diff --git a/Source/Game/Pools/PoolManager.cs b/Source/Game/Pools/PoolManager.cs index ae17be3e1..9069f6fab 100644 --- a/Source/Game/Pools/PoolManager.cs +++ b/Source/Game/Pools/PoolManager.cs @@ -325,16 +325,16 @@ namespace Game SpawnPool(pool_id, 0); } - public void DespawnPool(uint pool_id) + public void DespawnPool(uint pool_id, bool alwaysDeleteRespawnTime = false) { if (mPoolCreatureGroups.ContainsKey(pool_id) && !mPoolCreatureGroups[pool_id].IsEmpty()) - mPoolCreatureGroups[pool_id].DespawnObject(mSpawnedData, 0, true); + mPoolCreatureGroups[pool_id].DespawnObject(mSpawnedData, 0, alwaysDeleteRespawnTime); if (mPoolGameobjectGroups.ContainsKey(pool_id) && !mPoolGameobjectGroups[pool_id].IsEmpty()) - mPoolGameobjectGroups[pool_id].DespawnObject(mSpawnedData, 0, true); + mPoolGameobjectGroups[pool_id].DespawnObject(mSpawnedData, 0, alwaysDeleteRespawnTime); if (mPoolPoolGroups.ContainsKey(pool_id) && !mPoolPoolGroups[pool_id].IsEmpty()) - mPoolPoolGroups[pool_id].DespawnObject(mSpawnedData); + mPoolPoolGroups[pool_id].DespawnObject(mSpawnedData, 0, alwaysDeleteRespawnTime); } public bool CheckPool(uint pool_id) @@ -532,7 +532,7 @@ namespace Game break; } case "Pool": - Global.PoolMgr.DespawnPool((uint)guid); + Global.PoolMgr.DespawnPool((uint)guid, alwaysDeleteRespawnTime); break; } }