あああああ

by mrgrotesque
♥0 | Line 76 | Modified 2010-08-04 20:10:58 | MIT License
play

ActionScript3 source code

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

package
{
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.events.Event;
    import flash.text.TextField;
    import flash.display.Sprite;
    
    [SWF(width="465", height="465", frameRate="60" )] 
    
    public class Main extends Sprite
    {
        private var bmds:Vector.<Bitmap> = new Vector.<Bitmap>();
        
        public function Main()
        {
            for( var i:int = 0; i< 20; i++ )
            {
                var charSpr:CharSpr = new CharSpr("あ");
                charSpr.x = stage.stageWidth/2;
                charSpr.y = stage.stageHeight/2;
                charSpr.vx = Math.random() * 10;
                charSpr.vy = Math.random() * 10;
                charSpr.vRotate = (Math.random()-0.5) * 10;
                addChild( charSpr );
            }
            
            addEventListener( Event.ENTER_FRAME, enterFrame );           
        }
        
        private function enterFrame( e:Event ):void
        {
            for each( var v:CharSpr in CharSpr.list )
            {
                v.update();
            }
        }
    }
}
import flash.geom.Point;
import flash.filters.BlurFilter;
import flash.display.BlendMode;

import flash.display.Sprite;
import flash.display.BitmapData;
import flash.text.TextField;
import flash.display.Bitmap;

class CharSpr extends Sprite
{
    public static const list:Vector.<CharSpr> = new Vector.<CharSpr>();
    
    public var vx:Number;
    public var vy:Number;
    public var vScale:Number = 0.01;
    public var vRotate:Number = 0;
    public var bitmap:Bitmap;
    
    public function CharSpr( char:String )
    {
        var tf:TextField = new TextField();
        tf.text = char.charAt(0);
        tf.scaleX *= 16;
        tf.scaleY *= 16;
        var sprite:Sprite = new Sprite();
        sprite.addChild( tf );
        var bmd:BitmapData = new BitmapData( sprite.width, sprite.height, true, 0 );
        bmd.draw( sprite );
        bitmap = new Bitmap( bmd );
        bitmap.x = -bitmap.width / 2;
        bitmap.y = -bitmap.width / 2;
        addChild( bitmap );

        list.push( this );

        scaleX = 0.1;
        scaleY = 0.1;
    }
    
    public function update():void
    {
        x += vx;
        y += vy;
        scaleX += vScale;
        scaleY += vScale;
        rotation += vRotate;
    }
}