Немного предыстории: Я обычно пользуюсь гуи, поскольку они внешне удобнее, чем одноцветный с ужасным шрифтом JASS, однако когда речь идет о том, что на JASS это пару строк, а на гуи это куча муторных блоков кода, то естественно я перехожу CS на JASS, так вот сейчас этот случай!
В гуи нельзя использовать массивы и переменные в событиях (допустим регионы).
Возможно ли в JASS в событии использовать глобальную переменную (массив)?

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

Их просто нет в выборе в событиях, так что я не могу выбрать переменную в событии
Юнит входит в регион.
Вот о чем. Для работы с переменными, события вешаются на триггер в действиях другого триггера, например
Картинка
Но лучше на скрипты переходить, это да. В пару строк кода делается то, от чего правая рука кликать устанет, а она еще перед сном понадобится.
pAxsIs:
А что раньше происходит действия в триггерах, который срабатывают (во время события инициализация) или регистрация события? Подозреваю, что второе.
Порядок инициализации триггеров ты можешь определить вручную посредством ручного запуска действий триггеров Действие -> Триггер -> Run Trigger
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
28
5 лет назад
Отредактирован PT153
0
Событие, реагирующие на изменение переменной (real), есть. А проверить, работает ли оно с определённой ячейкой массив достаточно просто.
одноцветный с ужасным шрифтом JASS
У тебя TESH удалили?
0
17
5 лет назад
0
Никогда не испытывал таких проблем на гуи.
Да гуи, не даёт напрямую использовать некоторые особенности, по типу
Конкретная боевая единица - Damage Event, что легко лечится "костылём" из двух триггеров.
Ну а так - могу посоветовать Вурст - он куда удобнее Jass...
Насчёт региона - как-то так:
Но потом ручками в нужный регион добавить ячейки
Загруженные файлы
0
17
5 лет назад
0
А что конкретно не позволяет тебе использовать переменные в событиях GUI?
одноцветный с ужасным шрифтом JASS
У тебя нет подсветки синтаксиса, как будет выглядеть код в подходящем редакторе видно на скриншоте PyCCKuu_4eJl
0
8
5 лет назад
Отредактирован pAxsIs
0
GetLocalPlayer:
А что конкретно не позволяет тебе использовать переменные в событиях GUI?
Их просто нет в выборе в событиях, так что я не могу выбрать переменную в событии
Юнит входит в регион.
Картинки
PT153:
У тебя TESH удалили?
У меня вот так вот, но сейчас вопрос не про это
Картинки
PyCCKuu_4eJl:
Насчёт региона - как-то так:
В общем, на мой вопрос ответ: "На JASS возможно использовать массивы и переменные в событиях" - верно?
Загруженные файлы
0
28
5 лет назад
Отредактирован PT153
0
Их просто нет в выборе в событиях, так что я не могу выбрать переменную в событии
Какой редактор? JNPG и стандартный?
В стандартном region == rect, в JNPG это исправлено (вроде).
У меня вот так вот, но сейчас вопрос не про это
Либо у тебя стандартный редактор, либо у тебя удалён TESH, либо отключён.
pAxsIs:
На JASS возможно использовать массивы и переменные в событиях
Да, можно, но нужно понимать, что событие будет работать только для того значения, что было в переменной в момент регистрации события.
0
8
5 лет назад
Отредактирован pAxsIs
0
PT153:
У меня вот так вот, но сейчас вопрос не про это
Либо у тебя стандартный редактор, либо у тебя удалён TESH, либо отключён.
У меня стандартный редактор
Да, можно, но нужно понимать, что событие будет работать только для того значения, что было в переменной в момент регистрации события.
А что раньше происходит действия в триггерах, который срабатывают (во время события инициализация) или регистрация события? Подозреваю, что второе.
Если регистрация событий раньше, чем срабатывает код из триггеров, где события инициализация, то как можно прописать в массив регионов - существующие регионы (можно даже как константы), главное, чтобы потом можно было их использовать из ячеек в событиях.
0
30
5 лет назад
0
pAxsIs, вытащи из архива карты war3map.j, найди там функцию main и посмотри сам, будет полезно в будущем в любом случае

main вызывается самой первой в любом случае, если что.
5
17
5 лет назад
Отредактирован GetLocalPlayer
5
Их просто нет в выборе в событиях, так что я не могу выбрать переменную в событии
Юнит входит в регион.
Вот о чем. Для работы с переменными, события вешаются на триггер в действиях другого триггера, например
Картинка
Но лучше на скрипты переходить, это да. В пару строк кода делается то, от чего правая рука кликать устанет, а она еще перед сном понадобится.
pAxsIs:
А что раньше происходит действия в триггерах, который срабатывают (во время события инициализация) или регистрация события? Подозреваю, что второе.
Порядок инициализации триггеров ты можешь определить вручную посредством ручного запуска действий триггеров Действие -> Триггер -> Run Trigger
Загруженные файлы
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.