flash on 2015-8-5
♥0 |
Line 53 |
Modified 2015-08-05 01:26:05 |
MIT License
archived:2017-03-30 11:44:26
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/lxbP
*/
package {
import flash.text.TextField;
import flash.ui.Keyboard;
import flash.events.KeyboardEvent;
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;
deb.x=8; deb.y= 300;
addChild(deb);
stage.addEventListener(KeyboardEvent.KEY_DOWN, onKdown);
stage.addEventListener(KeyboardEvent.KEY_UP, onKup);
stage.addEventListener(Event.ENTER_FRAME, onEnter);
}//ctor
public function onKdown(e:KeyboardEvent):void { vecKey[e.keyCode] = true; }
public function onKup(e:KeyboardEvent):void { vecKey[e.keyCode]=false;}
public function isKeyDown(k:int):Boolean { if(k<0||k>=512){return false;} return vecKey[k];}
public var vecKey:Vector.<Boolean> = new Vector.<Boolean>(512,false);
public var cx:Number = 128; public var cy:Number = 128;
public var gx:Number = 180; public var gy:Number = 180;
public var gover:int = 0;
public var deb:TextField;
public function isInside(ax:Number, ay:Number, rx:Number,ry:Number, rw:Number,rh:Number):Boolean
{ return ( (ax < rx-rw) ||(ay < ry-rh) || (ax >rx+rw) || (ay >ry+rh) ) == false; }
public function isOver(ax:Number, ay:Number, aw:Number,ah:Number, rx:Number,ry:Number, rw:Number,rh:Number):Boolean
{ return ( (ax+aw < rx-rw) ||(ay+ah < ry-rh) || (ax-aw >rx+rw) || (ay-ah >ry+rh) ) == false; }
public function onEnter(e:Event):void
{
graphics.clear();
graphics.lineStyle(2, 0);
graphics.drawRect(8,8, 256, 256);
var ms:Number; ms=8;
if (isKeyDown(38)) { cy -= ms; }
if (isKeyDown(40)) { cy += ms; }
if (isKeyDown(37)) { cx -= ms; }
if (isKeyDown(39)) { cx += ms; }
graphics.drawCircle(cx,cy, 16);
graphics.drawCircle(gx,gy, 16);
if (isInside(cx,cy,8,8,256,256))
{ graphics.drawCircle(cx,cy, 14); }
if (isOver(cx,cy,16,16, gx,gy,16,16))
{
graphics.drawRect(gx-16,gy-16,32,32);
if (gover ==0) { gover = 1; deb.text="234895718932129382387283728372837823728981285"; }
}
else { gover = 0; }
if (gover==0) {deb.alpha-=0.04; if (deb.alpha<0){deb.alpha=0;} } else { deb.alpha += 0.1; if (deb.alpha>1){deb.alpha=1;} }
}//onenter
}//classend
}