Знаю, что тема старая, но автор попросил отписать [2etc]

Код:
Stage.align="TL"
Stage.scaleMode="noScale"
/* properties */
var moveObj:Object = new Object();
moveObj.int = 0; /* private */
moveObj.root = this; /* public ~ the root reference */
moveObj.stage = new Object(); /* private */
moveObj.data = new Object(); /* private */
moveObj.target = undefined; /* public ~ the target MovieClip reference, change it */
/* methods */
moveObj.initialize = function() {
moveObj.data.stage_width = Stage.width;
moveObj.data.stage_height = Stage.height;
Stage.addListener(moveObj.stage);
moveObj.int = setInterval(moveObj.move, 0);
};
moveObj.stage.onResize = function() {
moveObj.data.stage_width = Stage.width;
moveObj.data.stage_height = Stage.height;
if (moveObj.target._width<=0 && moveObj.target._height<=0) {
clearInterval(moveObj.int);
} else if(moveObj.target._width<=Stage.width && moveObj.target._height<=Stage.height){
clearInterval(moveObj.int);
}else{
clearInterval(moveObj.int);
moveObj.int = setInterval(moveObj.move, 0);
}
};
moveObj.move = function() {
var target_width = moveObj.target._width;
var target_height = moveObj.target._height;
var delta_width = moveObj.data.stage_width-target_width;
var delta_height = moveObj.data.stage_height-target_height;
var koef_x = delta_width/moveObj.data.stage_width;
var koef_y = delta_height/moveObj.data.stage_height;
moveObj.target._x = koef_x*moveObj.root._xmouse;
moveObj.target._y = koef_y*moveObj.root._ymouse;
};
/**/
moveObj.target=this.mc //set the target reference to the 'mc' MovieClip
moveObj.initialize(); //launch the engine