Заказать игровой сервер Контакты (заказать плагин/исправить ошибки/другое) Пожертвовать Поиск

[ вход ]
[ последние сообщения ]

  • Страница 1 из 1
  • 1
Как сделать проверку на оружие
MeDestroyer Дата: Среда, 25.03.2015, 19:37:16 | Сообщение # 1
Сообщений: 55
Репутация: -1 [ +/- ]
Мне нужно сделать если у игрока нет оружия(даже ножа), то можно было выполнить какое-то действие
 
_R1KO_ Дата: Среда, 25.03.2015, 22:01:38 | Сообщение # 2
Сообщений: 200
Репутация: 30 [ +/- ]
Цикл по всему оружию, в нем проверка валидности оружия на слоте.
Если оно валидно - break;
Если нет - > проверять дальше. В конце уже выполнить действие
 
«SeReGa»☆ Дата: Среда, 25.03.2015, 22:27:10 | Сообщение # 3
Сообщений: 395
Репутация: 37 [ +/- ]
Dell..


Сообщение отредактировал «SeReGa»☆ - Среда, 25.03.2015, 22:27:46
 
MeDestroyer Дата: Среда, 25.03.2015, 22:48:10 | Сообщение # 4
Сообщений: 55
Репутация: -1 [ +/- ]
Цитата _R1KO_ ()
Цикл по всему оружию, в нем проверка валидности оружия на слоте.
Если оно валидно - break;
Если нет - > проверять дальше. В конце уже выполнить действие

Как такое сделать?
 
«SeReGa»☆ Дата: Четверг, 26.03.2015, 10:45:06 | Сообщение # 5
Сообщений: 395
Репутация: 37 [ +/- ]
что то Подобное стряпал!
Код
if(SLOT_PRIMARY(client)&&SLOT_SECONDARY(client)&&SLOT_KNIFE(client))  
{
  //Есть
}
else
{
  //нет
}

Код
bool:SLOT_PRIMARY(client)
{
    if (GetPlayerWeaponSlot(client, 0) = -1)
    {
     return false;
    }
    else
    {
     return true;
    }    
}

bool:SLOT_SECONDARY(client)
{
    if (GetPlayerWeaponSlot(client, 1) = -1)
    {
     return false;
    }
    else
    {
     return true;
    }    
}
bool:SLOT_KNIFE(client)
{
    if (GetPlayerWeaponSlot(client, 2) = -1)
    {
     return false;
    }
    else
    {
     return true;
    }    
}


pS Неуверен( будет ли работать!).


Сообщение отредактировал «SeReGa»☆ - Четверг, 26.03.2015, 11:00:28
 
Nahal Дата: Четверг, 26.03.2015, 11:01:49 | Сообщение # 6
Сообщений: 205
Репутация: 8 [ +/- ]
Код
bool:(SLOT_PRIMARY(client)&&SLOT_SECONDARY(client)&&SLOT_KNIFE(client))    
{   
      if (GetPlayerWeaponSlot(client, 0) = -1)   
      {   
       return false;   
      }   
      else   
      {   
       return true;   
      }      
}   

bool:SLOT_SECONDARY(client)   
{   
      if (GetPlayerWeaponSlot(client, 1) = -1)   
      {   
       return false;   
      }   
      else   
      {   
       return true;   
      }      
}   
bool:SLOT_KNIFE(client)   
{   
      if (GetPlayerWeaponSlot(client, 2) = -1)   
      {   
       return false;   
      }   
      else   
      {   
       return true;   
      }      
}


Так разьве нельзя?


Сообщение отредактировал Nahal - Четверг, 26.03.2015, 11:02:49
 
Scarface_slv Дата: Четверг, 26.03.2015, 12:58:44 | Сообщение # 7
Сообщений: 737
Репутация: 61 [ +/- ]
Не проще так вообще?
Код

bool:CheckWeapons(client)
{
  for(new i = 0; i < 5; i++) if(GetPlayerWeaponSlot(client, i) != -1) return false;
  return true;
}
 
«SeReGa»☆ Дата: Четверг, 26.03.2015, 13:09:24 | Сообщение # 8
Сообщений: 395
Репутация: 37 [ +/- ]
Scarface_slv, А вдруг CheckWeapons(client)= false? а проверен только GetPlayerWeaponSlot(client, 0)! а как же быть с остальным? \

GetPlayerWeaponSlot(client, 1) получается в 1 правда а во всех остальных нет но это будет уже не важно!


Сообщение отредактировал «SeReGa»☆ - Четверг, 26.03.2015, 13:09:59
 
Scarface_slv Дата: Четверг, 26.03.2015, 13:39:57 | Сообщение # 9
Сообщений: 737
Репутация: 61 [ +/- ]
Цикл for ищет по всем слотам от 0 до 4 оружие - вернет false(если у игрока есть какое либо оружие)
Если не найдет в цикле то вернет true(у игрока нет оружий) vshapke
Короче не умею я объяснять, лучше проверь на деле и убедись)
 
«SeReGa»☆ Дата: Четверг, 26.03.2015, 14:11:32 | Сообщение # 10
Сообщений: 395
Репутация: 37 [ +/- ]
Уговорил))
 
  • Страница 1 из 1
  • 1
Поиск: