diff options
| author | megamage <none@none> | 2009-05-01 18:37:32 -0500 |
|---|---|---|
| committer | megamage <none@none> | 2009-05-01 18:37:32 -0500 |
| commit | db817d668aab117b3abddcc617610f9a38f66798 (patch) | |
| tree | ebf4b73d3f2ce7aca6bc1289b4d98eb4065aed42 /src/game/Creature.cpp | |
| parent | e1b8fff590c6aca21297ecc638b29b59c4507cfe (diff) | |
| parent | c9cd3b07f9e69030a86bcd9f06055f4247732d1d (diff) | |
*Merge.
--HG--
branch : trunk
Diffstat (limited to 'src/game/Creature.cpp')
| -rw-r--r-- | src/game/Creature.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/game/Creature.cpp b/src/game/Creature.cpp index fc3e7ad7bac..d856c8b1f0f 100644 --- a/src/game/Creature.cpp +++ b/src/game/Creature.cpp @@ -184,7 +184,9 @@ void Creature::RemoveFromWorld() { if(IsInWorld()) { - // Clear formation info + if(Map *map = FindMap()) + if(map->IsDungeon() && ((InstanceMap*)map)->GetInstanceData()) + ((InstanceMap*)map)->GetInstanceData()->OnCreatureRemove(this); if(m_formation) formation_mgr.RemoveCreatureFromGroup(m_formation, this); Unit::RemoveFromWorld(); @@ -1382,7 +1384,7 @@ bool Creature::CreateFromProto(uint32 guidlow, uint32 Entry, uint32 team, const //Notify the map's instance data. //Only works if you create the object in it, not if it is moves to that map. //Normally non-players do not teleport to other maps. - Map *map = MapManager::Instance().FindMap(GetMapId(), GetInstanceId()); + Map *map = FindMap(); if(map && map->IsDungeon() && ((InstanceMap*)map)->GetInstanceData()) { ((InstanceMap*)map)->GetInstanceData()->OnCreatureCreate(this, Entry); |
