JSON SA-MP é um plugin leve, seguro e moderno para servidores SA:MP, escrito em Rust. Ele fornece suporte nativo para manipulação de JSON diretamente em Pawn, facilitando a integração com APIs externas e armazenamento de dados estruturados.
Este projeto é de uso livre. A distribuição é feita exclusivamente em formato binário (sem código-fonte).
- Compatível com Linux e Windows (32-bit)
- Manipulação segura de objetos JSON
- Integração simples via
.inc - Funciona com gamemodes, filterscripts e includes
-
Copie para o servidor:
samp_json.dll(Windows) oulibsamp_json.so(Linux)json.inc→pawno/include/
-
No seu script Pawn:
#include <json>- Adicione ao
server.cfgno Windows:
plugins samp_json
Ou caso esteja no Linux:
plugins libsamp_json.so
Nota técnica sobre
#pragma library json: Essa diretiva é opcional. Ela serve para informar o compilador Pawn que seu script depende de uma biblioteca externa. Você não precisa usá-la em gamemodes ou filterscripts, desde que esteja utilizando corretamente o.ince o plugin esteja carregado.
Faz o parse de uma string JSON e armazena internamente com um ID de referência.
new id;
if (json_parse(response_body, id)) {
// JSON válido e armazenado
}Libera o JSON da memória associada ao ID.
Obtém um valor inteiro da chave fornecida.
Obtém um valor decimal (float) da chave fornecida.
Obtém um valor booleano (0 ou 1).
Valida se uma string está em formato JSON correto.
Verifica se a chave existe no JSON armazenado.
Cria um novo objeto JSON vazio e retorna seu ID.
Define uma string no objeto JSON.
Converte o JSON armazenado no ID para uma string formatada.
public OnHTTPResponse(index, code, data[])
{
if (code != 200) return;
new id;
if (!json_parse(data, id)) return;
new price;
json_get_int(id, "preco", price);
new nome[32];
json_get_bool(id, "ativo", nome);
printf("Preço: %d | Nome: %s", price, nome);
json_free(id);
}new id;
json_create(id);
json_set_string(id, "status", "sucesso");
new output[128];
json_to_string(id, output, sizeof(output));
printf("Saída JSON: %s", output);
json_free(id);- Autor: Craft Games
- Site pessoal: brasilservergames.com
Abra um issue para dúvidas ou sugestões.
Distribuição binária. Uso livre, mas o código-fonte não está incluído.