aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Events/GameEventMgr.cpp2
-rw-r--r--src/server/game/Pools/PoolMgr.cpp12
-rw-r--r--src/server/game/Pools/PoolMgr.h2
3 files changed, 8 insertions, 8 deletions
diff --git a/src/server/game/Events/GameEventMgr.cpp b/src/server/game/Events/GameEventMgr.cpp
index cf90b42378c..0384acb7e5f 100644
--- a/src/server/game/Events/GameEventMgr.cpp
+++ b/src/server/game/Events/GameEventMgr.cpp
@@ -1399,7 +1399,7 @@ void GameEventMgr::GameEventUnspawn(int16 event_id)
for (IdList::iterator itr = mGameEventPoolIds[internal_event_id].begin(); itr != mGameEventPoolIds[internal_event_id].end(); ++itr)
{
- sPoolMgr->DespawnPool(*itr);
+ sPoolMgr->DespawnPool(*itr, true);
}
}
diff --git a/src/server/game/Pools/PoolMgr.cpp b/src/server/game/Pools/PoolMgr.cpp
index d01977151d7..feea70c4021 100644
--- a/src/server/game/Pools/PoolMgr.cpp
+++ b/src/server/game/Pools/PoolMgr.cpp
@@ -225,9 +225,9 @@ void PoolGroup<GameObject>::Despawn1Object(ObjectGuid::LowType guid, bool always
// Same on one pool
template<>
-void PoolGroup<Pool>::Despawn1Object(uint32 child_pool_id, bool /*alwaysDeleteRespawnTime*/)
+void PoolGroup<Pool>::Despawn1Object(uint32 child_pool_id, bool alwaysDeleteRespawnTime)
{
- sPoolMgr->DespawnPool(child_pool_id);
+ sPoolMgr->DespawnPool(child_pool_id, alwaysDeleteRespawnTime);
}
// Method for a pool only to remove any found record causing a circular dependency loop
@@ -775,22 +775,22 @@ void PoolMgr::SpawnPool(uint32 pool_id)
}
// Call to despawn a pool, all gameobjects/creatures in this pool are removed
-void PoolMgr::DespawnPool(uint32 pool_id)
+void PoolMgr::DespawnPool(uint32 pool_id, bool alwaysDeleteRespawnTime)
{
{
auto it = mPoolCreatureGroups.find(pool_id);
if (it != mPoolCreatureGroups.end() && !it->second.isEmpty())
- it->second.DespawnObject(mSpawnedData, 0, true);
+ it->second.DespawnObject(mSpawnedData, 0, alwaysDeleteRespawnTime);
}
{
auto it = mPoolGameobjectGroups.find(pool_id);
if (it != mPoolGameobjectGroups.end() && !it->second.isEmpty())
- it->second.DespawnObject(mSpawnedData, 0, true);
+ it->second.DespawnObject(mSpawnedData, 0, alwaysDeleteRespawnTime);
}
{
auto it = mPoolPoolGroups.find(pool_id);
if (it != mPoolPoolGroups.end() && !it->second.isEmpty())
- it->second.DespawnObject(mSpawnedData);
+ it->second.DespawnObject(mSpawnedData, 0, alwaysDeleteRespawnTime);
}
}
diff --git a/src/server/game/Pools/PoolMgr.h b/src/server/game/Pools/PoolMgr.h
index 6e870e6eb03..7ee026998b3 100644
--- a/src/server/game/Pools/PoolMgr.h
+++ b/src/server/game/Pools/PoolMgr.h
@@ -116,7 +116,7 @@ class TC_GAME_API PoolMgr
bool CheckPool(uint32 pool_id) const;
void SpawnPool(uint32 pool_id);
- void DespawnPool(uint32 pool_id);
+ void DespawnPool(uint32 pool_id, bool alwaysDeleteRespawnTime = false);
template<typename T>
void UpdatePool(uint32 pool_id, uint32 db_guid_or_pool_id);