Помощь с локальными переменными
Вчера познакомился с локальными переменными (по совету Maniac_91, xgm.guru/p/100/216500). Но до сих пор не могу до конца понять куда именно их надо вставлять. Особенно это касается ситуации, когда скилл состоит из нескольких триггеров.
В общем так.
Пытаюсь создать триггерный скилл, но используя локальные переменные, дабы избежать конфликтов с многократными использованием. Скилл работает так: герой выпускает сюрикен, который летит по прямой и достигнут определенной точки, исчезает. Урон скиллу я пока не добавлял, так как для начала мне следует понять как именно расставлять локальные переменные.
Скилл состоит из двух триггеров. Первый отвечает за постановку переменных и создание самого сюрикена, второй отвечает за полет сюрикена. Хоть убейся, но не могу понять - где ошибка. Так как когда используется второй такой же скилл во время того, пока действует первый ( то есть запускается второй сюрикен, пока первый еще в полете), все ломается. Первый летящий сюрикен встает, а второй продолжает лететь, не меняя при этом траекторию.
Заранее извиняюсь за, возможно, допущенную глупую ошибку, но, как я и сказал, мне важно понять, где же я накосячил.

Лучший ответ:
Локальные переменные нельзя использовать в GUI'шных "if then else", карта просто не запустится
Т.к если GUI'шные "if then else" перевести в jass, то будет функция с действиями триггера, а чуть выше функция с условиями этого же "if then else".
А в этом и прикол локальных переменных, их можно использовать только в пределах функции в которой они были вызваны (созданы).
И лучше начни писать на jass, он легкий, хоть и кажется сложным после GUI
К примеру такие задачи на GUI которые буквально голову ломают - на jass делаются достаточно легко и быстро
дабы избежать конфликтов с многократными использованием
это будет проблематично на GUI
Поэтому лучше не парить голову этим, а почитать эти материалы:



Просмотров: 117

UrsaBoss #1 - 1 неделю назад (отредактировано ) 0

Локальные переменные нельзя использовать в GUI'шных "if then else", карта просто не запустится
Т.к если GUI'шные "if then else" перевести в jass, то будет функция с действиями триггера, а чуть выше функция с условиями этого же "if then else".
А в этом и прикол локальных переменных, их можно использовать только в пределах функции в которой они были вызваны (созданы).
И лучше начни писать на jass, он легкий, хоть и кажется сложным после GUI
К примеру такие задачи на GUI которые буквально голову ломают - на jass делаются достаточно легко и быстро
дабы избежать конфликтов с многократными использованием
это будет проблематично на GUI
Поэтому лучше не парить голову этим, а почитать эти материалы:
8gabriel8 #2 - 1 неделю назад 0
По идее, если сильно хочется, то можно и на GUI сделать MUI, то есть использование несколькими юнитами одновременно. Скинь карту с триггером, чтобы его переделал для примера. Только, как и упомянули, правильнее было бы использовать jass, на GUI получится костыльно.
(если остался, приложи без локалок триггер)
Hate #3 - 1 неделю назад 0
изучайте как сделано, что бы делать муи на гуи вам нужно понять как работать с параллельными массивами
прикреплены файлы
Lillikon #4 - 1 неделю назад 0
8gabriel8:
По идее, если сильно хочется, то можно и на GUI сделать MUI, то есть использование несколькими юнитами одновременно. Скинь карту с триггером, чтобы его переделал для примера. Только, как и упомянули, правильнее было бы использовать jass, на GUI получится костыльно.
(если остался, приложи без локалок триггер)
Спасибо, но уже нет необходимости) Решил написать тот же скилл на jass. Только начал изучать его, щас бьюсь с таймерами и хэш-таблицами.