aboutsummaryrefslogtreecommitdiff
path: root/src/game/Object.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/Object.cpp')
-rw-r--r--src/game/Object.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/game/Object.cpp b/src/game/Object.cpp
index af96905b529..132729aea40 100644
--- a/src/game/Object.cpp
+++ b/src/game/Object.cpp
@@ -1646,12 +1646,18 @@ void Unit::BuildHeartBeatMsg(WorldPacket *data) const
void WorldObject::SendMessageToSet(WorldPacket *data, bool /*fake*/)
{
- GetMap()->MessageBroadcast(this, data);
+ //if object is in world, map for it already created!
+ Map * _map = IsInWorld() ? GetMap() : MapManager::Instance().FindMap(GetMapId(), GetInstanceId());
+ if(_map)
+ _map->MessageBroadcast(this, data);
}
void WorldObject::SendMessageToSetInRange(WorldPacket *data, float dist, bool /*bToSelf*/)
{
- GetMap()->MessageDistBroadcast(this, data, dist);
+ //if object is in world, map for it already created!
+ Map * _map = IsInWorld() ? GetMap() : MapManager::Instance().FindMap(GetMapId(), GetInstanceId());
+ if(_map)
+ _map->MessageDistBroadcast(this, data, dist);
}
void WorldObject::SendObjectDeSpawnAnim(uint64 guid)