aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/BattleGround.cpp2
-rw-r--r--src/game/Map.cpp4
-rw-r--r--src/game/Object.cpp6
-rw-r--r--src/game/Unit.cpp15
4 files changed, 18 insertions, 9 deletions
diff --git a/src/game/BattleGround.cpp b/src/game/BattleGround.cpp
index 6849a9ca90c..2538bd3434e 100644
--- a/src/game/BattleGround.cpp
+++ b/src/game/BattleGround.cpp
@@ -1216,7 +1216,7 @@ bool BattleGround::AddObject(uint32 type, uint32 entry, float x, float y, float
data.go_state = 1;
*/
// add to world, so it can be later looked up from HashMapHolder
- go->AddToWorld();
+ map->Add(go);
m_BgObjects[type] = go->GetGUID();
return true;
}
diff --git a/src/game/Map.cpp b/src/game/Map.cpp
index fbe4f32d5b1..b7e0fd59f61 100644
--- a/src/game/Map.cpp
+++ b/src/game/Map.cpp
@@ -485,7 +485,7 @@ bool Map::Add(Player *player)
SendInitTransports(player);
player->m_clientGUIDs.clear();
- AddNotifier(player);
+ //AddNotifier(player);
return true;
}
@@ -523,7 +523,7 @@ Map::Add(T *obj)
UpdateObjectVisibility(obj,cell,p);
- AddNotifier(obj);
+ //AddNotifier(obj);
}
void Map::MessageBroadcast(Player *player, WorldPacket *msg, bool to_self, bool to_possessor)
diff --git a/src/game/Object.cpp b/src/game/Object.cpp
index 4159f05d4b8..4a485f9c489 100644
--- a/src/game/Object.cpp
+++ b/src/game/Object.cpp
@@ -97,6 +97,8 @@ Object::~Object( )
//DEBUG_LOG("Object desctr 1 check (%p)",(void*)this);
delete [] m_uint32Values;
delete [] m_uint32Values_mirror;
+ m_uint32Values = NULL;
+ m_uint32Values_mirror = NULL;
//DEBUG_LOG("Object desctr 2 check (%p)",(void*)this);
}
}
@@ -1567,7 +1569,9 @@ Map const* WorldObject::GetBaseMap() const
void WorldObject::AddObjectToRemoveList()
{
- Map* map = MapManager::Instance().FindMap(GetMapId(), GetInstanceId());
+ assert(m_uint32Values);
+
+ Map* map = FindMap();
if(!map)
{
sLog.outError("Object (TypeId: %u Entry: %u GUID: %u) at attempt add to move list not have valid map (Id: %u).",GetTypeId(),GetEntry(),GetGUIDLow(),GetMapId());
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index fb0aee82654..beabc0e8668 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -66,11 +66,6 @@ float baseMoveSpeed[MAX_MOVE_TYPE] =
void InitTriggerAuraData();
-void Unit::AddToWorld()
-{
- WorldObject::AddToWorld();
-}
-
// auraTypes contains attacker auras capable of proc'ing cast auras
static Unit::AuraTypeSet GenerateAttakerProcCastAuraTypes()
{
@@ -10853,6 +10848,16 @@ uint32 Unit::GetCreatePowers( Powers power ) const
return 0;
}
+void Unit::AddToWorld()
+{
+ if(!IsInWorld())
+ {
+ m_Notified = false;
+ m_IsInNotifyList = false;
+ SetToNotify();
+ }
+}
+
void Unit::RemoveFromWorld()
{
// cleanup