Comunidad de diseño web y desarrollo en internet online

Problema con getNextHighestDepth

Citar            
MensajeEscrito el 01 Dic 2009 09:06 pm
Hola a todos, estoy intentando hacer una felicitación navideña con un script que esta en esta web y que genera nieve de manera dinámica utilizando la funcion getNextHighestDepth(); para posicionar los copos de nieve en un nivel diferente cada uno. Este es el post:

Código HTML :

http://www.cristalab.com/tutoriales/efecto-de-nieve-en-flash-c137l/


El problema es que al estar los copos siempre en la profundidad más alta caen por encima del contenido que cargo en un clip contenedor.

¿alguien puede decirme como tengo que hacer para que las peliculas que cargo en el clip contenedor queden por encima de los copos de nieve?

creo que el problema está en esta funcion del código :

Código ActionScript :

function createSnow(){
   i = _root.getNextHighestDepth();
   tmp = _root.attachMovie("SnowFlake","snowflake_mc" +i,i);
   tmp._x = randRange(1,550);
   tmp._y = -1;
   tmp._alpha = randRange(50, 100);
   tmp.speed = randRange(1,10);
   tmp._xscale = randRange(70,110);
   tmp._yscale = tmp._xscale;
   tmp.moving = true;
   tmp.onEnterFrame = moveSnow;
}


muchas gracias.

Por plug78

46 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Dic 2009 12:35 am
Primero que nada:

Esto esta mal:

Código ActionScript :

 tmp = _root.attachMovie("SnowFlake","snowflake_mc" +i,i); 

Se escribe así:

Código ActionScript :

tmp = _root.attachMovie("SnowFlake", "snowflake_mc"+i, i);


Ahora el tema es si quieres que la pelicula que cargas este encima de los copos, una manera fácil es:

Código ActionScript :

function createSnow(){ 
   i = _root.getNextHighestDepth(); 
   tmp = _root.attachMovie("SnowFlake","snowflake_mc"+i,i); 
   tmp._x = randRange(1,550); 
   tmp._y = -1; 
   tmp._alpha = randRange(50, 100); 
   tmp.speed = randRange(1,10); 
   tmp._xscale = randRange(70,110); 
   tmp._yscale = tmp._xscale; 
   tmp.moving = true; 
   tmp.onEnterFrame = moveSnow; 
   contenedor.swapDepths(_root.getNextHighestDepth());
}


Aunque para serte sincero, el código que planteas me parece que debe consumir bastante ram y podría estar más eficiente. Fuera de eso, lo que te pongo como solución debería funcionar.

Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 02 Dic 2009 03:01 pm
Muchas gracias Hernán, funcionó.

Un saludo.

Por plug78

46 de clabLevel



 

firefox

 

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