Я хочу сделать, чтобы если у здания под атакой здоровья меньше n %, то оно бы переходило игроку, который его атаковал и его здоровье пополнялось, но из моего триггера ничего не вышло. Здоровье пополняется, но здание не переходит. Вот триггер:

События
Боевая единица A жизнь становится меньше n %
Действия
Боевая единица изменить владельца A на {Владелец {Переключающий юнит}} и Сменить цвет
Боевая еденица установить жизнь A как n

Где А - юнит
n - число
Что не так?

Принятый ответ

NazarPunk, каком "таком"?
Событие - Любой юнит получает урон
Условие -  (Тип Triggering Unit равно Х) И (Здоровье Triggering Unit - Полученный урон <= 0.)
Действия
Установить получаемый урон на 0.
Уставить владельца Triggering Unit: Владелец источника урона.
Установить здоровье для Triggering Unit на 100%.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
4
19
5 лет назад
4
Похожие вопросы:

ответ
Zeuz, ты должно быть хотел спросить можно ли в функции "IniTrig_Bleach" создавать сразу несколько локальных триггеров, добавлять им ивенты и действия и не будут ли они мешать друг другу. Не будут. Хотя события так ты показал в примере не выйдет добавить. Должно быть ты просто не помнишь название функции.
ответ
создаём юнита
даём юниту таймер
и проверяем что с ним стало
офигиваем от того что выяснили это сами
и не задаём тупых вопросов
на 4 дня пропал и уже 69 тупых вопросов
ответ
Igor97, если не знаешь jass то и не трогай то что написано на jass
или учи jass
если коротко то у тебя конфликт имён функций и глобальных переменных из за того что ты тупо скопировал
чтобы конфликта не было во 2 триггере надо переименовать все функции
ответ
проблема оказалась в событии "инициализация карты", поставил вместо него событие "времени прошло" и проблема решилась!

2
27
5 лет назад
Отредактирован MpW
2
где дебаг? триггер работает с этим событием?

мне кажется с этим событием нельзя найти того, кто нанес ушерб зданию или убил. и поэтому и не передается другому игроку.
{Владелец {Переключающий юнит}} - это кто?

мб событие - юнит умирает? или получает урон? или юнит атакован?

при получении урона проверяешь хп, правда дело твое. помню чит ставил на whosyourdaddy сносил здание за удар, и не мог захватить, никак отстроить в картах типа риск. при слишком большом дамаге наверн сносится быстро. лучше тогда использовать "юнит умирает", при смерти создает новое и все
1
26
5 лет назад
Отредактирован Hate
1
триггеринг юнит же само здание скорее всего, это тот от кого сработало событие, а у вас событие что хп стало меньше
компилятор не экстрасенс, додумывать за вас не будет, подавляющее количество ошибок от невнимательности и незнания основ, что решается дебагом
3
29
5 лет назад
3
Там же нужно давать владельцу от атакующего юнита, в jasse он же в виде нативки GetAttacker(), в русских триггеах он либо "Нападающий Юнит" или "Атакующий Юнит".
0
28
5 лет назад
0
KingMaximax, в этом событии никакого нападающего нет, нужно событие "Юнит получает урон".
0
29
5 лет назад
0
При таком подходе, если здание будут атаковать несколько игроков то оно будет очень быстро переходить под контроль каждого из них.
2
28
5 лет назад
Отредактирован PT153
2
NazarPunk, каком "таком"?
Событие - Любой юнит получает урон
Условие -  (Тип Triggering Unit равно Х) И (Здоровье Triggering Unit - Полученный урон <= 0.)
Действия
Установить получаемый урон на 0.
Уставить владельца Triggering Unit: Владелец источника урона.
Установить здоровье для Triggering Unit на 100%.
Принятый ответ
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.