aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Maps/Map.h
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-03-13 18:51:29 +0100
committerShauren <shauren.trinity@gmail.com>2024-03-14 00:14:16 +0100
commita79b42bf681e211997923dbc6c191aae187aded6 (patch)
treedc52e4651fe17d4e6ce3437490d07313113432aa /src/server/game/Maps/Map.h
parent7850107a42e7709f6e92f542860160b8c1432c94 (diff)
Core/Misc: Use our new unique_trackable_ptr for various classes exposed to scripts (not actually used anywhere currently)
(cherry picked from commit 4779fa5048642b57a0f69de7ab56b9d563c1cbc4)
Diffstat (limited to 'src/server/game/Maps/Map.h')
-rw-r--r--src/server/game/Maps/Map.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Maps/Map.h b/src/server/game/Maps/Map.h
index dadd8cc14de..e51e50cbf7e 100644
--- a/src/server/game/Maps/Map.h
+++ b/src/server/game/Maps/Map.h
@@ -32,6 +32,7 @@
#include "SpawnData.h"
#include "Timer.h"
#include "Transaction.h"
+#include "UniqueTrackablePtr.h"
#include <bitset>
#include <list>
#include <memory>
@@ -429,6 +430,9 @@ class TC_GAME_API Map : public GridRefManager<NGridType>
uint32 GetInstanceId() const { return i_InstanceId; }
uint8 GetSpawnMode() const { return (i_spawnMode); }
+ Trinity::unique_weak_ptr<Map> GetWeakPtr() const { return m_weakRef; }
+ void SetWeakPtr(Trinity::unique_weak_ptr<Map> weakRef) { m_weakRef = std::move(weakRef); }
+
enum EnterState
{
CAN_ENTER = 0,
@@ -710,6 +714,7 @@ class TC_GAME_API Map : public GridRefManager<NGridType>
MapEntry const* i_mapEntry;
uint8 i_spawnMode;
uint32 i_InstanceId;
+ Trinity::unique_weak_ptr<Map> m_weakRef;
uint32 m_unloadTimer;
float m_VisibleDistance;
DynamicMapTree _dynamicTree;