2 posts in this topic

Доброго времени суток уважаемые пользователи pawno-rus решил выложить свою работу античита может кому пригодится. И так давайте начнем!
Ко всем new 

Спойлер

new ChekMoneyAntiCheat[MAX_PLAYERS];

В конце мода:

Спойлер

GiveMoney(playerid,money)//Выдаем деньги
{
    PlayerInfo[playerid][pMoney] += money;
    GivePlayerMoney(playerid,PlayerInfo[playerid][pMoney]-GetPlayerMoney(playerid));
}
GetMoney(playerid)//Узнаем деньги
{
    return PlayerInfo[playerid][pMoney];
}
ResetMoney(playerid)//Забираем деньги 
{
    PlayerInfo[playerid][pMoney] = 0;
    ResetPlayerMoney(playerid);
}

В public OnPlayerConnect:
 

Спойлер

PlayerInfo[playerid][pMoney] = 0;

ChekMoney[playerid] = SetTimer("ChekMoneyAntiCheat",1000,1);

Теперь создаем таймер:

Спойлер

ChekMoneyAntiCheat(playerid)//Таймер проверки
{
    GivePlayerMoney(playerid,PlayerInfo[playerid][pMoney]-GetPlayerMoney(playerid));
    if(GetPlayerMoney(playerid) != PlayerInfo[playerid][pMoney])
    {
        ResetPlayerMoney(playerid);
        GivePlayerMoney(playerid,PlayerInfo[playerid][pMoney]);
    }
    else
    {
        PlayerInfo[playerid][pMoney] = GetPlayerMoney(playerid);
    }
    return 1;
}

Теперь заменяем все GivePlayerMoney,GetPlayerMoney,ResetPlayerMoney на GiveMoney,GetMoney,ResetMoney
ВАЖНО!
Здесь мы не чего не заменяем!

Спойлер

GiveMoney(playerid,money)//Выдаем деньги
{
    PlayerInfo[playerid][pMoney] += money;
    GivePlayerMoney(playerid,PlayerInfo[playerid][pMoney]-GetPlayerMoney(playerid));
}
GetMoney(playerid)//Узнаем деньги
{
    return PlayerInfo[playerid][pMoney];
}
ResetMoney(playerid)//Забираем деньги 
{
    PlayerInfo[playerid][pMoney] = 0;
    ResetPlayerMoney(playerid);
}

 

Share this post


Link to post
Share on other sites

Вот моя версия анти чита 

В конец мода:

stock hak_GivePlayerMoney(playerid, money, statis = 0)
{
	if(statis == 1) return GivePlayerMoney(playerid, money);
	if(money < 0) PlayerInfo[playerid][pMoney] = money;
	else if(money > 0) PlayerInfo[playerid][pMoney] += money;
	ResetPlayerMoney(playerid);
	return GivePlayerMoney(playerid, money);
}
#if defined _ALS_GivePlayerMoney
	#undef GivePlayerMoney
#else
	#define _ALS_GivePlayerMoney
#endif
#define GivePlayerMoney hak_GivePlayerMoney 

и в OnPlayerUpDate

if(IsPlayerConnected(playerid))
{
    if(PlayerInfo[playerid][pMoney] != GetPlayerMoney(playerid))
    {
        ResetPlayerMoney(playerid);
        GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney], 1);
    }
}

Переменную PlayerInfo[playerid][pMoney] меняйте на свою

P.S На работу способность не проверял, но должно работать 

Edited by MuhammadPawn

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • angel_sinvays
      By angel_sinvays
      Приветствую! Меня зовут Артём, мне 19 лет, и я являюсь основателем и ведущим специалистом студии Sinvays. Уже семь лет я работаю в PAWN, и за это время принял участие в множестве проектов. Моя цель – создавать качественные и уникальные решения для вашего игрового проекта. Обратите внимание, чтобы сделать заказ необходимо написать мне в личные сообщения либо делать это через студию.
      Ознакомиться с полным спектром услуг можно у меня в личных сообщениях либо через бота в студии.

      Список услуг которые я предоставляю:
       
      Написание регистрации на mysql [DIALOG / TextDraw] — от 350 рублей.
      Написание авторизации на mysql [DIALOG / TextDraw] — от 350 рублей.
      Написание системы — от 200 рублей (в зависимости от сложности).
      Рисовка TextDraw — от 50 рублей (зависит от потребностей)
      Исправление багов в игровом моде — от 100 рублей (зависит от количества и сложности)
      Переделка любого мода под ваши интересы — от 150 рублей (зависит от потребностей)
       
      Пожалуйста, обратите внимание:

      Для начала сотрудничества мне необходимо четкое техническое задание и ваше желание работать совместно.

      Услуги предоставляются по 100% оплате!

      Моё портфолио: https://vk.com/topic-180751181_50413848
      Мои отзывы: https://vk.com/topic-180751181_50413975
    • sergeenko
      By sergeenko
      Дарова, у меня версия самп R3, решил поставить sampvoice r3, в консоли выдаёт это:
       
      [22:39:00]  Loading plugin: sampvoice.so [22:39:00]   Failed (/lib32/libc.so.6: version `GLIBC_2.33' not found (required by plugins/sampvoice.so)) Плагин (sampvoice.so + sampvoice.dll) закинул в /plugins
      Инклуд (sampvoice.inc) закинул в /include
      Chm и cfg (sampvoice.chm + control.cfg) закинул в корень мода