Модератор форума: Slon |
Форум РЕДАКТОР - ArmA 2 Operation Arrowhead Вопрос - ответ Тема для небольших вопросов по ArmA 2 Operation Arrowhead |
Тема для небольших вопросов по ArmA 2 Operation Arrowhead |
› Воскресенье
› 22.04.2018
› 11:07
› Сообщение #
Работоспособность каждого трека надо проверить зарание, например используя Радио триггер.
У каждого юнита свой набор треков? Не обязательно скрипт писать в файл init.sqf Лучше сделать файл с любым понятным Тебе названием и запускать его из init.sqf вот такой командой execVM "Название файла.sqf"; execVM "другой файл.sqf"; execVM "следующий.sqf"; итд. зы. Если скрипт работает бесконечно по кругу, текст После него выполняться не будет. |
› Понедельник
› 23.04.2018
› 09:16
› Сообщение #
Slon, проверим правильно ли я понял, тот скрипт который мне давался на "зацикленное говорение юнитом набора фраз" я пихаю в например idle.sqf, тот же скрипт, только изменив название юнита и набор треков я пихаю в idle1.sqf и так несколько раз. Затем я в init.sqf пишу :
execVM "idle.sqf"; execVM "idle1.sqf"; execVM "idle2.sqf"; и так далее и все указаные в разных файлах юниты будут болтать верно? |
› Понедельник
› 23.04.2018
› 14:07
› Сообщение #
вобщем да. есть конечно способы и это упростить, но сейчас у меня нет времени.
|
› Понедельник
› 23.04.2018
› 14:53
› Сообщение #
Slon, понимаю, да я все равно карту буду разбивать на несколько локаций скорей всего, ибо сильного перегруза не избежать, много юнитов, много вейпоинтов и триггеров, а так как я очень не опытен, скрипты у меня большинство кривоватые и нагрузку дадут мама не горюй)
|
› Вторник
› 24.04.2018
› 22:53
› Сообщение #
Если таких "говорящих" будет много, имеет смысл запускать произнесение звуков только при нахождении игрока в неком радиусе от юнита и отключать при выходе из зоны.
Будет один цикл проверялки и запускаемые\отключаемые циклы фраз. Примерно так: в инит внести секцию [] spawn { Flag_say1 = true; Flag_say2 = true; ... while {true} do { if (player distance Sol1 < 15 and flag_say1) then {[] exevVM "zvuk1.sqf"}; if (player distance Sol2 < 15 and flag_say2) then {[] exevVM "zvuk2.sqf"}; ..... sleep 2; }; }; В скрипте zvuk1 первой строкой прописать Flag_say1 = false; - чтобы не запускался повторно при уже запущенном. И в конце цикла while снова проверять дистанцию. if (player distance Sol1 > 15) exitWith {flag_say1 = true} - выход из цикла и сброс флага работы скрипта. Аналогично для zvuk2 и тд. |
› Пятница
› 07.12.2018
› 21:07
› Сообщение #
Здравствуйте форумчане. Может кто поможет решить одну проблему со входом юнита в дома (куда можно входить). По ARMA2 такой проблемы нет. Там есть скрипт, я его скачал. При наведении прицела на дом показывает названия дверей. А вот в игре Iron Front это не работает. Я тут перерыл все что мог в поисках названия дверей в IF но ничего не нашел, дайте какую ссылку где это можно посмотреть. Я тогда просто тупо подставлю эти названия в формулу house animate ["Dvere1", 1] и путем метода тыка определю нужные названия.
Добавлено (19.12.2018, 16:33) |
› Среда
› 19.12.2018
› 23:19
› Сообщение #
Должно работать.
Как определил ? что не работает. |
› Четверг
› 20.12.2018
› 08:20
› Сообщение #
Как определил? Взял танк Т-34-76. поставил рядом с 2-мя кирпичными зданиями. Поставил целью на 1-е здание логику игры LK, а на второе маркер mrk2. По первому зданию танк выпустил 15 снарядов прежде чем оно рухнуло, а вот во 2-е стрелять отказался, хотя я поставил ему запас в 25 выстрелов.
|
› Четверг
› 20.12.2018
› 20:14
› Сообщение #
Не понял. А сколько выстрелов должно быть сделано по каждому зданию ?
ты какие цифры указывал ? Может ты требовал танк стрелять быстрей чем он успевал перезарядиться, и когда скрипт кончился танк сделал меньше выстрелов. |
› Четверг
› 20.12.2018
› 20:53
› Сообщение #
Я сделал 2 триггера. Для первого дома в условии написал time > 10 и в ините тот алгоритм который ты мне дал для стрельбы из танка и 25 выстрелов всего. А во втором в условии time > 110 (я подсчитал что за это время он делает 15 выстрелов для разрушения дома), а в ините вот эту формулу: LK setPos (getMarkerPos "mrk2"); Я предполагал, что после истечении 110 сек. стрельба переключится на 2-й дом.Вот собственно и все.
Добавлено (20.12.2018, 20:57) |
› Четверг
› 20.12.2018
› 22:50
› Сообщение #
|
› Пятница
› 21.12.2018
› 11:41
› Сообщение #
Почему стрельба должна переключаться? Потому-что происходит простой перенос цели на новое место. Если поставить новую цель и переключить на нее танк, он начинает стрелять (я проверял). Но я предполагал что если старая цель будет перенесена на новое место то оно также должно быть обстреляно. Если это не так то как тогда (если возможно вообще) заставить юнит стрелять по перенесенной на новое место цели?
Добавлено (21.12.2018, 13:33) |
› Пятница
› 21.12.2018
› 19:30
› Сообщение #
Чтобы стрелок крутил башней, надо дать ему команду doWatch
например for "" from 0 to 2 do { (gunner T34_01) doWatch LK; sleep 2; LK action ["useWeapon", T34_01, gunner T34_01, 0]; sleep 10; }; Lk setPos (getMarkerPos "mk1"); for "" from 0 to 2 do { (gunner T34_01) doWatch LK; sleep 2; LK action ["useWeapon", T34_01, gunner T34_01, 0]; sleep 10; }; |
› Пятница
› 21.12.2018
› 22:20
› Сообщение #
Переключения стрельбы не происходит. В условия 2-го триггера я записал: time > 110. А в инит вписал вот это: LK setPos (getMarkerPos "mrk1"); as = [] Spawn {for "" from 0 to 12 do { (gunner T34_01) doWatch LK; sleep 2; LK action ["useWeapon", T34_01, gunner T34_01, 0]; sleep 7.2; }; }; hint "Прошло 110 сек."
|
› Пятница
› 21.12.2018
› 22:59
› Сообщение #
|
| |||
Чат сайта |