diff options
| author | Shauren <shauren.trinity@gmail.com> | 2025-07-13 13:40:31 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2025-07-13 13:40:31 +0200 |
| commit | 5de252ae8471cea021944d2f404a7793f39a8d0d (patch) | |
| tree | 013165f80f8315e6bfe907af32fa193dee4264cb /src/server/game/Maps/Map.cpp | |
| parent | 8fad176f5f83f741107d06a9cbe0243da89f8b30 (diff) | |
Core/Misc: Move large functions out of header files
Diffstat (limited to 'src/server/game/Maps/Map.cpp')
| -rw-r--r-- | src/server/game/Maps/Map.cpp | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index ac15853286e..76bfb162ec0 100644 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -2710,9 +2710,19 @@ bool Map::ActiveObjectsNearGrid(NGridType const& ngrid) const return false; } +void Map::AddWorldObject(WorldObject* obj) +{ + i_worldObjects.insert(obj); +} + +void Map::RemoveWorldObject(WorldObject* obj) +{ + i_worldObjects.erase(obj); +} + void Map::AddToActive(WorldObject* obj) { - AddToActiveHelper(obj); + m_activeNonPlayers.insert(obj); Optional<Position> respawnLocation; switch (obj->GetTypeId()) @@ -2751,7 +2761,19 @@ void Map::AddToActive(WorldObject* obj) void Map::RemoveFromActive(WorldObject* obj) { - RemoveFromActiveHelper(obj); + // Map::Update for active object in proccess + if (m_activeNonPlayersIter != m_activeNonPlayers.end()) + { + ActiveNonPlayers::iterator itr = m_activeNonPlayers.find(obj); + if (itr != m_activeNonPlayers.end()) + { + if (itr == m_activeNonPlayersIter) + ++m_activeNonPlayersIter; + m_activeNonPlayers.erase(itr); + } + } + else + m_activeNonPlayers.erase(obj); Optional<Position> respawnLocation; switch (obj->GetTypeId()) |
