Есть триггер типа:
События: "здесь перечислено множество однотипных событий вида "Юнит вошёл в такой-то регион""
Действие: "поместить юнита в центр этого региона" - вот как это сделать?
"Триггерный регион" такого понятия нет. Отследить регион, в котором стоит юнит тоже не умею, не вижу в пользовательских триггерах такой возможности. Нужно именно GUI.
Конечно, можно по-тупому сделать индивидуальные триггеры под каждое из событий "юнит вошёл в такой-то регион", но это будет жесть, т.к. таких событий сотни в триггере.

Принятый ответ

Есть дурной, но надежный способ.
  1. помещаем все регионы в массив.
  2. когда срабатывает триггер, перебираем все регионы в цикле, пока не найдем тот, в котором находится юнит.
P.S. Низкая производительность и масса утечек гарантированы. По нормальному без Jass никак.
P.P.S. Еще можно триггерно создавать триггеры для каждого региона, но это тоже жесть когда есть нормальный способ.
0
26
10 лет назад
0
constant native GetTriggeringRegion takes nothing returns region
по другому - меняйте метод исполнения
0
28
10 лет назад
0
учи джасс
там есть триггерный регион
0
24
10 лет назад
Отредактирован prog
0
Есть дурной, но надежный способ.
  1. помещаем все регионы в массив.
  2. когда срабатывает триггер, перебираем все регионы в цикле, пока не найдем тот, в котором находится юнит.
P.S. Низкая производительность и масса утечек гарантированы. По нормальному без Jass никак.
P.P.S. Еще можно триггерно создавать триггеры для каждого региона, но это тоже жесть когда есть нормальный способ.
Принятый ответ
0
28
10 лет назад
0
prog, а если юнит находиться в нескольких сразу?
0
29
10 лет назад
0
nvc123, в любом случае работает по одному принципу, разве что нативка работает на уровне движка
0
28
10 лет назад
0
alexprey, нет
нативка возвращает регион в который вошёл только что
а перебор выдаёт все в которых находится юнит
0
29
10 лет назад
0
nvc123, а теперь угадай как он определяет в какой регион он вошел, чтобы вызвать триггер :D
0
28
10 лет назад
Отредактирован nvc123
0
alexprey, проверяет в каких регионах юнит сейчас и сравнивает это с результатами предыдущей проверки
если есть отличия то вызывает триггеры
а прог писал просто о переборе
без сравнений
и он писал что перебор не периодический а только при входе в регион тоесть вар всеравно выполняет перебор и сравнение
Чтобы оставить комментарий, пожалуйста, войдите на сайт.