Модератор форума: Slon |
Форум РЕДАКТОР - ArmA 2 Скрипты Здесь отвечают нормально на все новичковые вопросы. (Если вы 1 раз знакомитесь со скриптами спрашивайте)) |
Здесь отвечают нормально на все новичковые вопросы. |
› Понедельник
› 03.10.2011
› 23:24
› Сообщение #
#st0 hint "st0" ?(player in list trgpr10): goto "st1" ~1 goto "st0" #st1 hint "st1" player addEventHandler ["Fired",{_this exec "put.sqs"}] ~1 #st2 hint "st2" ?!(player in list trgpr10): player removeEventHandler ["Fired",{_this exec "put.sqs"}]; goto "st0" ?!(alive player): goto "st0" ~1 goto "st2" так же в этом скрипте не работает удаление евентхандлера почемуто. то есть один раз запустился, и далее при выполнении условия ?!(player in list trgpr10): player removeEventHandler ["Fired",{_this exec "put.sqs"}]; он уже не удаляется. Сейчас делаю миссию, поэтому вопросов много. |
› Понедельник
› 03.10.2011
› 23:27
› Сообщение #
objectName removeEventHandler [type, index]
player removeEventHandler ["killed", 0] или Val_eh = object addEventHandler [type, command] ... player removeEventHandler ["killed", Val_eh] |
› Среда
› 05.10.2011
› 23:08
› Сообщение #
Спасибо, помогло.
[k1_1, 1] setWPPos getpos player почему то не работает. Когда говорю k1_1 lockwp false, то он бежит туда где у него находится вейп. Хотя, по-идее, вейпонт должен переместиться в точку с координатами игрока.(k1_1 имя бота-пехотинца). Может быть есть другой способ после высадки с машины заставить бота искать игрока и стрелять по нему сразу после обнаружения. После команды domove они бегут к нему и тупят страшно.. Добавлено (05.10.2011, 23:08) |
› Пятница
› 07.10.2011
› 03:06
› Сообщение #
Парни помогите пожалуйста. Есть самолет, есть бот, надо что бы при активации триггера он помчал в самоль завел его и дождавшись загрузки игрока полетел куда надо. Трабл в том что по вэйпоинту он не садиться в самолет(стоит и жалом торгует), а по команде прописанной в ините у него-садиться и пытается улететь. через unit action ["engineOff", samolet] моторы не глушит, вобще беда, помогайте плиз. Чувствую что все там очень просто решается, но как не могу понять.
Сообщение отредактировал madsin - Пятница, 07.10.2011, 03:07
|
› Пятница
› 07.10.2011
› 14:22
› Сообщение #
madsin, для остановки смолёта попробуй такую команду:
Code samolet stop true |
› Пятница
› 07.10.2011
› 17:21
› Сообщение #
с самолетом разобрался сам, спасибо. Теперь долбаюсь в другую стену, надо как то замутить что бы чел определенный мог активировать авиа удар только один раз и только в определенной зоне
|
› Пятница
› 07.10.2011
› 17:28
› Сообщение #
Интересует вот какой момент.
Возьмем массив юнитов _t = [t1,t2,t3,t4]. Команда count _t вернет количество юнитов в этом массиве. Вопрос первый: команда возвращает количество вне зависимости от живых/убитых в этом массиве? И второй вопрос, вытекающий из первого, можно как то быстро определить число живых юнитов из массива не прибегая к методу перебора каждого с помощью select'а? У меня получился только такой вариант: +++++++++ _i = 0 _n = 5 #start _tel = [tel1,tel2,tel3,tel4,tel5] _al = _tel select _i ?!(alive _al): _n = _n - 1 _i = _i + 1 ?(_n < 3): goto "end" ?(_i > 5): _i = 0; _n = 5 ~1 goto "start" #end hint "gggggggggggggggg" +++++++ может быть есть более простой и красивый способ? Сообщение отредактировал Kaskad_B - Пятница, 07.10.2011, 17:29
|
› Пятница
› 07.10.2011
› 17:47
› Сообщение #
_n = {alive _x} count [t1,t2,t3,t4]
или _n = {alive _x} count _tel |
› Суббота
› 08.10.2011
› 17:59
› Сообщение #
Спасибо тебе большое Слон за ответы. Почитал тему, отвечаешь практически всем, стараешься объяснить.. Хорошо, что есть такие люди.
Добавлено (08.10.2011, 17:59) |
› Суббота
› 08.10.2011
› 18:59
› Сообщение #
Quote (Kaskad_B) К примеру есть массив юнитов _ot, каким образом каждого из них заставить посмотреть(или совершить иное действие) на игрока? Я пишу: {_x} dowatch player foreach _ot "_x" dowatch player foreach _ot "_x dowatch player" ForEach _ot Но ни один вариант не работает. И в каких случаях в скриптах надо использовать квадратные, а в каких фигурные скобки? Правильно будет {_x "действие"}ForEach _ot; Например: {_x dowatch player;}ForEach _ot; Сообщение отредактировал DAP5000 - Суббота, 08.10.2011, 19:00
|
› Суббота
› 08.10.2011
› 19:21
› Сообщение #
В фигурных скобках содержится исполняемый код
{одна; или; несколько команд} в случаях While { } do WaitUntil { }; { } count []; перед закрывающей скобкой должно находится условие (логическое выражение) While { код; а > 10 } do WaitUntil { код; alive Player }; { код; условие } count []; в квадратных - список элементов [массив] |
› Суббота
› 08.10.2011
› 20:09
› Сообщение #
Все понял, спасибо. Каким образом возможно отключить разговоры юнитов? Нашел аддон от Веб Пионера, но мне нужно без использования аддонов это реализовать.
Сообщение отредактировал Kaskad_B - Суббота, 08.10.2011, 21:41
|
› Воскресенье
› 09.10.2011
› 00:13
› Сообщение #
Quote Все понял, спасибо. Каким образом возможно отключить разговоры юнитов? Нашел аддон от Веб Пионера, но мне нужно без использования аддонов это реализовать. Точно не помню, вроде enableSentences false |
› Воскресенье
› 09.10.2011
› 08:05
› Сообщение #
|
› Воскресенье
› 09.10.2011
› 15:05
› Сообщение #
Спасибо, но это не то.
Enables radio transmissions to be heard and seen on screen. It does not affect KBTell conversations. Сказано на вики. Насколько я понял это радиопереговоры делает невидимыми. ++++ Все нашел, у веб-пионера, если кому то пригодится: {_x setVariable ["BIS_noCoreConversations", true];_x disableConversation true} foreach allunits; |
| |||
Чат сайта |