aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Phasing
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2022-12-31 18:22:40 +0100
committerShauren <shauren.trinity@gmail.com>2022-12-31 18:22:40 +0100
commit704142f15a51055c4fa064b1286b65d78b795e05 (patch)
treecccebbe29c3c7bf96fc90e0a1e6f34f19cda206e /src/server/game/Phasing
parent2c044ea9f558d5b181d56f1e318c7c96396f69d7 (diff)
Core/Maps: Fixed retrieving terrain info when on child maps
Diffstat (limited to 'src/server/game/Phasing')
-rw-r--r--src/server/game/Phasing/PhasingHandler.cpp6
-rw-r--r--src/server/game/Phasing/PhasingHandler.h2
2 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Phasing/PhasingHandler.cpp b/src/server/game/Phasing/PhasingHandler.cpp
index 01f996a5a11..ad2395fcb21 100644
--- a/src/server/game/Phasing/PhasingHandler.cpp
+++ b/src/server/game/Phasing/PhasingHandler.cpp
@@ -574,10 +574,10 @@ bool PhasingHandler::InDbPhaseShift(WorldObject const* object, uint8 phaseUseFla
return object->GetPhaseShift().CanSee(phaseShift);
}
-uint32 PhasingHandler::GetTerrainMapId(PhaseShift const& phaseShift, TerrainInfo const* terrain, float x, float y)
+uint32 PhasingHandler::GetTerrainMapId(PhaseShift const& phaseShift, uint32 mapId, TerrainInfo const* terrain, float x, float y)
{
if (phaseShift.VisibleMapIds.empty())
- return terrain->GetId();
+ return mapId;
if (phaseShift.VisibleMapIds.size() == 1)
return phaseShift.VisibleMapIds.begin()->first;
@@ -590,7 +590,7 @@ uint32 PhasingHandler::GetTerrainMapId(PhaseShift const& phaseShift, TerrainInfo
if (terrain->HasChildTerrainGridFile(visibleMap.first, gx, gy))
return visibleMap.first;
- return terrain->GetId();
+ return mapId;
}
void PhasingHandler::SetAlwaysVisible(WorldObject* object, bool apply, bool updateVisibility)
diff --git a/src/server/game/Phasing/PhasingHandler.h b/src/server/game/Phasing/PhasingHandler.h
index 779cae19821..6da249558a7 100644
--- a/src/server/game/Phasing/PhasingHandler.h
+++ b/src/server/game/Phasing/PhasingHandler.h
@@ -65,7 +65,7 @@ public:
static void InitDbVisibleMapId(PhaseShift& phaseShift, int32 visibleMapId);
static bool InDbPhaseShift(WorldObject const* object, uint8 phaseUseFlags, uint16 phaseId, uint32 phaseGroupId);
- static uint32 GetTerrainMapId(PhaseShift const& phaseShift, TerrainInfo const* terrain, float x, float y);
+ static uint32 GetTerrainMapId(PhaseShift const& phaseShift, uint32 mapId, TerrainInfo const* terrain, float x, float y);
static void SetAlwaysVisible(WorldObject* object, bool apply, bool updateVisibility);
static void SetInversed(WorldObject* object, bool apply, bool updateVisibility);