- 29
- 31
1. Описание:
С помощью этого плагина, вы сможете перехватывать и изменять данные ответа клиенту от сервера.
- Плагин может перехватывать такие запросы, как:
Изменять данные вы сможете напрямую с помощью новых нативных функций.
1.1 Enums ( Энумераторы )
Используется в функции EnableHookQuery для передачи типа хука
Используется для формирования массива игроков
Используется для формирования массива игроков (детально)
Используется для формирования массива серверных правил
1.2 Функции
Аргументы:
Query_HookType: Type // Тип запроса для установки перехвата
bool: enable // true, чтобы начать перехват | false, чтобы завершить перехват
Позволяет начать перехват одного из доступных запросов.
Добавляет игроков на сервер, которые были записаны в массив.
Устанавливает правила сервера, которые были записаны в массив.
Устанавливает информацию о сервере.
Отправка подробных данных об игроках, которые были записаны в массив.
Этой функцией можно приостановить или возобносить отправку пинга.
1.3 Пример
На выходе получится примерно вот так
Вики:
https://github.com/o...Pawn.Query/wiki
2. Скачать:
https://github.com/o....Query/releases
Исходный код:
https://github.com/oukibt/Pawn.Query/
С помощью этого плагина, вы сможете перехватывать и изменять данные ответа клиенту от сервера.
- Плагин может перехватывать такие запросы, как:
- Players List
- Server Information
- Detailed Player List
- Server Rules
- Ping
Изменять данные вы сможете напрямую с помощью новых нативных функций.
1.1 Enums ( Энумераторы )
C++:
enum Query_HookType
{
QHOOK_INFO,
QHOOK_RULES,
QHOOK_PLAYERS,
QHOOK_DETAILED_PLAYERS,
QHOOK_PING,
};
C++:
enum Query_Players
{
PQ_pName[MAX_PLAYER_NAME],
PQ_pScore,
};
C++:
enum Query_DetailedPlayers
{
PQ_dID,
PQ_dName[MAX_PLAYER_NAME],
PQ_dScore,
PQ_dPing,
};
C++:
enum Query_Rules
{
PQ_rName[MAX_RULE_LENGTH],
PQ_rValue[MAX_RULE_LENGTH],
};
1.2 Функции
C++:
native EnableHookQuery(Query_HookType: Type, bool: enable);
Query_HookType: Type // Тип запроса для установки перехвата
bool: enable // true, чтобы начать перехват | false, чтобы завершить перехват
Позволяет начать перехват одного из доступных запросов.
C++:
native SetServerPlayers(const Players[][Query_Players], const size = sizeof Players);
C++:
native SetServerRules(const Rules[][Query_Rules], const size = sizeof Rules);
C++:
native SetServerInformation(bool: havePassword, MaxPlayers, const hostname[], const gamemode[], const language[]);
C++:
native SetServerDetailedPlayers(const DetailedPlayers[][Query_DetailedPlayers], const size = sizeof DetailedPlayers);
C++:
native SendPing(bool: send);
1.3 Пример
C++:
#include <a_samp>
#include <Pawn.Query>
main() {}
public OnGameModeInit()
{
for (new i = 0; i < Query_HookType; i++)
{
EnableHookQuery(Query_HookType: i, true);
// Перехватываем все возможные типы
}
new Players[][Query_Players] = {
{ "Dan", 15 },
{ "Mike", 25 },
{ "Naruto", 50 },
{ "Sakura", 200 }
};
SetServerPlayers(Players); // Устанавливаем игроков
//////////////////////////////////////////
new Rules[][Query_Rules] = {
{ "Rule 1", "Don't cheating" },
{ "Rule 2", "Don't scam" },
{ "Rule 3..?", "No, it enough" }
};
SetServerRules(Rules); // Устанавливаем свои правила
//////////////////////////////////////////
SetServerInformation(true, 228, "Shippuden", "Just gamemode", "Doesn't matter");
//////////////////////////////////////////
SendPing(false); // Приостанавливаем отправку пинга
return 1;
}
На выходе получится примерно вот так
Вики:
https://github.com/o...Pawn.Query/wiki
2. Скачать:
https://github.com/o....Query/releases
Исходный код:
https://github.com/oukibt/Pawn.Query/