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 | |
| parent | 8fad176f5f83f741107d06a9cbe0243da89f8b30 (diff) | |
Core/Misc: Move large functions out of header files
Diffstat (limited to 'src/server/game/Maps')
| -rw-r--r-- | src/server/game/Maps/Map.cpp | 26 | ||||
| -rw-r--r-- | src/server/game/Maps/Map.h | 25 |
2 files changed, 26 insertions, 25 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()) diff --git a/src/server/game/Maps/Map.h b/src/server/game/Maps/Map.h index 9468e5d73ec..0241c6d0b62 100644 --- a/src/server/game/Maps/Map.h +++ b/src/server/game/Maps/Map.h @@ -392,8 +392,8 @@ class TC_GAME_API Map : public GridRefManager<NGridType> uint32 GetPlayersCountExceptGMs() const; bool ActiveObjectsNearGrid(NGridType const& ngrid) const; - void AddWorldObject(WorldObject* obj) { i_worldObjects.insert(obj); } - void RemoveWorldObject(WorldObject* obj) { i_worldObjects.erase(obj); } + void AddWorldObject(WorldObject* obj); + void RemoveWorldObject(WorldObject* obj); void SendToPlayers(WorldPacket const* data) const; @@ -763,27 +763,6 @@ class TC_GAME_API Map : public GridRefManager<NGridType> template<class T> void DeleteFromWorld(T*); - void AddToActiveHelper(WorldObject* obj) - { - m_activeNonPlayers.insert(obj); - } - - void RemoveFromActiveHelper(WorldObject* 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()) - return; - if (itr == m_activeNonPlayersIter) - ++m_activeNonPlayersIter; - m_activeNonPlayers.erase(itr); - } - else - m_activeNonPlayers.erase(obj); - } - std::unique_ptr<RespawnListContainer> _respawnTimes; RespawnInfoMap _creatureRespawnTimesBySpawnId; RespawnInfoMap _gameObjectRespawnTimesBySpawnId; |
