diff --git a/src/game/Object.cpp b/src/game/Object.cpp index 69a286289b..0923af41ff 100644 --- a/src/game/Object.cpp +++ b/src/game/Object.cpp @@ -1695,6 +1695,13 @@ void WorldObject::SetMap(Map * map) m_currMap = map; } +void WorldObject::ResetMap() +{ + ASSERT(m_currMap); + ASSERT(!IsInWorld()); + m_currMap = NULL; +} + Map const* WorldObject::GetBaseMap() const { ASSERT(m_currMap); diff --git a/src/game/Object.h b/src/game/Object.h index c44dd4fd65..15bc7fcd00 100644 --- a/src/game/Object.h +++ b/src/game/Object.h @@ -529,10 +529,10 @@ class TRINITY_DLL_SPEC WorldObject : public Object void SendPlaySound(uint32 Sound, bool OnlySelf); virtual void SetMap(Map * map); + virtual void ResetMap(); Map * GetMap() const { ASSERT(m_currMap); return m_currMap; } Map * FindMap() const { return m_currMap; } //used to check all object's GetMap() calls when object is not in world! - virtual void ResetMap() { assert(m_currMap); m_currMap = NULL; } //this function should be removed in nearest time... Map const* GetBaseMap() const;