diff options
Diffstat (limited to 'src/server/game/Maps/Map.h')
-rw-r--r-- | src/server/game/Maps/Map.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Maps/Map.h b/src/server/game/Maps/Map.h index 78a8cb3e647..0339d92a6ee 100644 --- a/src/server/game/Maps/Map.h +++ b/src/server/game/Maps/Map.h @@ -35,6 +35,7 @@ #include "SharedDefines.h" #include "SpawnData.h" #include "Timer.h" +#include "UniqueTrackablePtr.h" #include "WorldStateDefines.h" #include <bitset> #include <list> @@ -312,6 +313,9 @@ class TC_GAME_API Map : public GridRefManager<NGridType> uint32 GetInstanceId() const { return i_InstanceId; } + Trinity::unique_weak_ptr<Map> GetWeakPtr() const { return m_weakRef; } + void SetWeakPtr(Trinity::unique_weak_ptr<Map> weakRef) { m_weakRef = std::move(weakRef); } + static TransferAbortParams PlayerCannotEnter(uint32 mapid, Player* player); virtual TransferAbortParams CannotEnter(Player* /*player*/) { return { TRANSFER_ABORT_NONE }; } char const* GetMapName() const; @@ -605,6 +609,7 @@ class TC_GAME_API Map : public GridRefManager<NGridType> MapEntry const* i_mapEntry; Difficulty i_spawnMode; uint32 i_InstanceId; + Trinity::unique_weak_ptr<Map> m_weakRef; uint32 m_unloadTimer; float m_VisibleDistance; DynamicMapTree _dynamicTree; |