Подскажите функцию для проигрывания анимки в обратную сторону? Всё никак не найду

Nemezid:
DarkLigthing, что-то не выходит. Пробую в reforged, если что
Вот карта пример, здание будет постепенно возвращаться к началу строительства. (Reforged)
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
15
call SetUnitTimeScale( GetTriggerUnit(), -1 )
При этом анимация пойдёт обратным ходом с текущего кадра.
15
Nemezid:
DarkLigthing, что-то не выходит. Пробую в reforged, если что
Вот карта пример, здание будет постепенно возвращаться к началу строительства. (Reforged)
Загруженные файлы
Принятый ответ
15
DarkLigthing, благодарю!

DarkLigthing, с луа норм, а вот на жассе всё равно не выходит
15
Nemezid:
DarkLigthing, с луа норм, а вот на жассе всё равно не выходит
Как это, вот тоже самое только на jass.
Ты просто что-то делаешь не так... Давай подробнее что и как происходит?
Загруженные файлы
15
DarkLigthing, а эту карту даже затестить не даёт. Странно

Ты просто что-то делаешь не так... Давай подробнее что и как происходит?
Я пробую вставить скрип. Всё стандартненько - назначаю переменную на юнита u, юзаю анимку смерти у юнита u. Потом скрипт call SetUnitTimeScale(u,-1). Юнит начинает заново просто stand. Ща покажу. Кст почему у тебя там -5? Это влияет?

DarkLigthing, а эту карту даже затестить не даёт. Странно
Пересохранил, пошло

Кст почему у тебя там -5? Это влияет?
на скорость, видимо

Хм. Ничего не поменялось, но воссоздав сейчас свой триггер, я обнаружил, что всё работает
Загруженные файлы
15
Nemezid:
-5 это множитель скорости воспроизведения анимации. Кстати, чтобы вернуть проигрывание анимаций в нормальный порядок нужно положительное число. 1 это дефорлт как ты понимаешь. 1 это 100%, 2 - 200% и т д
Так же можно и дробные числа вводить:
Загруженные файлы
15
DarkLigthing, спасибо за инфу, полезно.

DarkLigthing, вот в таком формате не срабатывает. Анимка вообще не воспроизводится. Что не так?
Загруженные файлы
38
Рандом в событии посчитается 1 раз при запуске)
15
ScorpioT1000, почему?
А анимка задом почему не срабатывает таким образом?

DarkLigthing, методом тыка обнаружил, что срабатывает только при инициализации, но не работает по таймеру или если запускать триггер триггерно
28
почему?
Регистрация события произойдёт во время инициализации карты, где и будет получен период.
16
с какой версии это вообще поддерживается?
38
Чтобы сделать правильно, тебе надо создать периодический таймер с периодом в наибольший общий делитель c, от исходных периодов a и b (7 и 12).
В данном случае это 1. Завести переменную-счетчик, суммируя к нему c каждое выполнение. И выполнять действия только в случае, если остаток от деления счетчика на max(a,b) = 12 будет от 0 до (b - a) = 5
local int c = 1
local int a = 7
local int b = 12
udg_counter1 = udg_counter1 + c
if(ModuloInteger(udg_counter1, max(a,b)) <= (b-a)) {
  // ...
}
Для общего случая с любыми переменными в реальном времени можно поискать код здесь.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.