Jump to content


Photo

Вопрос по редактору Arma 3 (Бесконечные патроны)


Best Answer SteelRat , 05 April 2014 - 21:57

Блин! Вообще, чем я занимаюсь). Берите.

_EHFiredIdx = _this addEventHandler ["Fired", {
   
   if ((_this select 5) == currentMagazine(_this select 0)) then {
	if (((_this select 0) ammo (currentWeapon (_this select 0))) == 0) then {
	     (_this select 0) setAmmo [currentWeapon (_this select 0), 1000000]; 
	};
   } else {
	(_this select 0) addMagazine (_this select 5);
   };
	
}];
Go to the full post


  • Please log in to reply
8 replies to this topic

#1 OFFLINE   halloweenxmas

halloweenxmas

    Рядовой

  • Пользователи
  • 13 posts

Posted 05 April 2014 - 17:04

Товарищи, скажите мне пожалуйста, есть ли какая либа команда для редактора Arma 3 что бы сделать бесконечный боезапас для оружия и для техники?

Знаю то что в Arma 2 это было, а вот на счет 3, перерыл весь интернет, и увы, ничего не нашел.


  • 0

#2 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 05 April 2014 - 18:42

Интересный у вас геймплей !)

 

Создаёте в папке с миссией файл terminatorMode.sqf и копируете в него код ниже

_EHFiredIdx = _this addEventHandler ["Fired", {
   _vehicle = _this select 0;
   if ((_vehicle ammo (currentWeapon _vehicle)) == 0) then {
      _vehicle setAmmo [currentWeapon _vehicle, 1000000]; 
   };
}];

Далее в редакторе, в ините юнитов , которые будут выступать в роли терминаторов прописать

this call {_this execVM "terminatorMode.sqf"}

  • 2

#3 OFFLINE   halloweenxmas

halloweenxmas

    Рядовой

  • Пользователи
  • 13 posts

Posted 05 April 2014 - 19:04

Большое спасибо, добрый человек :)


Только еще вопрос, как тоже самое сделать с гранатами, ХИС, т.д.?


  • 0

#4 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 05 April 2014 - 21:27

Большое спасибо, добрый человек :)


Только еще вопрос, как тоже самое сделать с гранатами, ХИС, т.д.?

Это уже надо инвентарь мониторить


  • 1

#5 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 05 April 2014 - 21:57   Best Answer

Блин! Вообще, чем я занимаюсь). Берите.

_EHFiredIdx = _this addEventHandler ["Fired", {
   
   if ((_this select 5) == currentMagazine(_this select 0)) then {
	if (((_this select 0) ammo (currentWeapon (_this select 0))) == 0) then {
	     (_this select 0) setAmmo [currentWeapon (_this select 0), 1000000]; 
	};
   } else {
	(_this select 0) addMagazine (_this select 5);
   };
	
}];

Edited by SteelRat, 05 April 2014 - 22:00.

  • 2

#6 OFFLINE   halloweenxmas

halloweenxmas

    Рядовой

  • Пользователи
  • 13 posts

Posted 06 April 2014 - 00:40

Спасибо огромное!
Лучи добра вам :)


  • 0

#7 OFFLINE   DmitRich

DmitRich

    Прапорщик

  • Пользователи
  • 562 posts
  • Откуда:Санкт-Петербург

Posted 06 April 2014 - 13:45

SteelRat, спасибо, теперь юзаю скрипт для тренировок :clapping:

Edited by DmitRich, 06 April 2014 - 13:45.

  • 0

#8 OFFLINE   DEMENTOR

DEMENTOR

    Рядовой

  • Пользователи
  • 9 posts
  • Откуда:ДВ

Posted 24 May 2014 - 18:17

Вот еще короче (в инит, разумеется  :P ):

this addEventHandler ["fired",{(_this select 0) setvehicleammo 1}]

Edited by DEMENTOR, 24 May 2014 - 18:18.

  • 0

#9 OFFLINE   Zlobot

Zlobot

    Мл.сержант

  • Пользователи
  • 149 posts
  • Откуда:Хабаровск

Posted 21 July 2017 - 11:58

Еще один способ пополнения боезапаса юнитам через эвентхандлер "Reloaded". 

_unit addEventHandler ["Reloaded", {(_this select 0) addMagazine ((_this select 3) select 0);}];

Это самый простой вариант вызова, если поковырять, то можно и посложнее сделать.

Пополнение происходит магазином которым юнит перезаряжается в текущем событии. Отсюда прикол - ему нужно в инвентаре иметь хотя бы 1 резервный магазин, если оружие уже заряжено. Способ работает для любых боеприпасов и выглядит более естественно)) И срабатывает, как я подозреваю, не так часто как "fired".


  • 1




Яндекс.Метрика