Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

На здоровье и броню + от NOP

Статус
В этой теме нельзя размещать новые ответы.

Dezmont_Mailz

Умник
Вобщем написал только что античит все знаю то что много античитов есть на здоровье но единственно проблемой была это NOP SetPlayerHealth
и NOP SetPlayerArmour вот выкладываю свой античит,улавливает всё это если игрок заморозил ХП и прибавил будет кик если игрок просто заморозил ХП и у него оно не отнялось будет кик если игрок просто пополнил хп то также кик тестровал ложных 0 NOP-ы отдыхают

Видео о том что ложных нету

и сам код разумеется

сначало вписываем переменную

PHP:
AntiHPBron[MAX_PLAYERS];
потом в enum pInfo записываем

PHP:
Float:pHealth,
    Float:pArmour,
дальше в наш секундный таймер записываем это

PHP:
new Float:Health,Float:Armour;
GetPlayerHealth(i, Health);
GetPlayerArmour(i, Armour);
if(Health > PlayerInfo[i][pHealth] && AntiHPBron[i] == 0) KickEx(i,COLOR_LIGHTRED, "Свой текст");
else if(AntiHPBron[i] == 0) PlayerInfo[i][pHealth] = Health;
if(Armour > PlayerInfo[i][pArmour] && AntiHPBron[i] == 0) KickEx(i,COLOR_LIGHTRED, "Свой текст");
else if(AntiHPBron[i] == 0) PlayerInfo[i][pArmour] = Armour;
if(AntiHPBron[i] > 0) AntiHPBron[i]--;
в конец мода

PHP:
stock SetPlayerHealthAC(playerid, Float:Health)
{
    AntiHPBron[playerid] = 3;
    PlayerInfo[playerid][pHealth] = Health;
    return SetPlayerHealth(playerid, PlayerInfo[playerid][pHealth]);
}
stock SetPlayerArmorAC(playerid, Float:Armor)
{
        AntiHPBron[playerid] = 3;	
        PlayerInfo[playerid][pArmour] = Armor;
	return SetPlayerArmour(playerid, PlayerInfo[playerid][pArmour]);
}
И все SetPlayerHealth и SetPlayerArmour меняем на

SetPlayerHealthAC
SetPlayerArmorAC

Так же если у нас идёт

PHP:
GetPlayerHealth(i, Health);
SetPlayerHealth(playerid, Health - 25);
То заменяем на

PHP:
SetPlayerHealthAC(playerid, PlayerInfo[playerid][pHealth] - 25);
с бронёй тоже самое


Так же не забываем про OnPlayerDeath

PHP:
SetPlayerHealthAC(playerid, 100);
И проверка на АФК если есть потому что если у вас стоит античит на GM на АФК нужна в любом случае проверка

Теперь обьясню в чём суть мы берём ХП от каждого игрока и в случае если у него поменялось количество возвращаем в Health
Но если он заморозил его и ХП не убавилось то кик посколько проверка идёт на каждого игрока
А переменна я AntiHPBron даст время на проверку что у игрока и вправду всё верно

Надеюсь помог если данный античит есть извеняйте я удалю тему

а так на данный момент Автор я не забывайте указывать если где то разместите тему
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу