www.pudn.com > MirServer.rar > mirdef.h
#pragma once #include#define MAX_MAGIC_SKILL 32 #define MAX_ITEM 40 #define MAX_EQUIPMENT 10 #pragma pack(push,old_pack,1) typedef struct { DWORD dwGold; WORD wCmd; BYTE bProf; BYTE bHair; BYTE bSex; BYTE bOO; WORD wUnknow; BYTE bLevel; BYTE bunknow; BYTE ACHi; BYTE ACLow; BYTE MACHi; BYTE MACLow; BYTE DCHi; BYTE DCLow; BYTE MCHi; BYTE MCLow; BYTE SCHi; BYTE SCLow; WORD Hp; WORD Mp; WORD MaxHp; WORD MaxMp; DWORD dwUnknow; DWORD Exp; DWORD MaxExp; WORD BagWeight; WORD MaxBagWeight; BYTE BodyWeight; BYTE MaxBodyWeight; BYTE HandWeight; BYTE MaxHandWeight; }ABILITYDESC; typedef struct { BYTE bName; CHAR sName[14]; BYTE bStdMode; BYTE bShape; BYTE bWeight; BYTE bAniCount; BYTE bSpecialPower; BYTE bNeedIndentify; // 是否是锻造过没有坚定的物品 BYTE bReserved; WORD wLooks; WORD wMaxDura; BYTE bAc; BYTE bAc2; BYTE bMac; BYTE bMac2; BYTE bDc; BYTE bDc2; BYTE bMc; BYTE bMc2; BYTE bSc; BYTE bSc2; BYTE bNeedType; BYTE bNeedLevel; WORD wUnknow; INT nPrice; }STDITEMDESC; typedef struct { STDITEMDESC stdItem; INT nMadeIndex; WORD nCurDura; WORD nMaxDura; }CLIENTITEMDESC; typedef struct tagSTANDARDMAGIC { BYTE nNameLen; char szMagicName[12]; BYTE bEffectType; BYTE bEffect; BYTE bUnknow1; WORD wSpell; WORD wMinPower; BYTE btNeed[4]; WORD wUnknow1; INT nTrain[4]; BYTE btMaxTrainLevel; BYTE btJob; WORD wUnknow2; INT nDelayTime; BYTE bDefSpell; BYTE btDefMinPower; BYTE btDefMaxPower; BYTE bUnknow2; WORD wUnknow4; WORD wUnknow5; char szDesc[16]; }STANDARDMAGIC, *LPSTANDARDMAGIC; typedef struct tagCLIENTMAGICRCD { UINT nMagicId; INT nCurrTrain; CHAR bUseKey; BYTE bLevel; STANDARDMAGIC stStdMagic; }CLIENTMAGICDESC; typedef struct tagGROUNDITEM { INT nRecog; SHORT shTileX; SHORT shTileY; WORD wLooks; CHAR szItemName[40]; }GROUNDITEMDESC, *LPGROUNDITEMDESC; #pragma pack(pop,old_pack) typedef struct tagGROUNDITEM_real { GROUNDITEMDESC desc; UINT listid; }GROUNDITEM; typedef struct tagOtherActor { UINT nIdent; int iHp; int iMaxHp; int iMp; int iMaxMp; int ix; int iy; INT nNameColor; BYTE bDir; BYTE bLevel; BYTE bProfession; BYTE bSex; BYTE bWeapon; BYTE bDress; BYTE bHair; BYTE bNameColor; CHAR szName[64]; CHAR szGuildName[64]; CHAR szSpose[64]; }OTHERACTORDESC; typedef struct tagOtherActor_real { OTHERACTORDESC desc; UINT listid; }OTHERACTOR; #define EQUIP_HELMENT 1 #define EQUIP_ARMOR 2 #define EQUIP_WEAPON 3 #define EQUIP_L_RING 4 #define EQUIP_R_RING 5 #define EQUIP_L_GLOVE 6 #define EQUIP_R_GLOVE 7 #define EQUIP_NECKLACE 8 #define EQUIP_CHARM 9 typedef struct tagPlayer { ABILITYDESC Ability; CLIENTMAGICDESC Magic[MAX_MAGIC_SKILL]; CLIENTITEMDESC Items[MAX_ITEM]; CLIENTITEMDESC Equipments[MAX_EQUIPMENT]; CHAR szName[64]; CHAR szGuildName[64]; CHAR szWife[64]; int m_iPos_x; int m_iPos_y; int m_iDirection; UINT m_iGameId; }PLAYERDESC; #define CM_LOGIN 0x7d1 #define SM_LOGINOK 0x211 #define SM_LOGINFAIL 0x1f7 #define CM_SELECTSERVER 0x68 #define SM_SELECTSERVEROK 0x212 #define SM_SELECTSERVERFAIL 0x1f8 #define CM_VERIFYSELECTCHAR 0x64 #define SM_VERIFYSELECTCHARFAIL 0x1f9 #define SM_CHARACTERLIST 0x208 #define CM_SELECTCHARACTER 0x67 #define SM_SELECTCHARACTEROK 0x20d #define SM_SELECTCHARACTERFAIL 0x200 #define CM_DELETECHARACTER 0x66 #define SM_DELETECHARACTEROK 521 #define SM_DELETECHARACTERFAIL 522 #define SM_SERVERNOTICE 658 #define CM_CONFIRMNOTICE 0x3fa #define SM_LOGON 0x32 #define SM_NEWMAP 0x33 #define SM_UNKNOW1 0x452 #define SM_ABILITY 0x34 #define SM_SUBABILITY 0x2f0 #define SM_MAPDESCRIPTION 0x36 #define SM_USERNAME 0x2a #define CM_QUERYTURN 3010 #define CM_QUERYWALK 3011 #define CM_QUERYRUN 3013 #define CM_HIT 3014 #define CM_CREATEACCOUNT 2002 #define SM_CREATEACCOUNTOK 504 typedef struct { CHAR sIpAddress[60]; UINT nLoginPort; UINT nSelCharPort; UINT nGamePort; CHAR sAccountPath[256]; CHAR sCharacterPath[256]; UINT nAccountId; UINT nCharacterId; }SERVERCONFIG; typedef struct { CHAR szName[32]; INT Profession; INT Sex; INT Level; INT Hair; }SELCHARDATA; typedef struct { SELCHARDATA Charlist[2]; int count; int lastuse; }SELCHARLIST; #ifndef MIRMSG typedef struct { DWORD dwFlag; WORD wCmd; WORD wParam[3]; CHAR data[4]; }MIRMSG,*PMIRMSG; #define MSGHEADSIZE 12 #endif