Собственно хочу сделать чтобы за каждые 20/15/10% от максимального здоровья потерянные героем применялся в области где стоит герой исцеляющий газ. Как отловить отсутствующий порог, так чтобы не срабатывало по 100500 раз.
Принятый ответ
nazarpunk, как это математически оформить?
maxhp = 1000;
curhp = 900;
hpstep = maxhp * .05; // 50
lefthp = maxhp - curhp; // 100
index = floor(lefthp / hpstep); // 100 / 50 = 2;
index = 2 означает, что не хватает два раза по 5% хп. При каждом изменении хп сверяеш прошлый index с текущим, если отличаются, то тригеришь что нужно.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован nazarpunk
Отредактирован nazarpunk
И после этого нужно проверить что набранное значение HP больше чем некоторая доля здоровья (т.е. число помноженное на максимальное ХП юнита). Если больше - то обнуляешь HP (либо уменьшаешь на эначение этой доли) и воздаёшь нужный эффект от срабатывания абилки.