![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Как мне рандомно выбирать направление объекта ai? С каждой 0,5 секунды, объект перемещается в сторону, как сделать так, чтобы он сдвигался влево/вправо/вверх/вниз рандомно?)) Буду очень благодарен)
|
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Это с использованием библиотек гриншок, а без нее никак?
|
|
|||||
|
это не такая простая задача, как может показаться вначале.
Я как-то делал для рандомного полета вертолета в игре такую схему, как здесь находится вод заголовком wander. Вот тут еще есть неплохое объяснение как такое делается и у рокетмэна Еще Keith Peters в книжке Advanced Actionscript 3 Animation довольно хорошо эту тему раскрывал, с примерами и исходниками |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Mar 2014
Адрес: неадекват
Сообщений: 10
|
мне кажется и там можно выводить путь рандумом) присваиваем х, у и т.д. число определенное и спомощью условия после рандума вылавливаем направление, а там выставлять от 50 до 100 к примеру... Чет типа того)))
|
|
|||||
|
Цитата:
|
|
|||||
|
Можно так:
Начальное направление, пусть это будет случайное число. Adobe Flash var dir:int = Math.round(Math.random()*360); var nextDir = dir - (Math.round(Math.random()*90)-45); function getDirection(angle:int, speed:int):Object { var hs:Number; var vs:Number; var proportionH:Number = Math.cos(angle*Math.PI/180); var proportionV:Number = Math.sin(angle*Math.PI/180); hs = proportionH * speed; vs = proportionV * speed; return { hspeed: hs, vspeed: vs }; } Правда при этом движение получится хаотичным, даже несмотря на ограничение в небольшом секторе угла 90 градусов. Добавлено через 22 минуты Даже не представляю, как реализовано передвижение в библиотеке зелёных носков. Возможно, там типа ставились точки в случайном месте, через них проводились скруглённые пути... Последний раз редактировалось ZackMercury; 15.03.2014 в 05:27. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
__________________
Reality.getBounds(this); |
|
|||||
|
Ааа, так вот, что нужно было ТС. От точки к точке?
Тогда нет ничего сложного. Реализуйте свой класс анимации. Мы имеем текущее положение и конечное. Как реализовать промежуточные? Если учили в школе систему координат, то найдите середину между точками. А нужно вам примерно положений столько, сколько выставлен FPS на сцене, умноженный на количество секунд, которые должна длиться анимация. |
![]() |
![]() |
Часовой пояс GMT +4, время: 05:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|