Packet Functions
Envio Packets GameServer para Cliente
As funções de Packets permitem a comunicação entre o servidor de jogos (GameServer) e o cliente, criando, manipulando e enviando pacotes de dados. Esta documentação apresenta as funções de forma clara, intuitiva e com exemplos práticos e concisos para facilitar o uso. Para exemplos mais detalhados, consulte o arquivo JewelBank.lua.
Como Usar as Funções de Pacotes
Criação de Pacotes: Use
CreatePacketpara iniciar um pacote, definindo seu nome e identificador.Manipulação: Use funções como
SetBytePacket,SetWordPacket,SetDwordPacketouSetCharPacketpara adicionar dados ao pacote.Envio e Limpeza: Envie o pacote com
SendPackete limpe-o comClearPacketapós o uso.Observação: Sempre limpe o pacote após usá-lo para evitar problemas de memória ou dados residuais.
Funções de Pacotes
Abaixo estão todas as funções disponíveis, explicadas de forma simples com exemplos práticos:
1. CreatePacket(packetName, packet)
Descrição: Cria um pacote com o nome e identificador especificados.
Exemplo:
Copy
CreatePacket("MyPacket", 0x01) LogAdd("[Packet] - Pacote MyPacket criado com ID 0x01", 0)
2. SetDwordPacket(packetName, position)
Descrição: Define um valor DWORD (32 bits) na posição especificada do pacote.
Exemplo:
Copy
3. GetDwordPacket(packetName, position)
Descrição: Obtém o valor DWORD (32 bits) na posição especificada do pacote.
Exemplo:
Copy
4. SetWordPacket(packetName, position)
Descrição: Define um valor WORD (16 bits) na posição especificada do pacote.
Exemplo:
Copy
5. GetWordPacket(packetName, position)
Descrição: Obtém o valor WORD (16 bits) na posição especificada do pacote.
Exemplo:
Copy
6. SetBytePacket(packetName, position)
Descrição: Define um valor BYTE (8 bits) na posição especificada do pacote.
Exemplo:
Copy
7. GetBytePacket(packetName, position)
Descrição: Obtém o valor BYTE (8 bits) na posição especificada do pacote.
Exemplo:
Copy
8. SetCharPacket(packetName, string)
Descrição: Define uma string com até 10 caracteres no pacote.
Exemplo:
Copy
9. GetCharPacket(packetName, position)
Descrição: Obtém uma string do pacote na posição especificada.
Exemplo:
Copy
10. SetCharPacketLength(packetName, string, length)
Descrição: Define uma string com um tamanho específico no pacote.
Exemplo:
Copy
11. GetCharPacketLength(packetName, string, length)
Descrição: Obtém uma string com um tamanho específico do pacote.
Exemplo:
Copy
12. SendPacket(packetName, aIndex)
Descrição: Envia o pacote para o jogador com o índice
aIndex.Exemplo:
Copy
13. ClearPacket(packetName)
Descrição: Limpa o pacote após o uso para evitar resíduos de dados.
Exemplo:
Copy
Exemplo Prático Completo
Abaixo está um exemplo fictício que utiliza várias funções de pacotes em uma única função para criar, configurar, enviar e limpar um pacote para um jogador. Este código pode ser usado como base para comunicação entre servidor e cliente.
Copy
Resumo
As funções de pacotes permitem criar, manipular e enviar dados entre o servidor e o cliente.
Use
CreatePacketpara iniciar, funçõesSetpara adicionar dados,SendPacketpara enviar eClearPacketpara limpar.As funções
Getpermitem recuperar dados do pacote para verificação.O exemplo prático mostra como criar, configurar, enviar e limpar um pacote em uma única função.
Atualizado