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

📄 client.h

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

#include <base.h>

#include "encdec.h"
#include "sockets.h"

union uVisible {
    unsigned int X;

    struct sFlag {
        unsigned short thisID;
        unsigned short typeOf;
    } Flag;
};

#define ID_NPC 2
#define ID_CLIENT 1
#define MAX_VISIBLE_LIST 32

class cVisible {
public:
    cVisible(u32 _thisID);
    ~cVisible();

    // Adiciona um novo id nos visiveis
    void Insert(u32 idCode, u32 id);

    // Verifica se o id ja esta na lista
    //
    // Retorna false se o id nao foi encontrado
    // Retorna true se o id ja esta na lista
    bool Contains(u32 id);

    // Remove o id dos clients visiveis
    //
    // Retorna false se o id nao foi achado
    // Retorna true se o id foi deletado
    bool Remove(u32 id);

private:
    // ID do client que usara esta lista
    u32 thisID;

    // Lista dos objetos no mapa visiveis
    uVisible list[MAX_VISIBLE_LIST];

    // Numero de clients/npcs visiveis
    u32 listCount;
};

#define MAX_LIST 65535
#define CLIENT_BASE 2

class cList {
public:
    cList();
    ~cList();

    // Adiciona um novo client/npc na lista
    //
    // Retorna NULL se n鉶 tem mais espa鏾
    // Retorna o ponteiro se adicionou com sucesso
    void* Insert();

    // Procura o client com este id
    //
    // Retorna NULL se o id eh invalido
    // Retorna o ponteiro do client/npc se foi achado
    void* Get(u32 id) const;

    // Deleta o client/npc que est

⌨️ 快捷键说明

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