aboutsummaryrefslogtreecommitdiff
path: root/src/game/DynamicObject.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2009-03-25 15:54:23 -0600
committermegamage <none@none>2009-03-25 15:54:23 -0600
commit581ae2719d1639d063a812901ff4b0983169cde7 (patch)
tree77db4a465848205ee497a140a1b1c4efa0c47db4 /src/game/DynamicObject.cpp
parent435570903a8eee6e9d81dd3e871aace1eb3cd73e (diff)
*Do not allow to add/remove obj to/from world more than once.
--HG-- branch : trunk
Diffstat (limited to 'src/game/DynamicObject.cpp')
-rw-r--r--src/game/DynamicObject.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/game/DynamicObject.cpp b/src/game/DynamicObject.cpp
index fddac254272..801626d5a9b 100644
--- a/src/game/DynamicObject.cpp
+++ b/src/game/DynamicObject.cpp
@@ -46,15 +46,21 @@ DynamicObject::DynamicObject() : WorldObject()
void DynamicObject::AddToWorld()
{
///- Register the dynamicObject for guid lookup
- if(!IsInWorld()) ObjectAccessor::Instance().AddObject(this);
- WorldObject::AddToWorld();
+ if(!IsInWorld())
+ {
+ ObjectAccessor::Instance().AddObject(this);
+ WorldObject::AddToWorld();
+ }
}
void DynamicObject::RemoveFromWorld()
{
///- Remove the dynamicObject from the accessor
- if(IsInWorld()) ObjectAccessor::Instance().RemoveObject(this);
- WorldObject::RemoveFromWorld();
+ if(IsInWorld())
+ {
+ ObjectAccessor::Instance().RemoveObject(this);
+ WorldObject::RemoveFromWorld();
+ }
}
bool DynamicObject::Create( uint32 guidlow, Unit *caster, uint32 spellId, uint32 effIndex, float x, float y, float z, int32 duration, float radius )