20.07.2013, 19:48
(
Последний раз редактировалось White_116; 13.09.2013 в 14:26.
)
Актуально для версий серверов ниже 0.3x R2
Многие искали защитку от: читер бьёт кулаком и все вокруг него вылетают.
Решил поделиться.
Вот простой скриптиг.
pawn Код:
#include <a_samp>
new FirstKick[MAX_PLAYERS char];
public OnPlayerConnect(playerid)
{
FirstKick{playerid}=0;
return 1;
}
public OnPlayerUpdate(playerid)
{
new Float:x,Float:y,Float:z;
GetPlayerCameraFrontVector(playerid,x,y,z);
if(floatcmp(1.0, floatabs(x))==-1 || floatcmp(1.0, floatabs(y))==-1 || floatcmp(1.0, floatabs(z))==-1)
{
if(FirstKick{playerid})
{
Kick(playerid);
}
else
{
FirstKick{playerid}=1;//ложный вызов из-за старых данных.
}
return 0;
}
return 1;
}
pawn Код:
#include <a_samp>
new AOFCT[MAX_PLAYERS];
new AOFCW[MAX_PLAYERS char];
public OnPlayerUpdate(playerid)
{
new Float:x,Float:y,Float:z;
GetPlayerCameraFrontVector(playerid,x,y,z);
if(floatcmp(1.0, floatabs(x))==-1 || floatcmp(1.0, floatabs(y))==-1 || floatcmp(1.0, floatabs(z))==-1)
{
if(AOFCT[playerid] < GetTickCount())AOFCW{playerid}=0; else AOFCW{playerid}++;
if(AOFCW{playerid} < 2) AOFCT[playerid]=GetTickCount()+1000; else
{
Kick(playerid);
}
return 0;
}
return 1;
}