Очень часто мертвые герои оказываются "живыми" т.к условие GetWidgetLife( unit ) > 0.405 выдает true даже когда герой абсолютно мертв. И т.к в моей карте мультиборд отображает хп героев видно что он не только "живой" но и регенит себе хп, хотя он уже минуту как умер. Изза этой проблемы постоянно возникают всякие проблемы с различными способностями и не только. Можно ли как-нибудь пофиксить это или иначе проверять жив герой или мертв? Или придется мутить костыли и запоминать текущий статус героя при помощи переменной?
Принятый ответ
Есть проверка IsUnitDead, где проверяется тип и состояние IsUnitType(u, UNIT_TYPE_DEAD) но никогда не было проблем с проверкой хп.
Так же насколько я помню GetWidgetLife( unit ) > 0.0 или GetUnitState( unit, UNIT_STATE_LIFE ) > 0.405.
Так же насколько я помню GetWidgetLife( unit ) > 0.0 или GetUnitState( unit, UNIT_STATE_LIFE ) > 0.405.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован N7_Stormreaver
Так же насколько я помню GetWidgetLife( unit ) > 0.0 или GetUnitState( unit, UNIT_STATE_LIFE ) > 0.405.
а если поставить знак < то должно быть правильно
точно так же как и GUI-шная проверка на "хп > 0"
Вот как у близов сделано:
return GetUnitState(whichUnit, UNIT_STATE_LIFE) <= 0
endfunction
return not IsUnitDeadBJ(whichUnit)
endfunction