Столкнулся с тем, что кратковременная пауза прерывает более длительную(логично) и руинит тем самым некоторые спеллы. Если же делать станом, будет аналогичная ситуация, ведь таймер дебаффа будет меняться с каждым новым станом. Значит стоит делать кучу станов, и, соответственно, кучу даммиков? И каждому стану по куче левелов(допустим, даже если считать каждые 0.10, все равно будет довольно много) - не слишком ли тяжело выйдет?
Если ли вообще другие, более оптимальные способы?
Я заменил паузы станами, но тут новая проблема: способности не начинают откат из-за того, что кастер получает стан в тот же момент, когда только завершает каст. Что с этим делать?

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

Создать список "станящих" баффов, при потере баффа из этого списка проверять есть у юнита еще какой либо бафф из списка.
Если нет - снимать паузу, если есть - ничего не трогать.
0
15
8 лет назад
0
Создать список "станящих" баффов, при потере баффа из этого списка проверять есть у юнита еще какой либо бафф из списка.
Если нет - снимать паузу, если есть - ничего не трогать.
Принятый ответ
0
32
8 лет назад
0
Можно использовать магические сети и или одержимость для станов с регулируемой длительностью (пока на юните бафф он неподвижен, ну а триггерно проверяем если на юните бафф от 1 стана, то продлим время жизни даммику (время жизни делаем триггерно, а не дефолтно 1 коммандой).
Есть 1 большое НО
'Apos' possesion (rus - одержимость) - багнутая абилка, если цель заклинания и даммик умрут то вылетит фатальная ошибка, будьте осторожны используя одержимость в качесте оглушающей способности...
0
19
8 лет назад
0
quq_CCCP:
Можно использовать магические сети и или одержимость для станов с регулируемой длительностью (пока на юните бафф он неподвижен, ну а триггерно проверяем если на юните бафф от 1 стана, то продлим время жизни даммику (время жизни делаем триггерно, а не дефолтно 1 коммандой).
Есть 1 большое НО
'Apos' possesion (rus - одержимость) - багнутая абилка, если цель заклинания и даммик умрут то вылетит фатальная ошибка, будьте осторожны используя одержимость в качесте оглушающей способности...
Имеешь ввиду, ченнелинг спелл с 99999 длительностью? Но проще через реал в чат высчитать длительность спеллов... я так уже и сделал. Сложность вопроса больше в мультистане заключалась, ибо таймер баффа обнуляется, хотя с длительностью мы уже решили. Збс.
0
26
8 лет назад
Отредактирован Extremator
0
я кидаю в юнита стан с длительностью 0.00
и запускаю таймер с периодом в 0.1 сек
если таймер уже запущен - ничего не делаю с таймером
далее я записываю юнита и время его "стана", например set time = 2.00
каждые 0.1 сек таймер высчитывает по 0.1 из time и когда оно станет < 0.1 , то я триггерно сниму бафф стана
при этом всё это делает в массиве
цикл от 1 до N пролистывает все time[i] и все их перерасчитывает, и оканчивает
при попытке дать стан, я проверяю есть ли на нём он уже
если есть - я не даю стан заново, а ищу номер массива, в который уже юнит записан
и если новое время стана больше чем старое - обновляю, иначе - не трогаю ничего
в итоге имеем триггерный бафф стана
добавить к этому ещё и текст-таг + скрытие/показ его игрокам по команде, и мы имеем возможность видеть реальное время стана в игре... гы
тык
Загруженные файлы
0
19
8 лет назад
0
Extremator:
я кидаю в юнита стан с длительностью 0.00
и запускаю таймер с периодом в 0.1 сек
если таймер уже запущен - ничего не делаю с таймером
далее я записываю юнита и время его "стана", например set time = 2.00
каждые 0.1 сек таймер высчитывает по 0.1 из time и когда оно станет < 0.1 , то я триггерно сниму бафф стана
при этом всё это делает в массиве
цикл от 1 до N пролистывает все time[i] и все их перерасчитывает, и оканчивает
при попытке дать стан, я проверяю есть ли на нём он уже
если есть - я не даю стан заново, а ищу номер массива, в который уже юнит записан
и если новое время стана больше чем старое - обновляю, иначе - не трогаю ничего
в итоге имеем триггерный бафф стана
добавить к этому ещё и текст-таг + скрытие/показ его игрокам по команде, и мы имеем возможность видеть реальное время стана в игре... гы
тык
Ты слишком все усложняешь.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.