tweenリハビリ3

by Nowloading_
一周させたいときにはtweenerが二つ必要?なの?
♥0 | Line 51 | Modified 2013-10-09 23:06:23 | 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/iaZ5
 */

package{
    import flash.display.Sprite;
    import caurina.transitions.Tweener;
    public class FlashTest extends Sprite {
        private var rotest:makeCircle;
        public function FlashTest() {
            rotest = new makeCircle(60,0,0xff0000);
            rotest.x = 233; rotest.y = 233;
            addChild(rotest);
            tweenHandler1(rotest);
        }
        private function tweenHandler1(en:Sprite):void{
            Tweener.addTween(en,{
                time:1,
                rotation:+180,
                transition:"linear",
                onComplete:tweenHandler2,
                onCompleteParams: [en]
            });
        }
        private function tweenHandler2(en:Sprite):void{
            Tweener.addTween(en,{
                time:1,
                rotation:360,
                transition:"linear",
                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);
        }
}