diff options
| author | Treeston <treeston.mmoc@gmail.com> | 2020-12-30 21:08:22 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-12-30 21:08:22 +0100 |
| commit | f8afcec9f3efc58ce8a38a6c63e2ebfc24d2e01d (patch) | |
| tree | 725a62d14988ec5c99d93769510ff92ef5d36c8c /src/server/game/Pools | |
| parent | 0ad1854d1c6a3b6ff93e71272c919f1f5f11d5ed (diff) | |
Core/Maps: move pooling hand-off outside of Map::CheckRespawn (PR#25785)
fixes #25777
Diffstat (limited to 'src/server/game/Pools')
| -rw-r--r-- | src/server/game/Pools/PoolMgr.cpp | 15 | ||||
| -rw-r--r-- | src/server/game/Pools/PoolMgr.h | 1 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/server/game/Pools/PoolMgr.cpp b/src/server/game/Pools/PoolMgr.cpp index 3f427526dcf..e685c1f1b15 100644 --- a/src/server/game/Pools/PoolMgr.cpp +++ b/src/server/game/Pools/PoolMgr.cpp @@ -845,3 +845,18 @@ void PoolMgr::UpdatePool(uint32 pool_id, uint32 db_guid_or_pool_id) template void PoolMgr::UpdatePool<Pool>(uint32 pool_id, uint32 db_guid_or_pool_id); template void PoolMgr::UpdatePool<GameObject>(uint32 pool_id, uint32 db_guid_or_pool_id); template void PoolMgr::UpdatePool<Creature>(uint32 pool_id, uint32 db_guid_or_pool_id); + +void PoolMgr::UpdatePool(uint32 pool_id, SpawnObjectType type, uint32 spawnId) +{ + switch (type) + { + case SPAWN_TYPE_CREATURE: + UpdatePool<Creature>(pool_id, spawnId); + break; + case SPAWN_TYPE_GAMEOBJECT: + UpdatePool<GameObject>(pool_id, spawnId); + break; + default: + ABORT_MSG("Invalid spawn type %u passed to PoolMgr::IsPartOfPool (with spawnId %u)", uint32(type), spawnId); + } +} diff --git a/src/server/game/Pools/PoolMgr.h b/src/server/game/Pools/PoolMgr.h index 7ee026998b3..d60fad2e3d0 100644 --- a/src/server/game/Pools/PoolMgr.h +++ b/src/server/game/Pools/PoolMgr.h @@ -120,6 +120,7 @@ class TC_GAME_API PoolMgr template<typename T> void UpdatePool(uint32 pool_id, uint32 db_guid_or_pool_id); + void UpdatePool(uint32 pool_id, SpawnObjectType type, ObjectGuid::LowType spawnId); private: template<typename T> |
