#pragma once #include #include // Æ÷Å» NPCÀÇ ¿þÀÌÆ÷ÀÎÆ® ¸®½ºÆ®¿¡ µî·ÏµÇ´Â Á¤º¸µé. // ÀÌÀü ±âȹ¿¡¼­ Ç÷¹À̾ À̵¿ÇÏ¿© Ŭ¸¯ÇÑ NPCÀÇ ¸Ê Á¤º¸¸¦ ÀúÀåÇϰí, Æ÷Å»À» ¿­¼ö ÀÖ´Â ¹æ½ÄÀ̾úÀ¸³ª, // ÇöÀç Æ÷Å»Àº Àüü¸¦ º¸¿©ÁÖ°í ÀÌ¿ë ¿ä±ÝÀ¸·Î °¥¼ö ÀÖ´Â ¹æ½ÄÀ¸·Î º¯°æ. // 2008/10/23ÀÏ ÇöÀç ¾²À̰í ÀÖÁö ¾ÊÀ½. class ChkLoaded { public: ChkLoaded(void) : m_IsLoaded(false) {} ~ChkLoaded(void) {} bool IsLoaded() { return m_IsLoaded; } void SetLoaded( bool v ) { m_IsLoaded = v; } protected: bool m_IsLoaded; }; typedef STLX_HASH_MAP WP_HASH; typedef WP_HASH::iterator WP_HASH_IT; class WayPoint : public ChkLoaded { public: WayPoint(void); ~WayPoint(void); void Clear(); BOOL IsExist( MAPCODE MapCode ); BOOL Insert( MAPCODE MapCode ); int GetCount() { return (int)m_WPHash.size(); } void Serialize( WAYPOINT_TOTAL_INFO & INOUT rInfo, eSERIALIZE se ); private: WP_HASH m_WPHash; }; typedef STLX_HASH_MAP CWP_HASH; typedef CWP_HASH::iterator CWP_HASH_IT; class CharWayPoint : public ChkLoaded { public: CharWayPoint(void) {} ~CharWayPoint(void) {} void Clear(); BOOL IsExist( DWORD Index ); BOOL Insert( WAYPOINTSLOT stWayPoint ); BOOL Delete( DWORD Index ); WAYPOINTSLOT GetWayPointSlot( DWORD Index ); int GetCount() { return (int)m_CWPHash.size(); } void Serialize( CHAR_WAYPOINT_TOTAL_INFO & INOUT rInfo, eSERIALIZE se ); private: CWP_HASH m_CWPHash; };