Помогите составить триггер.Это умение Мошь Гор,когда герой его использует то получает +40 к силе,а когда заканчиваеться этот то бафф 40 к силе отнимают.ВНИМАНИЕ:Я не понял конкретно как забрать силу после окончания баффа,пытался через....
С:Юнит Завершает применение способности
У:Способность = мошь гор
Д:Герой вычесть 40 силы
но это не работает(

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

А если всё совсем плохо, то можно просто вэйтом обойтись.
Юнита-инициатора ты при таком ивенте всё равно не потеряешь.
дать 40 силы
ждать 30 сек
отнять 40 силы
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
26
4 года назад
0
quq_CCCP:
Тут стоит отметить важное НО, статы нужно отнимает если герой не помер, либо после возрождения, иначе будут баги с регеном, сила влияет на регенерацию здоровья, но ели в момент смерти у героя изменить кол-во силы, регенерация не изменится, в итоге будет герой с 100500 регеном. Так что нужен триггер отлавливающий смерть, время, и начало касте, чтобы вручить силу и забрать её в нужное время.
А с чего сделан такой вывод?
Мне показалось это логичным и я решил сделать проверку...
В итоге, оказалось что реген работает ровно в том числе, в котором должен (от количества Силы), если вызвать у героя работу регенерации (изменение текущего хп, в том числе его изменение за счёт изменения Силы). Т.е. да, на мёртвом героем иногда отображается не верное количество регена (ибо юнита можно заставить регенерироваться будучи мёртвым), но как только он становится снова живым - реген исправляется на правильный (в том числе и реген от предмета, который на мёртвом юните не работает совсем).
Отсюда и вопрос - как именно должен происходить этот баг?
Такой вариант "просто изменить мёртвому юнита силу" ничего в итоге не меняет, когда он снова вступит в игру его реген будет нормальным. Вариант "убить + дать силы" тоже не приводит в появлению лишнего регена. Вариант "отловить смерть + дать силы" так же ничего не даёт. В итоге что ни делай - реген всегда стабильный (от 22 Силы и 0.25 баз.регена это всегда 1.35 хп/сек).
0
15
4 года назад
0
8gabriel8, а почему обычный wait не подходит? Типа он действует, как высокая скорость игры?
0
28
4 года назад
0
Nemezid, потому что он багнутый и вызвает проблемы при паузе игры и в целом неточен
0
15
4 года назад
0
Феникс, а что там? Ну, кроме паузы игры. Прост я постоянно используют вейт и даже не подозревал, что чет не так. Хочу понять насколько это критично
1
28
4 года назад
1
Nemezid, В спеллах категорически нельзя использовать Wait, например ты закинул 40 силы, поставил игру на паузу и ушел на минутку, все, буст силы дропнется вне зависимости от того, что игра была на паузе - это проблема №1
Проблема №2, Wait имеет неточности ниже 0.1, следовательно его не используют для значений ниже, чем это
Проблема №3 [это не точно] Wait останавливает поток триггера, если после вейта у тебя есть ряд других функций, например в случае с твоим скиллом:
герой x получил 40 силы, но в этот момент герой y также совершает что-то, что даёт буст, насколько я помню, второй раз триггер не инициируется, потому что там есть вейт и он ждет исполнения предыдущего, могу быть не прав

Другими словами Wait - это одноразовая штука, которая хорошо применима для синематик и старта игры, но для повторяющихся триггеров или функций он не годится
0
26
4 года назад
0
Как-то натыкался на информацию от проверявшего в разных ситуациях Wait человека, что при паузе не багается ничего. Так что стоило бы проверить, возможно, информация о паузе неактуальна, либо действительна лишь для некоторых случаев.
0
32
4 года назад
0
Extremator, на момент Event-widget-death. В доте была проблема, чуваки с аегом или леорики после сларка имели доп реген, порой совсем дикий.
0
19
4 года назад
Отредактирован KaneThaumaturge
0
Лучшим решением будет отлов окончания баффа + хэш-таблица. Также нужно еще детектить появление этого баффа на других юнитах (похищение магии) и добавлять им соответсвующие эффекты баффа. Рекомендую не использовать таймер или вэйт, если в карте можно рассеять бафф или потерять его иным образом. Однако, пока для тебя будет проще всего использовать Wait (game-time). Юзай его и не парься (пока). А то залезешь сейчас в такие дебри, что создавать карту отпадёт желание.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.