Добавлен Komkozavr
Делаю проект для мультиплеера, но столкнулся с такой проблемой:
- Как сделать нормальное воскрешение героев после смерти?
Я пробовал разные способы, но работает только один и этот способ будет баговать при игре с игроками.
Просьба давать советы на GUI. С Jass не дружу.
Принятый ответ
Очень просто)
События:
Юнит Умирает
Условия:
(Diying unit) равно Герой
Owner of (Diying unit) не равно Нейтрально-враждебный
Действия:
Wait 10 секунд
Воскресить (Diying unit)
Юнит Умирает
Условия:
(Diying unit) равно Герой
Owner of (Diying unit) не равно Нейтрально-враждебный
Действия:
Wait 10 секунд
Воскресить (Diying unit)
В этом триггере (Diying unit) не будет меняться с каждой новой смертью, она как локалка.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Ред. biridius
Ну можно хранить героев и время до воскрешения в массивах, пробегаться по ним циклом по таймеру, и когда время достигает 0 воскрешать героя.
триггер2 - каждые 0,3 сек - цикл А от 1 до сколько там игроков - если герой №А мертв, то отнять 0,3 от времени №А; если время меньше либо равно 0, воскресить героя №А
Юнит Умирает
Условия:
(Diying unit) равно Герой
Owner of (Diying unit) не равно Нейтрально-враждебный
Действия:
Wait 10 секунд
Воскресить (Diying unit)
Ред. Hodor
И лучше не использовать PolledWait, можно сразу TriggerSleepAction
И кто бы ни говорил, TriggerSleepAction не продолжает отсчет при паузе в одиночной игре и в мультиплеере.
Да и вообще PolledWait это смесь TriggerSleepAction и таймера (типа отсчет игрового времени)
В данное время не актуально, т.к я лично проверял TriggerSleepAction в одиночной игре при паузе и в мультиплеере так же, никуда время не утекало.
Ред. biridius
Ред. Hodor
Ред. Hodor
Не было бы претензий если это был бы какой то высокоуровневый яп или низкоуровневый, но это же jass)
По сути все переменные handle - это те же integer, не понимаю как близзарды с этим накосячили
А, все, разобрался
Интересно, тут переменная (Diying unit) тоже не утекает?
Sergarr: