aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Globals/ObjectMgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp
index 78cd1e7e5b9..737f1952348 100644
--- a/src/server/game/Globals/ObjectMgr.cpp
+++ b/src/server/game/Globals/ObjectMgr.cpp
@@ -38,6 +38,7 @@
#include "MotionMaster.h"
#include "ObjectAccessor.h"
#include "ObjectDefines.h"
+#include "PhasingHandler.h"
#include "Player.h"
#include "PoolMgr.h"
#include "QuestDef.h"
@@ -1890,8 +1891,9 @@ void ObjectMgr::LoadCreatures()
for (auto& difficultyPair : mapDifficultyPair.second)
spawnMasks[mapDifficultyPair.first] |= UI64LIT(1) << difficultyPair.first;
+ PhaseShift phaseShift;
- _creatureDataStore.rehash(result->GetRowCount());
+ _creatureDataStore.reserve(result->GetRowCount());
do
{
@@ -2078,7 +2080,8 @@ void ObjectMgr::LoadCreatures()
{
uint32 zoneId = 0;
uint32 areaId = 0;
- sMapMgr->GetZoneAndAreaId(zoneId, areaId, data.mapid, data.posX, data.posY, data.posZ);
+ PhasingHandler::InitDbVisibleMapId(phaseShift, data.terrainSwapMap);
+ sMapMgr->GetZoneAndAreaId(phaseShift, zoneId, areaId, data.mapid, data.posX, data.posY, data.posZ);
PreparedStatement* stmt = WorldDatabase.GetPreparedStatement(WORLD_UPD_CREATURE_ZONE_AREA_DATA);
@@ -2249,7 +2252,9 @@ void ObjectMgr::LoadGameobjects()
for (auto& difficultyPair : mapDifficultyPair.second)
spawnMasks[mapDifficultyPair.first] |= UI64LIT(1) << difficultyPair.first;
- _gameObjectDataStore.rehash(result->GetRowCount());
+ PhaseShift phaseShift;
+
+ _gameObjectDataStore.reserve(result->GetRowCount());
do
{
@@ -2448,7 +2453,8 @@ void ObjectMgr::LoadGameobjects()
{
uint32 zoneId = 0;
uint32 areaId = 0;
- sMapMgr->GetZoneAndAreaId(zoneId, areaId, data.mapid, data.posX, data.posY, data.posZ);
+ PhasingHandler::InitDbVisibleMapId(phaseShift, data.terrainSwapMap);
+ sMapMgr->GetZoneAndAreaId(phaseShift, zoneId, areaId, data.mapid, data.posX, data.posY, data.posZ);
PreparedStatement* stmt = WorldDatabase.GetPreparedStatement(WORLD_UPD_GAMEOBJECT_ZONE_AREA_DATA);
@@ -6246,7 +6252,7 @@ WorldSafeLocsEntry const* ObjectMgr::GetClosestGraveYard(WorldLocation const& lo
uint32 MapId = location.GetMapId();
// search for zone associated closest graveyard
- uint32 zoneId = sMapMgr->GetZoneId(MapId, x, y, z);
+ uint32 zoneId = sMapMgr->GetZoneId(PhaseShift(), MapId, x, y, z);
if (!zoneId)
{