flash on 2014-11-23

by mutantleg
♥0 | Line 68 | Modified 2014-11-23 06:54:00 | 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/4ugS
 */

package {
    import flash.geom.Point;
    import flash.events.Event;
    import flash.geom.Matrix;
    import flash.display.BitmapData;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            
            img = getImg(strTest);
            img2 = getImg(strTest2);
            
            /*
            graphics.clear();
            //graphics.beginBitmapFill(img, new Matrix(8,0,0,8),false,false);
            graphics.beginBitmapFill(img,null,true,false);
                graphics.drawRect(0,0,430,430);
            graphics.endFill();
            */
         //   graphics.beginBitmapFill(canvas);
         //       graphics.drawRect(0,0,320,240);
         //   graphics.endFill();
            
            stage.addEventListener(Event.ENTER_FRAME, onEnter);
        }//ctor
        
        public var canvas:BitmapData = new BitmapData(320,240,false,0);
     
         public function onEnter(e:Event):void
         {
          graphics.clear();   
             
          drawImage(canvas,img, int(Math.random()*32)*8,int(Math.random()*32)*8);   
          drawImage(canvas,img2, int(Math.random()*32)*8,int(Math.random()*32)*8);   


            graphics.beginBitmapFill(canvas);
                graphics.drawRect(0,0,320,240);
            graphics.endFill();
             
         }//onenter   
        
               
        public var dp:Point = new Point();
        public function drawImage(to:BitmapData, spr:BitmapData, ax:Number, ay:Number):void
        {
          if (ax < -spr.width) { return; }      if (ay < -spr.height) { return; }
          if (ax > to.width) { return; }      if (ay > to.height) { return; }   
          dp.x = ax;        dp.y = ay;
          to.copyPixels(spr, spr.rect, dp); 
        }//drawimage

        public var img:BitmapData;
        public var img2:BitmapData;
        
        
        public var strTest:String =
         "_XXXXXX_"+
         "X______X"+
         "X_X__X_X"+
         "X______X"+
         "X_XXXX_X"+
         "X__XX__X"+
         "X______X"+        
         "_XXXXXX_";
         
        public var strTest2:String =
         "_XXXXXX_"+
         "XXXXXXXX"+
         "XX_XX_XX"+
         "XXXXXXXX"+
         "XX____XX"+
         "XXX__XXX"+
         "XXXXXXXX"+        
         "_XXXXXX_";
   
   
         
         public function getImg(str:String):BitmapData
         {
            var ret:BitmapData;
            var w:int;   var h:int;
            var k:int; var i:int; var  yt:int;
            w= 8; h =8;
            
            ret = new BitmapData(w,h,false,0);
            
            for (i = 0; i < h; i++)
            { yt = i * w;
             for (k = 0; k < w; k++)
             {   
               if (str.charAt(yt+k) =="X") { ret.setPixel(k,i,0xFFffFFff); }
             
             }//nextk   
            }//nexti
             
             return ret;
         }//getimg
         
        
        
    }//classend
}