Думаю, многие из вас слышали о подобном чите, когда игрок с помощью собейта отправляет на сервер ложную информацию о том, что уходит в режим слежки за другими игроками, после чего может делать что угодно, админы его не увидят. Данное решение позволит вам избавиться от подобных наглецов:
В самый верх мода (после #include <a_samp> и перед другими инклудами):
PHP код:
stock ac_spect_enabled[MAX_PLAYERS char];
stock ac_spect_TogglePlayerSpectating(playerid, spec)
return ac_spect_enabled{playerid} = spec, TogglePlayerSpectating(playerid, spec);
#if defined _ALS_TogglePlayerSpectating
#undef TogglePlayerSpectating
#else
#define _ALS_TogglePlayerSpectating
#endif
#define TogglePlayerSpectating ac_spect_TogglePlayerSpectating
В OnPlayerStateChange:
PHP код:
if(newstate == PLAYER_STATE_SPECTATING)
{
if(ac_spect_enabled{playerid} == 0)
{
static ac_spect_str[] = "Игрок %s был кикнут за использование чита на невидимость (spectate).";
new string[sizeof(ac_spect_str)-2+MAX_PLAYER_NAME];
GetPlayerName(playerid, string, sizeof(string));
format(string, sizeof(string), ac_spect_str, string);
log("Kick", string);
return Kick(playerid);
}
else
{
ac_spect_enabled{playerid} = 0;
}
}
В OnPlayerConnect:
PHP код:
ac_spect_enabled{playerid} = 0;
Автор: Daniel_CortezКопирование данной статьи на других ресурсах без разрешения автора запрещено!