flash on 2015-1-4

by mutantleg
♥0 | Line 50 | Modified 2015-01-04 17:31:25 | MIT License
play

ActionScript3 source code

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

package {
    import flash.events.Event;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            
            stage.addEventListener(Event.ENTER_FRAME, onEnter);
        }//ctor
        
        public var vecGrid:Vector.<int>;
                
        public var gt:int = 0;         
        public var mw:int = 12;
        public var mh:int = 8;
        public var cw:Number = 32;
        public var ch:Number = 32;
               
        public function onEnter(e:Event):void
        {
           graphics.clear();
           graphics.lineStyle(2, 0);
           
           var i:int; var num:int;
           var k:int; var m:int;

           if (vecGrid == null)
           {
             num = mw*mh;
             vecGrid = new Vector.<int>(num, false);              
             for (i =0; i <num;i++)  { vecGrid[i] = i; } 
             for (i =0; i<num;i++)
              {
                   m = Math.random() * num;
                   k = vecGrid[i];  vecGrid[i] = vecGrid[m]; vecGrid[m] = k;
              }
           }//endif
           

         
           num = mw * mh;
         
         gt += 3;                  
            
          var wt:int;
          wt = gt;
          if (gt > num)  { wt = num - (gt-num);   }
          if (gt >= num*2) { gt = 0; vecGrid = null; }
          
           var ax:Number; var ay:Number;
           if (num > wt) { num = wt; }
           for (i =0; i < num; i++)
           {
             k = vecGrid[i];
             ax = int(k % mw);
             ay = int(k / mw);
             graphics.beginFill(0,0.5);
             graphics.drawRect(ax*cw,ay*ch,cw,ch);
             graphics.endFill();   
           }//nexti
 
            
        }//onenter
        
        
    }//classend
}