He estado tratando de darle animación a una imagen y bueno encontré un código q funciona bien, pero lo que yo deseo es que la animación siga rotando osea que la animación de vuelta. Pero el código lo hace pero tiene un botón donde hay que dar click para q vuelva a empezar, no si me dejo entender... bueno hay les dejo el código
 
MovieClip.prototype.drawCircle = function (radius, x, y) {
	var angleDelta = Math.PI / 4;
	var ctrlDist = radius/Math.cos(angleDelta/2);
	var angle = 0;
	var rx, ry, ax, ay;
	this.moveTo(x + radius, y);
	for (var i = 0; i < 8; i++) {
		angle += angleDelta;
		rx = x + Math.cos(angle-(angleDelta/2))*(ctrlDist);
		ry = y + Math.sin(angle-(angleDelta/2))*(ctrlDist);	
		ax = x + Math.cos(angle)*radius;
		ay = y + Math.sin(angle)*radius;
		this.curveTo(rx, ry, ax, ay);
	}
}
 
MovieClip.prototype.enmascarar = function(radio){
	this._alpha = 0;
	var prof:Number = _root.getNextHighestDepth(); 		// Profundidad de los clips a usar
	var ancho:Number = this._width;						// Ancho del clip a enmascarar
	var alto:Number = this._height;						// Alto del clip a enmascarar
	var cx:Number = Math.floor(ancho/(radio*2))+2;		// Número de círculos por fila
	var cy:Number = Math.floor(alto/radio)+1;			// Número de círculos por columna
	var cant:Number = cx * cy+cx;						// Cantidad total de círculos
	var destino:MovieClip = this;						// Identificador del clip
	_root.createEmptyMovieClip("maskareitor",prof);		// Creamos el clip de la máscara
	prof++;												// Profundidad más
	var x:Number = 0									// Columna q le toca a cada círculo
	var y:Number=1										// Fila que le toca a cada círculo
	var d:MovieClip;									// Identificador del círculo
	var control:Number = 0;
	diagonal = 0, posDiag = 1;
	for(i=1;i<(cant+1);i++){							// Bucle de creación de los círculos
		_root.maskareitor.createEmptyMovieClip("circulo" + i,prof);	// Creamos el clip vacío
		d = _root.maskareitor["circulo" + i];			// Identificador del círculo actual
		d._x = x;										// Calculamos la posición X
		d._y = radio*(y-1);								// Calculamos la posición Y
		d.i = i;										// Asignamos el número
 
		// Fórmulas para controlar el orden de aparición
		d.orden = diagonal+posDiag;
		posDiag++;
		if(posDiag%(cx) == 0){
			posDiag = 1;
			diagonal +=0.5;
		}
		// d.orden = random(cant); <-- para hacerlos aleatorios
		//--------------------------------------------------------
 
		// POSICIONAMIENTO----------------------------------------
		if(y%2!=0){
			x+=(radio*2);
			if(i%(cx)==0 && i!=0){
				x=-radio;
				y++;
			}
		}else{
			x+=(radio*2);
			if(i%(cx)==0){
				x = 0;
				y++;
			}
		}	
		//---------------------------------------------------------
		//---------------------------------------------------------
		d.beginFill(0xFF0000,100);			// Dibujamos el círculo
		d.drawCircle(radio,0,0);
		d.endFill();
		prof++;
		d._xscale = 0;						// Lo escalamos a 0
		d._yscale = 0;
		d.tiempo = 0;							// Temporizador
		d.onEnterFrame = function(){
			if(this.tiempo == this.orden){		// Si le toca agrandarse
				if(this._xscale <100){
					this._xscale += (101-this._xscale)/7;
					this._yscale = this._xscale;
				}else{
					delete this.onEnterFrame;
					control +=100;
					if(control == (cant*100)){
						_root.maskareitor.removeMovieClip();	// Borra la máscara madre
						destino.setMask(null);					// Quita máscara						
						//trace("fin");
					}
				}
			}else{
				this.tiempo +=0.5;
			}			
		}
 
	}	
	this.setMask(_root.maskareitor);
	this._alpha = 100;
}
c1.enmascarar(17);
btnRepetir.onRelease = function(){
	if(!isNaN(radiorr)){
		if(radiorr>=1){
			_root.c1.enmascarar(Number(radiorr));
		}
	}
}
 
 
Espero me puedan ayudar...  les agradeceria muxo.. soy nueva en el foro y tambien en flash y actionscript.... 
  
 
