Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Рандомное движение (рыбки) (http://www.flasher.ru/forum/showthread.php?t=195191)

ArtS 02.03.2013 00:23

Рандомное движение (рыбки)
 
Здравствуйте!
Подскажите пожалуйста, как сделать красивое, плавное, рандомное движение рыбки?

Добавлено через 22 часа 58 минут
Ну что...никто не знает?:rolleyes:

Tails 03.03.2013 11:05

Что значит как сделать? Двигайте рыбку к какой-то точке например (куда ей хочется плыть), координаты этой точки периодически меняйте.

Добавлено через 16 минут
Ещё проще, можно сделать через твинер, задаете рыбке твин, по завершению - новый твин.
http://www.greensock.com/get-started-tweening/

Wolsh 03.03.2013 13:10

неплохо бы ее еще разворачивать мордой к цели, чтобы.. жабры не засорялись.

Hauts 03.03.2013 13:34

Если твинер использовать, то нужно как-то время анимации рассчитывать исходя из расстояния, на которое рыбка поплывет. Чтобы ее скорость примерно одинаковая была.

ArtS 03.03.2013 21:50

Цитата:

Сообщение от Tails (Сообщение 1123297)
Что значит как сделать? Двигайте рыбку к какой-то точке например (куда ей хочется плыть), координаты этой точки периодически меняйте.

Добавлено через 16 минут
Ещё проще, можно сделать через твинер, задаете рыбке твин, по завершению - новый твин.
http://www.greensock.com/get-started-tweening/

Получилось следующее:
Код AS3:

import com.greensock.*;
TweenLite.to(mc, 3, {x:Math.random()*stage.stageWidth, y:Math.random()*stage.stageHeight});

Рандомно определяется точка. Но надо что бы при достижение точки, она опять определялась.
Не подскажите как это реализовать?

Добавлено через 52 секунды
Цитата:

Сообщение от Wolsh (Сообщение 1123311)
неплохо бы ее еще разворачивать мордой к цели, чтобы.. жабры не засорялись.

Хахахаха....Да нужно)
Не знаете как можно так сделать?

Добавлено через 2 минуты
Цитата:

Сообщение от Hauts (Сообщение 1123313)
Если твинер использовать, то нужно как-то время анимации рассчитывать исходя из расстояния, на которое рыбка поплывет. Чтобы ее скорость примерно одинаковая была.

А среди аргументов метода TweenLite.to нет такого метода?

caseyryan 03.03.2013 22:09

Цитата:

Рандомно определяется точка. Но надо что бы при достижение точки, она опять определялась.
У твина есть свойство onComplete. Вот по нему можно вызывать функцию, которая будет разворачивать рыбу

ArtS 03.03.2013 22:16

Цитата:

Сообщение от caseyryan (Сообщение 1123385)
У твина есть свойство onComplete. Вот по нему можно вызывать функцию, которая будет разворачивать рыбу

А можете привести пример?

Tails 03.03.2013 22:52

Код AS3:

TweenLite.to(myFish, 2, {x:90, y:27, ease:Cubic.easeOut, onComplete:fishFinish});
 
function fishFinish():void {
        trace('Fish finished!');
}


ArtS 03.03.2013 23:04

Цитата:

Сообщение от Tails (Сообщение 1123390)
Код AS3:

TweenLite.to(myFish, 2, {x:90, y:27, ease:Cubic.easeOut, onComplete:fishFinish});
 
function fishFinish():void {
        trace('Fish finished!');
}


Это просто перемещение с одной точки в другую?
Мне надо после перемещения, что бы опять определилась точка и опять было перемещение.
Получалось так, но почему то перемещаться не хочет, стоит на месте:
Код AS3:

import com.greensock.*;
function start():void {
TweenLite.to(mc, 3, {x:Math.random()*stage.stageWidth, y:Math.random()*stage.stageHeight, onComplete:start});
}

Не знает те как исправить?

Tails 03.03.2013 23:06

Функцию то вызовите:
Код AS3:

start();



Часовой пояс GMT +4, время: 18:50.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.