flash on 2011-9-16

by bradsedito
♥0 | Line 69 | Modified 2011-09-16 11:56:59 | MIT License
play

ActionScript3 source code

/**
 * Copyright bradsedito ( http://wonderfl.net/user/bradsedito )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/swc2
 */






package
{
    
    import caurina.transitions.Tweener;
    import caurina.transitions.properties.CurveModifiers;
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.display.BlendMode;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.events.TimerEvent;
    import flash.filters.BlurFilter;
    import flash.filters.ColorMatrixFilter;
    import flash.geom.Point;
    import flash.utils.Timer;
    import com.greensock.*;
    import com.greensock.easing.*;


    [SWF(width="75", height="75", backgroundColor="0xFFFFFF", frameRate="25")]
 
 
    public class bezier extends Sprite
    {
 
        public  var sp:Sprite = new Sprite();
        private var bmpd:BitmapData; 
        private var colorMatrix:ColorMatrixFilter;
        private var Blur:BlurFilter;

 
        public function bezier()
        {
            bmpd = new BitmapData(stage.stageWidth, stage.stageHeight, true, 0xFFFFFF);
            var bmp:Bitmap = new Bitmap(bmpd);
            addChild(bmp);
            var timer:Timer = new Timer(250);
            timer.addEventListener(TimerEvent.TIMER, onTimer);
            timer.start();
            CurveModifiers.init();
            colorMatrix = new ColorMatrixFilter([0.99, 0, 0, 0, 1, 0, 0.99, 0, 0, 1, 0, 0, 0.99, 0, 1, 0, 0, 0, 0.99]);
            Blur = new BlurFilter(8, 8, 1);
            
            addEventListener(Event.ENTER_FRAME, onFrame);
        }
        
        private function onTimer(e:TimerEvent):void
        {
            //var sp:Sprite=new Sprite;
            sp.graphics.beginFill(0xffffff * Math.random(), 1);
            sp.graphics.drawCircle(0, 0, 20 * Math.random() + 4);
            sp.graphics.endFill();
            addChild(sp);
            sp.x = -10;
            sp.y = 495*Math.random()-30;
            sp.scaleX = sp.scaleY = sp.alpha = 0;
            sp.filters = [new BlurFilter(32, 32, 1)];
            sp.blendMode = BlendMode.ADD;
            var t:Number=(13 - 8) * Math.random() + 8;
             
            TweenMax.to(sp,     1, {alpha:0.5, scaleX:1, scaleY:1, ease:Cubic.easeOut});
            TweenMax.to(sp, (t-0), {x:175, y:175*Math.random(), ease:Cubic.easeOut});
            TweenMax.to(sp, (t-2), {alpha:0, scaleX:0, scaleY:0,});
            Tweener.addTween(sp, {alpha:0.5, scaleX:1, scaleY:1, time:1});
            Tweener.addTween(sp, {x:175, y:175*Math.random(), _bezier:[{x:32.5, y:75*Math.random()-100}], time:t})
            Tweener.addTween(sp, {alpha:0, scaleX:0, scaleY:0, time:1, delay:t-2, onComplete:function():void
                    {
                        removeChild(sp);
                        sp.filters = [];
                        sp.graphics.clear();
                        sp = null;
                    }});
        }
        private function onFrame(e:Event):void
        {
            bmpd.draw(this);
            bmpd.applyFilter(bmpd, bmpd.rect, new Point(0, 0), Blur);
            bmpd.applyFilter(bmpd, bmpd.rect, new Point(0, 0), colorMatrix);
        }
    }
}