Как можно реализовать по-простому невосприимчивость юнита к контролю и/или дебаффам(стан корни сайленс замедление, минус армор от волшебного огня и т.д.) но при этом оставить возможность наносить по юниту магический урон?

Настроить типы целей для конкретных способностей: xgm.guru/p/wc3/wc3targets
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
21
Можно сделать через отлов урона. Если воин получил урон и при этом имеет бафф от стана, то скорее всего он получил урон именно от самого стана, значит удаляем бафф стана, снимая стан.
Правда прерываемые способности всё равно будут сбиваться.
Sladkoegka:
но как например снять с юнита стан?
сall UnitRemoveAbility( unit, buffId )
15
ScopteRectuS, есть множество вариантов где стан контроль идёт без урона или с dotой. и я все равно не понимаю как узнать buffid у баффа
18
Sladkoegka:
стан ещё можно ловить приказом, вот ИД приказа у стана 851973
32
По простому никак, по сложному абузим приказов ( смотри ульт спектры из доты) либо мемхак, но это только для дизейблов основных на приказе стана, есть те что работают иначе...
21
buffId можно узнать в редакторе заклинаний, нажав "ctrl+D". Событие на отлов урона срабатывает даже если урон равен нулю.

Вот пример.
Горного Короля невозможно оглушить или связать корнями.
Чародея Крови можно оглушить или связать корнями.
На Горном Короле всё же появляется анимация оглушения или корней, но это всего лишь анимация спецэффекта, которая не удаляется сразу.
Загруженные файлы
15
ScopteRectuS, Спасибо огромное, я вроде пробовал тоже самое, только затупил, делал через какие-то GetAbilityId..
Единственное, способности по типу "Замедление" не наносящие урона таким способом не дедектятся
А ну вот есть такая идея, например каждые 0.1 сек периодически
код
    call UnitAddAbility(gg_unit_Hmkg_0000,'Amim')//Невосприимчивость к магии (дриады)
    call UnitRemoveAbility(gg_unit_Hmkg_0000,'Amim')
Правда смешной минус этого метода, юниты с типом атаки магия пытаются постоянно замахнуться но не могут выстрелить=)
28
Делать все контроли через дамми касты, и там проверять что юнит не должен под них попадать. Это самый правильный способ. Остальное костыли.
16
ssbbssc:
А зачем 0,03? Для восприятия человека же по барабану всё, что меньше 0,04.
20
Naadir:
ssbbssc:
А зачем 0,03? Для восприятия человека же по барабану всё, что меньше 0,04.
значение в 0,03 лучше из наименьших совпадает с частотой кадров и не нагружает систему сильно
читал давно пост на хайве, посвященный этой теме
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.