tweenリハビリ2

by Nowloading_ forked from リハビリその2 (diff: 28)
思っていた以上に気持ち悪い^q^
tweenはENTER_FRAMEさんよりすごく好き、と言うよりはコマ送り処理が嫌い。
♥0 | Line 61 | Modified 2013-09-25 01:24:35 | MIT License
play

ActionScript3 source code

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

// forked from ton_'s リハビリその2
package {
    import flash.display.Sprite;
    import caurina.transitions.Tweener;
    public class FlashTest extends Sprite {
        private var ens:Array = new Array(40);
        public function FlashTest() {
            for(var i:int=0;i<40;i++){
                var r:int = Math.random()*30+10;
                var p:int = Math.random()*10;
                var c:uint = Math.random()*0xffffff;
                var x:int = Math.random()*465;
                var y:int = Math.random()*465;
                ens[i] = new makeCircle(r,p,c);
                ens[i].x = x; ens[i].y = y;
                ens[i].rotation = 45;
                addChild(ens[i]);
                tweenHandler1(ens[i]);
            }
        }
        private function tweenHandler1(en:Sprite):void{
            Tweener.addTween(en,{
                scaleX:0.5,
                scaleY:0.5,
                time:1,
                transition:"easeInOutCubic",
                onComplete:tweenHandler2,
                onCompleteParams: [en]
            });
        }
        private function tweenHandler2(en:Sprite):void{
            Tweener.addTween(en,{
                scaleX:1,
                scaleY:1,
                time:1,
                transition:"easeInOutCubic",
                onComplete:tweenHandler1,
                onCompleteParams: [en]
            });
        }
    }
}

import flash.display.Sprite;
class makeCircle extends Sprite {
        private var r:int = 20;
        private var xsin:int = 0;
        private var ycos:int = 0;
        public function makeCircle(r:int, p:int, c:int) {
            //半透明の円
            graphics.beginFill(c,0.3);
            graphics.lineStyle(1,0x000000,0);
            graphics.drawCircle(0,0,r*1.5);
            //パック○ン
            graphics.lineStyle(r/10,c,0.7);
            graphics.moveTo(Math.sin(270/180*Math.PI)*r,Math.cos(270/180*Math.PI)*r);
            for(var i:int=270;i>0;i--){
                xsin = Math.sin(i/180*Math.PI)*r;
                ycos = Math.cos(i/180*Math.PI)*r;
                graphics.lineTo(xsin,ycos);
            }
            graphics.lineTo(0,0);
            graphics.lineTo(Math.sin(270/180*Math.PI)*r,Math.cos(270/180*Math.PI)*r);
        }
}