Есть такой триггер:
Юнит приводит способность в действие
в условии применяемая способность = 1
В действии:
Юнит добавить способность 1 цель способности
Вопрос такой, мне нужно спустя время удалить способность 1 юниту, который получил ее.
Как это можно осуществить?

Все получилось. Спасибо всем за помощь)
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
26
самый примитивный это использовать wait, но он работает неточно, и если будет несколько таких применений, начнутся оч инересные вещи, так что в другом случае учитесь работать с таймерами и параллельными массивами, хеш таблицами, локальными переменными, все есть в базе статей и тонна примеров в теме с заклинаниями на заказ
3
Hate:
самый примитивный это использовать wait, но он работает неточно, и если будет несколько таких применений, начнутся оч инересные вещи, так что в другом случае учитесь работать с таймерами и параллельными массивами, хеш таблицами, локальными переменными, все есть в базе статей и тонна примеров в теме с заклинаниями на заказ
Я ставил таймер, после прописывал - удалить способность 1 цель способность. Но ничего не вышло, как я понимаю, потому, что триггер через время не запоминает цель способности.
21
все верно, не запоминает
используй локальные переменные и сохраняй в них цель способности
как-то так xgm.guru/p/wc3/216678?postid=400696#comment3
у тебя офк не триггеринг сохранять надо а target of ability being cast
22
Likon, кидай скриншот своего триггера сюда
прикрепить файлы > потом "вставить ссылку на файл"
21
да всё правильно не сохраняется
создавай глобальную переменную unit и делай так:
Custom script: local unit u
set unit = Target unit of ability being cast
Боевая единица add нужную способность to unit
Custom script: set u = udg_unit
wait 2.00 seconds
Custom script: set udg_unit = u
Боевая единица Remove нужную способность from unit
Custom script set u = null
всё
всё будет действовать
это всё равно не идеально, т. к. вейт, но не сложно, тебе пока пойдет
3
ClotPh:
да всё правильно не сохраняется
создавай глобальную переменную unit и делай так:
Custom script: local unit u
set unit = Target unit of ability being cast
Боевая единица add нужную способность to unit
Custom script: set u = udg_unit
wait 2.00 seconds
Custom script: set udg_unit = u
Боевая единица Remove нужную способность from unit
Custom script set u = null
всё
всё будет действовать
это всё равно не идеально, т. к. вейт, но не сложно, тебе пока пойдет
У меня вылазят ошибки в кастом скрипт. Я в этом деле полный ноль. Создал переменную боевая единица, без массива и под название unit ну и дальше как ты писал.
28
Likon, скрины того что получилось и скрины ошибок
Likon:
Я в этом деле полный ноль
поэтому у нас есть куча статей которые помогут тебе стать про
3
nvc123:
Likon, скрины того что получилось и скрины ошибок
Likon:
Я в этом деле полный ноль
поэтому у нас есть куча статей которые помогут тебе стать про
Загруженные файлы
28
Likon, Custom script: local unit u это одна строка
set unit = Target unit of ability being cast это не кастом скрипт а действие
21
Не с Triggering unit удаляй, а с unit! Ты же unit из локальной переменной достаешь
Custom script: set u = null в конце не забудь
без него будет действовать но будет утечка
А вот это
Custom script: set u = udg_unit
Custom script: set udg_unit = u
вроде сделал правильно и где нужно
только проверь, нет ли лишних пробелов
ты пойми ты один раз такой шаблон запилишь потом всегда будешь им пользоваться и будет легче
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.