Dezmont_Mailz
Умник
Здраствуйте всем и я в прошлый раз написал античит на АирБреак но у меня не оч.хорошо получилось так вот теперь я написал его вполне хорошо проверял на многие действия и ложных не было вовсе как бы я за это время смотрел и проверял куча способов и вот получился один из лучших моих вариантов
сначало записываем 3 переменные в начало мода
В OnPlayerConnect записываем
Дальше ищем public OnPlayerExitVehicle(playerid, vehicleid) и записываем туда
Дальше в секундный таймер это может быть ПРИМЕРЫ: Fresh(),SetPlayerUnjail(),SecondTimer() записываем
Дальше ищем public OnPlayerStateChange(playerid, newstate, oldstate) и записываем
И всё в конец мода
У кого нету KickEx то тоже в конец мода
Всё на этом античит готов
Все функции как
Меняем на
если помог ставьте спасибо
Работает как автомат Аир,тп ловит запросто
Так же не помогут боты по ТП посколько мы выстовляем кординаты во время скорости машины или игрока
Автор данного античита я
С рассылкой данной темы не забывайте указать
сначало записываем 3 переменные в начало мода
PHP:
new AntiBreik[MAX_PLAYERS];
new Float:VehiclePos[MAX_VEHICLES][3];
new Float:TelePos[MAX_PLAYERS][3];
В OnPlayerConnect записываем
PHP:
AntiBreik[playerid] = 500;
Дальше ищем public OnPlayerExitVehicle(playerid, vehicleid) и записываем туда
PHP:
new Float:pos[3];
GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
TelePos[playerid][0] = pos[0];
TelePos[playerid][1] = pos[1];
TelePos[playerid][2] = pos[2];
Дальше в секундный таймер это может быть ПРИМЕРЫ: Fresh(),SetPlayerUnjail(),SecondTimer() записываем
PHP:
new carid = GetPlayerVehicleID(i);
if(PlayerInfo[i][pTut] == true)
{
if(IsPlayerInVehicle(i, carid))
{
new Float:CarPos[3],Float:distveh = floatround(GetVehicleDistanceFromPoint(carid,VehiclePos[carid][0],VehiclePos[carid][1],VehiclePos[carid][2]));
GetVehiclePos(carid, CarPos[0], CarPos[1], CarPos[2]);
if(distveh > 100 && AntiBreik[i] == 0) KickEx(i, COLOR_LIGHTRED, "Свой текст");
if(GetVehicleSpeed(carid) > 15)
{
VehiclePos[carid][0] = CarPos[0];
VehiclePos[carid][1] = CarPos[1];
VehiclePos[carid][2] = CarPos[2];
}
}
else
{
new Float:pos[3],Float:distchel = floatround(GetPlayerDistanceFromPoint(i,TelePos[i][0],TelePos[i][1],TelePos[i][2]));
GetPlayerPos(i, pos[0], pos[1], pos[2]);
if(distchel > 60 && AntiBreik[i] == 0) KickEx(i, COLOR_LIGHTRED, "Свой текст");
if(GetPlayerSpeed(i) > 0)
{
TelePos[i][0] = pos[0];
TelePos[i][1] = pos[1];
TelePos[i][2] = pos[2];
}
}
}
if(AntiBreik[i] > 0) AntiBreik[i]--;
Дальше ищем public OnPlayerStateChange(playerid, newstate, oldstate) и записываем
PHP:
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
{
new Float:CarPos[3];
GetVehiclePos(carid, CarPos[0], CarPos[1], CarPos[2]);
VehiclePos[carid][0] = CarPos[0];
VehiclePos[carid][1] = CarPos[1];
VehiclePos[carid][2] = CarPos[2];
}
И всё в конец мода
PHP:
stock SetVehiclePosEx(playerid,vehicleid,Float:X,Float:Y,Float:Z)
{
AntiBreik[playerid] = 3;
VehiclePos[vehicleid][0] = X;
VehiclePos[vehicleid][1] = Y;
VehiclePos[vehicleid][2] = Z;
SetVehiclePos(vehicleid ,X,Y,Z);
UpdateVehiclePos(vehicleid, 0);
return 1;
}
stock SetPlayerPosEx(playerid, Float:X,Float:Y,Float:Z)
{
AntiBreik[playerid] = 3;
TelePos[playerid][0] = X;
TelePos[playerid][1] = Y;
TelePos[playerid][2] = Z;
SetPlayerPos(playerid ,X,Y,Z);
return 1;
}
stock PutPlayerInVehEx(playerid, vehicleid, seatid)
{
PutPlayerInVehicle(playerid, vehicleid, seatid);
new Float:CarPos[3];
GetVehiclePos(vehicleid, CarPos[0], CarPos[1], CarPos[2]);
AntiBreik[playerid] = 3;
VehiclePos[vehicleid][0] = CarPos[0];
VehiclePos[vehicleid][1] = CarPos[1];
VehiclePos[vehicleid][2] = CarPos[2];
return 1;
}
stock RemovePlayerFromVehicleEx(playerid)
{
RemovePlayerFromVehicle(playerid);
new Float:pos[3];
AntiBreik[playerid] = 3;
GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
TelePos[playerid][0] = pos[0];
TelePos[playerid][1] = pos[1];
TelePos[playerid][2] = pos[2];
return 1;
}
stock GetPlayerSpeed(playerid)
{
new Float:Coord[4];
GetPlayerVelocity(playerid, Coord[0], Coord[1], Coord[2]);
Coord[3] = floatsqroot(floatpower(floatabs(Coord[0]), 2.0) + floatpower(floatabs(Coord[1]), 2.0) + floatpower(floatabs(Coord[2]), 2.0)) * 213.3;
return floatround(Coord[3]);
}
stock GetVehicleSpeed(vehicleid)
{
new Float:ST[3];
GetVehicleVelocity(vehicleid, ST[0], ST[1], ST[2]);
return floatround(floatsqroot(ST[0]*ST[0] + ST[1]*ST[1] + ST[2]*ST[2])*100.3);
}
У кого нету KickEx то тоже в конец мода
PHP:
stock KickEx(playerid, color, reason[])
{
SendClientMessage(playerid, color, reason);
return SetTimerEx("KickPlayer", GetPlayerPing(playerid) + 100, false, "i", playerid);
}
forward KickPlayer(playerid);
public KickPlayer(playerid) return Kick(playerid);
Всё на этом античит готов
Все функции как
PHP:
SetVehiclePos
SetPlayerPos
RemovePlayerFromVehicle
PutPlayerInVehicle
Меняем на
PHP:
SetVehiclePosEx
SetPlayerPosEx
RemovePlayerFromVehicleEx
PutPlayerInVehEx
если помог ставьте спасибо
Работает как автомат Аир,тп ловит запросто
Так же не помогут боты по ТП посколько мы выстовляем кординаты во время скорости машины или игрока
Автор данного античита я
С рассылкой данной темы не забывайте указать
Последнее редактирование:
