⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 base.h

📁 WYD Server 753 (Development)
💻 H
字号:
#ifndef __BASE_H__
#define __BASE_H__

#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

///
/// Defines
///

#define VERSION "0.04a"
#define NUMVERSION 4#define CLIENT_VERSION 751

#define INVALID_ID 0
#define INVALID_CHARINDEX -1#define INVALID_SERVERINDEX 0xFF
#define MAX_TIMEOUT 30

typedef signed char s8;
typedef unsigned char u8;
typedef signed short s16;
typedef unsigned short u16;
typedef signed int s32;
typedef unsigned int u32;
typedef signed long long s64;
typedef unsigned long long u64;
///
/// Player
///

struct sStatus {
	u16 Level;
	u16 Defense;
    u16 Attack;

    union uMerchant {
        unsigned char x;

        struct sFlag {
            u8 Merchant : 5;
            u8 charDir : 3; /* Direcao que o personagem esta olhando */
        } Flag;
    } Merchant;

	u8 MoveSpeed;
    u16 mHP;
    u16 mMP;
    u16 cHP;
    u16 cMP;
    u16 STR;
    u16 INT;
    u16 DEX;
    u16 CON;
    u8 wMaster;
    u8 fMaster;
    u8 sMaster;
    u8 tMaster;
};

struct sItem {
	u16 ItemID;
	u8 EF1;
	u8 EFV1;
	u8 EF2;
	u8 EFV2;
	u8 EF3;
	u8 EFV3;
};

struct sPoint {
	u16 X;
	u16 Y;
};
struct sSkill {    u8 Effect;    u8 Master;    u16 effVal;    u32 sTime;};
struct sCharacter {
    /* Info */
    char Name[12];    u8 kPoint;    u8 currentKill;    u16 totalKill;
    u8 Race;    union uCity {        u8 x;        struct sFlag {            u8 nop : 6;            u8 ID : 2;        } Flag;    } City;
    u16 charClass;
    u16 Quest;
    u32 Gold;
    u32 Exp;
    sPoint Last;

    /* Status */
    sStatus bStatus;
    sStatus Status;

    /* Items */
    sItem Equip[16];
    sItem Inventory[64];

    /* Other Infos */
    u32 sLearn;
    u16 pStatus;
    u16 pMaster;
    u16 pSkill;    u8 Critical;
    u8 qSkillBar1[4];
    u8 rHP;
    u8 rMP;    union uResist {        u32 x;        struct sFlag {            u8 Resist3;            u8 Resist4;            u8 Resist1;            u8 Resist2;        } Flag;    } Resist;    u16 clientID;    u8 qSkillBar2[16];
    u32 Hold;    /* Skills em uso */    sSkill Skill[16];
};

struct sAccount {
    char Username[16];
    char Password[12];

    union uInfo {
        u32 x;

        struct sFlag {
            u16 GMLevel;
            u16 CharInfo;
        } Flag;
    } Info;
    // Temp Data    u32 errorLogin;    time_t lasterror;    time_t bantime;
    u32 sGold;    u32 accountID;
    sItem Storage[126];
};
////// Packets///struct pHeader {    u16 packetSize;    u8 hash1;    u8 hash2;    u16 opCode;    u16 clientID;    u32 timeStamp;};////// Client///struct pCL_20Dh {    pHeader Header;    char userName[16];    char passWord[12];    u32 cliVer;    u32 isClient;    char Keys[16];    char pZero[52];};struct pCL_101h {    pHeader Header;    char strMessage[96];};////// DataServer (DB -> GS)////* Send Log */struct pGS_1h {    pHeader Header;    char strMessage[96];};/* Send Message */struct pGS_2h {    pHeader Header;    char strMessage[96];};/* Send Disconnect Client */struct pGS_3h {    pHeader Header;};/* Send Account */struct pGS_4h {    pHeader Header;    sAccount account;};/* Send CharList */struct pGS_5h {    pHeader Header;    u32 isReSend;    u32 charinfo;    sCharacter Character[4];};/* Send Character */struct pGS_6h {    pHeader Header;    u32 charIndex;    sCharacter Character;};////// GameServer (GS -> DB)////* Request Login */struct pDB_1h {    pHeader Header;    u32 isGameServer;};/* Send Ping */struct pDB_2h {    pHeader Header;};/* Request Login */struct pDB_3h {    pHeader Header;    char username[16];    char password[12];};/* Request Save Account */struct pDB_4h {    pHeader Header;    sAccount account;};/* Request Create Char */struct pDB_5h {    pHeader Header;    u32 charinfo;    u32 charindex;    char username[16];    char charname[16];    u32 charclass;};/* Request Delete Char */struct pDB_6h {    pHeader Header;    u32 charinfo;    u32 charindex;    char username[16];    char charname[16];};/* Request Enter Game */struct pDB_7h {    pHeader Header;    u32 charinfo;    u32 charindex;    char username[16];};
/* Request Save Character */
struct pDB_8h {
    pHeader Header;
    char userName[16];
    u32 charIndex;
    sCharacter Character;
};

/* Request Save Account and Character */
struct pDB_9h {
    pHeader Header;
    sAccount account;
    u32 charindex;
    sCharacter character;
};

#endif // __BASE_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -