flash on 2015-1-24

by mutantleg
♥0 | Line 66 | Modified 2015-01-24 04:14:36 | 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/rrDX
 */

package {
    import flash.text.TextField;
    import flash.events.MouseEvent;
    import flash.events.Event;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {

          deb = new TextField();
          deb.width =320; deb.height = 240;
          deb.mouseEnabled = false;
          addChild(deb);

           cx = 230; cy = 230;

           //ky = 100;
           

           stage.addEventListener(MouseEvent.CLICK, onClick);
           stage.addEventListener(Event.ENTER_FRAME, onEnter);            
        }//ctor
        
        public function onClick(e:MouseEvent):void { cx = stage.mouseX; cy = stage.mouseY; }
        
        public var deb:TextField;
        
        public var ww:Number = 465;
        public var wh:Number = 465;
        
        public var cx:Number = 0;
        public var cy:Number = 0;
        
        public var sx:Number = 0;
        public var sy:Number = 0;
        
        public var kx:Number = 0; 
        public var ky:Number = 0;
        public var kr:Number = 64;
        
        public function onEnter(e:Event):void
        {
            graphics.clear();
            graphics.lineStyle(2, 0);

            
            sx = cx - 230; sy = cy-230;
            sx =0; sy=0;
            
            graphics.drawRect(0-sx,0-sy,465,465);
            
            graphics.drawCircle(cx-sx,cy-sy, 8); 
            
            
            graphics.drawCircle(kx-sx,ky-sy, kr);
            
            graphics.drawCircle(kx+ww-sx,ky+wh-sy, kr);
            graphics.drawCircle(kx+ww-sx,ky-sy, kr);
            graphics.drawCircle(kx-sx,ky+wh-sy, kr);
           
           var wallHit:int; 
            var d:Number;
            wallHit = 0;
            d = getMag(cx-kx, cy-ky); if (d < (kr+8)) { wallHit = 1;}
            deb.text = " " + d;
            
            var ax:Number; var ay:Number;
            ax = kx + ww; if (ax > ww) { ax -= ww; }
            ay = ky + wh; if (ay > wh) { ay -= wh; }
            
            d = getMag(cx-(ax), cy-(ay));            deb.appendText("\n"+d);
            if (d < (kr+8)) { wallHit = 2;}
            d = getMag(cx-(kx), cy-(ay));            deb.appendText("\n"+d);
            if (d < (kr+8)) { wallHit = 4;}
            d = getMag(cx-(ax), cy-(ky));            deb.appendText("\n"+d);
            if (d < (kr+8)) { wallHit = 8;}
            
            if (wallHit > 0)
            {
              graphics.beginFill(0, 1);
                graphics.drawCircle(cx-sx,cy-sy, 8); 
              graphics.endFill();
            }


             graphics.lineStyle(2 ,0, 0.5);
             graphics.drawCircle(cx,cy, 8);
             graphics.drawCircle(kx,ky, kr);
            
        }//onenter
        
        
        public function getMag(ax:Number, ay:Number):Number
        { return Math.sqrt(ax*ax+ay*ay);}
        
        
        
        
    }//classend
}

Forked