Хочу сделать возможность вкл\выкл святой щит, но так что бы щит тратил ману в секунду. То есть паладин включает щит, щит даёт ему неуязвимость и тратит например 10маны\сек. Как это сделать?
`
ОЖИДАНИЕ РЕКЛАМЫ...
3
27
3 года назад
3
На триггерах можно без проблем. Юнит кастует абилку, удалить эту абилку и добавить вторую, дать неуязвимость и добавить юнита в группу, таймером с периодиком отнимать у этой группы ману, если она на нуле, то удалить вторую способность, добавить первую, удалить неузвимость и удалить юнита из группы.
Если юнит кастует вторую способность, то сделать то же самое
3
28
3 года назад
Отредактирован PT153
3
Не надо никакие способности удалять...
В константах разрешаем отключать щит. Ловим приказ начала щита, добавляем героя в группу Х. Если отдаётся приказ конца щита, удаляем героя из группы Х. Каждую секунду для каждого юнита в группе Х отнимаем Y маны. Если маны не хватает, отдаём приказ отмены щита.
0
27
3 года назад
0
PT153, если юнита застанят, он не сможет отменить щит и будет в неуязвимости даже при нехватке маны
2
32
3 года назад
2
rsfghd, по дефолту в неуязвимости не застанить как бы
6
11
3 года назад
6
Самый простой способ:
  1. Надо сделать спелл на основе Жара Преисподней.
  2. В триггерах отследить работу спелла (Условия - Юнит имеет специальное волшебство "Жар Преисподней" равно Да
  3. Когда спелл начнется сделать юнита неуязвимым через "Юнит - сделать неуязвимым"
Всё это состоит из одного спелла, к которому нужно событие "каждые 1 сек игрового времени"
0
27
3 года назад
0
Bergi_Bear, ну хз, через приказы это такое кривое дело... ну ладно
1
28
3 года назад
1
которому нужно событие "каждые 1 сек игрового времени"
Тут можно сделать иначе.
2
27
3 года назад
2
reaper1691, надо отловить момент окончания жара преисподней, чтобы убрать неуязвимость с юнита
3
11
3 года назад
3
В действиях триггера нужен только оператор цикла If then else
Если
Юнит имеет специальное волшебство Жар Преисподней равно Да
То
Сделать триггерный юнит неузвимым
Иначе
Сделать триггерный юнит уязвимым

rsfghd:
reaper1691, надо отловить момент окончания жара преисподней, чтобы убрать неуязвимость с юнита
Поэтому триггер работает и проверяет каждую секунду, а условие управляет триггером
4
27
3 года назад
4
reaper1691, в плане оптимизации такое себе, т.к. под проверку попадают все юниты на карте каждую секунду, но вряд ли оно на что-то особо влияет
5
32
3 года назад
5
На основе дефенда, щита маны, или жара приесподней, по касту определяем что оно включено, по приказу и баффу что спало, изи.
Неуязвимость накатываем триггерно, в то время как расход маны дефолтно в способности.
2
32
3 года назад
2
Дмитрий Ларионов, рефордж же?
SetUnitInvulnerable(unit,true/false)
или добавить/удалить Avul способность (неуязвимый нейтральный)
А для факта включение выклюения вот то что quq_CCCP, посоветовал.
В принципе любой способ будет рабочий
0
28
3 года назад
0
Когда мана кончается у иммолатиона, никакого приказа не отдаётся.

он не сможет отменить щит и будет в неуязвимости даже при нехватке маны
Он выйдет из стана, как правило.
4
28
3 года назад
Отредактирован PT153
4
Загруженные файлы
Принятый ответ
2
32
3 года назад
2
PT153, я бы подругому сделал.
0
28
3 года назад
0
quq_CCCP, дык сделано так, как ты и описал. Если бы отдавался приказ отмены способности, когда маны нет, то и группы с таймером не надо было.
2
11
3 года назад
2
rsfghd:
reaper1691, в плане оптимизации такое себе, т.к. под проверку попадают все юниты на карте каждую секунду, но вряд ли оно на что-то особо влияет
В таком случае надо добавить ещё условие логического типа, мол определенный юнит жив равно да, или же ещё добавить условие на игрока (мало ли). Ну и условие должно проверять владельца юнита, который также является владельцем для спелл-пустышки
0
27
3 года назад
0
reaper1691, если уж сужать круг, то лучше выбирать живых и тех, у кого есть абилка с имморталом
2
1
3 года назад
2
Есть рабочий вариант?)
0
28
3 года назад
0
SweetFox, комментарии прочитайте.
2
1
3 года назад
2
PT153:
SweetFox, комментарии прочитайте.
у меня по данному примеру герой навсегда становиться неуязвим, хотя есть условие
Юнит имеет специальное волшебство Жар Преисподней равно Да
То
Сделать триггерный юнит неузвимым
Иначе
Сделать триггерный юнит уязвимым
0
28
3 года назад
0
SweetFox, значит, вы неправильно сделали. Посмотрите внимательно, как сделано в карте.
2
1
3 года назад
2
PT153:
SweetFox, значит, вы неправильно сделали. Посмотрите внимательно, как сделано в карте.
а тут где то есть ссылка на мапу?) извините, может я в глаза долблюсь)
0
28
3 года назад
0
SweetFox, а вы не долбитесь.
Загруженные файлы
Чтобы оставить комментарий, пожалуйста, войдите на сайт.