ひっと

ランダムな整数値を生成する ~Math.floorとMath.random~ (AS3)

~ Flashアプリ、ゲームのためのAS3サンプルプログラム集 ~

ランダム値の生成

サイコロのように、1から6の値をランダムに生成するサンプルです。
ランダム値の生成にはMath.floorとMath.randomを使います。

Math.randomは0以上1未満の範囲で乱数を生成します。
これを任意な値で整数倍したあとでMath.floorを使って小数点を切り捨てます。

AS3 サンプル ソースコード


package
{
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.text.TextField;
    
    [SWF(width="400", height="300", frameRate="30")]
    public class Main extends Sprite
    {
        public var tf:TextField;
        public var time:int;
        
        public function Main()
        {
            stage.addEventListener(Event.ENTER_FRAME, OnEnterFrame);
            
            tf = new TextField(); 
            tf.scaleX = 10;
            tf.scaleY = 10;
            this.addChild(tf);
            
            time = 0;
        }
        
        private function OnEnterFrame(e:Event):void
        {
            time--;
            if(time <=0 ) {
                
              //0から5の範囲でランダムな値が生成される。
              var num:int = Math.floor( Math.random() * 6 );
            	
                //1足して範囲を1から6にする
                num +=1;
                
                tf.text = num.toString(); 
                
                time = 30;
            }
        }
    }
}

目次へ
57801