XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Drulia_san
Великий Дрюля жив.
offline
Опыт: 8,569
Активность:
Отследить смерть "под крестом"
Как отслеживать смерть, когда у юнита есть крест в инвентаре или какое-нибудь "Возрождение"?
Старый 01.04.2014, 12:27
Extremator

offline
Опыт: 39,428
Активность:
его хп равняется нулю
БЖшка дающая ответ на вопрос мёртв/жив ли юнит так же должна ответ он мёртв / не жив
НО при этом событие "юнит умирает" проходить не должно...
Если это герой, то впринципе можно добавить ивент на то что хп юнита равно 0 (поэксперементируй)
и далее проверять умирал ли юнит (в другом триггере по событию смерти юнита чекаешь его - даёшь скил пустышку/заносишь в группу/задаёшь логическую) и т.д.
Extremator добавил:
А вообще всё это не даёт 100%-й гарантии на то что оно сработает как надо
(опять же нужны тесты)
. . .
Я вот например решил такую проблему чуть иначе - сделал полностью триггерное возрождение
Когда юнит получает крест делаю ивент на получение урона, там проверка на то есть ли у юнита крест
если есть - отнимаю крест, делаю героя неуязвимым, ставлю хп на 1 ед., паузу вешаю, проигрываю анимацию смерти... через 5 сек - анимация "рождения" + спецэффект, даю 100% хп/мп... снимаю паузу/неуязвимость...
Вышло необычно, своеобразно, и работоспособно
Старый 01.04.2014, 12:46
ScorpioT1000
Работаем
offline
Опыт: отключен
а если хп равно 0.073 и при этом он считается мертвым?
Старый 01.04.2014, 13:04
Raised
Rid-Aid-Ios
offline
Опыт: 20,792
Активность:
Давно уже такое делал. Что мешает открыть эдитор и поэкспериментировать?
Старый 01.04.2014, 13:12
Extremator

offline
Опыт: 39,428
Активность:
ScorpioT1000:
а если хп равно 0.073 и при этом он считается мертвым?
  1. Создай тему и задай этот вопрос.
  2. Попробуй воспользоваться поиском.
А если серьёзно
я имел ввиду функцию "IsUnitAliveBJ(u)"
которая скрывает в себе отрицательны ответ на функцию "IsUnitDeadBJ(u)"
которая в свою очередь сравнивает "GetUnitState(u, UNIT_STATE_LIFE)" с нулём
а если сравнивать с нулём "GetUnitStateSwap(UNIT_STATE_LIFE, u)"
(который в так же ссылается на "GetUnitState(u, UNIT_STATE_LIFE)")
то... я предполагаю, что ответ должен быть такой же самый...
Старый 01.04.2014, 13:15
Raised
Rid-Aid-Ios
offline
Опыт: 20,792
Активность:
Extremator, у меня все работало когда текущее ХП героя становилось меньше 0.5.
Ради эксперимента можно триггерно установить герою такой хп и посмотреть что будет... если он может переродится, то способность активируется, а если нет - умрет.
Старый 01.04.2014, 13:31
Drulia_san
Великий Дрюля жив.
offline
Опыт: 8,569
Активность:
Всем спасибо, решил проблему созданем триггера с событием изменения жизни юнита. Если его жизнь меньше или равно 0, то сделать ... . Всё срабатывает, правда как показал debugmsg оно всегда срабатывает 3 раза под ряд, но это не особо важно, если при смерти нужно просто выставить значения некоторых переменных на false и скрыть пару способностей игроку. Так что фактически проблема решена.

И еще кое-что, тут вы споp подняли, я проверил. Если поставить юниту хп, которое при округлении дает 0 - он умирает. К примеру - поставить 0.6 и он будет жить. А если поставить 0.4, то он умрет.
Старый 01.04.2014, 13:46
Raised
Rid-Aid-Ios
offline
Опыт: 20,792
Активность:
Drulia_san, спасибо. Точняк! Событие тогда срабатывало 3 раза.
Старый 01.04.2014, 13:49
ScorpioT1000
Работаем
offline
Опыт: отключен
жизнь может быть больше 0, а юнит уже мертв *нате*
я к тому, что опять флудите идк ... всё ищется
Старый 01.04.2014, 14:11
DioD

offline
Опыт: 45,134
Активность:
рачьё...
наработок про это 100500 штук, я лично писал 3 или 4 версии по разным алгоритмам, поиск юзайте.
Старый 01.04.2014, 15:55
[B]elFUnGan
Kicked by ZlaYa1000
offline
Опыт: 426
Активность:
Вылезли нубы, которые не могут спокойно спать, пока не укажут на боянистость темы.
Повторюсь, так как модераторам незнакомо правило этикета, и они удаляют пост просто потому, что он им не нравится.
[+] 3 пункта от H: 3 (обсуждение действий модератора)
Старый 02.04.2014, 00:21
Melissa
Я всегда хочу как лучше!
offline
Опыт: 31,596
Активность:
0.405 вроде
если у юнита меньше этого здоровья - он мёртв.
А если больше - триггер скажет, что он жив, даже если он мёртв, поэтому не стоит менять здоровье или повышать уровень мёртвых героев.
Старый 02.04.2014, 12:10
DioD

offline
Опыт: 45,134
Активность:
это печально что вы огрызаетесь вместо того чтобы всётаки воспользоваться поиском после того как вам про это сказали.
успехов вам.
Старый 03.04.2014, 14:00
[B]elFUnGan
Kicked by ZlaYa1000
offline
Опыт: 426
Активность:
DioD, Сказал чел, который только что назвал всех рачьем.
Старый 04.04.2014, 01:37
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 04:42.