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

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

Ответ
 
Gareth Emery
Passive Progressive^^
offline
Опыт: 9,874
Активность:
Расчет дистанции
После долгой паузы в картострое, решил поэкспериментировать с заклинаниями и столкнулся с проблемой. Дабы расставить все точки над "и" хочу спросить у знатоков. Каким методом лучше всего отлавливать долетевшие снаряды до цели? Но только с учетом, того что цель может отбежать назад или подбежать вперед. Раньше пробовал проверкой бафа на юните, но если юнит допустим умирает сразу от урона способности, то и бафа он не получает и соответственно этот метод не проканывает. Так что нужен другой надежный, безутечный способ.
Старый 04.10.2010, 17:58
AlexKARASb
Learning cpp
offline
Опыт: 22,103
Активность:
Gareth_Emery, очень пресновато написан вопрос, скажем в "общих чертах". Более конкретезированную задачу поставь..
Каким методом лучше всего отлавливать долетевшие снаряды до цели?
  • проверка расстояния между целью и мислом - |если расстоян. < радиуса групп энума|удаляй
Старый 04.10.2010, 19:20
Gareth Emery
Passive Progressive^^
offline
Опыт: 9,874
Активность:
AlexKARASb:
очень пресновато написан вопрос, скажем в "общих чертах". Более конкретезированную задачу поставь..
По-моему все расписал что надо... Попробую на примере объяснить: нужно нанести урон цели триггерно, но только в тот момент когда снаряд до нее долетит. Т.е. цель может менять свою позицию и снаряд ее будет преследовать и соответсвенно нанесение урона откладывается до момента долетания снаряда. Вот и нужно это сделать правильно.
AlexKARASb:
|если расстоян. < радиуса групп энума|удаляй
Вообще не понял что ты тут имеешь ввиду...
Старый 04.10.2010, 19:28
16GB
GhostOne User
offline
Опыт: 60,317
Активность:
Gareth_Emery,
снаряд юнит же у тебя?
если да то проверяешь расстояние между цель и снарядом и всё
Старый 04.10.2010, 19:30
AlexKARASb
Learning cpp
offline
Опыт: 22,103
Активность:
local real distance = (x1-x2)*(x1-x2)+(y1-y2)*(y1-y2) //расстояние в квадрате, где x1\y1 коорды снаряда, остальное коорды таргета
if distance < 10000.0 then //если расстояние меньше 100(100*100=10000, тк дист, тоже в квадрате)
KillUnit(unit1)
endif
Старый 04.10.2010, 19:59
agentex

offline
Опыт: 34,834
Активность:
что значит "отлавливать"? и о каких снарядах идет речь? встроенные нормально - никак (с учетом того что цель двигается) если о собственной системе, подобных вопросов вобще возникать недолжно.
Старый 04.10.2010, 20:02
Ответ

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

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

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

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



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