Encontré código de ejemplos en la web y lo probé en dos películas por separado, hasta ahí todo ok.
El tema está en que en una tercera película coloqué en una acción del primer fotorgrama lo que está en una de las películas y en la acción del segundo fotograma puse la segunda película. Cuando presiono CTRL + F3 veo bien la primera acción y la segunda no aparece.
El código de la acción correspondiente del primer fotograma es:
Código:
y el del segundo es: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){ var radio:Number = 17; 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); //Poner en el fotograma donde queramos hacer la pausa stop(); x = 3; //valor en segundos de la pausa //En este caso, cada 5000 milisegundos //llamamos a la función pausa miIntervalo = setInterval(pausa, x*1000); function pausa(){ //borramos miIntervalo clearInterval(miIntervalo); //avanzamos al siguiente frame nextFrame(); }
Código:
Desde yá agradezco las respuestas.//proto q movera las letras MovieClip.prototype.carusel = function() { this.onEnterFrame = function() { if (_root._xmouse>centrox) { direccion = -1; } else { direccion = 1; } velocidad = Math.abs((_root._xmouse-centrox)/(275/velocidadmaxima)); this.angulo += (velocidad*direccion); this._x = centrox+Math.cos((Math.PI/180)*this.angulo)*2*radio; this._y = centroy+Math.sin((Math.PI/180)*this.angulo*7)*radio/-10; this.z = Math.sin((Math.PI/180)*this.angulo)*radio; this._alpha = this._yscale=this._xscale=(100*distanciafocal)/(distanciafocal+this.z); }; }; //para ir sumando la profundidad function maxprofundidad() { return ++profundidad; } //inicio variables centrox = 500/2; centroy = 500/2; radio = 100; velocidadmaxima = 3; distanciafocal = 180; listaLetras = new Array(); //creando los titulos //titulos.text = ".: Escribe cualquier tonteria en el campo de texto :. "; titulos =" Esto es una prueba "; //creando los clips q contendran las letras function creaLetras() { var letras = new Array(); for (var i = 0; i<=titulos.length; i++) { letras[i] = titulos.substr(i, 1); var letra = this.attachMovie("letrita", "letrita"+i, i+1); letra.angulo = Math.round((360/titulos.length)*i); letra.contenido.text = letras[i]; letra.carusel(); listaLetras.push(letra); } } function borraLetras() { trace(listaLetras.length); for (var i = 0; i<listaLetras.length; i++) listaLetras[i].removeMovieClip(); listaLetras = []; profundidad = 1; } creaLetras(); stop();
Saludos