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

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

Ответ
 
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
Функция проверки местоположения юнита
В общем что-то не могу нормально сделать такое условие под такой триггер:Когда герой применяет заклинание то вражеские юниты должны двигаться от кастера,как бы отталкиваться от него,но только перед ним!!!.Собственно подскажите пожалуйста проверку на то что юнит находится в 90 градусов(градусной мере) перед другим юнитом.
Старый 14.05.2012, 13:45
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Sladkoegka, Проверяй угол между юнитами (реал композишн), или пикай всех юниов в групп впереди героя, и толкай их
Старый 14.05.2012, 13:51
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
quq_CCCP,
Проверяй угол между юнитами (реал композишн), или пикай всех юниов в групп впереди героя, и толкай их
Sladkoegka,
Собственно подскажите пожалуйста проверку на то что юнит находится перед другим юнитом.
Как бы вопрос не в том что а в том КАК
Старый 14.05.2012, 13:56
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Sladkoegka, на гуи RealCompasition()
true,, тока вроде, берёш угол героя (на Jass GetUnitFacting()), и если разность углов меньше 45.0 то юнит у тебя перед мордой, вроде так, щя сам проверю...
quq_CCCP добавил:
Sladkoegka, да как разница углов поворта юнитов... GetUnitfacting() и проверяеш методом тыка какого угла меньше или равна разность углов поворота юнита, я предложил 45, то там где то 100 надо примерно...
делай...
Старый 14.05.2012, 14:05
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
quq_CCCP, Да я также думаю,просто походу я с числами и +- попутал-но ща ща тестю и тестю9хотя бы начались двигаться НЕ ВСЕ)
Sladkoegka добавил:
quq_CCCP, Аннн нет-неправильно.Не получится так-потому что не должен учитываться угол поворота юнита-цели.А тут получаестся что от него зависит результат.
Старый 14.05.2012, 14:24
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Sladkoegka, угол поворота героя и угол между героем и целью проверяй, разность, от 45 до 100... Я хз сколько надо поставить чтобы было то что надо...
Старый 14.05.2012, 14:58
16GB
GhostOne User
offline
Опыт: 60,317
Активность:
была тема
ответ там есть разбирайся
Старый 14.05.2012, 15:08
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
16GB, Там непонятный флуд насчет групп,а вот пример который кидали-бредовый и баганый.Мне самое главное сейчас понять как вычисляется угол между точками!!!(кто знает скажите плз)
Старый 14.05.2012, 16:13
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
У меня выставлено "неработающее условие":
Если Угол поворота "Моего кастера-героя"+35град.>Угла между точками(Позиция юнита"Моего кастера-героя"и Позиция юнита"Выбранного юнита")И Угол поворота "Моего кастера-героя"-35град.<Угла между точками(Позиция юнита"Моего кастера-героя"и Позиция юнита"Выбранного юнита").
А теперь Внимание:Условие Если Угол поворота "Моего кастера-героя"+35град.>Угла между точками(Позиция юнита"Моего кастера-героя"и Позиция юнита"Выбранного юнита")
РАБОТАЕТ!!!!!!!!!!!!!!!!!
А условие:Угол поворота "Моего кастера-героя"-35град.<Угла между точками(Позиция юнита"Моего кастера-героя"и Позиция юнита"Выбранного юнита").Не работает!!!
Кто знает-подскажите пожалуйста,или накидайте пожалста 1 условие.
Старый 14.05.2012, 20:13
DimanTOoBS

offline
Опыт: 5,791
Активность:
могу предложить другой вариант, того как выбрать юнитов перед лицом опр. юнита
например:
пикаешь юнитов в радиусе 400 от опр. воина и заносишь в переменную Group[1]
затем пикаешь юнитов в точке по направлению героя на расстоянии 300, в радиусе 300, так же сохраняешь
затем выбираешь 1 группу и проверяешь, что пикнутый юнит находится во 2 группе
ну вот как-то так
угол будет примерно 60 градусов
помню тоже мучался с такой же проблемой и забил на это, потому что угол поворота кастера 0-360, а угол между точками 0-180.
могу конешь ещё предложить вариант
пикаешь всех так как у тебя и для каждого создаешь дамика, чтоб смотрел в сторону пикнутого, сохраняешь угол, удаляешь дамика xDDD
Старый 14.05.2012, 21:42
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
DimanTOoBS, Ну там не получится всех занести,потому что области там будут в простых формах(круг или прямоугольник)и вообщем я тут накидал-иногда юнитов с краю не закидывает в область,или наоборот нужных не кидает.Вот я это тоже пробовал еще до этого)
помню тоже мучался с такой же проблемой и забил на это, потому что угол поворота кастера 0-360, а угол между точками 0-180.
О боже,дада и причем я щас делаю через 2 переменные типа Angle,и с ними колдую-но вар такой упрямый,любое число >180 преобразует в меньше 180,блин тут пока еще мучаюсь,мб все же получится.
Старый 15.05.2012, 14:22
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Sladkoegka, на jass условие напиши, то там чрез локейшены, которые не удаляются...
Старый 15.05.2012, 14:24
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
quq_CCCP, Мне бы хотя бы на ГУИ условие написать...
Старый 15.05.2012, 15:02
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Sladkoegka, на гуи будет беда, при долгой игре, локейшены то создаются но не удаляются... придётся переписывать через реал, и GetUnitX, GetUnitY вроде это есть на гуи, уже и не помню...
Старый 15.05.2012, 15:07
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
quq_CCCP, Ты вопроса походу не понял-я спрашивал КАК СДЕЛАТЬ ТАКОЕ,а не как избавиться от утечек.
Старый 15.05.2012, 16:07
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Sladkoegka, вот я тебе и говрю что не через локейшены, ибо если комп так себе минут на 10 игры...
а то и меньше...
С геометрией или алгеброй дружиш? Или даже себе координатную плоскость представить не можеш?
Вбей в гугл, найти угол между координатами, принадлежит ли координаты X,Y к окружности...
Старый 15.05.2012, 16:25
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
quq_CCCP, я не знаю что ты там хочешь-просто кинь тогда строчку кода с вычислениями,если знаешь как это легко сделать.
Старый 15.05.2012, 17:09
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,279
Активность:
Sladkoegka, готовый код на эту тему есть в библиотеке функций, правда только на jass...
Старый 15.05.2012, 17:14
Sladkoegka
Забыл что хотел...
offline
Опыт: 7,477
Активность:
quq_CCCP, Если не трудно ссыль плз.
Старый 15.05.2012, 17:22
NIKZ
Изучаю Jass
offline
Опыт: 6,036
Активность:
quq_CCCP, подкинь ссыль или код)) Нам очень нужно)
Старый 16.05.2012, 11:18
Ответ

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

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

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

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



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