Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • Не хотите БАН?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок
  • Загляните на торговую площадку

    Там вы можете купить
    Всё что касается игровых серверов
  • 0
KING324

Получение количества ракет

Всем привет,хотелось бы узнать как можно получить кол-во нар в верталёте.

написал  такой код,но работает почему то не на всей технике

_array  = [];

for "_i" from -1 to 3 do
	{
		_weapons   = _vehicle weaponsTurret [_i]; 
		
		if((count _weapons) > 0) then 
			{
				{
					_weapon = _weapons select _forEachIndex ;
					_ammo   = _vehicle ammo _weapon;
					_array set [count _array,[_i,[_weapon,_ammo]]];
				} forEach _weapons;	
			};
	};
	
hint format["%1 ",_array];
copyToClipboard str _array;

 

Share this post


Link to post
Share on other sites

4 answers to this question

Recommended Posts

  • 0

используй diag_log для каждой переменной (_weapon, _ammo, _array и т.д.) для вывода в RPT название техники и наименование типа оружия. тогда сможешь увидеть где происходит косяк

Share this post


Link to post
Share on other sites



  • 0
4 часа назад, RedLink сказал:

используй diag_log для каждой переменной (_weapon, _ammo, _array и т.д.) для вывода в RPT название техники и наименование типа оружия. тогда сможешь увидеть где происходит косяк

 Да дело даже не в самом скрипте, почему то например на ка52 не работает (выводит название ракет, а вот кол-во выводит 0)  на ми8 все прекрасно работает.

Share this post


Link to post
Share on other sites
  • 0

вот и выведи в diag_log все значения переменных, где-то видимо не так подхватывает. Кстати, если используешь инфистар, то можешь оттуда выдернуть кусок кода, который запрашивает наименование и кол-во снарядов из техники, когда следишь за игроком.

Share this post


Link to post
Share on other sites
  • 0

KING324 стесняюсь спросить, а для чего вам нужно это "Получение количества ракет" ?  ведь в А2 не поддерживается пополнение боезапаса с указанием определенного кол-ва ammo, это если вы хотели создать систему с сохранением боезапаса после рестарта.

Edited by CSC (see edit history)

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

  • Similar Content

    • By BorizzK
      Вобщем тема такая
       
      1я задачка была такая
      Нужно получить координату на плоскости под углом на расстоянии от текущей координаты
      Задачку решил тут
      Код в итоге таков:
       
      например выведем в лог  координаты точки на плоскости на расстоянии 2м и под углом 90 град (справа) от игрока (вызвав функцию PrintCoords, передав ей в качестве параметра переменную содержащую ссылку на перса игрока)
       
      void PrintCoords(PlayerBase player) { float distance = 2; float anglerotation = 90; Print("Coordinates on the plane at distance " + distance + " and at an angle relative to the player: " + anglerotation + ": " + GetCoords(player, distance, anglerotation).ToString()); } vector GetGoords(PlayerBase player, float distance, float anglerotation) { return GetPosFromDistAndAngle(player.GetPosition(), distance, player.GetOrientation()[0] + anglerotation); } vector GetPosFromDistAndAngle(vector pos, float dist, float angle) { angle = Math.NormalizeAngle(angle) * Math.DEG2RAD; pos[0] = pos[0] + (double)(Math.Sin(angle) * dist); //offset X pos[2] = pos[2] + (double)(Math.Cos(angle) * dist); //offset Y return pos; }  
      Это была задачка 1 и она была решена!
       
      далее надо решить более сложную задачу - она будет номер 2
       
      Надо вычислить координату не на плоскости, а вообще в пространстве, взяв в качестве поправок значения pitch и roll (наклон по поперечной и продольной осям) которые получаются из функции  обьект.GetOrientation() - первое значение масива типа вектор которое возвращает функция - угол на плоскости, второе угол в поперечной оси, третье в продольной (вроде так)
       
      те если игрок, да не важно, просто обьект, имеет наклон в поперечной оси 45 градусов (от так как этот слэш /), то точка под углом на плоскости относительно игрока 90град и расстоянии 2м "справа для него будет 'ниже', чем слева"
       
      врбщем -  нам надо получить координату под улом 90град на плоскости, 45град по вертикали и расстоянии 2м от него слева
       
      воот
       
      и тут у меня мозг взорвался (и почему-то захотелось вискаря)
       
      я понимаю что в данном случае нужно отталкиваться от поперечной вертикальной плоскости... но чет не догоняю как........
       
       
    • By BorizzK
      Чет затупил нещадно
      Делал как-то еще на 063 но куда-то дел код
       
      Получаем в цикле что на игроке и пытаемся получить что в вещах
      AttCount = player.GetInventory().AttachmentCount();
      for ( int i = 0; i < AttCount; i++ )
      {
      attachment = player.GetInventory().GetAttachmentFromIndex(i);
         if ( attachment.IsItemBase() )
         {
           SubAttCount = attachment.GetInventory().AttachmentCount();
           for ( int a = 0; a < SubAttCount; a++ )
           {
               subattachment = attachment.GetInventory().GetAttachmentFromIndex(a);
           }
         }
      }
       
      Если находится akm, то attachment.GetInventory().AttachmentCount(); и далее работает
      Если например куртка или штаны - то нет, чет запамятовал, как получить содержимое в случае курки, рюкзака???
      ...
       
      Спасибо!
    • By Jdinovich
      Добрый день,как можно уменьшить спавн ботов патруля какой файл и строчка отвечают за это,а то слишком много их спавнятся и прибегают все к трейдам?
    • By pekar0201
      Как сделать так, дабы игрок мог купить определённый товар, когда он достигнет определённого количества хуманити (К примеру, -10к)???
    • By CrHD
      Добрый день!
      Расскажите, пожалуйста, каким образом сервисы типа gametracker получают список игроков на сервере? 

      Судя по их инструкции им хватает только ip и порта для трекинга. Без всякой авторизации. Если эти данные смотрят в мир, то как я могу их забрать?
      Меня интересуют сервера Arma 2 Dayz mod.
×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.