diff options
author | Shauren <shauren.trinity@gmail.com> | 2013-10-18 20:12:36 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2013-10-18 20:12:36 +0200 |
commit | 38b682d7a81e5273d5ab2f139bc8ed403462657d (patch) | |
tree | 445512878063af92482a02f58d6dc676d7a92291 /src | |
parent | 77013aa08128f84d7f08ba05151136cf9d050a98 (diff) |
Core/Maps: Added gameobject case for AddObjectToSwitchList and fixed logic in RemoveAllObjectsInRemoveList
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Maps/Map.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index fab1b05cd59..179a4cba878 100644 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -2396,7 +2396,7 @@ void Map::AddObjectToSwitchList(WorldObject* obj, bool on) ASSERT(obj->GetMapId() == GetId() && obj->GetInstanceId() == GetInstanceId()); // i_objectsToSwitch is iterated only in Map::RemoveAllObjectsInRemoveList() and it uses // the contained objects only if GetTypeId() == TYPEID_UNIT , so we can return in all other cases - if (obj->GetTypeId() != TYPEID_UNIT) + if (obj->GetTypeId() != TYPEID_UNIT && obj->GetTypeId() != TYPEID_GAMEOBJECT) return; std::map<WorldObject*, bool>::iterator itr = i_objectsToSwitch.find(obj); @@ -2417,7 +2417,7 @@ void Map::RemoveAllObjectsInRemoveList() bool on = itr->second; i_objectsToSwitch.erase(itr); - if (obj->GetTypeId() == TYPEID_UNIT || obj->GetTypeId() == TYPEID_GAMEOBJECT && !obj->IsPermanentWorldObject()) + if ((obj->GetTypeId() == TYPEID_UNIT || obj->GetTypeId() == TYPEID_GAMEOBJECT) && !obj->IsPermanentWorldObject()) SwitchGridContainers(obj, on); } |