Всем привет. Это моё первое готово решение, оформлять ещё не умею, строго не судите.
В этом готовом решении я покажу вам как сделать Античит на FakeKill.
Этот античит будет отлавливать тех, кто убивает себя и набивает к примеру очки другу.
Античит работает по принципу "касания", т.е. если Игрок №1 ударил Игрока №2 и Игрок №2 умирает, всё нормально. А если Игрок №1 не трогает Игрока №2, а Игрок №2 умирает "от рук Игрока №1", то кикаем Игрока №2. (Я думаю что я объяснил как-то не так )
Начнём.
Ко всем new добавляем:
Дальше идём к: public OnPlayerConnect(playerid)PHP код:
new ContactPlayer[MAX_PLAYERS];
Туда вставляем:
Теперь идём к: public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)PHP код:
ContactPlayer[playerid] = INVALID_PLAYER_ID;
Туда вставляем:
И наконец к: public OnPlayerDeath(playerid, killerid, reason)PHP код:
if(issuerid == INVALID_PLAYER_ID) return 1;
ContactPlayer[issuerid] = playerid;
ContactPlayer[playerid] = issuerid;
Туда вставляем:
Автор урока: St1muL ( Т.е. я )PHP код:
if(reason != 255 && reason != 4 && reason != 47 && reason != 51 && reason != 53 && reason != 54 && ContactPlayer[killerid] != playerid)
{
ContactPlayer[killerid] = INVALID_PLAYER_ID;
ContactPlayer[playerid] = INVALID_PLAYER_ID;
Kick(playerid);
}