class IsoObject extends MovieClip { private var __baseX:Number = Stage.width / 2; private var __baseY:Number = 0; private var __x:Number; private var __y:Number; public function IsoObject(Void) { } public function invalidate(Void):Void { onEnterFrame = redraw; } private function redraw(Void):Void { draw(); delete onEnterFrame; } public function draw(Void):Void { _x = __baseX + __x - __y; _y = __baseY + __x / 2 + __y / 2; this.swapDepths(__x * 10000 + __y); } public function set baseX(xArg:Number):Void { __baseX = xArg; invalidate(); } public function get baseX():Number { return __baseX; } public function set baseY(yArg:Number):Void { __baseY = yArg; invalidate(); } public function get baseY():Number { return __baseY; } public function set x(xArg:Number):Void { __x = xArg; invalidate(); } public function get x():Number { return __x; } public function set y(yArg:Number):Void { __y = yArg; invalidate(); } public function get y():Number { return __y; } }