/* ========================================================================== * ÆÄ ÀÏ : BaseObject_Common.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : ¹Ú°æÈñ * ÀÛ ¼º ÀÏ : 2006-11-27 * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #pragma pack(push,1) class cBaseObject; const float SYNC_MOVE_RANGE = 300.0f; const unsigned long SYNC_MOVE_TIME = 300; const unsigned long SYNC_NORMALATTACK = 100; const unsigned short FIXED_OBJECT_SIZE = 20; enum eNAME_OF_MAP { MAP_NONE = 0, // ¿¹¾à. MAP_01, // Å׸£¹Ì´©½º MAP_02, // ¹ú¸ñÁö MAP_03, // ½¦¹öÁî ¼³¿ù MAP_04, // À帷ÀÇ °è°î MAP_05, // ¹Ì±Ã 1Ãþ MAP_06, // ¹Ì±Ã 2Ãþ MAP_07, // ¾Æ³×½ºÀÇ ´« MAP_08, // Àí´õ¹Ì ¿ä»õ MAP_09, // ¾ËÅõ½º Çù°î MAP_10, // ¾Æ³×½ºÀÇ ´« MAP_11, // Ä®¹Ù¶÷ ºÐÁö MAP_12, MAP_13, // ¼û°ÜÁø µ¿±¼ MAP_14, // ¿ë»çÀÇ ¾È½Äó MAP_MIN = MAP_01, MAP_MAX = MAP_14, MAP_COUNT = MAP_MAX - MAP_MIN + 1, MAP_DEATHMATCH = 101, // ÀüÀåÀδø - µ¥½º¸ÅÄ¡ MAP_FLAG, // ÀüÀåÀδø - ±ê¹ß»¯±â MAP_PVP_MIN = MAP_DEATHMATCH, MAP_PVP_MAX = MAP_FLAG, MAP_PVP_COUNT = MAP_PVP_MAX - MAP_PVP_MIN + 1, MAP_CIRCUS = 200, // Å׸¶Àδø - ÆÄ´Ï¿¹¼­Ä¿½º MAP_RIOHA, // Å׸¶Àδø - ¶óÀÌ¿ÀÇÏ MAP_DECOMUSS, MAP_THEME_MIN = MAP_CIRCUS, MAP_THEME_MAX = MAP_DECOMUSS, MAP_THEME_CNT = MAP_THEME_MAX - MAP_THEME_MIN + 1, MAP_TUTORIAL = 501, MAP_ETC_MIN = MAP_TUTORIAL, MAP_ETC_MAX = MAP_TUTORIAL, MAP_ETC_CNT = MAP_ETC_MAX - MAP_ETC_MIN + 1, }; #define MAX_THEMEDATA_MAX MAP_THEME_CNT + MAP_ETC_CNT enum SERVER_TYPE { _E_ST_NORMAL_MAP_ = 0, // ÀÏ¹Ý ¸Ê ¼­¹ö _E_ST_ID_PVP_, // ÀνºÅÏÆ® ´øÀü ¼­¹ö - PVP _E_ST_ID_THEME_, // ÀνºÅÏÆ® ´øÀü ¼­¹ö - THEME _E_ST_ID_TUTORIAL_, // ÀνºÅÏÆ® ´øÀü ¼­¹ö - TUTORIAL }; //const int PVP_MAP_NO = 101; //const int PVP2_MAP_NO = 102; //const int THEME_CIRCUS_MAP_NO = 200; //const int THEME_RIOHA_MAP_NO = 201; /// Ÿ°ÙÀÇ ¹øÈ£´Â ½ºÅ©¸³Æ®¿¡ ¿µÇâÀ» ÁÙ¼ö ÀÖÀ¸¹Ç·Î Ç×»ó ¾Æ·¡ÂÊ¿¡ Ãß°¡ µÇ¾î¾ß ÇÕ´Ï´Ù. enum eOBJECTSTATE { eOBJECT_STATE_IDLE = 0, eOBJECT_STATE_MOVE, eOBJECT_STATE_ATTACK, eOBJECT_STATE_DIE, eOBJECT_STATE_STOP, eOBJECT_STATE_PUSHPULL, eOBJECT_STATE_MAX, }; enum eOBJECTTYPE { eOBJECTTYPE_NONE = 0, eOBJECTTYPE_HERO, eOBJECTTYPE_PLAYER, eOBJECTTYPE_MONSTER, eOBJECTTYPE_NPC, eOBJECTTYPE_ITEM, eOBJECTTYPE_TOTEM, eOBJECTTYPE_GATHERING, eOBJECTTYPE_PORTAL, eOBJECTTYPE_USERPORTAL, eOBJECTTYPE_DISPLAY, }; enum eODDITYTYPE { eODDITYTYPE_CANTMOVE, /// À̵¿ ºÒ°¡ eODDITYTYPE_CANTSKILL_PHY, /// ½ºÅ³ »ç¿ë ºÒ°¡(¹°¸®) eODDITYTYPE_CANTSKILL_MAG, /// ½ºÅ³ »ç¿ë ºÒ°¡(¸¶¹ý) eODDITYTYPE_SLEEP, /// ¼ö¸é eODDITYTYPE_STUN, /// ½ºÅÏ eODDITYTYPE_DAMAGE_REFLECTION_PHY, /// µ¥¹ÌÁö ¹Ý»ç(¹°¸®) eODDITYTYPE_DAMAGE_REFLECTION_MAG, /// µ¥¹ÌÁö ¹Ý»ç(¸¶¹ý) eODDITYTYPE_DAMAGE_ABSORB_PHY, /// µ¥¹ÌÁö Èí¼ö(¹°¸®:º¸È£¸·) eODDITYTYPE_DAMAGE_ABSORB_MAG, /// µ¥¹ÌÁö Èí¼ö(¸¶¹ý:º¸È£¸·) eODDITYTYPE_INVINCIBILITY_PHY, /// ¹°¸® ¹«Àû eODDITYTYPE_INVINCIBILITY_MAG, /// ¸¶¹ý ¹«Àû eODDITYTYPE_HP_ABSORB, /// °ø°ÝÀÚ°¡ Ÿ°Ù µ¥¹ÌÁö¸¦ hp·ÎÈí¼ö eODDITYTYPE_MP_ABSORB, /// °ø°ÝÀÚ°¡ Ÿ°Ù µ¥¹ÌÁö¸¦ mp·ÎÈí¼ö eODDITYTYPE_STOPITEM_KIND, /// ¾ÆÀÌÅÛ »ç¿ëºÒ°¡ (Á¾·ùº°) eODDITYTYPE_STOPITEM_IDX, /// ¾ÆÀÌÅÛ »ç¿ëºÒ°¡ (À妽ºº°) eODDITYTYPE_DAMAGE_ABSORB_PHY_RANGE,/// ¹°¸® ¿ø°Å¸® µ¥¹ÌÁö Èí¼ö(%) eODDITYTYPE_IGNORE_DEFENCE_PHY, /// ¹æ¾î·Â ¹«½Ã(¹°¸®) eODDITYTYPE_IGNORE_DEFENCE_MAG, /// ¹æ¾î·Â ¹«½Ã(¸¶¹ý) eODDITYTYPE_AVOID_MON_LOOK, /// ¸ó½ºÅÍ ¼±°ø ÀÎ½Ä È¸ÇÇ eODDITYTYPE_ADD_APPLY_CNT, /// ¹üÀ§ ½ºÅ³ Àû¿ë Àοø Áõ°¡ eODDITYTYPE_MAX, }; #ifndef _OBJ_LINK_INFO #define _OBJ_LINK_INFO enum eLINK { eLINK_HEAD = 0, eLINK_BODY, eLINK_FOOT, eLINK_RHAND, eLINK_LHAND, eLINK_LARM, eLINK_HEAD2, eLINK_RWEAPON = 10, eLINK_LWEAPON, eLINK_NULL = 100, }; enum ePART { ePART_HAIR = 0, ePART_FACE, ePART_BODY1, ePART_BODY2, ePART_HAND, ePART_FOOT, ePART_MAX, /// ±Í ºÐ¸®°´Ã¼ ePART_EAR = 100, }; #endif /// °´Ã¼¿¡ ´ëÇÑ ÂüÁ¶¸¦ À§Çؼ­ ¼±¾ð struct sObject { unsigned char type; /// eOBJECTTYPE unsigned long index; }; //struct sMultiTarget //{ // sObject mTarget; // bool mIsApply; // // unsigned long mDetailCnt; // long mDetailDamageHP[10]; // long mDetailDamageMP[10]; // unsigned char mDetailDamageKind[10]; // long mDetailReflection[10]; // long mDetailAttkAbsorbHP[10]; // long mDetailAttkAbsorbMP[10]; // // sMultiTarget() // { // memset( this, 0, sizeof(sMultiTarget) ); // mIsApply = true; // } //}; #pragma pack(pop)