ДУБЛЁР Posted December 12, 2022 Share Posted December 12, 2022 (edited) Всем, привет. Напишите, пожалуйста, кому не трудно, простенькие скрипты-примеры. Думаю, кто в этом разбирается - это пара пустяков. А меня ой как выручите))). 1. Пока игрок в триггерной зоне 1 - флаг поднят. При отсутствии игрока в зоне 1 - флаг убирается. 2. Пока игрок в триггерной зоне 1 ИЛИ в триггерной зоне 2 - флаг поднят. При отсутствии игрока в СРАЗУ ОБОИХ указанных зонах (нет в триггерной зоне 1 И нет в триггерной зоне 2) - флаг убирается. Edited December 12, 2022 by ДУБЛЁР Link to comment Share on other sites More sharing options...
ED Team SL PAK Posted December 12, 2022 ED Team Share Posted December 12, 2022 1 час назад, ДУБЛЁР сказал: 1. Пока игрок в триггерной зоне 1 - флаг поднят. При отсутствии игрока в зоне 1 - флаг убирается. 2. Пока игрок в триггерной зоне 1 ИЛИ в триггерной зоне 2 - флаг поднят. При отсутствии игрока в СРАЗУ ОБОИХ указанных зонах (нет в триггерной зоне 1 И нет в триггерной зоне 2) - флаг убирается. ПОВТОРЯЮЩИЕСЯ триггеры (2 шт.): 1. условия - флаг 1 ложен, игрок в зоне 1 [или] условия - флаг 1 ложен, игрок в зоне 2 действие: флаг 1 установить. 2. условие - флаг 1 истинен, игрок вне зоны 1, игрок вне зоны 2 действие: флаг 1 убрать Link to comment Share on other sites More sharing options...
Akavoy Posted December 12, 2022 Share Posted December 12, 2022 Здравствуйте. Начал осваивать редактор, есть правило - "ГРАНИЧНОЕ УСЛОВИЕ срабатывает один раз каждый раз при попадании юнита в зону." А мне нужно наоборот, чтобы триггер срабатывал, если объект (например, самолет игрока) вышел из зоны. Будет ли правильно работать этот триггер в таком случае? Link to comment Share on other sites More sharing options...
ДУБЛЁР Posted December 12, 2022 Share Posted December 12, 2022 27 минут назад, SL PAK сказал: ПОВТОРЯЮЩИЕСЯ триггеры (2 шт.): SL PAK, спасибо. Изначально так и было реализовано. Но когда количество проверяемых условий только для одного триггера около 20-30 шт для поднятия одного какого-то флага… И для снятия этого флага мне нужно в отдельном триггере вбивать столько же условий, но с противоположным знаком, при этом ничего не упустив из виду, не накосячив…вот здесь я и вспомнил про скрипты: забил один раз свою кучу условий, и пусть скрипт сам следит за их выполнением. Простые примеры я привёл для того, чтобы было понятнее, какая логика мне нужна. Link to comment Share on other sites More sharing options...
ED Team SL PAK Posted December 12, 2022 ED Team Share Posted December 12, 2022 1 час назад, Akavoy сказал: Здравствуйте. Начал осваивать редактор, есть правило - "ГРАНИЧНОЕ УСЛОВИЕ срабатывает один раз каждый раз при попадании юнита в зону." А мне нужно наоборот, чтобы триггер срабатывал, если объект (например, самолет игрока) вышел из зоны. Будет ли правильно работать этот триггер в таком случае? Да, условие граничного триггера проверяется при каждом пересечении границы зоны. И на вход и на выход. 1 Link to comment Share on other sites More sharing options...
MagicRiggs Posted December 14, 2022 Share Posted December 14, 2022 Доброго времени суток. Помогите, пожалуйста, понять, что пропускаю или не учитываю при работе с функциями на создание и удаление пунктов меню. Триггером "Старт Миссии", задаю действие "Выполнить скрипт". Скриптом создаю пару пунктов в меню F10, а так же вкладываю в них подпункты. local A = missionCommands.addSubMenu('Колонны') local A1 = missionCommands.addCommand('Одна колонна', A,function() trigger.action.setUserFlag('C1',1) end) local A2 = missionCommands.addCommand('Две колонны', A,function() trigger.action.setUserFlag('C1',2) end) local B = missionCommands.addSubMenu('Задания') local B1 = missionCommands.addCommand('Миссия 1', B,function() trigger.action.setUserFlag('M1',1) end) Меню создается как и задумано. При выполнении условий, подпункты первого пункта удаляются функциями ниже, но подпункт второго пункта не удаляется... missionCommands.removeItem({['A'] = 'Колонны', ['A1'] = 'Одна колонна'}) missionCommands.removeItem({['A'] = 'Колонны', ['A2'] = 'Две колонны'}) missionCommands.removeItem({['B'] = 'Задания', ['B1'] = 'Миссия 1'}) Link to comment Share on other sites More sharing options...
Twantick Posted December 15, 2022 Share Posted December 15, 2022 Подскажите, а в редакторе есть простая клавиша "отменить последнее действие" или хоткей какой-нибудь для этого? Типа ctrl+z. Просмотрел мануал, но не нашел такого. Link to comment Share on other sites More sharing options...
ED Team SL PAK Posted December 15, 2022 ED Team Share Posted December 15, 2022 1 час назад, Twantick сказал: Подскажите, а в редакторе есть простая клавиша "отменить последнее действие" Нет отмены действия. В настройках РАЗНЫЕ можно включить автосохранение в редакторе, например каждую минуту. Загрузка сохранений в меню редактора ФАЙЛ - ОТКАТИТЬ. Link to comment Share on other sites More sharing options...
Akavoy Posted December 17, 2022 Share Posted December 17, 2022 Как сделать, чтобы в брифинге в разделе "ИЗВЕСТНЫЕ УГРОЗЫ" не перечислялись юниты противника, а было указано - "нет данных", "угрозы неизвестны", или вообще ничего не было? Link to comment Share on other sites More sharing options...
ED Team SL PAK Posted December 17, 2022 ED Team Share Posted December 17, 2022 28 минут назад, Akavoy сказал: Как сделать, чтобы в брифинге в разделе "ИЗВЕСТНЫЕ УГРОЗЫ" не перечислялись юниты противника, а было указано - "нет данных", "угрозы неизвестны", или вообще ничего не было? Нужно скрыть юниты на карте, галочкой на панели юнита или в списке юнитов двойным кликом в полях видимости. В списке юнитов можно поставить галочку "показать всех" чтобы видеть в редакторе все срытые юниты и редактировать их. На игровой процесс она не влияет. 1 1 Link to comment Share on other sites More sharing options...
Kmet Posted December 18, 2022 Share Posted December 18, 2022 Кто подскажет.Как сделать чтобы маркерный дым не пропадал по прошествии определенного времени?Отправлено с моего Redmi Note 9 Pro через Tapatalk Link to comment Share on other sites More sharing options...
Twantick Posted December 21, 2022 Share Posted December 21, 2022 В 15.12.2022 в 17:57, SL PAK сказал: Нет отмены действия. В настройках РАЗНЫЕ можно включить автосохранение в редакторе, например каждую минуту. Загрузка сохранений в меню редактора ФАЙЛ - ОТКАТИТЬ. Ну меня больше не сохранение волнует. Часто случается - делаешь вэйпоинты, чет там редактируешь добавляешь кучу всего, потом случайно клацаешь del промахнувшись по юниту или группе и эта группа со всем удаляется. Link to comment Share on other sites More sharing options...
Akavoy Posted December 24, 2022 Share Posted December 24, 2022 Доброго времени. Подскажите, как поставить флаг, подтверждающий, что десант на борту? Link to comment Share on other sites More sharing options...
ED Team SL PAK Posted December 24, 2022 ED Team Share Posted December 24, 2022 1 час назад, Akavoy сказал: Доброго времени. Подскажите, как поставить флаг, подтверждающий, что десант на борту? У десанта, чтобы грузился, в расширенных действиях ППМ обычно создают задачу "Погрузка в транспорт". Там же под задачей нужно создать команду "Выполнить скрипт" и в окне для скрипта написать скрипт поднимающий флаг, например флаг 1: trigger.action.setUserFlag(1, true) После того как десантники выполнять первую задачу "Погрузка в транспорт" сработает команда поднимающая флаг. Таким же образом можно поднимать флаг после любой задачи созданной в расширенных действиях. Например артиллерии выполнить стрельбу по точке некоторым количеством снарядов. Отстрелявшись, артиллеристы поднимут флаг. Или часто этот скрипт ставят в расширенных действиях ППМ сверху, чтобы юнит поднял флаг пройдя этот ППМ. 2 Link to comment Share on other sites More sharing options...
MagicRiggs Posted December 31, 2022 Share Posted December 31, 2022 С Наступающим! Подскажите, пожалуйста, а каким скриптом, в расширенных действиях ППМ, можно скомандовать группе появится, если такая группа создана с задержкой активации? Link to comment Share on other sites More sharing options...
ED Team SL PAK Posted December 31, 2022 ED Team Share Posted December 31, 2022 49 минут назад, MagicRiggs сказал: каким скриптом, в расширенных действиях ППМ, можно скомандовать группе появится Праздник к нам приходит. Активация группы с именем 101: trigger.action.activateGroup(Group.getByName('101')) 1 Link to comment Share on other sites More sharing options...
Akavoy Posted January 3, 2023 Share Posted January 3, 2023 Подскажите, пожалуйста, как поставить флаг, если объект (вертолет) сел на палубу корабля? Если корабль неподвижен, все просто - ставишь кружок или прямоугольник на нужное место, условия - скорость ниже единицы, высота такая-то (высота палубы). А как быть, если корабль движется? Зона -только круг, привязанный к центру корабля. Здесь параметры высоты и скорости уже не помогут, ведь вертолет может быть не на палубе. Link to comment Share on other sites More sharing options...
ED Team SL PAK Posted January 3, 2023 ED Team Share Posted January 3, 2023 2 часа назад, Akavoy сказал: Подскажите, пожалуйста, как поставить флаг, если объект (вертолет) сел на палубу корабля? Это нужен скрипт отслеживающий событие посадка. Тут были сообщения про это и я дублировал их там. Код не мой, пояснять по нему особо не могу. Сам я пытался упростить этот код чтобы фиксировалась любая посадка игрока на полосу или площадку. Не помню работает ли это как надо, так как писал это по наитию. Не программист. myHandler = {} function myHandler:onEvent(event) local unit = event.initiator if event.id == world.event.S_EVENT_LAND and event.initiator == world.getPlayer() then trigger.action.setUserFlag(101, 1) end end world.addEventHandler(myHandler) Если нужно проверять не игрока, а поднимать флаг по любой посадке в миссии, то удалить проверку условия про игрока: and event.initiator == world.getPlayer(). Или вписать туда проверку нужного объекта (как это сделать - думать, смотря код по ссылке выше). 1 Link to comment Share on other sites More sharing options...
MagicRiggs Posted January 4, 2023 Share Posted January 4, 2023 В 31.12.2022 в 14:58, SL PAK сказал: Праздник к нам приходит. Активация группы с именем 101: trigger.action.activateGroup(Group.getByName('101')) Спасибо! Link to comment Share on other sites More sharing options...
tepl Posted January 7, 2023 Share Posted January 7, 2023 Подскажите, как заставить немецкий шнельбот S130 атаковать торпедами корабли. Ставлю ему основную задачу "атаковать группу". Выбирал вооружение и "авто" и "торпеды" - никакого эффекта. они просто плывут по вейпоинтам, стреляя мелкими пушками. "Рыцарь онлайна - капризный слепыш" Ryzen 5800x3d, 64Gb ddr4 3600Mhz Cl16, RTX3080 12Gb, Acer Predator XB271HK 2160p Link to comment Share on other sites More sharing options...
303 Posted January 9, 2023 Share Posted January 9, 2023 Господа Дано : 96 наземных групп Ground-1...96 с задержкой активации. В триггерах активации каждой группы, каждые 900 секунд с шансом в 50%. Вопрос : Можно ли 96 триггеров оптимизировать в один скрипт ? Спасибо Link to comment Share on other sites More sharing options...
Blackfyre Posted January 9, 2023 Share Posted January 9, 2023 2 hours ago, 303 said: Господа Дано : 96 наземных групп Ground-1...96 с задержкой активации. В триггерах активации каждой группы, каждые 900 секунд с шансом в 50%. Вопрос : Можно ли 96 триггеров оптимизировать в один скрипт ? Спасибо Короткий ответ - можно, я только не уверен, что будет быстрее, но что понятнее и гибче - точно. Для это понадобится собрать все эти группы в таблицу, потом запланировать функцию, которая будет выполняться каждые 900 секунд и бегать циклом по этой таблице и активировать с шансом лежашие там группы. Группы можно добавлять руками (мне было бы лень), можно придумать префикс в их названии и добалять все, которые его содержат. Получить их можно двумя способами: - через функцию coalition.getGroups - бегать циклом по таблице env.mission, что сложнее, но быстрее. С учетом, того что надо сделать один раз, скоростью я бы пренебрег. Планирование функций осуществляется методом timer.scheduleFunction. Верните короновирус в качестве главной проблемы, спать в маске буду, обещаю. Скрытый текст Hardware: AMD 5900x, 64Gb RAM@3200MHz, NVidia RTX3070 8Gb, Monitor 3440x1440(21:9), Samsung 980pro 1Tb NVMe SSD, VKB Gunfighter+MCGU, Virpil Throttle CM3, VKB T-Rudder, TrackIR. Link to comment Share on other sites More sharing options...
Роман А. Posted January 10, 2023 Share Posted January 10, 2023 (edited) Здравствуйте. Проблема в редакторе миссий с линией визирования ПАН. Выставил ПАН в метре от цели - всё равно пишет "Нет линии визирования". Помогите разобраться в чём дело. Spoiler Edited January 10, 2023 by Роман А. Link to comment Share on other sites More sharing options...
ED Team SL PAK Posted January 10, 2023 ED Team Share Posted January 10, 2023 21 минуту назад, Роман А. сказал: Проблема в редакторе миссий с линией визирования ПАН. Выставил ПАН в метре от цели - всё равно пишет "Нет линии визирования". Помогите разобраться в чём дело. Проверил, визирует ПАН исправно. При отсутствии линии визирования в оранжевой строке должно указываться расстояние на котором возможно визирование. У вас этого нет. Используете старую версию симулятора? Link to comment Share on other sites More sharing options...
Роман А. Posted January 10, 2023 Share Posted January 10, 2023 (edited) 2 hours ago, SL PAK said: Используете старую версию симулятора? Прикрепил скриншот, я так понимаю последняя. Если переместить дальше, то показывает что расстояние "> 3m" или как-то так. Если использую БПЛА как ПАН, то более менее работает (может вдруг отключить лазер в самый ответственный момент) Spoiler Edited January 10, 2023 by Роман А. Link to comment Share on other sites More sharing options...
Recommended Posts