Foros del Web » Creando para Internet » Flash y Actionscript »

crossfade

Estas en el tema de crossfade en el foro de Flash y Actionscript en Foros del Web. Hola, tenía un cross fade (transición de desvanecimiento) entre una foto y otra, pero ahora quiero que esta transición se de con un marco gráfico ...
  #1 (permalink)  
Antiguo 05/09/2009, 13:51
 
Fecha de Ingreso: agosto-2007
Mensajes: 114
Antigüedad: 16 años, 8 meses
Puntos: 1
Pregunta crossfade

Hola, tenía un cross fade (transición de desvanecimiento) entre una foto y otra, pero ahora quiero que esta transición se de con un marco gráfico y cuando lo sumo al flash me aparece este marco al prinicipio y luego se desvanece y quedan las fotos cuadradas, sin este bordeado especial que le armé. Cómo puedo hacer para que este marco no se desvanezca y esté siempre visible, que sólo cambien las fotos que se muestran dentro.
Espero haber sido clara.
Saludos y gracias.
  #2 (permalink)  
Antiguo 05/09/2009, 13:57
Avatar de Diegoazul  
Fecha de Ingreso: mayo-2007
Ubicación: { Dash Berlin }
Mensajes: 1.879
Antigüedad: 17 años
Puntos: 67
Respuesta: crossfade

Coloca el marco en una capa nueva y que esta capa este encima de las fotos donde se hacen las transiciones.
__________________
{ Flash }
  #3 (permalink)  
Antiguo 05/09/2009, 14:10
 
Fecha de Ingreso: agosto-2007
Mensajes: 114
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: crossfade

Cita:
Iniciado por Diegoazul Ver Mensaje
Coloca el marco en una capa nueva y que esta capa este encima de las fotos donde se hacen las transiciones.
Sí, exactamente eso hice, pero sigue haciendo lo mismo. Por las dudas voy a colocar el código que me pasaron para que lo utilice, creo que ahí puede estar la clave, pero yo no la encontré.
Código:
MovieClip.prototype.crossFade = function(xmlPath, vel, interval, loop) {
	obj = this;
	//
	obj.images = new XML();
	obj.images.load(xmlPath);
	obj.images.ignoreWhite = true;
	obj.images.onLoad = run;
	//
	obj.vel = vel;
	obj.loop = loop;
	obj.interval = interval*1000;
	obj.rumTimer = true;
	obj.activeInterval = false;
	function run() {
		for (j=0; j<obj.images.childNodes.length; j++) {
			obj.end = obj.images.childNodes[j].childNodes.length;
			if (obj.images.childNodes[j].nodeName == "crossFade") {
				for (i=0; i<obj.end; i++) {
					obj.file = String(obj.images.childNodes[j].childNodes[i].childNodes);
					obj.createEmptyMovieClip("mc"+i, i);
					obj["mc"+i].loadMovie(obj.file);
					obj["mc"+i]._alpha = 0;
				}
				obj.n = 0;
				obj.onEnterFrame = function() {
					if (obj.percent == 100) {
						
						_root.textBox.text = "";
			
						if (obj.activeInterval != true) {
							obj["mc"+(obj.n-1)]._alpha -= obj.vel;
							obj["mc"+obj.n]._alpha += obj.vel;
						}
						if (obj["mc"+obj.n]._alpha>=100 && obj["mc"+(obj.n-1)]._alpha<=0) {
							obj.activeInterval = true;
							if (obj.rumTimer) {
								obj.iniTimer = getTimer();
								obj.rumTimer = false;
							}
							if (getTimer()-obj.iniTimer>obj.interval) {
								obj.activeInterval = false;
								obj.rumTimer = true;
								obj.n++;
							}
						}
						if (obj.n == obj.end && loop) {
							obj.mc0._alpha += obj.vel;
						}
						if (obj.n == obj.end && obj["mc"+(obj.n-1)]._alpha<=0) {
							if (!obj.loop) {
								delete obj.onEnterFrame;
							} else {
								obj.n = 0;
							}
						}
					} else {
						obj.loadedBytes = 0;
						obj.totalBytes = 0;
						for (i=0; i<=obj.end; i++) {
							obj.loadedBytes += obj["mc"+i].getBytesLoaded();
							obj.totalBytes += obj["mc"+i].getBytesTotal();
						}
						obj.percent = Math.round(100/obj.totalBytes*obj.loadedBytes);
						
						_root.textBox.text = (obj.percent) ? obj.percent+"%" : "";
								
					}
				};
			}
		}
	}
};

this.crossFade("images.xml", 10, 2, true);
  #4 (permalink)  
Antiguo 09/09/2009, 20:19
 
Fecha de Ingreso: agosto-2007
Mensajes: 114
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: crossfade

O por lo menos, si no saben cómo resolver esto me podrían ayudar a hacer una máscara y que las fotos vayan pasando fundiéndose, sin que el borde también se funda?
  #5 (permalink)  
Antiguo 10/09/2009, 10:28
Avatar de Diegoazul  
Fecha de Ingreso: mayo-2007
Ubicación: { Dash Berlin }
Mensajes: 1.879
Antigüedad: 17 años
Puntos: 67
Respuesta: crossfade

Ese codigo no tiene nada que ver con tu problema, mira si tu tienes un clip y mediante codigo le das un alpha 0, todo lo que tengas en ese clip tendrá alpha =0 , aunque dentro del clip metas más capas con muchos marcos, la solución es que fuera de tu clip hagas ese marco para que no le afecte el alpha, dices que hiciste una capa nueva pero me imagino que la hiciste dentro del clip contenedor y es por eso que no te funciona, hazlo fuera del clip.
__________________
{ Flash }
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:49.