forked from: flash on 2010-6-22

by 9re
♥0 | Line 36 | Modified 2010-07-02 17:05:06 | MIT License
play

ActionScript3 source code

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

// forked from Murai's flash on 2010-6-22
package {
    import flash.display.DisplayObject;
    import flash.events.Event;

    import flash.display.Sprite;
    public class Fuwafuwa extends Sprite {

        private var phase:Number;
        private var target:Sprite;

        public function Fuwafuwa() {
            addChild(target=new Sprite());
            target.x=stage.stageWidth/2;
            target.y=stage.stageHeight/2;
            
            with(target){
                graphics.beginFill(0x000000, .5);
                graphics.drawRect(-50, -50, 100, 100);
                graphics.endFill();
            }
            
            graphics.lineStyle(1);
            graphics.moveTo(0,stage.stageHeight/2);
            graphics.lineTo(stage.stageWidth,stage.stageHeight/2);
            start();
        }

        private function loop(e:Event):void {
            phase++;
            var val:Number = Math.sin(phase*Math.PI/180) / 5;
            target.y = Math.cos(phase * Math.PI / 100) * 180 / Math.PI / 5 + stage.stageHeight / 2 + 50;
            target.rotation += val;
        }

        public function start():void {
            phase = Math.random()*360>>0;
            if(!target.hasEventListener(Event.ENTER_FRAME))target.addEventListener(Event.ENTER_FRAME, loop);
        }

        public function stop():void {
            if(target.hasEventListener(Event.ENTER_FRAME))target.removeEventListener(Event.ENTER_FRAME, loop);
        }
    }
}

Forked