В переборах нельзя использовать wait, ибо все эти переменные PickedUnit являются глобальными для всей карты, то есть такая переменная ОДНА на всю карту, и с каждым использованием функции перебора она перезаписывается.
Как ты можешь решить задачу здесь:
1 вариант - подождать изначально 3 сек а потом начать перебор и удалить ядовитое жало (но проблема будет в том, что удалится только у тех, кто остался в этом регионе)
2 вариант - сохрани юнита в переменную, потом подожди 3 сек (после перебора), и по своей переменной удаляй способку.
Совершенное не понимание как работают подобные вещи, во первых ты должен работать на гуи с группами и переменными, во вторых с таймерами и триггерами. Сначала вручаем абилку и помещяем в группу - юниты с абилкой, так же в Custom Value (как вариант) записываем 30, каждые 0.1 сек перебираем группу юнитов с абилкой, если кто то подох или custom value меньше 1, то удаляем абилку, иначе ставим custom value -1.
Очень громозко и неудобно, но увы это плата за гуи, на jass подобное делать куда проще.
Отредактирован konvan5
1 вариант - подождать изначально 3 сек а потом начать перебор и удалить ядовитое жало (но проблема будет в том, что удалится только у тех, кто остался в этом регионе)
2 вариант - сохрани юнита в переменную, потом подожди 3 сек (после перебора), и по своей переменной удаляй способку.
Очень громозко и неудобно, но увы это плата за гуи, на jass подобное делать куда проще.