This repository was archived by the owner on Jun 11, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 12
Compositive commands
Grigorij Eleskin edited this page Aug 26, 2017
·
1 revision
//=============================================================================
// FileName: CompCommand.h
// Creater: ZhangXuedong
// Date: 2004.11.22
// Comment: compositive command
//=============================================================================
#ifndef COMPOSITIVECOMMAND_H
#define COMPOSITIVECOMMAND_H
#include "util.h"
#include "ItemAttrType.h"
#include "ChaAttrType.h"
#include "ItemContent.h"
#define defPROTOCOL_HAVE_PACKETID // ����Э�����Ƿ��������ID
enum EActionType // server,client ֮����ж�����
{
enumACTION_NONE = 0,
enumACTION_MOVE, // �ƶ�
enumACTION_SKILL, // ����
enumACTION_SKILL_SRC, // ʹ�ü���
enumACTION_SKILL_TAR, // ��ʹ�ü���
enumACTION_LOOK, // ���½�ɫ���
enumACTION_KITBAG, // ���½�ɫ�ĵ�����
enumACTION_SKILLBAG, // ���¼�����
enumACTION_ITEM_PICK, // �����
enumACTION_ITEM_THROW, // ������
enumACTION_ITEM_UNFIX, // ����жװ
enumACTION_ITEM_USE, // ����ʹ��
enumACTION_ITEM_POS, // ���߸ı�λ��
enumACTION_ITEM_DELETE, // ����ɾ��
enumACTION_ITEM_INFO, // ������Ϣ
enumACTION_ITEM_FAILED, // ���߲���ʧ��
enumACTION_LEAN, // �п�
enumACTION_CHANGE_CHA, // ������ɫ
enumACTION_EVENT, // �����¼�
enumACTION_FACE, // �ͻ��������鶯��,Ŀǰ����������Ҫת���������ͻ���
enumACTION_STOP_STATE, // ֹͣ����״̬
enumACTION_SKILL_POSE, // ����Pose
enumACTION_PK_CTRL, // PK����
enumACTION_LOOK_ENERGY, // ���½�ɫ�������
enumACTION_TEMP, // ��ʱЭ��
enumACTION_SHORTCUT, // �ͻ��˷��Ϳ���������������̣��������֪ͨ�ͻ��˿��������,ע:����Ҫ������,��������ʼ��ɺ���ܷ���
enumACTION_BANK, // ����������Ϣ
enumACTION_CLOSE_BANK, // �ر�����
enumACTION_KITBAGTMP, //������ʱ����
enumACTION_KITBAGTMP_DRAG, //�Ϸ���ʱ�����еĵ���
enumMAX_ACTION_NUM // ��������
};
enum EAttrSynType // server->client ����ͬ������
{
enumATTRSYN_INIT, // ��ʼ��
enumATTRSYN_ITEM_EQUIP, // ��װ����жװ����,���Է����ı�
enumATTRSYN_ITEM_MEDICINE, // ��ʹ����Ʒ��ҩ�,���Է����ı�
enumATTRSYN_ATTACK, // ��Ϊ�������ܻ�,���Է����ı�,������
enumATTRSYN_TASK, // ���������Ըı�
enumATTRSYN_TRADE, // ���ף����Ըı�
enumATTRSYN_REASSIGN, // �������Ե㣬�����������Ըı�
enumATTRSYN_SKILL_STATE, // ����״̬�ı���������Ըı�
enumATTRSYN_AUTO_RESUME, // �Զ��ָ���HP,SP��
enumATTRSYN_CHANGE_JOB, // תְ
enumATTRSYN_RECTIFY, // ��������
};
enum EItemAppearType // server->client ���߳�������
{
enumITEM_APPE_MONS, // �������
enumITEM_APPE_THROW, // ����ɫ�ӳ�
enumITEM_APPE_NATURAL, // ��Ȼ����
};
enum ESynKitbagType // server->client ������ͬ������
{
enumSYN_KITBAG_INIT, // ��������ʼ��
enumSYN_KITBAG_EQUIP, // װ����������ͬ��������
enumSYN_KITBAG_UNFIX, // жװ��������ͬ��������
enumSYN_KITBAG_PICK, // �����
enumSYN_KITBAG_THROW, // �ӵ���
enumSYN_KITBAG_SWITCH, // ���������
enumSYN_KITBAG_TRADE, // ����
enumSYN_KITBAG_FROM_NPC,// NPC����
enumSYN_KITBAG_TO_NPC, // ��NPCȡ��
enumSYN_KITBAG_SYSTEM, // ϵͳ����
enumSYN_KITBAG_FORGES, // �����ɹ�
enumSYN_KITBAG_FORGEF, // ����ʧ��
enumSYN_KITBAG_BANK, // ����
enumSYN_KITBAG_ATTR, // ���Ըı䣨�;���ģ�
};
enum ESynSkillBagType // server->client ������ͬ������
{
enumSYN_SKILLBAG_INIT, // ��������ʼ��������ȫ���ļ�����Ϣ��
enumSYN_SKILLBAG_ADD, // ���Ӽ��ܣ�ֻ���������ӵļ��ܵ���Ϣ��
enumSYN_SKILLBAG_MODI, // �ļ��ܣ�ֻ���ͱ��ĵļ��ܵ���Ϣ��
};
enum ESynLookType
{
enumSYN_LOOK_SWITCH, // ������
enumSYN_LOOK_CHANGE, // ��ֵ�ı䡣
};
enum EEquipLinkPos // ���ߵ�װ����λ
{
enumEQUIP_HEAD = 0, // ������岿λ,ͷ,��,����,��,��
enumEQUIP_FACE = 1,
enumEQUIP_BODY = 2,
enumEQUIP_GLOVE = 3, // ����
enumEQUIP_SHOES = 4, // ��
enumEQUIP_NECK = 5, // ����:������,����
enumEQUIP_LHAND = 6, // ���� -- �������ֵĵ���ֵΪ�ͻ���Link��
enumEQUIP_HAND1 = 7, // ��������
enumEQUIP_HAND2 = 8,
enumEQUIP_RHAND = 9, // ����
enumEQUIP_PART_NUM = 5, // �ܹ������λ
enumEQUIP_NUM = 10, // װ����λ�ĸ���
enumEQUIP_BOTH_HAND = 9999, // �����˫������,��һ�߾�Ϊ���ֵ
enumEQUIP_TOTEM = 9998, // �����ͼ��װ��,������λ��Ϊ���ֵ
};
enum EBoatLinkPos // ����װ��λ��
{
enumBOAT_BODY = 0, // ����
enumBOAT_HEADER = 1, // ��ͷ
enumBOAT_ENGINE = 2, // ��ֻ����
enumBOAT_FLAG = 3, // ����־
enumBOAT_MOTOR0 = 4, // ���4�����
enumBOAT_MOTOR1 = 5,
enumBOAT_MOTOR2 = 6,
enumBOAT_MOTOR3 = 7,
};
enum EMoveState
{
enumMSTATE_ON = 0x00, // �ƶ���
enumMSTATE_ARRIVE = 0x01, // ����Ŀ���ֹͣ
enumMSTATE_BLOCK = 0x02, // �����ϰ�ֹͣ
enumMSTATE_CANCEL = 0x04, // ��Ҫ��ֹͣ
enumMSTATE_INRANGE = 0x08, // �Ѿ�����Ҫ��ķ�Χ��ֹͣ
enumMSTATE_NOTARGET = 0x10, // Ŀ�겻���ڶ�ֹͣ
enumMSTATE_CANTMOVE = 0x20, // �����ƶ�
};
enum EFightState
{// enumFSTATE_TARGET_NO֮ǰ���������ֵ�״̬�������Dz��������ֵ�״̬
enumFSTATE_ON = 0x0000, // ս����
enumFSTATE_STOP = 0x0001, // ����ֹͣ
enumFSTATE_TARGET_NO = 0x0010, // �����ڶ�ֹͣ��û���ҵ�����ʩ�ö�������������
enumFSTATE_TARGET_OUT = 0x0020, // �����뿪ʹ�÷�Χ��ֹͣ������������
enumFSTATE_TARGET_IMMUNE= 0x0040, // �����ܱ�����������������
enumFSTATE_CANCEL = 0x0080, // ��Ҫ��ֹͣ������������
enumFSTATE_DIE = 0x0100, // ����������ֹͣ������������
enumFSTATE_TARGET_DIE = 0x0200, // Ŀ�걻��������������ֹͣ������������
enumFSTATE_OFF = 0x0400, // ���ܹ�����ʵ�壬����������
enumFSTATE_NO_EXPEND = 0x0800, // ����Ʒ��MP�����������ߵȣ����㣬����������
};
enum EExistState
{
// ����״̬
enumEXISTS_NATALITY, // ����
enumEXISTS_WAITING, // ����
enumEXISTS_SLEEPING, // ����
enumEXISTS_MOVING, // �ƶ�
enumEXISTS_FIGHTING, // ����
//
// ����״̬
enumEXISTS_WITHERING, // ������
enumEXISTS_RESUMEING, // ������
enumEXISTS_DIE, // ����
//
};
enum ESkillStateAdd
{
enumSSTATE_ADD_UNDEFINED = 0, // δ������滻����
enumSSTATE_ADD_EQUALORLARGER = 1, // ���ڵ����滻
enumSSTATE_ADD_LARGER = 2, // �����滻
enumSSTATE_NOTADD = 3, // ���滻
enumSSTATE_ADD = 4, // �滻
};
enum ERangeType
{
enumRANGE_TYPE_NONE = 0, // ��
enumRANGE_TYPE_STICK = 1, // ���Σ����ȣ���ȣ�
enumRANGE_TYPE_FAN = 2, // ���Σ��뾶���Ƕȣ�
enumRANGE_TYPE_SQUARE = 3, // �������뾶��
enumRANGE_TYPE_CIRCLE = 4, // Բ�Σ��뾶��
};
// �ж�����ʧ�ܵ�ԭ��
enum EFailedActionReason
{
enumFACTION_ACTFORBID, // ���ڽ�ֹ�ж���״̬
enumFACTION_EXISTACT, // ֮ǰ���ж�û�н���
enumFACTION_MOVEPATH, // �ƶ�·������
enumFACTION_CANTMOVE, // �����ƶ�
enumFACTION_NOSKILL, // ���ܲ�����
enumFACTION_NOOBJECT, // Ŀ�겻����
enumFACTION_ITEM_INEXIST, // ���߲�����
enumFACTION_SKILL_NOTMATCH, // ����ʩ���߲�ƥ��
};
enum ESkillUseState
{
enumSUSTATE_INACTIVE, // ��������
enumSUSTATE_ACTIVE, // ���ܼ����
};
enum EItemOperateResult
{
enumITEMOPT_SUCCESS, // ���߲����ɹ�
enumITEMOPT_ERROR_NONE, // ���߲�����
enumITEMOPT_ERROR_KBFULL, // ����������
enumITEMOPT_ERROR_UNUSE, // ����ʹ�õĵ���
enumITEMOPT_ERROR_UNPICKUP, // ���߲���ʰȡ
enumITEMOPT_ERROR_UNTHROW, // ���߲��ܶ���
enumITEMOPT_ERROR_UNDEL, // ���߲�������
enumITEMOPT_ERROR_KBLOCK, // ��������������״̬
enumITEMOPT_ERROR_DISTANCE, // ����̫Զ
enumITEMOPT_ERROR_EQUIPLV, // װ���ȼ�������
enumITEMOPT_ERROR_EQUIPJOB, // װ��ְҵ������
enumITEMOPT_ERROR_STATE, // ���ڲ���ʹ�õ��ߵ�״̬
enumITEMOPT_ERROR_PROTECT, // ���߱�����
enumITEMOPT_ERROR_AREA, // ��ͬ����������
enumITEMOPT_ERROR_BODY, // ���Ͳ�ƥ��
enumITEMOPT_ERROR_TYPE, // �˵��������
enumITEMOPT_ERROR_INVALID, // ��Ч�ĵ���
enumITEMOPT_ERROR_KBRANGE, // ������������Χ
};
enum EEntitySeenType // ���ڿͻ����жϸ�ʵ���Ƿ��Ѿ����ڣ��������ǵĴ�ֻ�����Ѿ����ڣ�
{
enumENTITY_SEEN_NEW, // �½�ʵ��
enumENTITY_SEEN_SWITCH, // �л�ʵ��
};
enum EPlayerReliveType
{
enumEPLAYER_RELIVE_NONE, // ��ѡ��
enumEPLAYER_RELIVE_CITY, // �سǸ���
enumEPLAYER_RELIVE_ORIGIN, // ԭ�㸴��
enumEPLAYER_RELIVE_NORIGIN, // �ܾ�ԭ�㸴��
enumEPLAYER_RELIVE_MAP, // ԭ��ͼ����
enumEPLAYER_RELIVE_NOMAP, // �ܾ�ԭ��ͼ����
};
enum EUseSkill
{
enumESKILL_SUCCESS, // ����ʹ�óɹ�
enumESKILL_FAILD_NPC, // Ŀ����NPC
enumESKILL_FAILD_NOT_SKILLED, // Ŀ�겻�ܱ�ʹ�ü���
enumESKILL_FAILD_SAFETY_BELT, // Ŀ���ڰ�ȫ��
enumESKILL_FAILD_NOT_LAND, // ���ܲ�������½��
enumESKILL_FAILD_NOT_SEA, // ���ܲ������ں���
enumESKILL_FAILD_ONLY_SELF, // ����ֻ����������
enumESKILL_FAILD_ONLY_DIEPLY, // ����ֻ���������ʬ��
enumESKILL_FAILD_FRIEND, // ���ܲ��������ѷ�
enumESKILL_FAILD_NOT_FRIEND, // ����ֻ�������ѷ�
enumESKILL_FAILD_NOT_PALYER, // ����ֻ���������
enumESKILL_FAILD_NOT_MONS, // ����ֻ�����ڹ���
enumESKILL_FAILD_ESP_MONS, // ����ֻ�������������
enumESKILL_FAILD_SELF, // ���ܲ�����������
};
enum EEnterMapType // ���ڿͻ����ж��Ƿ���ʾLoading����
{
enumENTER_MAP_EDGE, // �߽����
enumENTER_MAP_CARRY, // ���ͽ���
};
enum EFightType // ��ս���ͣ�������Ҳ���ڽű��У�����Ķ�
{
enumFIGHT_NONE = 0, // ��
enumFIGHT_TEAM = 1, // ������ս
enumFIGHT_MONOMER = 2, // ������ս
enumFIGHT_GUILD = 3, // ������ս
};
/* 2008-7-28 yangyinyu close! // Ϊ������ΨһID���������汾���������İ汾��ÿ��������ǰ������ΨһID�ţ������0�����ʾ��û��ΨһID�ĵ��ߡ�
#define defKITBAG_CUR_VER 113 // ��ʾ�Ƿ�����������
*/
#define defKITBAG_CUR_VER111 111 // ��֮ǰ�İ汾����ǰ����뱳��������Ԫ�����@���ţ�
#define defLOOK_CUR_VER 111 // ��ʾ�Ƿ�����������
#define defLOOK_CUR_VER110 110
#define defITEM_INSTANCE_ATTR_NUM_VER110 10
#define defMAP_GARNER_WIDTH 4096
#define defMAP_GARNER_HEIGHT 4096
#define defMAP_DARKBLUE_WIDTH 4096
#define defMAP_DARKBLUE_HEIGHT 4096
#define defMAP_MAGICSEA_WIDTH 4096
#define defMAP_MAGICSEA_HEIGHT 4096
#define defMAP_EASTGOAF_WIDTH 1024
#define defMAP_EASTGOAF_HEIGHT 1024
#define defMAP_LONETOWER_WIDTH 1024
#define defMAP_LONETOWER_HEIGHT 1024
#define defMAX_KBITEM_NUM_PER_TYPE 48 // ÿ����Ʒ�ռ����Ʒ����
#define defDEF_KBITEM_NUM_PER_TYPE 24 // ÿ����Ʒ�ռ����Ʒ����
#define defESPE_KBGRID_NUM 4 // ������߸���
#pragma pack(push)
#pragma pack(1)
typedef
struct stNetChangeChaPart // �ı��ɫ���,ע:�ͻ���-��������Ĭ��Ƥ���Լ��:�ͻ��˽��յ�0��Ƥ��ʱ,�Զ�����CharacterRecord�е�Ƥ��
{
stNetChangeChaPart() {sVer = 0; sTypeID = 0;}
short sVer;
short sTypeID;
union
{
struct
{
SItemGrid SLink[enumEQUIP_NUM];
short sHairID; // Ĭ�ϵ�ͷ��������
};
struct
{
USHORT sPosID; // ������ID
USHORT sBoatID; // ����Ϣ��ID
USHORT sHeader; // ��ͷ
USHORT sBody; // ����
USHORT sEngine; // ��ֻ���
USHORT sCannon; // ��ֻ����
USHORT sEquipment; // ��ֻװ��
};
};
} LOOK;
#pragma pack(pop)
#define defMAX_ITEM_FORGE_GROUP 5
struct SForgeItem
{
struct
{
short sGridNum;
struct
{
short sGridID;
short sItemNum;
} SGrid[defMAX_KBITEM_NUM_PER_TYPE];
} SGroup[defMAX_ITEM_FORGE_GROUP];
};
#define defMAX_ITEM_LOTTERY_GROUP 7
struct SLotteryItem
{
struct
{
short sGridNum;
struct
{
short sGridID;
short sItemNum;
} SGrid[defMAX_KBITEM_NUM_PER_TYPE];
} SGroup[defMAX_ITEM_LOTTERY_GROUP];
};
#define defMAX_ITEM_LIFESKILL_GROUP 6
struct SLifeSkillItem
{
short sGridID[defMAX_ITEM_LIFESKILL_GROUP];
short sbagCount;
short sReturn;
};
#define defMAX_CITY_NUM 8
extern const char *g_szCityName[defMAX_CITY_NUM];
//������ﲿ��ID���õ�������
const int PLAY_NUM = 4;
extern const long g_PartIdRange[PLAY_NUM][enumEQUIP_NUM + 1][2];
//end
#define defMOTTO_LEN 40
#define defGUILD_NAME_LEN 17 // ��������
#define defGUILD_MOTTO_LEN 51 // ����������
#define defPICKUP_DISTANCE 350 // ʰȡ��Χ�����ף�
#define defTHROW_DISTANCE 350 // ������Χ�����ף�
#define defBANK_DISTANCE 350 // ���н�����Χ�����ף�
#define defRANGE_TOUCH_DIS 350 // ��Χ�������루���ף�
// �����
const DWORD MAX_FAST_ROW = 3;
const DWORD MAX_FAST_COL = 12;
const DWORD SHORT_CUT_NUM = MAX_FAST_ROW * MAX_FAST_COL;
#define defItemShortCutType 1
#define defSkillFightShortCutType 2
#define defSkillLifeShortCutType 3
#define defSkillSailShortCutType 4
struct stNetShortCut
{
char chType[SHORT_CUT_NUM]; // 1-����,2-ս������,3-�����,0-��
short byGridID[SHORT_CUT_NUM]; // �ڵ��������ڵڼ���,�������еļ��ܱ��
};
//
enum EPoseState
{
enumPoseStand = 0,
enumPoseLean = 1,
enumPoseSeat = 2,
};
enum EGuildState //16λ״̬����λ������
{
emGldTypeNavy =0, //����
emGldTypePirate =1, //����
emGldMembStatNormal =0, //��ͨ״̬
emGldMembStatTry =1, //����״̬
emGldPermMgr =0x1, //����
emGldPermBank =0x2, //����
emGldPermBuild =0x4, //����
emMaxMemberNum =80,
emMaxTryMemberNum =40,
emGuildInitVal =0x0000, //��ʼֵ
emGuildGetName =0x0001, //�Ƿ��ڻ�ȡ�½���������״̬
emGuildReplaceOldTry =0x0002, //ѯ���Ƿ�����ϵ�����״̬
};
#define defKITBAG_ITEM_NUM 100
#define defLOOK_DATA_STRING_LEN 2048
enum EAreaMask
{
enumAREA_TYPE_LAND = 0x0001, // ��0λ 1��½�ء�0���Ǻ���
enumAREA_TYPE_NOT_FIGHT = 0x0002, // ��1λ 1����ս������0��ս����
enumAREA_TYPE_PK = 0x0004, // ��2λ 1��PK����
enumAREA_TYPE_BRIDGE = 0x0008, // ��3λ 1���š�
enumAREA_TYPE_NOMONSTER = 0x0010, // ��4λ 1��������
enumAREA_TYPE_MINE = 0x0020, // ��5λ 1
enumAREA_TYPE_FIGHT_ASK = 0x0040, // ��6λ 1������PK
};
extern const char* g_GetAreaName( int nValue );
#define defCHA_TERRITORY_DISCRETIONAL 2 // ����ռ�
#define defCHA_TERRITORY_LAND 0 // ½��
#define defCHA_TERRITORY_SEA 1 // ����
#endif // COMPOSITIVECOMMAND_H