народ! подскажите, реально ли с помощью кода отловить юнита цель при использовании стандартной телепортации если при касте юнита цели нету? как известно, если цель-точка, то способность ищет ближаайшего юнита подходящего под цели и телепортируется на него...мне нужно именно стандартной способностью телепортироваться, а не через канал...так вот как этого юнита отловить? я уже все что знаю испробовал. Проблема в том, что если делать через канал, то например бафф морфа не останавливается например и прочие вещи. Когда телепортируешься на юнита, он останавливается, и иконки его кнопок замораживаются как при касте молчания...есть какойто параметр как это отливить?

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

Я так понимаю телепорт на цель, тогда всё просто GetSpellAbilityTarget().
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
5
5 лет назад
0
Raised:
то способность ищет ближаайшего юнита подходящего под цели и телепортируется на него...
(SpellTargetX, SpellTargetY) + поиск ближайшего юнита к точке каста?
Может, я что-то позабыл, но я не вижу никаких проблем.
а если он найдет не того юнита?)) я так пробовал тоже...бывали ошибки в поиске.
0
26
5 лет назад
0
pusha1999, цель телепортации словно паузится, сало накладывается на все приказы, то есть можно это проверять. Правда, способ не очень хороший, так как рядом могут быть юниты под другим салом.
Ты точно ближнего юнита к точке каста искал, а не случайного?
0
5
5 лет назад
0
8gabriel8:
pusha1999, цель телепортации словно паузится, сало накладывается на все приказы, то есть можно это проверять. Правда, способ не очень хороший, так как рядом могут быть юниты под другим салом.
Ты точно ближнего юнита к точке каста искал, а не случайного?
так а как его найти то?)) какие условия для определения этого юнита надо ставить? я это и пытаюсь узнать. какойто приказ отдается юниту при телепортации на него или какойто тип присваивается? по каким критериям его найти?
пробовал даже через отдачу приказов и проверки их выполнения...но это както бредово по моему)
1
26
5 лет назад
1
пробовал даже через отдачу приказов и проверки их выполнения...но это както бредово по моему)
Это как раз проверка на сало, но может сработать на юнита под станом.
Выводить надо текущий приказ юнита, чтобы проверить приказ. Например, делаешь событие Игрок cinematic skipped (нажатие Esc), действие Игра вывести на экран текст (самый первый пункт категории Игра), convert Order to String (current order of unit). Телепортируйся на этого юнита и жми Esc, чтобы увидеть приказ.
А чтобы ближнего найти, нужно 2 переменные - реальная и юнит. Выбираешь в радиусе всех юнитов от точки применения телепортации, если их больше одного, и сравниваешь расстояние от точки до юнита со значением реальной переменной, если оно меньше, то записываешь юнита в переменную юнит, в конце останется ближайший юнит.
И ещё можешь попроверять на тип юнита в boolean comparsion, вдруг он наземным перестаёт быть, например.
1
27
5 лет назад
Отредактирован MpW
1
pusha1999, вот карта там телепорт, ищет ратушу. выглядит красиво, жалко не пригодилось. можно слегка переделать
так а как ближнего найти то?))
у тебя должна быть переменная с типом "реальное число" и циклом перебирай всех
код
set d = расстояние между точкой и выбранным юнитом
set Dmin = d <= эта переменная запоминалка, с чем сравнивать будешь. при старте не забывай записывать новое значение. Если тебе надо было макс число найти (короч наоборот), то переменную Dmax = 0 надо нулить
**for group, цикл (перебирает каждого юнита в группе):**
set d = расстояние между точкой и выбранным юнитом
if Dmin > d then
	set Dmin = d
endif
конец циклу
есть еще наработка там при автопродаже ищет ближний магазин. а при подборе ищет ближайщие итемы. вся суть в этом в наработке
еще здесь само начало, когда еще нубом был. на гуи
0
21
5 лет назад
Отредактирован Raised
0
pusha1999, хочешь сказать что с соответствующими проверками (флаги + расстояние от точки каста), ближайший юнит найденный триггером не равняется ближайшему юниту, которого находит спелл? Ты точно умеешь определять ближайшего юнита?
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.