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

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

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

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

Простой анти-чит на деньги

themakar

Ученик
Доброго времени суток участники форума, решил поделиться с вами простым античитом на деньги.​

Перейдем сразу к установке, все довольна просто, ко всем вашим переменный добавляем:
PHP:
new PlayerMoney[MAX_PLAYERS];
Ниже созданной переменной добавляем, наши новые функции:
PHP:
#if defined _ALS_GivePlayerMoney
    #undef GivePlayerMoney
#else
    #define _ALS_GivePlayerMoney
#endif
#define GivePlayerMoney Hook_GivePlayerMoney

Hook_GivePlayerMoney(playerid, amount)
{
	PlayerMoney[playerid] += amount;
	return GivePlayerMoney(playerid, amount);
}

#if defined _ALS_ResetPlayerMoney
    #undef ResetPlayerMoney
#else
    #define _ALS_ResetPlayerMoney
#endif
#define ResetPlayerMoney Hook_ResetPlayerMoney

Hook_ResetPlayerMoney(playerid)
{
	PlayerMoney[playerid] = 0;
	return ResetPlayerMoney(playerid);
}

GetPlayerRealMoney(playerid)
{
	return (PlayerMoney[playerid]);
}
/* Функции возвращают те же самые значения что и нативные. */
Использование античита, упрощено благодаря хукам нативных функций, вам не придется изменять свой старый код, если вы использовали нативные функции.

Саму работу античита, вставляем этот код в OnPlayerUpdate:
PHP:
if (new money = GetPlayerRealMoney(playerid) != GetPlayerMoney(playerid))
{
	ResetPlayerMoney(playerid);
	GivePlayerMoney(playerid, money);
}
При конекте или дисконекте обнуляйте деньги:
PHP:
ResetPlayerMoney(playerid);
 
Последнее редактирование:
Сверху Снизу