Создал способность на основе увеличения хп с 4 уровнями (0,-10,-15,-20).
    local int lvl = Lvl(GG,'A002');
    local unit u = GetSpellTargetUnit();
    local int abil = 'A003';
    UnitAddAbility(u,abil);
    SetUnitAbilityLevel(u,abil,lvl+1);
    UnitRemoveAbility(u,abil);
    u = null;
Вот только добавляется на первом уровне не 10 (как должно), а 15 (раньше было еще больше).

Lvl - макрос над GetUnitAbilityLevel.

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

Простите, насколько я помню у абилок на хп не работают уровни, тупо ничего не происходит.
Там 2 уровня и баг с удалением абилки, у юнита будет хп обратное тому что во втором уровне способности, иначе это не работает...
0
21
8 лет назад
0
если я правильно понял,
у абилки 3 уровня:
-10 1 уровень
-15 2 уровень
-20 3 уровень
юниту добавляется абилка 1 лвл, затем улучшается до 2 лвл. Всё работает как и должно.
нет? поправьте
0
3
8 лет назад
0
awesomesk1ll, извиняюсь, с 4 уровнями (с нулевого).
0
17
8 лет назад
0
метод Lvl я так понял возвращает уровень спелла, но еси спел у перса есть он автоматом 1 уровня а вы в методе SetUnitAbilityLevel(u,abil,lvl+1) устанавливаете +1 от лвл способности
0
3
8 лет назад
0
ledoed, на первом уровне способности нужно +10 хп. Lvl вернет 1. Значит скилл установится на Lvl+1, т.е. на значение -10.
0
32
8 лет назад
0
Простите, насколько я помню у абилок на хп не работают уровни, тупо ничего не происходит.
Там 2 уровня и баг с удалением абилки, у юнита будет хп обратное тому что во втором уровне способности, иначе это не работает...
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.