package tonyu; import flash.display.BitmapData; import flash.display.Bitmap; class Actor { var state:Int; public var x:Float; public var y:Float; public var p:Float; public var text:String; private var dead:Bool; //public var vx:Float; //public var vy:Float; var tf: flash.text.TextField; var bm: Bitmap; function crashTo(t:Actor):Bool{ return Math.abs(t.x-x)+Math.abs(t.y-y)<16; } public function draw() { if (tf!=null) { tf.x=x; tf.y=y; tf.text=text; } if (bm!=null) { bm.x=x; bm.y=y; bm.bitmapData=PatternSequencer.pats[Math.floor(p)]; } } public function getkey(k:Int):Int { return Boot.keys[k]; } public function new () { tf=new flash.text.TextField(); tf.text="o"; p=3; bm=new Bitmap(PatternSequencer.pats[Math.floor(p)]); text="o"; state=0; dead=false; flash.Lib.current.addChild(tf); flash.Lib.current.addChild(bm); Boot.chars.push(this); } public function move() {} public function abs(a:Float):Float { return Math.abs(a); } public function rnd(a:Float=0): Float { if (a==0) return Math.random(); return Math.floor(Math.random()*a); } public function terminateProc() {die();} public function die() { dead=true; if (tf!=null) flash.Lib.current.removeChild(tf); if (bm!=null) flash.Lib.current.removeChild(bm); tf=null; bm=null; } public function isDead():Bool { return dead; } /*public function crashTo(t:Actor):Bool { var dx=t.x-x; var dy=t.y-y; return (dx*dx+dy*dy<64); }*/ }