[練習中]

by Tamanegi_kenshi
Test
stage.addEventListener(MouseEvent.CLICK, onClick);
init
for(var i:int = 0; i < 3; i++){
} 
class
package
♥0 | Line 92 | Modified 2010-08-18 02:36:37 | MIT License
play

ActionScript3 source code

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

package{
    import flash.display.Sprite;
    import flash.events.*;
    import flash.ui.Mouse;
    import caurina.transitions.Tweener;
    
    [SWF(backgroundColor=0x000000)]
    
    public class Test extends Sprite{
        
        private var sprite:Sprite;
        private var vr:Number  = 0.05;
        private var cos:Number = Math.cos(vr);
        private var sin:Number = Math.sin(vr);
        private var centerX:Number = 465 / 2;
        private var centerY:Number = 465 / 2;
        private var spriteArr:Array = [];
        private var num:Number = 0;
    

        public function Test(){
            init();
            
        }//Test
        private function init():void{
            Mouse.hide();
            for(var i:int = 0; i < 1; i++){
            sprite = new Sprite();
            sprite.x = Math.random() * 465;
            sprite.y = Math.random() * 465;
            spriteArr.push(sprite);
            
            
         //   stage.addEventListener(MouseEvent.CLICK, onClick);
            sprite.addEventListener(Event.ENTER_FRAME, onEnter);
            }
        }//init
        
        private function onClick(event:MouseEvent):void{
            onBallMove();
        }

        private function onBallMove():void{
            
        

            //for(var i:int = 0; i < 3; i++){
            var ball:Ball = new Ball();
            addChild(ball);
            
            ball.x = spriteArr[0].x;
            ball.y = spriteArr[0].y;
           // } 
        }
        private function onEnter(event:Event):void{
         
            
            var x1:Number = event.target.x - centerX;
            var y1:Number = event.target.y - centerY;
            var x2:Number = cos * x1 - sin * y1;
            var y2:Number = cos * y1 + sin * x1;
            
            event.target.x = x2 + centerX;
            event.target.y = y2 + centerY;
            
            
  
            onBallMove();
        }


    }//class

}
import flash.display.MovieClip;
import flash.media.Sound;//package


/*



package {
    import flash.geom.ColorTransform;
    import flash.events.*;
    import flash.display.Sprite;
    import flash.events.TimerEvent;
    import flash.utils.Timer;
    import gs.TweenMax;
    import gs.easing.*;
    import flash.display.Bitmap;
    import flash.display.BitmapData;

    
    public class FlashTest extends Sprite {
        
     //星を配置するSprite(実際に表示はさせない)
private var temp:Sprite;
//ステージと同じ大きさで黒色のビットマップデータ
private var bmd:BitmapData;
//ビットマップデータを関連付けてビットマップを表示
private var bmp:Bitmap;


//色を消していくためのColorTransform設定
private var ctf:ColorTransform;   
        
    

        public function FlashTest() {
            init();
        }
    
private function init():void{
temp = new Sprite();
//ステージと同じ大きさで黒色のビットマップデータ
bmd = new BitmapData(400, 300, false, 0x00000000);
//ビットマップデータを関連付けてビットマップを表示
bmp = new Bitmap(bmd);
addChild(bmp);

//色を消していくためのColorTransform設定
ctf = new ColorTransform(0.9, 0.9, 0.92);
//マウスを動かすと星をつくるイベント追加
stage.addEventListener(MouseEvent.MOUSE_MOVE, onMove);
//毎フレーム実行されるイベント追加
addEventListener(Event.ENTER_FRAME, loop);

    }//init
    
private function onMove(e:MouseEvent):void {
    //星作成
    var star:Ball = new Ball();
    //星の初期位置
    star.x = mouseX;
    star.y = mouseY;
    //Spriteに星を追加
    temp.addChild( star );

    //星の目標地点設定
    var tx:Number = star.x + Math.random() * 50 - 25;
    var ty:Number = star.y + Math.random() * 50 - 25;
    //目標角度設定
    var rot:Number = Math.random() * 360 - 180;

    //トゥイーン設定
    TweenMax.to(star, 2, {                 //星を2秒間で
                alpha: 0, x: tx, y: ty,    //透明度0、位置を目標地点に
                scaleX: 2, scaleY: 2,      //大きさを4倍に
                rotation: rot,             //角度を目標角度に
                //グローフィルターをかける
                glowFilter:{color:0xff00ff, alpha:1, blurX:10, blurY:10},
                onComplete: removeStar,    //トゥイーンが終わったら
                onCompleteParams: [star]}  //removeStar実行
    );

    function removeStar(star:Ball):void {
        //starを削除
        temp.removeChild(star);
    }
}


private function loop(e:Event):void {
    //ビットマップデータにtempを写して表示させる
    bmd.draw(temp);
    //ColorTransformの赤の乗数値を変化(0.8~0.9でループ)
 //   (ctf.redMultiplier > 0.9)? ctf.redMultiplier = 0.8 : ctf.redMultiplier += 0.01;
    //ビットマップデータにカラー変換を適用
    bmd.colorTransform(bmd.rect, ctf);
}
    }
}
    
   
        private function init():void{
            
            
           stage.addEventListener(MouseEvent.CLICK, onMove);
        }
        private function onMove(event:MouseEvent):void{
            
            var ball:Ball = new Ball();
            addChild(ball);
            ball.x = mouseX;
            ball.y = mouseY;
            
            TweenMax.to(ball, 1, {x:5,scsleX:4, scaleY:4, alpha:1, onComplete:remo});
            
           function remo():void{
                removeChild(ball);
            }

           
        }


    }
}
*/


import flash.display.Sprite;
import flash.events.*;

//import gs.TweenMax;

//import caurina.transitions.Tweener;
class Ball extends Sprite{
    
    private var rote:Number;
    private var mokuX:Number;
    private var mokuY:Number;
    private var scal:int;
 //   private var mokuX:Number;
 //   private var mokuY:Number;
    
    function Ball(){
    init();
    }
    private function init():void{
        
        var bal:Sprite = new Sprite();
        
        var color:uint = Math.random() * 0xffffff;
        
       
        bal.graphics.beginFill(color);
         bal.graphics.lineStyle(0);
        bal.graphics.moveTo(0, -3);
        bal.graphics.curveTo(0, 0, 3, 0);
        bal.graphics.curveTo(0, 0, 0, 3);
        bal.graphics.curveTo(0, 0, -3, 0);
        bal.graphics.curveTo(0, 0, 0, -3);
                
        
        //bal.graphics.beginFill(color);
        //bal.graphics.drawRect(0, 0, 10, 10);
        bal.graphics.endFill();
        
        rote = Math.random() * 720 - 360;
        mokuX = Math.random() * 930 - 465;
        mokuY = Math.random() * 930 - 465;
        scal = Math.floor(Math.random() * 20);
        
        addChild(bal);
        
       bal.addEventListener(Event.ENTER_FRAME, balEnter);
        //Tweener.addTween(bal, { scaleX:scal, scaleY:scal, rotation:rote, alpha:0, time:3, onComplete:removeBall});
        ///function removeBall():void{
        //   this.parent.removeChild(bal);
       // } 
    }
  public function balEnter(event:Event):void{
        var vrote:Number = (rote - event.target.rotation) * 0.1;
        event.target.rotation += vrote;
        
        var valpha:Number = (0 - event.target.alpha) * 0.1;
        event.target.alpha += valpha;
        

        var vsX:Number = (scal - event.target.scaleX) * 0.1;
        var vxY:Number = (scal - event.target.scaleY) * 0.4;
        event.target.scaleX += vsX;
        event.target.scaleY += vxY;
        if(event.target.scaleX >= scal - 2 || event.target.alpha < 0.01){
           removeChild(this);
            
           
       }

   }


}