Drulia_san
Великий Дрюля жив.
offline
Опыт:
8,529Активность: |
Отследить смерть "под крестом"
Как отслеживать смерть, когда у юнита есть крест в инвентаре или какое-нибудь "Возрождение"?
|
01.04.2014, 12:27 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Extremator
|
его хп равняется нулю
БЖшка дающая ответ на вопрос мёртв/жив ли юнит так же должна ответ он мёртв / не жив НО при этом событие "юнит умирает" проходить не должно... Если это герой, то впринципе можно добавить ивент на то что хп юнита равно 0 (поэксперементируй)
и далее проверять умирал ли юнит (в другом триггере по событию смерти юнита чекаешь его - даёшь скил пустышку/заносишь в группу/задаёшь логическую) и т.д. Extremator добавил:
А вообще всё это не даёт 100%-й гарантии на то что оно сработает как надо (опять же нужны тесты) . . .
Я вот например решил такую проблему чуть иначе - сделал полностью триггерное возрождение
Когда юнит получает крест делаю ивент на получение урона, там проверка на то есть ли у юнита крест если есть - отнимаю крест, делаю героя неуязвимым, ставлю хп на 1 ед., паузу вешаю, проигрываю анимацию смерти... через 5 сек - анимация "рождения" + спецэффект, даю 100% хп/мп... снимаю паузу/неуязвимость... Вышло необычно, своеобразно, и работоспособно |
01.04.2014, 12:46 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
а если хп равно 0.073 и при этом он считается мертвым? |
01.04.2014, 13:04 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Raised
Rid-Aid-Ios
offline
Опыт:
20,892Активность: |
Давно уже такое делал. Что мешает открыть эдитор и поэкспериментировать? |
01.04.2014, 13:12 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Extremator
|
ScorpioT1000:
А если серьёзно
я имел ввиду функцию "IsUnitAliveBJ(u)" которая скрывает в себе отрицательны ответ на функцию "IsUnitDeadBJ(u)" которая в свою очередь сравнивает "GetUnitState(u, UNIT_STATE_LIFE)" с нулём а если сравнивать с нулём "GetUnitStateSwap(UNIT_STATE_LIFE, u)" (который в так же ссылается на "GetUnitState(u, UNIT_STATE_LIFE)") то... я предполагаю, что ответ должен быть такой же самый... |
01.04.2014, 13:15 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Raised
Rid-Aid-Ios
offline
Опыт:
20,892Активность: |
Extremator, у меня все работало когда текущее ХП героя становилось меньше 0.5. Ради эксперимента можно триггерно установить герою такой хп и посмотреть что будет... если он может переродится, то способность активируется, а если нет - умрет. |
01.04.2014, 13:31 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Drulia_san
Великий Дрюля жив.
offline
Опыт:
8,529Активность: |
Всем спасибо, решил проблему созданем триггера с событием изменения жизни юнита. Если его жизнь меньше или равно 0, то сделать ... . Всё срабатывает, правда как показал debugmsg оно всегда срабатывает 3 раза под ряд, но это не особо важно, если при смерти нужно просто выставить значения некоторых переменных на false и скрыть пару способностей игроку. Так что фактически проблема решена.
И еще кое-что, тут вы споp подняли, я проверил. Если поставить юниту хп, которое при округлении дает 0 - он умирает. К примеру - поставить 0.6 и он будет жить. А если поставить 0.4, то он умрет. |
01.04.2014, 13:46 | #7
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Raised
Rid-Aid-Ios
offline
Опыт:
20,892Активность: |
Drulia_san, спасибо. Точняк! Событие тогда срабатывало 3 раза. |
01.04.2014, 13:49 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
жизнь может быть больше 0, а юнит уже мертв *нате*
я к тому, что опять флудите идк ... всё ищется |
01.04.2014, 14:11 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
рачьё...
наработок про это 100500 штук, я лично писал 3 или 4 версии по разным алгоритмам, поиск юзайте. |
01.04.2014, 15:55 | #10
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
[B]elFUnGan
Kicked by ZlaYa1000
offline
Опыт:
426Активность: |
Вылезли нубы, которые не могут спокойно спать, пока не укажут на боянистость темы.
Повторюсь, так как модераторам незнакомо правило этикета, и они удаляют пост просто потому, что он им не нравится. [+] 3 пункта от H: 3 (обсуждение действий модератора)
|
02.04.2014, 00:21 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Melissa
Я всегда хочу как лучше!
offline
Опыт:
30,496Активность: |
0.405 вроде если у юнита меньше этого здоровья - он мёртв. А если больше - триггер скажет, что он жив, даже если он мёртв, поэтому не стоит менять здоровье или повышать уровень мёртвых героев. |
02.04.2014, 12:10 | #12
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
это печально что вы огрызаетесь вместо того чтобы всётаки воспользоваться поиском после того как вам про это сказали.
успехов вам. |
03.04.2014, 14:00 | #13
+3/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
[B]elFUnGan
Kicked by ZlaYa1000
offline
Опыт:
426Активность: |
DioD, Сказал чел, который только что назвал всех рачьем. |
04.04.2014, 01:37 | #14
+0/−2
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|