Как узнать длительность каста героя, для того чтобы сделать каст бар?

Принятый ответ

Советую ознакомится с этим
не важно луа там или нет, просто не используй РО, тебе не нужно читать каст тайм из абилки, и темболее из анимации героя, она может быть любой, совершенной любой у кого-то это 3 кадра у кого это 1,5 секунды, что ты собрался читать? под каждого героя делается индивидуально + настривается скорость анимации, забей на эти параметры ро вообще а особенно в канале "отключить прочие способности", это максимально дурной тон и дурная реализация с дёргающейся панелью приказов
Делаешь:
  1. Каст таймы героя по 0
  2. Каст в абилках по 0
  3. Регистрируешь каст, паузиш/ оглушаешь юнита, играешь время кастбара, если нужно, чтобы он был не прерываемый или отлавливаешь другие приказы - если каст прерываемый
  4. Триггерно проигрываешь анимацию каста, столько тебе нужно времени
Это самая гибкая и лучшая система.
Если у тебя бар 1 секунда, то ему можно задавать скорость анимации если это эффект на мемхаке или рефе, 1 скорость - 1 секунда. 0.5 скорость 2 сек, 5 скорости 0.2 сек, подгони себе формулу согласно анимации твоего каст бара.
Если жу у тебя каст бар юнит, то мои соболезнования, но есть SetUnitTimeScale, можно выкручивать даже в отрицательную сторону
0
19
3 года назад
0
Похожие вопросы:

ответ
У морфов есть параметр - неприрываемый это особое состояние юнита, которое нужно чтобы юнит докастовал заклинание в любом случае (если что то метаморфоза это 2 каста скилла, в альтернативную форму и обратно и у обоих есть время каста)
Ну собственно нам нужен скилл на основе морфа демон хантера "Перевоплощение"", начальная и конечная форма - дамми герой, остальные параметры в 0, суем этот скилл в руну а руну вручаем нужному герою и тут же отдаем приказ качтовать что то....
Результат - герой будет кастовать скилл, игнорируя всех и вся, иконки скиллов будут активны, но хоть закликайся.
Выйти из этого состояния можно только одним способом - выполнить любой морф как следует до конка, подходит для этого 'Aave' - Avenger form (морф сфинкса)
ответ
SamuraiKing:
есть вариант попроще - изменить способность звездопада, чтобы звезды падали 1 раз, и за каждый нужный промежуток времени создавать дамми и приказывать кастовать
ответ
call SetCameraFieldForPlayer( GetOwningPlayer(GetEnumUnit()), CAMERA_FIELD_TARGET_DISTANCE, 5000.00, 3.00/*3 - время отдаления */ )
Камеру можно прикрепить к юниту-кастеру. Также можно настроить смещение камеры
local real angle = GetUnitFacing(unit)*bj_DEGTORAD //угол взгляда кастера - угол смещения
local real dist = 300//расстояние, на которое сместится камера.
call SetCameraTargetControllerNoZForPlayer(GetOwningPlayer(unit),unit, dist*Cos(angle), dist*Sin(angle), false)
ответ

Графика - Анимация: обратный ход броска и Графика - Анимация: точка броска - графическте составляющие, анима у юнитов проигрывается, и созданы для задержек. Для невидимого dummy-каста это и не нужно

если вам нужна пустышка, то таких есть есть несколько десятков. Но что вам нужно?
  1. чтобы не останавливался перед кастом, и шел дальше выполнять очередь приказов. но такое исключаем, вам же мгновенная нужна. к сожалению, такие абилки, требуют задержек. у меня есть список, но надо проверить CastTime = 0 будет работать на таких?
  2. а есть такие скилы: кастанул, и юнит применил (стремительность берсерк двойные кнопки щит и прочее) xgm.guru/p/blog-steal-nerves/ability4
  3. мб фреймы? вам же нужна кнопка?

0
8
3 года назад
0
Мемхаком читать из памяти, или писать все времена в хэштаблицу и из нее читать.
0
14
3 года назад
0
goodlyhero:
Мемхаком читать из памяти, или писать все времена в хэштаблицу и из нее читать.
спасибо, вот еще у бара длительность 1 секунда как с ней быть?
2
32
3 года назад
Отредактирован Берги
2
Советую ознакомится с этим
не важно луа там или нет, просто не используй РО, тебе не нужно читать каст тайм из абилки, и темболее из анимации героя, она может быть любой, совершенной любой у кого-то это 3 кадра у кого это 1,5 секунды, что ты собрался читать? под каждого героя делается индивидуально + настривается скорость анимации, забей на эти параметры ро вообще а особенно в канале "отключить прочие способности", это максимально дурной тон и дурная реализация с дёргающейся панелью приказов
Делаешь:
  1. Каст таймы героя по 0
  2. Каст в абилках по 0
  3. Регистрируешь каст, паузиш/ оглушаешь юнита, играешь время кастбара, если нужно, чтобы он был не прерываемый или отлавливаешь другие приказы - если каст прерываемый
  4. Триггерно проигрываешь анимацию каста, столько тебе нужно времени
Это самая гибкая и лучшая система.
Если у тебя бар 1 секунда, то ему можно задавать скорость анимации если это эффект на мемхаке или рефе, 1 скорость - 1 секунда. 0.5 скорость 2 сек, 5 скорости 0.2 сек, подгони себе формулу согласно анимации твоего каст бара.
Если жу у тебя каст бар юнит, то мои соболезнования, но есть SetUnitTimeScale, можно выкручивать даже в отрицательную сторону
Принятый ответ
0
14
3 года назад
0
Bergi_Bear
thank you
0
8
3 года назад
Отредактирован goodlyhero
0
Насколько я понимаю, GetUnitAbilityCastTime вернет время, в течении которого юнит будет стоять и ничего не делать, после чего начнет анимацию каста, а GetUnitAbilityCastPoint - вернет время, после начала анимации каста, через которое он абилку таки докастует.
0
14
3 года назад
0
goodlyhero:
Насколько я понимаю, GetUnitAbilityCastTime вернет время, в течении которого юнит будет стоять и ничего не делать, после чего начнет анимацию каста, а GetUnitAbilityCastPoint - вернет время, после начала анимации каста, через которое он абилку таки докастует.
это на мемхаке?
0
8
3 года назад
0
это на мемхаке?
Да, но может в рефорже что-то такое тоже есть.
0
14
3 года назад
0
goodlyhero:
это на мемхаке?
Да, но может в рефорже что-то такое тоже есть.
я в 1.26а
0
27
3 года назад
0
Гуванч, как ты собираешься делать кастбар без фреймов, которые только на мх?)
3
32
3 года назад
3
rsfghd, ну текст таги еще и моделька спецэффекта есть, типа каст бар.
0
27
3 года назад
0
quq_CCCP, текстагом некрасиво получится, но моделькой да, протупил
Чтобы оставить комментарий, пожалуйста, войдите на сайт.