Estuve utilizando easign_ecuations.as para poder hacer un efecto de zoom en mis animaciones. Sinceramente no me acuerdo de donde saque unos prototypes para mover los MovieClips y estos, utilizan ese archivo .as. El problema es que solo funciona si compilo el proyecto como AS1, y si intento compilarlo con AS2 me da un monton de errores tales como:


**Error** Escena=Escena 1, capa=AS, fotograma=1:Línea 41: No hay ninguna propiedad que lleve por nombre 'linear'.

**Error** Escena=Escena 1, capa=AS, fotograma=1:Línea 51: No hay ninguna propiedad que lleve por nombre 'easeinquad'.

El archivo que incluyo en mi proyecto es el siguiente:

Código :

//----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
//  Prototype para aplicar a un clip donde le asignas las propiededes y la ecuacion de penner q quierres aplicar
//  Puedes meter la cantidad de propiedades q quierras
//  cuando se acabe el movimiento llamara a una function (si quieres...)
//  uso:
//  miClip.mover("tipo de ecuacion",duracion en frames,tiempo de espera en frames ,{propiedades a mover},[llamar funcion ,[parametro1,perametro2]])
//  o si quierres llamar a una function sin parametros :
//  miClip.mover("tipo de ecuacion",duracion en frames,tiempo de espera en sg,{propiedades a mover},llamar funcion )
//  o directamente sin function
//  miClip.mover("tipo de ecuacion",duracion en frames,tiempo de espera en frames ,{propiedades a mover})
//
//  tambien puedes usar el evento "onFinMover" (poner el evento antes de llamar a mover) :
//  MiClip.onFinMover = function() {trace("se acabo el movimiento ......");};
//  MiClip.mover("easeInQuad",100,0,{_x:_root._xmouse, _y:_root._ymouse} );
//
//  Si quierres añadir algun parametro mas a una ecuacion (Elastic,Back):
//  miClip.mover(["easeOutElastic",10,2], 30, 0, {_xscale:110, _yscale:110});
// 
//  nota: me inspire de este code http://proto.layer51.com/d.aspx?f=1200
//                                                         by buho29
//----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
//                                 tipos de ecuaciones de penner:
//  linearTween, 
//  easeInQuad, easeOutQuad, easeInOutQuad,
//  easeInCubic,easeOutCubic, easeInOutCubic, 
//  easeInQuart, easeOutQuart, easeInOutQuart,
//  easeInQuint, easeOutQuint, easeInOutQuint, 
//  easeInSine, easeOutSine,easeInOutSine, 
//  easeInExpo, easeOutExpo, easeInOutExpo, 
//  easeInCirc,easeOutCirc, easeInOutCirc, 
//  easeInElastic, easeOutElastic, easeInOutElastic,
//  easeInBack, easeOutBack, easeInOutBack, 
//  easeInBounce, easeOutBounce, easeInOutBounce,
//----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

MovieClip.prototype.mover = function() {
   //inicio de variables
   this.distancia = new Object();
   this.valorIni = new Object();
   if (arguments[0] instanceof Object) {
      this.tipo = arguments[0][0];
      this.parametro1 = arguments[0][1]
      this.parametro2 = arguments[0][2]
   }else{
      this.tipo = arguments[0];
   }
   this.duracion = arguments[1];
   this.valoresFinal = arguments[3];
   //difiniendo si tendra parametros la funcion a q se le llamara cuando se acabe el movimiento
   if (arguments[4] instanceof Function) {
      this.alAcabar = arguments[4];
   } else {
      this.alAcabar = arguments[4][0];
      this.alAcabarParam = arguments[4][1];
      this.alAcabarTarget = arguments[4][2];
   }
   //reset contador
   this.contador = 0;
   //valores iniciales
   for (var prop in this.valoresFinal) {
      this.valorIni[prop] = this[prop];
      this.distancia[prop] = this.valoresFinal[prop]-this[prop];
   }
   //temporizador
   var tiempoActual = 0;
   var temporizador = arguments[2];
   //moviendo...
   this.onEnterFrame = function() {
      if (tiempoActual++>temporizador) {
         if (this.contador<this.duracion) {
            this.contador++;
            for (var prop in this.valoresFinal) {
               this[prop] = Math[this.tipo](this.contador, this.valorIni[prop], this.distancia[prop], this.duracion,this.parametro1,this.parametro2);
            }
         } else {
            delete this.onEnterFrame;
            delete this.contador
            delete this.valoresFinal
            delete this.duracion
            delete this.tipo
            delete this.valorIni
            delete this.distancia
            this.alAcabar.apply(((this.alAcabarTarget == undefined) ? this : this.alAcabarTarget), this.alAcabarParam);
            this.onFinMover();
         }
      }
   };
};
//----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
//        para mover de un tiron varias propiedades
// uso: MiClip.moverIni({propiedad1:valor1, propiedad2:valor2,ect...})
MovieClip.prototype.moverIni = function(valores) {
   for (var prop in valores) {
      this[prop] = valores[prop];
   }
};

//  ejemplos de uso
//  
/*funcionAcabar = function () {
   trace("Mis parametros     "+arguments.join());
   trace("Mi posicion es  X:"+this._x+" Y:"+this._y);
};

this.onMouseDown = function() {
   MiClip.mover("easeInQuad", 100, 1, {_x:_root._xmouse, _y:_root._ymouse}, [funcionAcabar, ["loq sea", "loq sea 2"]]);
   //MiClip.mover("easeInQuad",100,0,{_x:_root._xmouse, _y:_root._ymouse},funcionAcabar );
   //MiClip.moverIni({_x:_root._xmouse, _y:_root._ymouse})
};

//otro ejemplo:
this.onMouseDown = function() {
   MiClip.moverIni({_xscale:0, _yscale:0})
   MiClip.mover("easeOutElastic", 100, 1, {_xscale:100, _yscale:100,_x:_root._xmouse, _y:_root._ymouse}, [funcionAcabar, ["loq sea", "loq sea 2"]]);
};

//  otro mas

funcionAcabar1 = function () {
   MiClip.mover("easeInQuad", 100, 0, {_x:100, _y:400}, funcionAcabar2);
   trace("funcionAcabar1");
};
funcionAcabar2 = function () {
   trace("Mi posicion2 es  X:"+this._x+" Y:"+this._y);
   MiClip.mover("easeInQuad", 100, 0, {_x:400, _y:100}, funcionAcabar1);
   trace("funcionAcabar2");
};
funcionAcabar1();

*/
trace ("-- movimiento loaded --");


Si alguien puede ayudarme se lo agradeceria.