Ice Cube
Компетентный
Рассказываю, игрок заходит и его просто кикает, он спавнится и делает либо шаг либо просто спавнится и сразу кик по причине AirBreak (новый античит делаю), в чём может быть проблема? Админов то не кикает (проверяю на тесте всё)
Вот код:
Вот код:
PHP:
new Float:PlayerPos[3], Float: dist[4];
for(new i = 0; i < GetMaxPlayers(); i++)\
{
SetPVarInt(playerid, "AntiBreakAir", GetPVarInt(playerid, "AntiBreakAir") + 1);
if(!IsPlayerConnected(i) || PlayerInfo[i][pAdmin] != 0) continue;
GetPlayerPos(i, PlayerPos[0], PlayerPos[1], PlayerPos[2]);
dist[0] = (PosX[i] < PlayerPos[0]) ? PosX[i] - PlayerPos[0] : PlayerPos[0] - PosX[i];
dist[1] = (PosY[i] < PlayerPos[1]) ? PosY[i] - PlayerPos[1] : PlayerPos[1] - PosY[i];
dist[2] = (PosZ[i] < PlayerPos[2]) ? PosZ[i] - PlayerPos[2] : PlayerPos[2] - PosZ[i];
dist[3] = floatsqroot(floatpower(dist[0], 2.0) + floatpower(dist[1], 2.0) + floatpower(dist[2], 2.0));
dist[3] = floatround(GetPlayerDistanceFromPoint(i, PosX[i], PosY[i], PosZ[i]));
if(GetVehicleModel(GetPlayerVehicleID(i)) != 520 && GetPVarInt(i, "AntiBreakAir") == 0)
if((dist[3] > 50 && GetPlayerState(i) == PLAYER_STATE_ONFOOT))
{
new str[128];
GetPlayerName(playerid, sn, sizeof(sn));
format(str, sizeof(str), "Античит < ERROR 034 > кикнут %s[%d] - [AIRBREAK]", sn, playerid);
SCMA(COLOR_GREY, str);
SCM(playerid,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. (AIRBREAK)");
Kicked(playerid);
return true;
}
if(dist[3] > 100 && GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
new str[128];
GetPlayerName(playerid, sn, sizeof(sn));
format(str, sizeof(str), "Античит < ERROR 034 > кикнут %s[%d] - [AIRBREAK]", sn, playerid);
SCMA(COLOR_GREY, str);
SCM(playerid,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. (AIRBREAK)");
Kicked(playerid);
return true;
}
if(dist[3] > 75 && GetPlayerState(i) == PLAYER_STATE_DRIVER) SetPVarInt(i,"WarningTP", GetPVarInt(i,"WarningTP") + 1);
if(dist[3] > 30 && GetPlayerState(i) == PLAYER_STATE_ONFOOT) SetPVarInt(i,"WarningTP", GetPVarInt(i,"WarningTP") + 1);
if(GetPVarInt(i,"WarningTP") >= 1)
{
new str[128];
GetPlayerName(playerid, sn, sizeof(sn));
format(str, sizeof(str), "Античит < ERROR 034 > кикнут %s[%d] - [AIRBREAK]", sn, playerid);
SCMA(COLOR_GREY, str);
SCM(playerid,COLOR_LIGHTRED,"Вы были кикнуты по подозрению в читерстве. (AIRBREAK)");
Kicked(playerid);
return true;
}
return true;
}
