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

duplicar un movie clip repitiendo en x e y

Estas en el tema de duplicar un movie clip repitiendo en x e y en el foro de Flash y Actionscript en Foros del Web. hola estoy tratando de duplicar un movie clip que se duplica tomando el total de unos nodos de un xml hasta ahi todo bien, se ...
  #1 (permalink)  
Antiguo 11/04/2006, 18:55
 
Fecha de Ingreso: febrero-2006
Mensajes: 208
Antigüedad: 11 años, 10 meses
Puntos: 0
duplicar un movie clip repitiendo en x e y

hola estoy tratando de duplicar un movie clip que se duplica tomando el total de unos nodos de un xml
hasta ahi todo bien, se duplica 65 veces para la derecha, pero mi problema es que se sale de la pantalla esta repeticion de movieclips

este es el trozo de codigo:

function testXML2 (){
// Hacer shortcuts.
documento2 = miXML2.firstChild;
nombres_largo = miXML2.firstChild.childNodes.length
//trace(nombres_largo)//ok! 65 artistas
for (n=0; n < nombres_largo ;n++ ){
nombres = miXML2.firstChild.childNodes[n]; //trace (nombres);
msg = nombres.childNodes[0].firstChild + "\n";
id = miXML2.firstChild.childNodes[n].attributes.id ;
foto = nombres.childNodes[3].firstChild + "\n";
//trace (id); //ok!
//trace (foto)

///DUPLICA CUADRADITOS
botArt_mc._visible = false;
nuevo = botArt_mc.duplicateMovieClip("botArt"+id,id);
nuevo._x = n*30; /// aqui se repite para el lado
if(nuevo._x > 700){ //si se repite mas alla de 700 que baje en _y

nuevo._y = 380;
nuevo._x = 0 //este es mi problema ya que se quedan
// repitiendo mas abajo pero no avanzan

}




alguna idea ?
mi intencion es que se repitan asi
* * * * * * * * * * * * * * * *
* * * * * * ** * * * * * * * *
"cada * es un _mc"
pero se me terminan repitiendo asi con mi codigo:

* * * * * ** * * * * * * * * *
* <------------ ese es el que se queda en 0
__________________
michelson
-----------------
crossing snow mountains with a yamaha bike
  #2 (permalink)  
Antiguo 11/04/2006, 20:13
 
Fecha de Ingreso: diciembre-2003
Ubicación: Caracas
Mensajes: 81
Antigüedad: 14 años
Puntos: 0
Segun veo el problema lo tienes aca. Si por ejemplo la condicion se cumple 10 veces, esos 10 cuadritos siempre tendran x=0
if(nuevo._x > 700){ //si se repite mas alla de 700 que baje en _y
nuevo._y = 380;
nuevo._x = 0 //este es mi problema ya que se quedan
// repitiendo mas abajo pero no avanzan
}

Hice unas pruebas cambiando nuevo._x = 0 por nuevo._x -= 700 y funciono

haber si es eso lo que quieres.
  #3 (permalink)  
Antiguo 11/04/2006, 20:20
 
Fecha de Ingreso: febrero-2006
Mensajes: 208
Antigüedad: 11 años, 10 meses
Puntos: 0
resulto pero

gracias resulto bien, pero la segunda fila que se repite en -=700 sigue fuera de la pantalla

osea asi

* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

y me gustaría que fuiesa asi

* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * *
* * * * ....etc...
__________________
michelson
-----------------
crossing snow mountains with a yamaha bike
  #4 (permalink)  
Antiguo 12/04/2006, 20:01
 
Fecha de Ingreso: diciembre-2003
Ubicación: Caracas
Mensajes: 81
Antigüedad: 14 años
Puntos: 0
prueba cambiando el if por while
while (nuevo._x > 700) {
nuevo._y += 30;
nuevo._x -= 700;
}

La idea de sumarle a _y es para bajar una fila.

haber si te funciona asi.
  #5 (permalink)  
Antiguo 12/04/2006, 20:24
 
Fecha de Ingreso: diciembre-2003
Ubicación: Caracas
Mensajes: 81
Antigüedad: 14 años
Puntos: 0
Para que te queden uno debajo de otro en el while a _x restale 720 en vez 700
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 08:16.