void DynamicObject::RemoveFromWorld() { ///- Remove the dynamicObject from the accessor and from all lists of objects in world if (IsInWorld()) { if (m_isViewpoint) RemoveCasterViewpoint(); if (m_aura) RemoveAura(); // dynobj could get removed in Aura::RemoveAura if (!IsInWorld()) return; UnbindFromCaster(); WorldObject::RemoveFromWorld(); sObjectAccessor->RemoveObject(this); } }
void DynamicObject::RemoveFromWorld() { ///- Remove the dynamicObject from the accessor and from all lists of objects in world if (IsInWorld()) { if (_isViewpoint) RemoveCasterViewpoint(); if (_aura) RemoveAura(); // dynobj could get removed in Aura::RemoveAura if (!IsInWorld()) return; UnbindFromCaster(); WorldObject::RemoveFromWorld(); GetMap()->GetObjectsStore().Remove<DynamicObject>(GetGUID()); } }