diff options
author | megamage <none@none> | 2009-03-25 15:54:23 -0600 |
---|---|---|
committer | megamage <none@none> | 2009-03-25 15:54:23 -0600 |
commit | 581ae2719d1639d063a812901ff4b0983169cde7 (patch) | |
tree | 77db4a465848205ee497a140a1b1c4efa0c47db4 /src/game/DynamicObject.cpp | |
parent | 435570903a8eee6e9d81dd3e871aace1eb3cd73e (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.cpp | 14 |
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 ) |