-
флуд в чат
PHP код:
public OnPlayerCheat(playerid,code,reason[])
{
if(PlayerInfo[playerid][bAdminka] > 7) return true;
new string[144];
format(string,sizeof(string),"%s[%d] подозревается в читерстве:[%s (d)]",PlayerInfo[playerid][pNames],playerid,reason,code);
ABroadCast(COLOR_REDD,string,1);
format(string,sizeof(string),"Вы были кикнуты по подозрению в читерстве. Причина: %s (%d)",reason,code);
SendClientMessage(playerid,0xFF0000FF,string);
return 1;
}
Как сделать, чтобы не флудило сильно в чат.
-
-
Берём глобальную переменную, допустим:
PHP код:
new player_cheat_time[MAX_PLAYERS];
В паблике OnPlayerCheat присваиваем переменной значение функции gettime() + время, через которое оповещение опять сработает. Допустим, это будет 3 секунды:
PHP код:
player_cheat_time[playerid] = gettime() + 3;
Перед этим делаем проверку, чтобы паблик знал, когда вывести оповещение:
PHP код:
if(player_cheat_time[playerid] < gettime())
{
// вывод сообщения, либо другие действия с игроком.
player_cheat_time[playerid] = gettime() + 3;
}
B OnPlayerConnect обязательно вставляем обнуление данной переменной:
PHP код:
player_cheat_time[playerid] = 0;