Comunidad de diseño web y desarrollo en internet online

Slice de fotos que no hace loop

Citar            
MensajeEscrito el 11 Dic 2008 08:16 am
La idea es que me carge las tre fotos y luego de 5 segundos les aplique alpha, desde la que esta mas arriba a la tercera que es la que esta mas aajo..para hacer efecto slice de alpha.
El problema es que me lo hace bien la primera vez con las tres fotos... Pero no lo hace con la segunda pasada de las tres fotos. Y la idea es que haga un loop infinito.
Donde esta el error...???? Ayuda plz

NOTA: Para probar el code deben tener tres fotos con los nombres que estan el el array en una carpeta de nombre images. y el fla fuera de esa carpeta.


Código :


var arrayPict = ["/images/pic0.jpg","/images/pic1.jpg","/images/pic2.jpg"];
var j=0;
var p=0;
var m= arrayPict.length - 1;
MovieClip.prototype.CreateMovie = function(){
   for(i = 0;i <= arrayPict.length - 1 ; i++){
      _root.createEmptyMovieClip("mc"+i,i);
      _root["mc"+i].loadMovie(arrayPict[i]);
   }//for
}//CreateMovie
MovieClip.prototype.Alfa = function(){
        var mc_now = _root["mc"+m] ;
      mc_now.onEnterFrame = function(){
       mc_now._alpha += (0 - mc_now._alpha)/5;
    }//onEnterFrame
    delete mc_now;
    m--;
    if(m < 0){
      CreateMovie(); 
   }
   }//Alfa
CreateMovie();
tempo = setInterval(Alfa, 5000);




Quialquier idea, ayuda, propuesta es bienvenida.

Gracias.

Por pulento

48 de clabLevel



 

msie7
Citar            
MensajeEscrito el 11 Dic 2008 01:27 pm
Hola amigo, preimro que nada, no es muy LOKO que pongas ese tipo de funciones en la declaracion del prototipo de la clase MovieClip, bueno, supongo que por algo lo haces asi, segundo, modfica tu funcion asi:

Código :

MovieClip.prototype.Alfa = function(){
        var mc_now = _root["mc"+m] ;
mc_now._alpha = 100;
      mc_now.onEnterFrame = function(){
       mc_now._alpha -= mc_now._alpha/5;
    }//onEnterFrame
    delete mc_now;
    m--;
    if(m < 0){
      CreateMovie(); 
   }
   }//Alfa

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

msie7
Citar            
MensajeEscrito el 11 Dic 2008 01:34 pm
ha, en lo personal, declararia ese tipo de funciones en el primer fotograma del _root, entonces tendiras mayor control sobre esas funciones y para hacer fade de alpha, te recomiendo mejor usar la clase tween, es mejor, mas estable, y en el evento onMotionFinished ahi aplicas CrateMovie:

[/code]
import mx.transitions.Tween;
var aux:Tween = new Tween( clip, "_alpha", mx.transitions.easing.Strong.easeOut, 100, 0, 1, true );
aux.onMotionFinished = function( Void ):Void
{
this.obj._root.CreateMovie();
}
[code]

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

msie7
Citar            
MensajeEscrito el 11 Dic 2008 02:56 pm
lo pruebo y te cuento ..gracias 1000

Por pulento

48 de clabLevel



 

msie7
Citar            
MensajeEscrito el 12 Dic 2008 10:50 am
Gracias por la ayuda.

Lo probe y corre bien en la primera pasada... y luego se queda pagado...
agrege esta linea dentro del if

if(m < 0){
m = arrayPict.length;
CreateMovie();

}

Y ahora no se queda pegado... pero se salta el alfa de la tercera foto directo a la primera. :(


Que sera.?

Por pulento

48 de clabLevel



 

msie7
Citar            
MensajeEscrito el 12 Dic 2008 12:23 pm
es porque vuelves a crear los clips, los vuelves a cargar, te voy a reescribir las funciones, y tendran el mismo efecto visual, ok?

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 12 Dic 2008 12:48 pm
bueno creo que lo estas haciendo al reves, se pasa a la 3 de golpe porque incia de nuevo, van desapareciendo los clip, entonces, tendrias que lo grar el efecto de que a la primera imagen aparezca en vez de que la tercera imagen desaparezca, sinceramente tengo la sospecha de que usas una version de flash muy viejita, ya que esa forma de programar es anticuada, de todas formas, si decides modificar por completo tu script, cuenta con migo para reescribirlo, no lo quiero reescribir porque a lo mejor es ncesario que sea de ese modo como lo estas haciendo, bueno nos vemos.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 12 Dic 2008 01:21 pm
mi mente esta habierta al conocimiento y la sabiduria de los maestros... :D

Pon el code que me dices porfa... :)


saludos y gracias nuevamente

Por pulento

48 de clabLevel



 

msie7
Citar            
MensajeEscrito el 12 Dic 2008 08:09 pm
hola, ok, bueno mira vamos a matar dos pajaros de un tiro, ok, estate pendiente a este post:

http://www.cristalab.com/foros/t65628_transicion-de-imagenes-con-la-clase-tween.html

espero te de una idea de lo que necesitas, ok?

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 12 Dic 2008 09:27 pm
Listo amigo, en el post que te mencione antes, he puesto un codigo que te hara la vida mas facil, chekalo, copialo y pegalo todo en el primer fotograma, y obvio, pon tu array de imagenes en vez del que esta ahi y listo tienes un slideShow con el efecto alpha, suerte!.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 13 Dic 2008 03:48 pm
gracias amigo.. lo probare y te cuento.


Saludos

Por pulento

48 de clabLevel



 

msie7
Citar            
MensajeEscrito el 15 Dic 2008 12:06 pm
Probe el code que pones y que ha sido modificado.. funciona muy bien ..gracias.
Creo ke tiene un pequeño detalle .. y es que no parte con una imagen... mmmm ... Pero de eso me encargare yo... como no se voy a pillar ... lol


Saludos y gracias mil.....

Por pulento

48 de clabLevel



 

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.