Многие хотели знать: как добавить причину к кику, бану или любому другому действию, но все существующие варианты построены на использовании "левых" плагинов и инклюдов. Я покажу новый способ, являющийся автономным.
Код
if(strcmp(cmd, "/ban", true, 4) == 0)
{
new tmp[128];
tmp = strtok(cmdtext, idx);
if(strlen(tmp) < 1) return SendClientMessage(playerid, 0xFF0000FF, "Синтаксис: /ban [playerid] [reason]");
new targetid = strval(tmp); // взяли ID игрока из параметров
new pos = strfind(cmdtext, " ", true, 4); // ищем пробел после ID
if(pos == -1) return SendClientMessage(playerid, 0xFF0000FF, "Синтаксис: /ban [playerid] [text]"); // если больше аргументов нет
format(tmp, sizeof(tmp), "Администратор %s забанил игрока %s. Причина: %s", PlayerInfo[playerid][pName], PlayerInfo[targetid][pName], cmdtext[pos + 1]);
SendClientMessage(targetid, 0xFF0000FF, tmp);
Ban(playerid);
return 1;
}
Автор: OKStyle