diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Map.cpp | 7 | ||||
-rw-r--r-- | src/game/Map.h | 4 | ||||
-rw-r--r-- | src/game/MapInstanced.cpp | 6 | ||||
-rw-r--r-- | src/game/MapInstanced.h | 1 | ||||
-rw-r--r-- | src/game/MapManager.cpp | 2 |
5 files changed, 13 insertions, 7 deletions
diff --git a/src/game/Map.cpp b/src/game/Map.cpp index 726bb3534d2..e3da8480719 100644 --- a/src/game/Map.cpp +++ b/src/game/Map.cpp @@ -2126,12 +2126,11 @@ inline void Map::setNGrid(NGridType *grid, uint32 x, uint32 y) i_grids[x][y] = grid; } -void Map::DoDelayedMovesAndRemoves() -{ +//void Map::DoDelayedMovesAndRemoves() +//{ //MoveAllCreaturesInMoveList(); //RemoveAllObjectsInRemoveList(); - RelocationNotify(); -} +//} void Map::AddObjectToRemoveList(WorldObject *obj) { diff --git a/src/game/Map.h b/src/game/Map.h index e40c6118ea6..514308c699a 100644 --- a/src/game/Map.h +++ b/src/game/Map.h @@ -340,6 +340,7 @@ class MANGOS_DLL_SPEC Map : public GridRefManager<NGridType>, public MaNGOS::Obj virtual void MoveAllCreaturesInMoveList(); virtual void RemoveAllObjectsInRemoveList(); + virtual void RelocationNotify(); bool CreatureRespawnRelocation(Creature *c); // used only in MoveAllCreaturesInMoveList and ObjectGridUnloader @@ -373,7 +374,7 @@ class MANGOS_DLL_SPEC Map : public GridRefManager<NGridType>, public MaNGOS::Obj void AddObjectToRemoveList(WorldObject *obj); void AddObjectToSwitchList(WorldObject *obj, bool on); - void DoDelayedMovesAndRemoves(); + //void DoDelayedMovesAndRemoves(); virtual bool RemoveBones(uint64 guid, float x, float y); @@ -389,7 +390,6 @@ class MANGOS_DLL_SPEC Map : public GridRefManager<NGridType>, public MaNGOS::Obj void AddUnitToNotify(Unit* unit); void RemoveUnitFromNotify(int32 slot); - void RelocationNotify(); void SendToPlayers(WorldPacket const* data) const; diff --git a/src/game/MapInstanced.cpp b/src/game/MapInstanced.cpp index df0fca8016c..ca106d6506c 100644 --- a/src/game/MapInstanced.cpp +++ b/src/game/MapInstanced.cpp @@ -77,6 +77,12 @@ void MapInstanced::RemoveAllObjectsInRemoveList() Map::RemoveAllObjectsInRemoveList(); } +void MapInstanced::RelocationNotify() +{ + for (InstancedMaps::iterator i = m_InstancedMaps.begin(); i != m_InstancedMaps.end(); ++i) + i->second->RelocationNotify(); +} + bool MapInstanced::RemoveBones(uint64 guid, float x, float y) { bool remove_result = false; diff --git a/src/game/MapInstanced.h b/src/game/MapInstanced.h index 70e59065577..bbca6ca0abb 100644 --- a/src/game/MapInstanced.h +++ b/src/game/MapInstanced.h @@ -37,6 +37,7 @@ class TRINITY_DLL_DECL MapInstanced : public Map void Update(const uint32&); void MoveAllCreaturesInMoveList(); void RemoveAllObjectsInRemoveList(); + void RelocationNotify(); bool RemoveBones(uint64 guid, float x, float y); void UnloadAll(); bool CanEnter(Player* player); diff --git a/src/game/MapManager.cpp b/src/game/MapManager.cpp index d75ba22b19a..43c778858b5 100644 --- a/src/game/MapManager.cpp +++ b/src/game/MapManager.cpp @@ -270,7 +270,7 @@ MapManager::Update(uint32 diff) void MapManager::DoDelayedMovesAndRemoves() { for(MapMapType::iterator iter=i_maps.begin(); iter != i_maps.end(); ++iter) - iter->second->DoDelayedMovesAndRemoves(); + iter->second->RelocationNotify(); } bool MapManager::ExistMapAndVMap(uint32 mapid, float x,float y) |