0


Благодарности/Неодобрения |
Получено: 13/0 Отправлено: 165/0 |
Постановка ящика боеприпасов к технике.
версия 2.0 Release
Описание:
Дает технике выставлять ящики для перезарядки техники (максимум два ящика в один момент по всей карте)
Установка:
- скопировать скрипт dropResupplyBox.sqf и boxZone.sqf в папку с миссией
содержимое файлов (комментарии).
Скрытый текст
boxZone.sqf
dropResupplyBox.sqfКод:_zone = _this select 0; //Зона в которую должен попасть бобкет передается из триггера в скрипт. Для инициализации триггера надо в нем прописать [triggername] execVM "boxZone.sqf" _bobcat1 = list _zone select 0; // Выбирается техника которая попала в зону триггера //если это бобкет if (vehicle _bobcat1 isKindof "B_APC_Tracked_01_CRV_F") then { _bobcat1 vehicleChat("loading Vehicle Box"); _bobcat1 removeAction action734; // удаляются прежние пункты меню _bobcat1 setFuel 0; sleep 1; _bobcat1 vehiclechat "40% done"; sleep 2; _bobcat1 vehiclechat "75% done"; sleep 3; action734 = _bobcat1 addAction ["<t color='#FF8000'>Drop vehicle ammobox.</t>","dropResupplyBox.sqf", _bobcat1]; // добавляется пункт Выбросить боеприпасы _bobcat1 vehiclechat "100% done. Ready"; _bobcat1 setFuel 1; } ELSE {_bobcat1 vehiclechat "Sorry there no any crane. Only Bobcat type Vehicle supported to load box."};
Код://Arma3 script. Выкладывает из входящего юнита (если это бобкет) боеприпасы для техники. Родительский скрипт: boxZone.sqf для добавления этого действия пересекающему зону триггера бобкету. _bobcat1 = _this select 0; // Это сама техника которая передается скрипту по вызову через Action игроками if (vehicle _bobcat1 isKindof "B_APC_Tracked_01_CRV_F") then { DeleteVehicle ammo4 ; // только четыре ammoboxes доступны на карте ammo4 = ammo3 ; // creates second ammobox variable ammo3 = ammo2 ; // creates second ammobox variable ammo2 = ammo1 ; // creates second ammobox variable _bobcat1 setFuel 0; sleep 1; _bobcat1 vehiclechat "40% done"; sleep 2; _bobcat1 vehiclechat "75% done"; sleep 3; _bobcat1 vehiclechat "100% done. Ready"; ammo1 = "Box_NATO_AmmoVeh_F" createVehicle (position _bobcat1); //Размещает боеприпасы рядом с бобкетом и удаляет действие _bobcat1 setFuel 1; _bobcat1 removeAction action734; } else { _bobcat1 VehicleChat "Sorry, there is no crane to unload the box. Use a Bobcat."; _bobcat1 removeAction aact1; };[свернуть]- добавить в редакторе Триггер с прямоугольными рамками 5х5 (тип реакция на присутствие), в строке его инициализации задав:
nothing = [имя_триггера] execVM "boxZone.sqf";
Автор: a11archer
Благодарности/Неодобрения |
Получено: 1/0 Отправлено: 2/0 |
Все таки вопросы не в личку, а в данную тему.
И у меня сразу вопрос: после того, как уничтоженная техника возродится, скрипт будет наботать?
Тут не исправить уже ничего.. Господь, жги!
Благодарности/Неодобрения |
Получено: 13/0 Отправлено: 165/0 |
(Проверил локально) Да если добавлять инициализацию скрипта не в транспорте а через триггер
Ammoboxes с рамками 5м со следующим кодом в строке инициализации
и при этом подводить к этому триггеру технику для заправки контейнерами.Код:list AmmoBoxes select 0 vehicleChat("loading Vehicle Box"); list AmmoBoxes select 0 addAction ["Выложить боеприпасы","dropResupplyBox.sqf", list AmmoBoxes select 0];
правда тогда будет заправлять их в любую технику... т.к. это инициализация для площадки заправки для любой техники попавшей на площадку.
ps при респавне все действия убиваются (в зависимости от выбора скрипта) то есть создается совершенно другой юнит. пользуйтесь площадкой.
Благодарности/Неодобрения |
Получено: 13/0 Отправлено: 165/0 |
Обновилась версия. до 0.3c
исправлен баг - теперь только Бобкет может использовать данный скрипт. Ранее скриптом могла пользоваться даже пехота. :fie:
Благодарности/Неодобрения |
Получено: 1/0 Отправлено: 2/0 |
Добавлю в шапку попозже
Тут не исправить уже ничего.. Господь, жги!
Благодарности/Неодобрения |
Получено: 13/0 Отправлено: 165/0 |
баг. в сетевой игре в отличии от сингла тестирование прошло неудачно - бобкету не добавляется действие (видимо оно локальное а не rAddAction). поправляю....
Благодарности/Неодобрения |
Получено: 1/0 Отправлено: 2/0 |
Ок спасибо! Опробую завтра и шапку обновлю. Надо менять движек сайта. Этот становится пипец как не удобен
Тут не исправить уже ничего.. Господь, жги!
Благодарности/Неодобрения |
Получено: 13/0 Отправлено: 165/0 |
Обновил код скрипта. проверяю в сетевой миссии
В строке инициализации Триггера 5х5 в зоне погрузки, активация - "синие":
nothing = [имя_триггера] execVM "boxZone.sqf";
boxZone.sqf
Скрытый текст
Код:_zone = _this select 0; //zone is first agrument in this script. Try [triggername] execVM "boxZone.sqf" _bobcat1 = list _zone select 0; // selecting vehicle moved in this trigger area if (vehicle _bobcat1 isKindof "B_APC_Tracked_01_CRV_F") then { _bobcat1 vehicleChat("loading Vehicle Box"); _bobcat1 removeAction action734; sleep 1; _bobcat1 vehiclechat "40% done"; sleep 2; _bobcat1 vehiclechat "75% done"; sleep 3; action734 = _bobcat1 addAction ["<t color='#FF8000'>Drop vehicle ammobox.</t>","dropResupplyBox.sqf", _bobcat1]; _bobcat1 vehiclechat "100% done. Ready"; } ELSE {_bobcat1 vehiclechat "Sorry there no any crane. Only Bobcat type Vehicle supported to load box."};[свернуть]
dropResupplyBox.sqf
Скрытый текст
Код:_bobcat1 = _this select 0; // first variable in script arguments is vehicle that spawning ammobox if (vehicle _bobcat1 isKindof "B_APC_Tracked_01_CRV_F") then { DeleteVehicle ammo4 ; // only four ammoboxes avalible per map ammo4 = ammo3 ; // creates second ammobox variable ammo3 = ammo2 ; // creates second ammobox variable ammo2 = ammo1 ; // creates second ammobox variable ammo1 = "Box_NATO_AmmoVeh_F" createVehicle (position _bobcat1); //creates box at position of externally given vehicle } else { _bobcat1 VehicleChat "Sorry, there is no crane to unload the box. Use a Bobcat."; _bobcat1 removeAction aact1; };[свернуть]
Установка:Скрытый текст
код в 9м сообщении работает теперь по сети. Все выше актуально кроме №7 сообщения (удалите пожалуйста)[свернуть]
1) добавить триггер в зоне погрузки, активация на Синие
2) в строке инициализации триггера прописать nothing = [имя_триггера] execVM "boxZone.sqf";
3) добавить два файла в папку с миссией (вложил)
Все вопросы сюда в ветку.
На сервере тоже работает.
1.1 Release
Благодарности/Неодобрения |
Получено: 13/0 Отправлено: 165/0 |
Переделал скрипт чтобы было реалистичнее, сделал выгрузку боеприпасов не моментально и ограничил количество ящиков боезапаса в бобкете лишь одним (по логике его размеры не допускают большего количества ящиков в бобкете.) Release 2.0
Благодарности/Неодобрения |
Получено: 13/0 Отправлено: 165/0 |
Обновление, инициализация теперь делается из папки.
Также бобкет чистит аэродром от рытвин.!!!
Скрипт перенесен в папку scripts просто
Инициализация:
[triggername1] execVM "scripts\bobcat\boxZone.sqf";
Где Triggername - имя пустого триггера с активацией ВСЕ либо Сторона (зоны загрузки Бобкета).