|
|
Модератор форума: Slon |
Форум РЕДАКТОР - ArmA 2 Operation Arrowhead Скрипты Вылет подмоги (Помощь при нападении на группу) |
Вылет подмоги |
› Вторник
› 09.04.2013
› 19:58
› Сообщение #
Всё сделал кроме одного, как передать в скрипт место гибели бота, [что сюда добавить?] execVM "script.sqf", и как в скрипте эти координаты прилепить к вейпоинту wp = Gr1 addWaipoin[что здесь?, что здесь?]
Это в инете бота которого должны убить Код this addEventHandler["killed",{ [this]execVM "killed.sqf"; }]; Это скрипт , вторая группа садится в верт, но не летит, так как нет следующей точки, то есть место гибели первого бота Код (units Grp_Otr) joinSilent Gr_M1 Grp_otr = Gr_M1; _unit = _this; wp = Grp_otr addWaypoint[_unit,5]; wp setWaypointType "DESTROY" wp setWaypointBehaviour "COMBAT" wp setWaypointSpeed "LIMITED" что не правиль , в чём ошибка ??? Подскажите пожалуйста. Сообщение отредактировал smcrim - Вторник, 09.04.2013, 23:04
|
› Среда
› 10.04.2013
› 07:46
› Сообщение #
wp setWaypointType "DESTROY"
wp setWaypointBehaviour "COMBAT" wp setWaypointSpeed "LIMITED" Ну, во-первых, правильно должны быть написаны команды настроек вейпа: Правильно писать нужно так: [Группа, номер вейпоинта] setWaypointType "DESTROY"; Понял в чём ошибка? Пиши так: [Группа (ну как ты её там назвал), 5] setWaypointType "DESTROY"; То же самое и с теми двумя командами. Ещё ошибка, так не пишется, надо писать вот так: wp = group Имя командира отряда addWaypoint [position _unit,5]; Сообщение отредактировал Dim@s535 - Среда, 10.04.2013, 08:10
|
› Среда
› 10.04.2013
› 19:03
› Сообщение #
Спасибо огромное , очень помог, если можно только ещё объясни position,5 вот эта пятёрка это номер вейпоинта или диаметр действия?
Код (units Grp_Otr) joinSilent Gr_M1 Grp_otr = Gr_M1; _pos = _this select 4; wp = group Cmdhel1 addWaypoint[_pos,3]; [Grp_otr,3] setWaypointType "DESTROY" Всё правильно ? Добавлено (10.04.2013, 19:03) --------------------------------------------- Вроде верт взлетел и грохнул всех врагов в точке гибели бота, а как отсленить что рядом больше нет врагов ? ну или как подобное реализуется в арме ? Наверное нужно цели отслеживать, типа если чувак схоронился и не стрелял то и найти его не должны, вообщем как отследить то что верт не видит более целей ? Сообщение отредактировал smcrim - Среда, 10.04.2013, 19:20
|
› Четверг
› 11.04.2013
› 07:41
› Сообщение #
Grp_otr = Gr_M1;
У меня вопрос к названию, выделенному красным цветом. Это созданная динамически группа, или ты создавал её через редактор? И второе, цифра после позиции - это радиус вейпа. К вейпоинту придираться не буду, всё правильно, а проверку можно сделать триггером, просто создавай триггер динамически (через скрипт), а после ставишь его активацию (тоже в скрипте) на сторону врага, а условие ставь на отсутствие, а потом синхронизируй его со своим вейпом, и, когда триггер отследит отсутствие врага и активируется, а после вертолёту добавится вейп. Облегчу тебе задачу, скину пару ссылок, которые помогут тебе создать и настроить триггер через скрипт: http://community.bistudio.com/wiki/createTrigger - создание триггера. http://community.bistudio.com/wiki/setTriggerArea - установка радиуса триггера. http://community.bistudio.com/wiki/setTriggerActivation - настройка активации триггера. http://community.bistudio.com/wiki/synchronizeTrigger - синхронизация триггера с вейпоинтом. Если не понятно тогда я напишу сразу пример написания: _trigger1 = createTrigger ["EmptyDetector", getMarkerPos "Твой маркер"]; _trigger1 setTriggerArea [50, 50, 0, false]; _trigger1 setTriggerActivation ["EAST", "NOT PRESENT", false]; _trigger1 synchronizeTrigger [[_Grp_Otr, 3]]; Если не понял, что, где и как, то сейчас я всё растолкую: _trigger1 - это название триггера. "EmptyDetector" - это тип триггера, менять его не рекомендую. getMarkerPos "Твой маркер" - ну здесь всё понятно, триггер создаётся там, где ты поставишь свой маркер. setTriggerArea [Радиус (Высота), Радиус (Ширина), Угол в градусах, ну а здесь выбор формы триггера - false значит что он круглый, а true означает что он квадратный. setTriggerActivation ["Сторона,которая активирует триггер", "Условие активации (присутствует или отсутствует)", повторяется триггер или нет, false - нет, true - да. synchronizeTrigger [[_Твоя группа, номер вейпа твоей группы]]; Вот и всё, надеюсь ты понял, если что-то не получается, я помогу. Сообщение отредактировал Dim@s535 - Четверг, 11.04.2013, 07:46
|
› Пятница
› 12.04.2013
› 14:06
› Сообщение #
Номер вейпа ? если значение после pos это радиус вейпа то могу предположить что арма сама щитает количество вейпов для каждого отряда или юнита? Да а пляски с названием отряда, это взято из мануала товарища слона про несколько маршрутов для одной группы.
Сообщение отредактировал smcrim - Пятница, 12.04.2013, 14:07
|
› Пятница
› 12.04.2013
› 14:16
› Сообщение #
Цитата Номер вейпа ? если значение после pos это радиус вейпа то могу предположить что арма сама щитает количество вейпов для каждого отряда или юнита? Да, она сама высчитывает номер вейпа. Цитата Да а пляски с названием отряда, это взято из мануала товарища слона про несколько маршрутов для одной группы. А здесь я не понял. Сообщение отредактировал Dim@s535 - Пятница, 12.04.2013, 14:17
|
› Пятница
› 12.04.2013
› 15:44
› Сообщение #
Отряд был создан в редакторе, ему был проложен маршрут и затем отряд удалён в инит "deleteVehicle" при старте миссии, но маршрут сохраняется , затем другая группа созданная рядом стоит на месте , в момент убийства бота к ней привязывается маршрут той самой уже не существующей группы и к нему добовляется вейп места убийстка бота.
У меня тоже возник вопрос, как я могу синхронизировать тригер, если в отряде 10 ботов и каждый при смерти добавляет верту ещё как минимум 1 вейп, сейчас у меня генерируются на каждое убийство 3 вейпа ? |
› Суббота
› 13.04.2013
› 06:20
› Сообщение #
Так надо и группу вместе с юнитами удалить командой deleteGroup *Название группы без кавычек*.
Цитата как я могу синхронизировать тригер Синхронизировать? С чем? Синхронизация возможна только с вейпоинтами командой sychronyzeTrigger [*группа*, номер вейпа]; Цитата У меня тоже возник вопрос, как я могу синхронизировать тригер, если в отряде 10 ботов и каждый при смерти добавляет верту ещё как минимум 1 вейп, сейчас у меня генерируются на каждое убийство 3 вейпа ? Ставишь триггер, в условие пишешь (! Alive *Имя солдата*) or (! Alive *Имя солдата) и т.д для всех солдат. А в активации пишешь group Heli addWaypoint [*Позиция*, *Радиус*]; В настройках триггера повтор ставишь на многократный, и всё, при смерти одного из солдат вертолёту будет создан вейп. Сообщение отредактировал Dim@s535 - Суббота, 13.04.2013, 06:24
|
| |||
| |||
Чат сайта |