aboutsummaryrefslogtreecommitdiff
path: root/src/game/Map.cpp
diff options
context:
space:
mode:
authorw12x <none@none>2008-10-19 11:07:10 -0500
committerw12x <none@none>2008-10-19 11:07:10 -0500
commitbc05228d9f788d0ca67dfdaba30e8e4a4c6ee61f (patch)
treed861874f6d05aee8c0290e3b2d26b48e28c2d4a7 /src/game/Map.cpp
parente78b34c63fccc5ba7e5fb7fc057d48c63876b8be (diff)
[svn] Finally really fixed compile. Also, removed Unit::GetObjectInWorld(), use Map::GetCreatureInMap() and Map::GetGameObjectInMap() instead. This is to prevent creature-creature interaction on different maps, which would make the later multithreading of maps impossible.
--HG-- branch : trunk
Diffstat (limited to 'src/game/Map.cpp')
-rw-r--r--src/game/Map.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/game/Map.cpp b/src/game/Map.cpp
index c27053b60b1..b3d41ed254d 100644
--- a/src/game/Map.cpp
+++ b/src/game/Map.cpp
@@ -1560,6 +1560,20 @@ void InstanceMap::Remove(Player *player, bool remove)
Map::Remove(player, remove);
}
+Creature * Map::GetCreatureInMap(uint64 guid)
+{
+ Creature * obj = HashMapHolder<Creature>::Find(guid);
+ if(obj && obj->GetInstanceId() != GetInstanceId()) obj = NULL;
+ return obj;
+}
+
+GameObject * Map::GetGameObjectInMap(uint64 guid)
+{
+ GameObject * obj = HashMapHolder<GameObject>::Find(guid);
+ if(obj && obj->GetInstanceId() != GetInstanceId()) obj = NULL;
+ return obj;
+}
+
void InstanceMap::CreateInstanceData(bool load)
{
if(i_data != NULL)