#pragma once ////////////////////////////////////////////////////////////////////////// // #include "MapTypes.h" #include ////////////////////////////////////////////////////////////////////////// // class MapWmoInfo { public: MapWmoInfo(EngineInstances& rINSTANCE, CWorldBase* pWorldBase) : m_rINSTANCE(rINSTANCE), m_pWorldBase(pWorldBase), m_fcCODE(0), m_wVersion(0) { ; } ~MapWmoInfo() { /*_Clear();*/ } public: BOOL Create(CWzArchive& archive, FIELDCODE fcFIELD); inline CWorldBase* EIWORLDBASE() { return m_pWorldBase; } inline FIELDCODE CODEofWMO() { return m_fcCODE; } private: //BOOL _Load(const CHAR* pszFieldPath); BOOL _Load_WMO_MAPOBJECT(CWzArchive& archive); BOOL _Load_WMO_TRIGGER(CWzArchive& archive); void _Clear(); void _Destroy(); private: EngineInstances& m_rINSTANCE; CWorldBase* m_pWorldBase; FIELDCODE m_fcCODE; WORD m_wVersion; // WMO Version MAPOBJECT_INFO_HASH m_MapObjHash; //__NA_000360_20070323_TRIGGER_LIBRARY TriggerInfoManager m_TriggerInfoManager; };