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

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

Ответ
 
1max_iron
Death Metal
offline
Опыт: 4,038
Активность:
Строй
Два вопроса:
1-Как заставить двигаться юнитов строем(ю - юнит),пример:
ю ю


ю ю

2-как заставить двигаться юнитов строем за другим юнитом?:
ю ю
ю
ю ю
Старый 06.06.2007, 19:14
TNT
О_о
offline
Опыт: 11,019
Активность:
Смотря на какой карте, на синематике можно с offset сделать

Cinderella добавил:
ещё можно попробовать не красивый вариант, используя оффсет делать Move unit на столько-то X и Y от юнита координата. Таким юнитом может любой юнит из строя выступать.
Старый 06.06.2007, 19:23
1max_iron
Death Metal
offline
Опыт: 4,038
Активность:
нет мне надо чтоб за героем ходили(ну типа охрана)

1max_iron добавил:
Только не просто за героем а строем!
Старый 06.06.2007, 19:23
TNT
О_о
offline
Опыт: 11,019
Активность:
если надо чтоб они шли не заморожено, а их позиция менялась относительно Facing юнита координата, тогда можно offset polar использовать.
Старый 06.06.2007, 19:25
BarracuDa
aka ShaggyBear
offline
Опыт: 4,708
Активность:
Можно уж совсем с ума сойти, с помощью областей!
Старый 06.06.2007, 19:37
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
Можно не сходить с ума а создать здоровый глобальный массив точек (чтобы без утечек, в массиве должно быть кол-во точек равных кол-ву юнитов сопровождения), и отлавливая приказы для героя перемещать точки (MoveLocation()) как было правильно подмечено полярными координатами. Доо этого мы уже спосотавили каждой точке своего юнита, и после перемещения точкм сразу же давать приказ в нее сопровождающему двигаться.
Кстати тут могут возникнуть косяки со строем (например, точка будет там куда юнит не сможет дойти, на этот случай для каждой точки после размещения нужно ввести проверку на тип проходимости (условие Boolean comparison), но это уже потом, главное сейчас реализовать первую часть)
Старый 06.06.2007, 19:44
1max_iron
Death Metal
offline
Опыт: 4,038
Активность:
А пример можно?А то я ни х не понял!
Старый 06.06.2007, 22:50
Prosha89
Невозможно-слово глупцов
offline
Опыт: 1,409
Активность:
к тому ж как я понял угол отсчитываюся от нуля (а ноль всегда в одном месте) те если главный юнит повернется то угол измениться следовательно необходимо отлавливать "повороты юнита"
P.S. могу ошибаться

Отредактировано Prosha89, 07.06.2007 в 10:33.
Старый 06.06.2007, 22:56
DFlyer
<3 MJ
offline
Опыт: 42,879
Активность:
1max_iron
Нельзя. Юзай моск.
Prosha89
Нед, угол отсчитывается всегда одинаково. Он не зависит от FacingUnit. Т.е. не зависед от того, куда смотрит юнит.
Старый 07.06.2007, 10:48
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
При расчете используйте угол между центральным юнитом и целью-приказом, facing брать не нужно, будет выглядеть ужасно. Вообще это сложная система, попробую реализовать чуть попозже
Старый 07.06.2007, 10:54
Prosha89
Невозможно-слово глупцов
offline
Опыт: 1,409
Активность:
DFlyer е-мое я так и написал (ты мысль не понял, хотя может и не понятно написал) обьясняю: если главный юнит повернется то угол расположения стражников останиться старым , а веть он должен измениться, т.е. если угол не измениться то стражнити будут ходить сбоку а не сзади главного юнита. Поэтому с этим надо чо-то делать.

Цитата:
те если главный юнит повернется то угол измениться


изменить не сам угол а станет нужно изменить угол расположения стражи

FellGuard помойму опять же если юнит повернется и куда-нить пойдет то угол между главным юнитом и стражниками останется тем же следовательно стражники будут бежать "сбоку" а не сзади т.е. если нужно чтобы стража бежала сзади нада отлавливать поворот главного юнита и изменять угол на величину угла поворота.

по другому я чо-то представить не могу хотя хз все может быть

Отредактировано Prosha89, 07.06.2007 в 15:18.
Старый 07.06.2007, 12:41
Garret
Недоброе творится
offline
Опыт: 3,893
Активность:
если приказать группе юнитов, то они идут строем
мб поможет, если стандартный строй
Старый 07.06.2007, 16:41
DFlyer
<3 MJ
offline
Опыт: 42,879
Активность:
Prosha89
Т.е. тебе надо, чтобы юниты всегда смотрели туда же, куда и Герой?
Код:
native  SetUnitFacing takes unit whichUnit, real facingAngle returns nothing
Старый 07.06.2007, 16:58
Prosha89
Невозможно-слово глупцов
offline
Опыт: 1,409
Активность:
нет надо чтоб юниты все время распологались на одном расстянии от героя(угол ,радиус) и шли сзади него
Пример: герой идет вверх стражники с зади него (мы можем задать точки в которые должны идти стражники( радиус и угол)) Юнит повернулся (случайный угол) и пошел дальше след если не менять угол стражники будут идти сбоку от гера (как бы парралельно герою), а на самом деле они должны перестроиться и идти сзади т.е. необходимо узнать величину поворота героя чтобы задать юнитам координаты перестроения (а конкретно угол т.к. радиус постоянный)
Старый 07.06.2007, 22:40
DFlyer
<3 MJ
offline
Опыт: 42,879
Активность:
Надо задавать при полярке угол фэйсинга Героя и от этого угла исходить при построении группы.
Старый 07.06.2007, 23:01
Prosha89
Невозможно-слово глупцов
offline
Опыт: 1,409
Активность:
а если угол фэйсинга случайный. например ты главный гер и ходишь как хош а стража должна ходить за тобой строем?
Старый 08.06.2007, 15:34
Ответ

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

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

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

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



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