Есть действия, которые нужно совершить, если юнит перестал атаковать. Не соображу, какими событиями это отловить. Очевидно, юнит перестанет атаковать, если умрёт, или есть умрёт его цель. А вот как отловить, что он сбежал или вернулся на базу (в случае крипа), не знаю. Может, есть простой способ проследить вот это вот всё?

подведя итоги
простого способа нету
надо писать громоздкую систему с таймером и проверками на приказ, время с последней атаки и местоположения(на случай если юнит побежит за целью)
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
5
ssbbssc, вроде бы да, точно не знаю.
Но если ты мануально применяешь способность, у которой есть автокаст, то приказ способности используется
32
Кет, приказ юнита равен 0 значит он ниче не делает, ему нужно отдать приказ еще раз.
32
Ну те кто не идут атаковать кого то обычно стоят.
20
quq_CCCP:
Ну те кто не идут атаковать кого то обычно стоят.
ключевое слово обычно
28
А еще есть такой приказ как Right Click. Если приказать юниту атаковать через райт клик (что обычно все и делают), то условие с Current Order != Attack вернет правду. Возможна проблема с этим же условием, если юнит начинает атаковать, не получая приказа от игрока (противник подошел в агро-ренж). Проверь случаи, описанные выше, возможно условие будет работать верно.
43
Стоить напомнить ещё о атаке от героя без приказа (если нужно), то есть атака орбом, к примеру яд, то придется делать отлов урона. Или проверять имеет ли цель дебаф.

Так же как вариант проверять ещё радиус до цели.
33
Проверять текущий приказ цели.
Нет, не работает. Если игрок отдаёт приказ, всё норм, а у NPC приказ всё время нулевой.
24
Немного запоздалое замечание, но если крип агрится на кого-то и бежит за целью - его приказ "никакой" эта пакость рушит все простые способы осуществить хитроумные задумки, связанные с тем "стоит ли юнит на месте" например и т.п.
Можно триггерно снизить aquistion range до 0 или 1 чтобы крип не агрился до тех пор пока его непосредственно не атакуют, но всё же он и тогда может преследовать убегающего.
А вот как отловить, что он сбежал или вернулся на базу (в случае крипа)
Избитый совет про нумерацию юнитов по custom value и привязку к каждому его исходной позиции как Point [cv]
И делать печальную периодическую проверку между текущей позицией юнита и исходной, если равна нулю то проверить приказ, если и он равен нулю, то скорее всего юнит в состоянии покоя.
28
подведя итоги
простого способа нету
надо писать громоздкую систему с таймером и проверками на приказ, время с последней атаки и местоположения(на случай если юнит побежит за целью)
Принятый ответ
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.