package { import flash.display.Sprite; import flash.text.TextField; import flash.events.MouseEvent; import org.libspark.betweenas3.BetweenAS3; import org.libspark.betweenas3.tweens.ITween; import org.libspark.betweenas3.easing.*; public class Sample extends Sprite { public function Sample() { (addChild(new TextField()) as TextField).text = 'Click to start'; stage.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); } private function mouseUpHandler(e:MouseEvent):void { while (numChildren > 0) { removeChildAt(0); } var box1:Box = addNewBox(50); var box2:Box = addNewBox(150); var box3:Box = addNewBox(250); var box4:Box = addNewBox(350); // Parallel (Start at one time) Tween BetweenAS3.parallel( BetweenAS3.tween(box1, {x: 220}, null, 1.2, Cubic.easeOut), BetweenAS3.tween(box2, {x: 220}, null, 1.2, Cubic.easeOut) ).play(); // Serial (Start in specified order) Tween BetweenAS3.serial( BetweenAS3.tween(box3, {x: 220}, null, 1.2, Cubic.easeOut), BetweenAS3.tween(box4, {x: 220}, null, 1.2, Cubic.easeOut) ).play(); } private function addNewBox(y:Number):Box { var box:Box = new Box(); box.x = 20; box.y = y; addChild(box); return box; } } } import flash.display.Sprite; internal class Box extends Sprite { public function Box() { graphics.beginFill(0); graphics.drawRect(-10, -10, 20, 20); graphics.endFill(); } }