Перейти к содержимому


Фотография

Скрипт зоны ЗРК


Лучший Ответ Schatten , 27 December 2018 - 16:18

nixson22, я бы использовал триггеры, поскольку для них можно задать, в течение какого времени должно выполняться условие активации:

{
    _trigger = createTrigger ["EmptyDetector", getMarkerPos _x, false];

    _trigger triggerAttachVehicle [f18];

    _trigger setTriggerActivation ["VEHICLE", "PRESENT", true];
    _trigger setTriggerArea ((getMarkerSize _x) + [markerDir _x] + [(markerShape _x) == "RECTANGLE"]);
    _trigger setTriggerStatements [
        "this and {((getPosATL (thisList select 0)) select 2) > 100}",
        "(thisList select 0) setDamage 1;",
        ""
    ];
    _trigger setTriggerTimeout [10, 10, 10, true];
} forEach MARKERS1;
Перейти к сообщению


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 OFFLINE   nixson22

nixson22

    Рядовой

  • Пользователи
  • 8 сообщений

Отправлено 27 December 2018 - 15:59

Помогите дописать условия 
 
f18 при нахождение в mk1 или mk2 или mk3 сбивается пво.
 


#define MARKERS1 ["mk1", "mk2", "mk3"]
 
while {true} do {
    if ((MARKERS1 findIf {f18 inArea _x}) >= 0) then {
        f18 setDamage 1;
    };
};
 
Но нужно дополнить, чтобы еще его высота (ATL) была выше чем 100 и он находился в зоне более 10 секунд.
По итогу он должен сбиваться только, если все три условия выполняются одновременно:
1: в зоне 
2: высота (ATL) выше чем 100 м.
3: в зоне более 10 секунд

 

 


  • 0

#2 OFFLINE   Schatten

Schatten

    Капитан

  • Пользователи
  • 1780 сообщений
  • Откуда:Тбилиси, Грузия

Отправлено 27 December 2018 - 16:18   Лучший Ответ

nixson22, я бы использовал триггеры, поскольку для них можно задать, в течение какого времени должно выполняться условие активации:

{
    _trigger = createTrigger ["EmptyDetector", getMarkerPos _x, false];

    _trigger triggerAttachVehicle [f18];

    _trigger setTriggerActivation ["VEHICLE", "PRESENT", true];
    _trigger setTriggerArea ((getMarkerSize _x) + [markerDir _x] + [(markerShape _x) == "RECTANGLE"]);
    _trigger setTriggerStatements [
        "this and {((getPosATL (thisList select 0)) select 2) > 100}",
        "(thisList select 0) setDamage 1;",
        ""
    ];
    _trigger setTriggerTimeout [10, 10, 10, true];
} forEach MARKERS1;

Сообщение отредактировал Schatten: 27 December 2018 - 18:22

  • 0

#3 OFFLINE   nixson22

nixson22

    Рядовой

  • Пользователи
  • 8 сообщений

Отправлено 28 December 2018 - 17:09

Schatten, спасибо


  • 0




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