Доступ к готовым решениям

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

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

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

New anti-gm.

YellowFace1

Компетентный
Приветствую, уважаемые пользователи P-I.
Выкладываю свою версию anti-gm'a в паблик, ложных нет, ловит всё.
​

Начнём, добавляем в начало мода:
PHP:
#define SetPlayerHeath SetPlayerHealthAC
#define SetPlayerArmour SetPlayerArmourAC
new pArmor[MAX_PLAYERS];
new pHealth[MAX_PLAYERS];
Далее в паблик "OnPlayerGiveDamage":

PHP:
new Float: Arma,Float: hp; GetPlayerArmour(damagedid,Arma); GetPlayerHealth(damagedid,hp);
if(Arma > 0 && weaponid != 4)
{
    if(pArmor[damagedid] <= -60 && Arma > 0) { Kick(damagedid); }
    if(pArmor[damagedid]-amount <= 0) { pArmor[damagedid]-=amount; SetPlayerArmour(damagedid,0); }
    else { SetPlayerArmourAC(damagedid,pArmor[damagedid]-amount); }
}
else
{
    if(pHealth[damagedid] <= -60 && hp > 0 && GetPlayerAnimationIndex(damagedid) != 0 && !InAFK(damagedid)) { Kick(damagedid); } // Свою проверку на AFK добавляем.
    SetPlayerHealthAC(damagedid,pHealth[damagedid]-amount);
}
И ещё в паблик "OnPlayerTakeDamage":

PHP:
if(issuerid == INVALID_PLAYER_ID) { SetPlayerHealthAC(playerid,pHealth[playerid]-amount); }
Добавляем в начало мода:

PHP:
#define SetPlayerHealthAC(%0,%1) SetPlayerHealth(%0,%1), pHealth[%0]=%1
#define SetPlayerArmourAC(%0,%1) SetPlayerArmour(%0,%1), pArmor[%0]=%1
 
Последнее редактирование:
Сверху Снизу