Если вы используете Flash Builder (или Flex Builder), вы можете сделать это, создав проект ActionScript. Мне немного непонятно, когда вы говорите, что хотите использовать Flex SDK, но в чистом ActionScript, поскольку Flex является основой для ActionScript. Поэтому, если вы говорите о mx Effects и Spark Effects, пожалуйста, сообщите нам об этом.
Следующее описание предназначено только для проекта ActionScript 3.0.
Хорошо, вам понадобится класс, который расширяет MovieClip
скажем, SimpleFlash
. Вместо этого вы можете продлить Sprite
, если вам не нужно использовать временную шкалу.
import flash.display.MovieClip;
public class SimpleFlash extends MovieClip {
public function SimpleFlash() {
}
}
Нам понадобится простая фигура для размещения в нашем конструкторе SimpleFlash
,
var simpleShape:Shape = new Shape();
simpleShape.graphics.beginFill(0xFF0000);
simpleShape.graphics.drawRect(0, 0, 100, 100);
simpleShape.graphics.endFill();
simpleShape.x = 0;
И нам нужно будет добавить прослушиватель событий в фигуру, чтобы при вводе первого кадра мы могли выполнить некоторую анимацию.
simpleShape.addEventListener(Event.ENTER_FRAME,simpleAnimation);
Не забудьте добавить его в список отображения
addChild(simpleShape);
В нашей простой функции анимации (называемой двумя линиями вверх) мы хотим переместить фигуру по прямой линии вдоль оси x.
public function simpleAnimation(event:Event):void {
event.target.x += 1;
}
Форма после будет перемещаться на 1 единицу вправо каждый раз, когда происходит событие ENTER_FRAME.
Вот вам и простая анимация без временной шкалы.
Что вы можете извлечь из этого?
- Измените
1
на другой номер, посмотрите, что произойдет. Форма движется быстрее или медленнее?
- Изменить
event.target.x
на event.target.y
в какую сторону?
- Можете ли вы сделать это по диагонали? Как?