flash on 2016-4-23

by mutantleg
♥0 | Line 52 | Modified 2016-04-23 22:47:55 | 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/WrSX
 */

package {
    import flash.geom.ColorTransform;
    import flash.geom.Point;
    
    import flash.geom.Rectangle;
    import flash.display.BitmapData;
    import flash.events.Event;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            
            skin = new BitmapData(64,64,false,0);
            skin.perlinNoise(8,8,13,8,true,true,7,true);
            canvas = new BitmapData(465,465, false, 0);
            
            skin2 = skin.clone();
            skin2.perlinNoise(5,9,4,18,true,true,7,true);         
            skin2.colorTransform(skin2.rect, new ColorTransform(0.5,0.5,0.5));
            
            stage.addEventListener(Event.ENTER_FRAME, onEnter);            
        }//ctor
        
        public var skin:BitmapData;
        public var skin2:BitmapData;

        public var canvas:BitmapData;
        public var rect:Rectangle = new Rectangle();
        public var pnt:Point = new Point();
        public var gt:int =0;
        
        
        public function onEnter(e:Event):void
        {
            graphics.clear();
            graphics.lineStyle(2, 0);
            
            
            canvas.fillRect(canvas.rect,0);
            //canvas.copyPixels(skin, skin.rect, pnt);
            
            
            rect.width=1;
            rect.height=64;
            rect.y=0;
            
            var i:int; var u:Number; var t:Number;
            var bm:BitmapData;
            u = 0;
            u = gt*0.08; gt+=1;
            for (i=0;i<465;i+=1)
            {
              rect.x=(i+gt)%64;
              
              t = Math.cos(u);
              pnt.x=i;

              pnt.y=235+32; 
              canvas.copyPixels(skin2,rect,pnt); 

              pnt.y = 235 + Math.sin(u)*Math.sin(gt*0.03)*32;//32;
              u+=0.02;
              //bm = t < 0.3 ? skin:skin2;
             // canvas.copyPixels(bm,rect,pnt); 
              canvas.copyPixels(skin,rect,pnt); 
                
            }//nexti
            
            
            
            graphics.beginBitmapFill(canvas, null,false,false);
             graphics.drawRect(0,0,465,465);
            graphics.endFill();
            
        }//onenter

    }//classend
}