E-mail:
Пароль:
Общайтесь на форуме,задавайте вопросы,что смогу отвечу,зовите друзей.
Рекламный блок Форума
Реклама
Реклама
Реклама
  • Страница 1 из 1
  • 1
Анти-Чит на деньги
Dima_TkachДата: Воскресенье, 24.10.2010, 22:20 | Сообщение # 1
...</div
Сообщений: 215
Награды: 2

[ 3 ]


Создаём массив, который будет отвечать за деньги каждого игрока

Code
new plmoney[MAX_PLAYERS];//В самый верх мода, т. к. это глобальный массив

В public OnPlayerConnect

Code
plmoney[playerid] = 0;

Теперь созданим паблик, который будет нашей новой функцией давания денег ))

Code
forward GivePlayerMoneyLegal(playerid,money);
public GivePlayerMoneyLegal(playerid,money)      
{      
           if(money > 0)//Если мы даем деньги      
           {      
               plmoney[playerid] += money;//Сначала  добавим это кол-во денег в наш массив      
               GivePlayerMoney(playerid,money);//дадим эту сумму игроку      
               return 1;
           }      
           else//Еслы мы забираем деньги      
           {      
               GivePlayerMoney(playerid,money);//Сначала заберем эту сумму игроку      
               plmoney[playerid] += money;//В наш массив добавим это кол-во денег      
           }      
           return 1;      
}

Создаём новый паблик с проверкой на читерство

Code
forward AntiMoneyHack(playerid);
public AntiMoneyHack(playerid)
{
      if(GetPlayerMoney(playerid) > plmoney[playerid])//Проверяем сумму      
      {      
             new str[64];
             new plname[MAX_PLAYER_NAME];
             GetPlayerName(playerid,plname,sizeof(plname));//Узнаем имя нашего читера      
             format(str,sizeof(str),"АНТИЧИТ: %s был кикнут. Причина: Читерство ($%d)",plname,GetPlayerMoney(playerid) - plmoney[playerid]);//Поместим всю нужную информацию в нашу переменную      
             SendClientMessageToAll(0xF0624496,str);//Дадим знать всем игрокам кто читер      
             Kick(playerid);//И кикнем его      
      }
      return 1;
}

Теперь нужно поставить таймер на проверку в public OnGameModeInit

Code
SetTimer("AntiMoneyHack", 1000, true);

Ну а теперь осталась только ваша задача поменять все функции SafeGivePlayerMoney и GivePlayerMoney на GivePlayerMoneyLegal
Если вы всё правильно делали, то всё должно отлично работать

УРОК BY valych

  • Страница 1 из 1
  • 1
Поиск:

Статистика Форума
Лучшие пользователи
Уважаемые пользователи
Популярные темы
Недавно обновленные темы
Dima_Tkach Постов [ 215 ]
Free-Fire Постов [ 14 ]
SeXy Постов [ 11 ]
Tailer Постов [ 8 ]
r@d)_b@ll) Постов [ 5 ]
FriZ Постов [ 4 ]
ZioSHik Постов [ 4 ]
Kolyamba Постов [ 2 ]
Jon_Smit Постов [ 2 ]
Nik_Ull Постов [ 2 ]
Dima_Tkach Репутация [ 3 ]
Free-Fire Репутация [ 2 ]
FriZ Репутация [ 1 ]
Kolyamba Репутация [ 1 ]
Nik_Ull Репутация [ 1 ]
ZioSHik Репутация [ 1 ]
velix Репутация [ 1 ]
DateX Репутация [ 1 ]
smart2009 Репутация [ 1 ]
Marselo_Zm Репутация [ 1 ]
Досчитаем до 500 [ 10 ]
Услуги скриптинга и так же MAP's [ 6 ]
Место где нельзя драться [ 6 ]
Вопрос и Ответ [ 5 ]
Dima_Tkach [ 5 ]
Скриншоты с SAMP'a [ 4 ]
Регистрация [ 4 ]
[GM] V:RP aka Valence Role Play [ 3 ]
Смена ника [ 3 ]
[GM] Virtyal-City Role Play [ 3 ]
Интернет-магазин мебели в Украине [ 0 ]
[GM] MyGame Village [ 1 ]
Прослушка телефона [/track] [ 1 ]
Набор в команду сайта [ 1 ]
Как из .амх получить .pwn [ 1 ]
[GM] The Godfather [GameWorld] [ 2 ]
[GM] V:RP aka Valence Role Play [ 3 ]
Склонение [ 0 ]
Античит на оружие. [ 0 ]
Убираем пинг в SAMP [ 0 ]