Привет, Гость!
  • Страница 1 из 1
  • 1
Античит на Оружие
AdminДата: Вторник, 16.02.2016, 12:57 | Сообщение # 1
Генерал-майор
Группа: Администраторы
Сообщений: 272
Репутация: 0
Статус: Offline
Для начало добавим массивчики.
Код
new Weapons[MAX_PLAYERS][47];

Теперь в OnPlayerConnect
Код
for(new i=0;i<47;i++) Weapons[playerid][i]=0;//обнуление

Дальше в OnPlayerStateChange добавляем следующие чтоб анти-чит не сработал при посадке например в самолет.
Код
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
         {
              new model = GetVehicleModel(GetPlayerVehicleID(playerid));
              switch(model)
              {
                  case 592,577,511,512,520,593,553,476,519,460,513,548,425,417,487,488,497,563,447,469: Weapons[playerid][46]= 1;
                  case 457: Weapons[playerid][2]= 1;
                  case 596,597,598,599: Weapons[playerid][25]= 1;
              }
         }

Теперь проверка в OnPlayerUpdate:
Код
new weap = GetPlayerWeapon(playerid);
         if(weap != 0 && !Weapons [playerid][weap]&& weap != 40)
         {
                 //Действие например кик
                 Kick(playerid);
         }

Теперь макрос выдачи оружия.
Код
stock GiveWeapon(player,weapid,ammo)
{
Weapons[player][weapid]= 1;
GivePlayerWeapon(player,weapid,ammo);
return ;
}

Теперь нужно заменить все GivePlayerWeapon на GiveWeapon
можете делать вручную а можете поставить макрос.
Код
#define GivePlayerWeapon GiveWeapon

Автор: Неизвестно
 
  • Страница 1 из 1
  • 1
Поиск: