📄 client.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 + -