Не выйдет, нельзя в одну строку, только разбивать на функции (как уже сказал quq_CCCP)
Стандартный вейт это как раз попытка близзард сделать таймер "в одну строку". Там сначала запускается таймер, а затем цикл через TriggerSleepAction каждые 0.1 сек. проверяет не истек ли таймер.
И насколько я помню TriggerSleepAction отсчитывает время даже когда игра на паузе (например в меню), что может вызвать странности
substring достает из строки строку, числа это номера символов в начале и конце нужного куска строки (считая пробелы)
то есть substring("-swap 3", 6,8) даст 3, а substring("-swap 3глабларгабрл", 4,9) даст "ap 3г"
Момент с порчей и миникартой оказался тем что там высота на уровне воды.
Но саму тень я все равно не могу убрать.
А все вопрос снимаю, это тень от здания
Попробовал сделать через динамическое создание/удаление декорации, но декорации с текстурой пути создаются строго по сетке, и движение выходит скачками
Посмотрел карту, GetLocalPlayer не нашел, но использовать штуки типа Triggering Unit после вейтов (тем более по 20 сек.) плохая идея, заноси их в локальные переменные. Triggering Unit это по сути обычная переменная, и она меняется каждый раз когда срабатывает какой-нибудь триггер, так что после ожидания там может оказаться совсем не то что было до ожидания.
глобальный массив не нужен. сохраняй группу в хэш-таблицу на хэндл героя, потом загружай ее когда надо. у каждого героя будет своя группа
вот пример, молот бурь съедает юнита а удар грома ставит всех юнитов обратно
» WarCraft 3 / Появление монстров в той же точке
» WarCraft 3 / Расприделение работы тригеров
Ред. biridius
» WarCraft 3 / Движение декорации или альтернатива
Ред. biridius
» WarCraft 3 / Расприделение работы тригеров
» WarCraft 3 / Смена влоделица боевая единица
Ред. biridius
» WarCraft 3 / Как менять Wait на Таймеры?
call DestroyTimer(GetExpiredTimer())
call UnitAddItemByIdSwapped('I01I', U_C)
endfunction
...
call SetUnitAnimation( U_C, "stand" )
call TimerStart(CreateTimer(), 0.3, false, function AfterWait)
...
Ред. biridius
» WarCraft 3 / Как менять Wait на Таймеры?
И насколько я помню TriggerSleepAction отсчитывает время даже когда игра на паузе (например в меню), что может вызвать странности
Ред. biridius
» WarCraft 3 / работа со стрингом гуи
то есть substring("-swap 3", 6,8) даст 3, а substring("-swap 3глабларгабрл", 4,9) даст "ap 3г"
» WarCraft 3 / работа со стрингом гуи
6 потому что в строке "-swap" 5 символов, и далее будет число
Ред. biridius
» WarCraft 3 / тень из ничего
Но саму тень я все равно не могу убрать.
А все вопрос снимаю, это тень от здания
» WarCraft 3 / Движение декорации или альтернатива
» WarCraft 3 / Разрыв соединения
» WarCraft 3 / Оптимальная реализация хаванья (умнее названия не придумалось).
вот пример, молот бурь съедает юнита а удар грома ставит всех юнитов обратно
Ред. biridius
» WarCraft 3 / Как использовать большее типов ландшафта?
и надо будет перезапустить редактор после использования чтобы изменения вступили в силу
» WarCraft 3 / Как триггерно выгрузить юнита из транспорта?
» WarCraft 3 / Melee ИИ в определенное время ждёт у себя на базе
» WarCraft 3 / Send AI Command (атака/ожидание)
и подставлять это условие потом, там где атаки задаются
» WarCraft 3 / Постройка здания
» WarCraft 3 / Как дать юниту в руки меч?
Ред. biridius
» WarCraft 3 / ИИ юнитов
» WarCraft 3 / Карта из нескольких частей
» WarCraft 3 / Триггер на телепорт
» WarCraft 3 / Усреднить процентное соотношение хп юнитов
» WarCraft 3 / Проблемы с дамми юнитами
» WarCraft 3 / [jass] подработка