Initial commit: ROW Client source code

Game client codebase including:
- CharacterActionControl: Character and creature management
- GlobalScript: Network, items, skills, quests, utilities
- RYLClient: Main client application with GUI and event handlers
- Engine: 3D rendering engine (RYLGL)
- MemoryManager: Custom memory allocation
- Library: Third-party dependencies (DirectX, boost, etc.)
- Tools: Development utilities

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-29 16:24:34 +09:00
commit e067522598
5135 changed files with 1745744 additions and 0 deletions

View File

@@ -0,0 +1,445 @@
// Z3D_CONSTANTS.h: constants & enums
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_Z3D_CONSTANTS_H__3ADE1A0A_F343_43A2_B978_BEB6807C664A__INCLUDED_)
#define AFX_Z3D_CONSTANTS_H__3ADE1A0A_F343_43A2_B978_BEB6807C664A__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
enum Z3D_CHR_ACTION
{
// <20><><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD>
Z3D_CA_WAIT = 0, // <20><><EFBFBD><EFBFBD>
Z3D_CA_WALK, // <20>ȱ<EFBFBD>
Z3D_CA_WALK_BACK, // <20>ڷΰȱ<CEB0>
Z3D_CA_RUN, // <20>޸<EFBFBD><DEB8><EFBFBD>
Z3D_CA_CASTING_BEGIN, // ij<><C4B3><EFBFBD>ý<EFBFBD><C3BD><EFBFBD>
Z3D_CA_CASTING_END, // ij<><C4B3><EFBFBD><EFBFBD> <20><>
Z3D_CA_DRINK_BEGIN, // <20><><EFBFBD>ñ<EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_DRINKING, // <20><><EFBFBD>ñ<EFBFBD>
Z3D_CA_DRINK_END, // <20><><EFBFBD>ñ<EFBFBD> <20><>
Z3D_CA_EAT, // <20>Ա<EFBFBD>
Z3D_CA_USE, // <20><><EFBFBD><EFBFBD><EFBFBD>ۻ<EFBFBD><DBBB><EFBFBD>
Z3D_CA_SLEEP_BEGIN, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>ڱ<EFBFBD> <20><><EFBFBD><EFBFBD>)
Z3D_CA_SLEEPING, // <20><><EFBFBD>ڱ<EFBFBD>
Z3D_CA_SLEEP_END, // <20><EFBFBD><E1BFA1> <20><><EFBFBD><EFBFBD>(<28>ڱ<EFBFBD> <20><>)
Z3D_CA_ATTACK_BEGIN, // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_ATTACK_END, // <20><><EFBFBD><EFBFBD> <20><>
Z3D_CA_ATTACK2_BEGIN, // <20><><EFBFBD><EFBFBD>2 <20><><EFBFBD><EFBFBD>
Z3D_CA_ATTACK2_END, // <20><><EFBFBD><EFBFBD>2 <20><>
Z3D_CA_ATTACK3_BEGIN, // <20><><EFBFBD><EFBFBD>3 <20><><EFBFBD><EFBFBD>
Z3D_CA_ATTACK3_END, // <20><><EFBFBD><EFBFBD>3 <20><>
Z3D_CA_PARRIED, // <20>и<EFBFBD><D0B8><EFBFBD><EFBFBD><EFBFBD>
Z3D_CA_WEAPON_PARRYING, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>и<EFBFBD>
Z3D_CA_SHIELD_PARRYING, // <20><><EFBFBD>з<EFBFBD> <20>и<EFBFBD>
Z3D_CA_ATTACKED_BEGIN, // <20><><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_ATTACKED_END, // <20><><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD> <20><>
Z3D_CA_CRITICAL_ATTACKED_BEGIN, // ũ<><C5A9>Ƽ<EFBFBD><C6BC> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_CRITICAL_ATTACKED_END, // ũ<><C5A9>Ƽ<EFBFBD><C6BC> <20><><EFBFBD><EFBFBD> <20><>
Z3D_CA_STUN, // <20><><EFBFBD><EFBFBD>
Z3D_CA_DIE_BACK, // <20>ڷ<EFBFBD> <20>ں<EFBFBD><DABA><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_DIE_FRONT, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ѿ<EFBFBD><D1BE><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_RESURRECT_BACK, // <20>ں<EFBFBD><DABA><EFBFBD> <20><><EFBFBD>¿<EFBFBD><C2BF><EFBFBD> <20><>Ȱ
Z3D_CA_RESURRECT_FRONT, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>¿<EFBFBD><C2BF><EFBFBD> <20><>Ȱ
Z3D_CA_PUT_IN_WEAPON, // <20><><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_RESTORE_HAND, // <20><><EFBFBD><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>⵿<EFBFBD><E2B5BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>̵<EFBFBD>
Z3D_CA_GRIP_WEAPON, // <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ġ<EFBFBD><C4A1> <20>Ű<EFBFBD> <20><><EFBFBD>µ<EFBFBD><C2B5>۱<EFBFBD><DBB1><EFBFBD>
Z3D_CA_TAKE_OUT_WEAPON, // <20><><EFBFBD><20>տ<EFBFBD> <20><><EFBFBD><EFBFBD>(-_-;)<29><> <20><><EFBFBD>⵿<EFBFBD><E2B5BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ű<EFBFBD><C5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Z3D_CA_SIT_DOWN, // <20>ɱ<EFBFBD>
Z3D_CA_GET_UP, // <20>Ͼ<CFBE><EEBCAD>
// <20><>ü<EFBFBD><C3BC> <20><><EFBFBD><EFBFBD>
Z3D_CA_WAIT_LOWER, // <20><><EFBFBD><EFBFBD>
Z3D_CA_WALK_LOWER, // <20>ȱ<EFBFBD>
Z3D_CA_WALK_BACK_LOWER, // <20>ڷΰȱ<CEB0>
Z3D_CA_RUN_LOWER, // <20>޸<EFBFBD><DEB8><EFBFBD>
// <20><>ü<EFBFBD><C3BC> <20><><EFBFBD><EFBFBD>
Z3D_CA_ATTACK_BEGIN_UPPER,
Z3D_CA_ATTACK_END_UPPER,
Z3D_CA_ATTACK2_BEGIN_UPPER,
Z3D_CA_ATTACK2_END_UPPER,
Z3D_CA_ATTACK3_BEGIN_UPPER,
Z3D_CA_ATTACK3_END_UPPER,
// <20>߰<EFBFBD><DFB0>ǰų<C7B0> begin/end<6E><64> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>۱<EFBFBD><DBB1><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>Ұ<EFBFBD><D2B0><EFBFBD>
Z3D_CA_ATTACKED,
Z3D_CA_FALLDOWN,
Z3D_CA_CAST_BEGIN,
Z3D_CA_CASTING,
Z3D_CA_CAST_END,
Z3D_CA_CAST_RETURN,
Z3D_CA_ATTACK,
Z3D_CA_ATTACK_SIDE_LEFT,
Z3D_CA_ATTACK_SIDE_RIGHT,
Z3D_CA_ATTACK_ADVANCE,
Z3D_CA_ATTACK_RETREAT,
// <20>߰<EFBFBD><DFB0>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD> <20><><EFBFBD>۵<EFBFBD>
Z3D_CA_WALK_SIDE_LEFT,
Z3D_CA_WALK_SIDE_RIGHT,
Z3D_CA_RUN_SIDE_LEFT,
Z3D_CA_RUN_SIDE_RIGHT,
// skill motion
Z3D_CA_BASH,
Z3D_CA_MOTION_COUNT, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> action<6F><6E><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>üũ<C3BC><C5A9>(<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>)
// <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> action<6F><6E>(<28><><EFBFBD>º<EFBFBD><C2BA><EFBFBD>, <20>׽<EFBFBD>Ʈ<EFBFBD><C6AE> <20><>..)
Z3D_CA_NOTIFY_HIT_BY_FIREBALL, // <20><><EFBFBD>̾<CCBE><EEBABC> <20>´<EFBFBD>.
Z3D_CA_MOTION_FINISHED, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> notification(<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Z3D_CA_BEGIN_SET_PART,
Z3D_CA_END_SET_PART,
Z3D_CA_SET_HEAD_PART, // <20>Ӹ<EFBFBD><D3B8>κ<EFBFBD>(<28><><EFBFBD><EFBFBD>) <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_BODY_PART, // <20><>ü <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_HAND_PART, // <20><>(<28>尩) <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_LEG_PART, // <20>ٸ<EFBFBD>(<28><><EFBFBD><EFBFBD>) <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_FOOT_PART, // <20><>(<28>Ź<EFBFBD>) <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_BATTLE_MODE, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ȯ
Z3D_CA_SET_NORMAL_MODE, // <20>Ϲݸ<CFB9><DDB8><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><> <20><>ȯ
Z3D_CA_SET_SITDOWN_MODE,// <20>ɾ<EFBFBD><C9BE>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ȯ
Z3D_CA_SET_LOD_LEVEL, // LOD <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_WEAPON_TRAIL_ON, // <20>˱<EFBFBD> on
Z3D_CA_WEAPON_TRAIL_OFF,// <20>˱<EFBFBD> off
Z3D_CA_WEAPON_FIRE_ON, // <20><>Į on
Z3D_CA_WEAPON_FIRE_OFF, // <20><>Į off
Z3D_CA_BODY_FLAME_ON, // <20><><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD> <20>Ҳ<EFBFBD> on
Z3D_CA_BODY_FLAME_OFF, // <20><><EFBFBD>ſ<EFBFBD><C5BF><EFBFBD> <20>Ҳ<EFBFBD> off
Z3D_CA_EFFECT_HEALING, // Healing effect
Z3D_CA_EFFECT_CASTING, // Casting effect
Z3D_CA_EFFECT_BLEEDING, // <20><><EFBFBD><EFBFBD><EAB8AE> effect
Z3D_CA_EFFECT_FIREBALL, // Fireball effect
Z3D_CA_EFFECT_RESPAWN, // Respawn
Z3D_CA_EFFECT_LEVELUP, // Level up
Z3D_CA_SET_FACE_TYPE, // <20><><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>) <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_HAIR_STYLE, // <20><><EFBFBD>Ÿ<EEBDBA><C5B8> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_DEFAULT_TYPE,// <20><EFBFBD><E2BABB>(<28><> <20>ϳ<EFBFBD><CFB3><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ع<EFBFBD><D8B9><EFBFBD> <20><><EFBFBD><EFBFBD>) <20><><EFBFBD><EFBFBD>
Z3D_CA_TEST1, // <20>׽<EFBFBD>Ʈ<EFBFBD><C6AE> 1,2,3 (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
Z3D_CA_TEST2,
Z3D_CA_TEST3,
// <20><><EFBFBD>ο<EFBFBD> ij<><C4B3><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD> actions
Z3D_CA_SET_MOTION_SHEET, // motion sheet
Z3D_CA_ACT_MOTION, // <20><><EFBFBD>ο<EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_STATIC_SLOT, // static slot(<28><><EFBFBD><EFBFBD>, <20><><EFBFBD>Ÿ<EEBDBA><C5B8>)<29><><EFBFBD><EFBFBD>
Z3D_CA_BEGIN_OUTFIT_SET, // slot <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>)
Z3D_CA_SET_OUTFIT_SLOT, // slot <20><><EFBFBD><EFBFBD>
Z3D_CA_END_OUTFIT_SET, // slot <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_WEAPON, // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_SET_SHIELD, // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Z3D_CA_FORCE_DWORD = 0x7FFFFFFF
};
// <20><>ü<EFBFBD><C3BC> <20><>ü<EFBFBD><C3BC> <20><><EFBFBD>۽<EFBFBD>Ű<EFBFBD><C5B0> <20><><EFBFBD><EFBFBD> <20>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD>(lParam1 <20><> <20><><EFBFBD><EFBFBD>)
#define Z3D_CA_BOTH 0
#define Z3D_CA_UPPER 1
#define Z3D_CA_LOWER 2
enum Z3D_CHR_NOTIFICATION
{
Z3D_CN_NOTHING = 0,
Z3D_CN_HIT_BY_FIREBALL,
Z3D_CN_FORCE_DWORD = 0x7FFFFFFF
};
enum Z3D_CHR_TYPE
{
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>..
Z3D_CT_MAN = 0, Z3D_CT_WOMAN,
// unique NPC, monster <20><> <20>Ʒ<EFBFBD><C6B7><EFBFBD> <20>߰<EFBFBD><DFB0><EFBFBD>~
// monster~ (<28><><EFBFBD><EFBFBD>+<2B>߰<EFBFBD><DFB0><EFBFBD>)
Z3D_CT_MON_ELOYEE,
Z3D_CT_MON_GOBLIN,
Z3D_CT_MON_HIDDENEYE,
Z3D_CT_MON_ORC,
Z3D_CT_MON_GORGON,
Z3D_CT_MON_FIELD,
Z3D_CT_MON_BEAR,
Z3D_CT_MON_DEADSUCKER,
Z3D_CT_MON_YANG,
Z3D_CT_MON_LIZARDMAN,
Z3D_CT_MON_SKELETON,
Z3D_CT_MON_ZOMBIE,
Z3D_CT_MON_FRINCLE,
Z3D_CT_MON_GOLEM,
Z3D_CT_MON_CARRION,
Z3D_CT_MON_PAWNPAWN,
Z3D_CT_MON_AMPHIBIAN,
Z3D_CT_MON_GOBLIN_WARRIOR,
Z3D_CT_MON_DARK_WARRIOR,
Z3D_CT_MON_LIZARDMAN_LEADER,
Z3D_CT_MON_SKELETON_WARRIOR,
Z3D_CT_MON_SLUG,
Z3D_CT_MON_CHULPAWN,
Z3D_CT_MON_GIANT_SPIDER,
Z3D_CT_MON_NIGHT_WOLF,
Z3D_CT_MON_WOLF,
Z3D_CT_MON_ZOMBIE_DOG,
Z3D_CT_MON_KILLER_BEETLE,
Z3D_CT_MON_GRUB,
Z3D_CT_MON_FLOATING_RAY,
Z3D_CT_MON_BRUTAL_TRIBE,
Z3D_CT_MON_THAITIG,
Z3D_CT_MON_TROLL,
Z3D_CT_MON_SEA_MAN,
Z3D_CT_MON_GIANT_SQUIRREL,
Z3D_CT_MON_DIRE_SQUIRREL,
// NPC
Z3D_CT_NPC_M_01,
Z3D_CT_NPC_M_02,
Z3D_CT_NPC_M_03,
Z3D_CT_NPC_M_04,
Z3D_CT_NPC_M_05,
Z3D_CT_NPC_M_06,
Z3D_CT_NPC_M_07,
Z3D_CT_NPC_M_08,
Z3D_CT_NPC_M_09,
Z3D_CT_NPC_M_10,
Z3D_CT_NPC_M_11,
Z3D_CT_NPC_M_12,
Z3D_CT_NPC_M_13,
Z3D_CT_NPC_M_14,
Z3D_CT_NPC_M_15,
Z3D_CT_NPC_M_16,
Z3D_CT_NPC_W_01,
Z3D_CT_NPC_W_02,
Z3D_CT_NPC_W_03,
Z3D_CT_NPC_W_04,
Z3D_CT_NPC_W_05,
Z3D_CT_NPC_W_06,
Z3D_CT_NPC_DONKEY,
Z3D_CT_PC_AKHAN_A,
Z3D_CT_FORCE_DWORD = 0x7FFFFFFF
};
enum Z3D_CHR_HAIR_STYLE
{
Z3D_CHS_NONE = 0, // <20><><EFBFBD>Ӹ<EFBFBD> <20>ֳ<EFBFBD>-_-? .... <20>ֱ<EFBFBD><D6B1><EFBFBD>-_-;;
Z3D_CHS_LONG1,
Z3D_CHS_LONG2,
Z3D_CHS_LONG3,
Z3D_CHS_LONG4,
Z3D_CHS_LONG5,
Z3D_CHS_SHORT1,
Z3D_CHS_SHORT2,
Z3D_CHS_SHORT3,
Z3D_CHS_SHORT4,
Z3D_CHS_TYPE1,
Z3D_CHS_TYPE2,
Z3D_CHS_TYPE3,
Z3D_CHS_TYPE4,
Z3D_CHS_TYPE5,
Z3D_CHS_TYPE6,
Z3D_CHS_TYPE7,
Z3D_CHS_TYPE8,
Z3D_CHS_TYPE9,
Z3D_CHS_FORCE_DWORD = 0x7FFFFFFF
};
enum Z3D_CHR_FACE_TYPE
{
Z3D_CFT_TYPE1 = 0,
Z3D_CFT_TYPE2,
Z3D_CFT_TYPE3,
Z3D_CFT_TYPE4,
Z3D_CFT_TYPE5,
Z3D_CFT_TYPE6,
Z3D_CFT_TYPE7,
Z3D_CFT_TYPE8,
Z3D_CFT_TYPE9,
Z3D_CFT_TYPE10,
Z3D_CFT_FORCE_DWORD = 0x7FFFFFFF
};
enum Z3D_CHR_DEFAULT_TYPE
{
Z3D_CDT_TYPE1 = 0,
Z3D_CDT_TYPE2,
Z3D_CDT_TYPE3,
/*Z3D_CDT_TYPE4,
Z3D_CDT_TYPE5,
Z3D_CDT_TYPE6,*/
Z3D_CDT_FORCE_DWORD = 0x7FFFFFFF
};
enum Z3D_CHR_SKELETONPART
{
Z3D_SP_NONE = 0,
Z3D_SP_HEAD,
Z3D_SP_NECK,
Z3D_SP_CHEST,
Z3D_SP_WAIST,
Z3D_SP_PELVIS,
Z3D_SP_R_HAND,
Z3D_SP_R_FOREARM,
Z3D_SP_R_UPPERARM,
Z3D_SP_R_THIGH,
Z3D_SP_R_CALF,
Z3D_SP_R_FOOT,
Z3D_SP_L_HAND,
Z3D_SP_L_FOREARM,
Z3D_SP_L_UPPERARM,
Z3D_SP_L_THIGH,
Z3D_SP_L_CALF,
Z3D_SP_L_FOOT
};
enum Z3D_CHR_EQUIPMENT
{
Z3D_CE_NONE = 0,
Z3D_CE_ARBALEST,
Z3D_CE_BATTLE_AXE,
Z3D_CE_BROAD_SWORD,
Z3D_CE_BUCKLER,
Z3D_CE_CLAYMORE,
Z3D_CE_COMPOSITE_BOW,
Z3D_CE_CROSSBOW,
Z3D_CE_CUTLAS,
Z3D_CE_DART,
Z3D_CE_DOUBLE_BLADED_AXE,
Z3D_CE_FALCHION,
Z3D_CE_GREAT_AXE,
Z3D_CE_GREAT_SWORD,
Z3D_CE_HAND_AXE,
Z3D_CE_HEAVY_CROSSBOW,
Z3D_CE_KITE_SHIELD,
Z3D_CE_KNIFE,
Z3D_CE_LONG_SPEAR,
Z3D_CE_LONG_SWORD,
Z3D_CE_LONGBOW,
Z3D_CE_MACE,
Z3D_CE_MILITARY_FORK,
Z3D_CE_MORNING_STAR,
Z3D_CE_PUNCHING_DAGGER,
Z3D_CE_QUARTER_STAFF,
Z3D_CE_RAPIER,
Z3D_CE_SABER,
Z3D_CE_SHARPEN_AXE,
Z3D_CE_SHORT_SPEAR,
Z3D_CE_SHORT_SWORD,
Z3D_CE_SLING,
Z3D_CE_STAFF,
Z3D_CE_THROWING_DAGGER,
Z3D_CE_TOWER_SHIELD,
Z3D_CE_TRIDENT,
Z3D_CE_TWO_HANDED_SWORD,
Z3D_CE_VIKING_SWORD,
Z3D_CE_WAR_HAMMER,
Z3D_CE_COUNT, // enumerator to count the number
Z3D_CE_FORCE_DWORD = 0x7FFFFFFF
};
enum Z3D_CHR_OUTFIT // head, body, hand, leg, foot <20>ټ<EFBFBD><D9BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
// <20><EFBFBD><E2BABB>... <20><><EFBFBD>߰<EFBFBD>ħ<EFBFBD><C4A7><EFBFBD><EFBFBD>(body<64><79> leg)<29><> <20><><EFBFBD><EFBFBD> '<27><><EFBFBD><EFBFBD>'<27><> <20><>Ÿ<EFBFBD><C5B8><EFBFBD><20>Ѵ<EFBFBD>.
Z3D_CO_DEFAULT = 0, // head, body, hand, leg, foot <20><><EFBFBD>ο<EFBFBD> <20><><EFBFBD><EFBFBD><EBB0A1>
Z3D_CO_DEFAULT_BODY, // ij<><C4B3><EFBFBD>͸<EFBFBD><CDB8><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><E7BFA1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ε<EFBFBD><CEB5><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>(?)
Z3D_CO_DEFAULT_HAND,
Z3D_CO_DEFAULT_LEG,
Z3D_CO_DEFAULT_FOOT,
// head - <20><><EFBFBD><EFBFBD> Ÿ<><C5B8>(<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ӹ<EFBFBD>ī<EFBFBD><C4AB><EFBFBD><EFBFBD><E5B7AF>..<2E>°<EFBFBD><C2B0><EFBFBD>-_-? )
Z3D_CO_LEATHER_HELMET,
Z3D_CO_CHAIN_HELMET,
Z3D_CO_KNIGHT_HELM,
Z3D_CO_FULL_HELM,
Z3D_CO_OPEN_HELM,
Z3D_CO_CLOSED_HELM,
// body
Z3D_CO_LEATHER_SHIRTS,
Z3D_CO_CHAIN_SHIRTS,
Z3D_CO_SCALE_MAIL,
Z3D_CO_LEATHER_TUNIC,
Z3D_CO_CHAIN_TUNIC,
Z3D_CO_PLATE_MAIL,
Z3D_CO_SCALE_BREAST,
Z3D_CO_PLATE_BREAST,
Z3D_CO_SHIRTS_A, // <20><><EFBFBD><EFBFBD><EFBFBD>߰<EFBFBD> <20><><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD> <20>۸<EFBFBD> <20><><EFBFBD><EFBFBD>-><3E><EFBFBD><E2BABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Űܿ<C5B0>
Z3D_CO_SHIRTS_B,
Z3D_CO_SHIRTS_C,
// hand
Z3D_CO_LEATHER_GLOVE,
Z3D_CO_CHAIN_GLOVE,
Z3D_CO_GAUNTLET,
// leg
Z3D_CO_TROUSERS,
Z3D_CO_CHAIN_TROUSERS,
Z3D_CO_PLATE_TROUSERS,
Z3D_CO_PLATE_TROUSERS2,
// foot
Z3D_CO_CHAIN_BOOTS,
Z3D_CO_LEATHER_BOOTS,
Z3D_CO_PLATE_BOOTS,
//enumerator to count total available enum.s
Z3D_CO_COUNT,
Z3D_CO_FORCE_DWORD = 0x7FFFFFFF
};
#endif // !defined(AFX_Z3D_CONSTANTS_H__3ADE1A0A_F343_43A2_B978_BEB6807C664A__INCLUDED_)