Анти "NOP disable incar data"
Фишка в том, что когда через собейт включается NOP "disable incar data", то игроку можно свободно читерить в тачке (СХ и Т.П.)
Я предлогаю зафиксить эту проблему буквально в несколько строчек, что нам протребуется:
Таймер с циклом для всех игроков.
Версия для FS: Создаем таймер:
В верх скрипта:
В OnFilterScriptInit
PHP код:
timerhack = SetTimer("AntyVehHack", 3000, 1);
В OnFilterScriptExit
PHP код:
KillTimer(timerhack);
Версия для GM:
В OnGameModeInit
PHP код:
SetTimer("AntyVehHack", 3000, 1);
Почему так? А смысл записывать таймер в переменную если оно нам ненадо?
И в конец кода:
PHP код:
forward AntyVehHack();
public AntyVehHack(){
for(new i = GetMaxPlayers()-1; i != -1; --i)
{
if(!(2 <= GetPlayerState(i) <= 6)) RemovePlayerFromVehicle(i);
if(GetPlayerCameraMode(i) == 18 && GetPlayerSpecialAction(i) == 3){
SendClientMessage(i,0x33AA33AA,"Вы кикнуты из-за подозрения в читерстве!");
Kick(i);
}
}
return true;
}
И что у нас получится, если чел в машине, но серверу отправляется что он ВНЕ авто, то его выставит из неё.
Ну а если чел просто бегает, то он этого даже не заметит :thank_you:
+Данный античит блокирует все "незаконные" попытки сидеть в авто (не важно, за рулем или на пассажирском сидении)
Да, есть ещё NOP RemovePlayerFromVehicle, но это совсем другая история.