Мне нужно обездвижить юнита триггером, но так, чтобы юнит смог поворачиваться. Способность ловчий не подходит, так как времени обездвиживания заранее не известно.

quq_CCCP, игровые константы и поменять можно, не раз уже так делал. Можно ставить скорость, равную 1, самый простой вариант.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
5
Ну запомни его координаты X и Y и постоянно возвращай, если они незначительно изменились...
32
call SetUnitPropWindow( targ, 0.00 )
не даст ходить юниту, но он сможет крутится.
потом чтобы вернуть все как было:
SetUnitPropWindow( GetUnitDefaultPropWindow( targ ) * bj_DEGTORAD )
Обязательно bj_DEGTORAD ибо сдвиг окна хоть и указан в ро в градусах, устанавливать его в SetUnitPrprWindow нужно в Радианах, иначе начнется треш и угар.
Ну или сохраняй в переменную сдвиг окна, а затем устанавливай нужное значение.
19
Триггерно скорость меняй на 0, а потом возвращай, либо стандартную, либо заранее записывай в переменную его скорость, и потом считывай с переменной.
Правда, могут быть баги, если юнит сможет в процессе стояния увеличить свою скорость. В таком случае, попробуй способность предмета, дающую -522 скорости.
А, если после смены скорости, юнит не сможет крутиться, в анимации ему скорость поворота установи(либо, опять же, его стандартную запиши в переменную, а после смены скорости, дай скорость поворота)
32
Триггерно скорость меняй на 0, а потом возвращай, либо стандартную, либо заранее записывай в переменную его скорость, и потом считывай с переменной.
Правда, могут быть баги, если юнит сможет в процессе стояния увеличить свою скорость. В таком случае, попробуй способность предмета, дающую -522 скорости.
А, если после смены скорости, юнит не сможет крутиться, в анимации ему скорость поворота установи(либо, опять же, его стандартную запиши в переменную, а после смены скорости, дай скорость поворота)
Тупиковый вариант, нельзя поставить юниту скорость 0, константно для юнитов 0 это 180 мс, хоть 10000% замедления делай, меньше не опустится как и выше 522 нельзя.
Сменить скорость с какого то значения в 0 можно только морфом юнита, морфы не самое лучшее решение особенно для героев.
5
После добавления call SetUnitPropWindow( targ, 0.00 ), карта перестала загружаться( просто вылетает в главное меню).
18
quq_CCCP, игровые константы и поменять можно, не раз уже так делал. Можно ставить скорость, равную 1, самый простой вариант.
Принятый ответ
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.