SAMP/BanEx
Материал из Wikipedia Pi
BanEx
Описание:
Забанить игрока по причине.
Параметры:
(playerid, reason[])
playerid | ID игрока, которого нужно забанить. |
reason | Причина бана. |
Возвращаемые значения:
Эта функция не возвращает никаких конкретных значений.
Примечание |
При бане в файл samp.ban добавляется строка вида: 127.0.0.1 [15/01/09 | 13:05:23] Name - Request |
Баг SA-MP |
Начиная с SA-MP 0.3x, любые действия, предпринятые непосредственно перед Ban() (например, отправка сообщения с помощью SendClientMessage), не будут применены к игроку. Для отсрочки бана необходимо использовать таймер с задержкой в 200-1000 миллисекунд. |
Подсказка |
Запреты IP могут быть добавлены/удалены с помощью rcon-команд banip и unbanip. |
Пример использования:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, "/banme", true))
{
// Забанивает игрока, выполнившего эту команду, и включает причину ("Request")
BanEx(playerid, "Request");
return 1;
}
}
// Чтобы отобразить сообщение (например, причину) для игрока перед закрытием соединения
// вы должны использовать таймер, чтобы создать задержку. Эта задержка должна составлять всего несколько миллисекунд,
// но в этом примере на всякий случай используется полная секунда.
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, "/banme", true))
{
// Забанить игрока, выполнившего эту команду.
BanExWithMessage(playerid, 0xFF0000FF, "You have been banned!", "Request");
return 1;
}
return 0;
}
stock BanExWithMessage(playerid, color, message[], reason[])
{
//reason - Причина бана, которая будет использоваться для BanEx.
SendClientMessage(playerid, color, message);
SetTimerEx("BanExPublic", 200, false, "ds", playerid, reason);
}
forward BanExPublic(playerid, reason[]);
public BanExPublic(playerid, reason[]) return BanEx(playerid, reason);
Связанные функции
Следующие функции также могут быть полезны, поскольку они так или иначе связаны с рассматриваемой функцией.
- Kick - кикнуть игрока с сервера.
- Ban - забанить игрока на сервере.
- BlockIpAddress - заблокировать IP-адрес игрока.
- UnBlockIpAddress - разблокировать IP-адрес игрока.