Forked from: yd_niku's [1日1Wonderfl] 8日目:a practice of BetweenAS3 diff:22 forked from: [1日1Wonderfl] 8日目:a practice of BetweenAS3 onedayitwill.. forked:1favorite:6lines:45license : MIT License modified : 2009-05-22 08:28:08 Embed Tweet // forked from yd_niku's [1日1Wonderfl] 8日目:a practice of BetweenAS3 package { import flash.display.Sprite; import flash.events.*; import org.libspark.betweenas3.BetweenAS3; import org.libspark.betweenas3.tweens.ITween; import org.libspark.betweenas3.easing.*; [SWF(backgroundColor='0x00ffff')] public class FlashTest extends Sprite { public function FlashTest() { createParticle(); stage.addEventListener( MouseEvent.CLICK, onclick ); } private function onclick(e:Event) :void { // while( numChildren > 0) removeChildAt(0); // You can actually just say this while(numChildren) //Any values that are not: undefined, null, NaN, 0, false - equal true removeChildAt(0); createParticle( Math.random() * 1000+300 ); } public function createParticle( cnt:uint = 400 ):void { var tList:Array = []; for( var i:int=0; i<cnt; ++i ) { var ball:Sprite = new Ball( Math.random()*6, 0xFF*(i/cnt)<<16| 0x0066 ); addChild( ball );ball.x = ball.y = 230; ball.alpha = 1; var a:Number= (i*cnt) / Math.PI * 2; var radius:Number = 225 var delay:Number = i/cnt * 2; var tx:Number=Math.cos( a )* radius; var ty:Number=Math.sin( a )* radius; var t1:ITween = BetweenAS3.tween( ball, { x:tx+230, y:ty+230 }, {x: 230, y: 230}, 5, Circ.easeInOut, delay ); var t2:ITween = BetweenAS3.tween( ball, { alpha: 1 }, {alpha: 0}, 1, null, delay ); var t:ITween = BetweenAS3.parallel.apply( null, [t1,t2]) t.stopOnComplete = false; t.gotoAndPlay(0); } // t.stopOnComplete = false; } } } import flash.display.*; internal class Ball extends Sprite{ public function Ball( r:Number=4, c:uint =0x003366 ) { graphics.beginFill( c); graphics.drawCircle( 0, 0, r ); graphics.endFill(); } } Code Fullscreen Preview Fullscreen alexnotkin fallen web_shiino ngtn everdibe sure25 : particle particle Circ.easeInOut BetweenAS3.tween alpha gotoAndPlay stopOnComplete removeChildAt numChildren apply MouseEvent.CLICK drawCircle endFill addEventListener beginFill Math.cos Math.PI addChild Math.sin Array Event Math.random sort new page view favorite forked pv0 forked from: forked from: [1日1.. dali forked:0 favorite:0lines:45 (diff:1)