Mira esto que te pasé es una librería de clases, no un plugin y claro que puedes hacer animaciones sin utilizarla, como te dije anteriormente, puedes utilizar los Tweens de Adobe los cuales tienen un código mucho más complicado, y por último presenta poco rendimiento o también puedes programar los moviemientos tú, pero que te parece más complicado de los siguientes códigos:
Voy a mover el objeto hasta 200 píxeles antes del borde derecho de la pantalla en las "x" 100 píxeles del borde de abajo de la pantalla en las "y" y aumentando su escala al doble:
Con TweenMax:Código ActionScript :
var finX:Number = Stage.width - 200;
var finY:Number = Stage.height - 100;
TweenMax.to(objeto, 1, {_x:finX, _y:finY, _xscale:200, _yscale:200, ease:Cubic.easeOut});
Tween de Adobe:Código ActionScript :
var finX:Number = Stage.width - 200;
var finY:Number = Stage.height - 100;
var myTween:Tween;
myTween = new Tween(objeto, "_x", mx.transitions.easing.Cubic.easeOut,0, objeto._x, finX, false);
myTween = new Tween(objeto, "_y", mx.transitions.easing.Cubic.easeOut,0, objeto._y, finY, false);
myTween = new Tween(objeto, "_xscale", mx.transitions.easing.Cubic.easeOut,0, objeto._xscale, 200, false);
myTween = new Tween(objeto, "_yscale", mx.transitions.easing.Cubic.easeOut,0, objeto._yscale, 200, false);
A mano si lo programas tu:Código ActionScript :
var finX:Number = Stage.width - 200;
var finY:Number = Stage.height - 100;
this.onEnterFrame = function():Void{
var difX:Number = (finX - objeto._x) * .25;
var difY:Number = (finY - objeto._y) * .25;
var difScale:Number = (200 - objeto._xscale) * .25;
objeto._x += difX;
objeto._y += difY;
objeto._xscale += difScale;
objeto._yscale += difScale;
if(objeto._x == objeto.backup){
delete this.onEnterFrame;
}else{
objeto.backup = objeto._x;
}
}
Ya queda a desición tuya cuál utilizarás.
Y los movimientos como puedes ver se pueden hacer relativos en cualquiera de los tres casos.