движение по диагонали во флэш-анимации с использованием as3 - PullRequest
0 голосов
/ 13 декабря 2008

Я пытаюсь создать эффект облаков в моей флэш-анимации, используя as3

Я могу генерировать облака с помощью сценария действий, но реальная проблема заключается в том, как заставить их генерироваться на одном конце экрана и перемещаться по диагонали на другой конец ...

есть мысли?

Ответы [ 2 ]

3 голосов
/ 15 декабря 2008

Это базовая версия того, что вы хотите сделать, функция handleEnterFrame будет запускаться один раз для каждого кадра (и для каждого облака, но я предполагаю, что вы предпочтете более простое решение)

package {

    import flash.display.Sprite;
    import flash.events.Event;

    public class Cloud extends Sprite{

        public var xSpeed:Number = 1;
        public var ySpeed:Number = 1;

        public function Cloud() {
            addEventListener(Event.ENTER_FRAME, handleEnterFrame);
        }

        public function handleEnterFrame(e:Event):void {
            x += xSpeed;
            y += ySpeed;
        }

    }

}

Установите «Экспорт для ActionScript» в меню «Связывание» вашего символа облака и установите имя класса «Облако».
Этот код должен быть размещен во внешнем файле с именем «Cloud.as», в том же каталоге, что и ваш флэш-файл.
(спасибо aaaidan за указание на это)

0 голосов
/ 07 января 2009

Проверьте пакет под названием Tweener: http://code.google.com/p/tweener/

Я использую Tweener для всех моих потребностей в анимации. Вы просто пишете строку кода примерно так:

Tweener.addTween (cloudObject, {x: targetX, время: 3.0});

...