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

Asignar _x, _y desde array

Estas en el tema de Asignar _x, _y desde array en el foro de Flash y Actionscript en Foros del Web. Hola maestros... yo de nuevo! Estaba armando un ejemplito de shared object y tube un problemita con la asignacion de _x; _y ahi les pongo ...
  #1 (permalink)  
Antiguo 04/06/2003, 09:29
 
Fecha de Ingreso: febrero-2002
Mensajes: 442
Antigüedad: 15 años, 9 meses
Puntos: 2
Asignar _x, _y desde array

Hola maestros... yo de nuevo!

Estaba armando un ejemplito de shared object y tube un problemita con la asignacion de _x; _y


ahi les pongo algo del codigo para ver si me pueden dar una ayudita....

//Checamos si existe Info
InstanceSO = SharedObject.getLocal("NicoSO");
if (InstanceSO.data.cant != null) { // si el SO tiene info...
PositionX = InstanceSO.data.btnsX;
PositionY = InstanceSO.data.btnsY;
for(n=0; n<InstanceSO.data.cant; n++){
///Muestro Datos
trace("BotLabel"+n+"_mc");
trace("PosX "+n+" = "+PositionX[n]);
trace("PosY "+n+" = "+PositionY[n]);
BotLabel_mc.duplicateMovieClip("BotLabel"+n+"_mc", n,n);
/////////ACA QUIERO ASIGNAR LAS COORDENADAS X,Y ASIGNANDO EL VALOR DESDE UN ARRAY PERO NO SE POR QUE NO ME FUNCIONA.
_root["BotLabel"+n+"_mc"]._x = PositionX[n];
_root["BotLabel"+n+"_mc"]._y = PositionY[n];
}
}

Gracias de antemano....

Alguna idea???
__________________
tech-nico.com

Última edición por OXIGENO; 04/06/2003 a las 09:29
  #2 (permalink)  
Antiguo 04/06/2003, 09:37
cmc
 
Fecha de Ingreso: febrero-2003
Ubicación: Capital
Mensajes: 1.317
Antigüedad: 14 años, 10 meses
Puntos: 1
No estoy muy acostumbrado a este codigo pero por lo que veo te faltan los puntos despues de los _root
  #3 (permalink)  
Antiguo 04/06/2003, 09:42
 
Fecha de Ingreso: julio-2001
Ubicación: Barcelona
Mensajes: 922
Antigüedad: 16 años, 5 meses
Puntos: 1
Hola, q tal.

Bien, puedes probar varias cosas.

1- Mira que te recoja bien los valores. Puedes probar:

trace(PositionX[n]);
trace(PositionY[n]);

2- Si te recoge bien los valores, ahora prueba si son de tipo number:

trace(typeof PositionX[n]);
trace(typeof PositionY[n]);

3- Mira que te encuentre bien el objeto:

trace(_root["BotLabel"+n+"_mc"]);

el resultado debería de ser [object]

Ya dirás que tal fue.

saludos
  #4 (permalink)  
Antiguo 04/06/2003, 21:38
 
Fecha de Ingreso: febrero-2002
Mensajes: 442
Antigüedad: 15 años, 9 meses
Puntos: 2
Hola abuenog... gracias por contestar... te cuento que tal me fue.

1- Mira que te recoja bien los valores.

trace(PositionX[n]);
trace(PositionY[n]);
//Me mostro todas las posiciones de forma correcta!!


2- Si te recoge bien los valores, ahora prueba si son de tipo number:

trace(typeof PositionX[n]);
trace(typeof PositionY[n]);
// Me mostro [object]


3- Mira que te encuentre bien el objeto:

trace(_root["BotLabel"+n+"_mc"]);

// Me mostro 'undefined'

Por que sera??

----------------------------------------------------
Hola abuenog yo de nuevo....
no sabes que puede pasar???
__________________
tech-nico.com

Última edición por OXIGENO; 04/06/2003 a las 21:38
  #5 (permalink)  
Antiguo 05/06/2003, 02:37
 
Fecha de Ingreso: julio-2001
Ubicación: Barcelona
Mensajes: 922
Antigüedad: 16 años, 5 meses
Puntos: 1
Hola, q tal.

Bien, tu problema viene en que no estás creando los duplicates dentro de root, sino dentro del clip BotLabel_mc:

por lo que debes de cambiar esto:

_root["BotLabel"+n+"_mc"]._x = PositionX[n];
_root["BotLabel"+n+"_mc"]._y = PositionY[n];

por esto:

BotLabel_mc["BotLabel"+n+"_mc"]._x = PositionX[n];
BotLabel_mc["BotLabel"+n+"_mc"]._y = PositionY[n];

Otra cosa que me ha extrañado es esto:

trace(typeof PositionX[n]);
trace(typeof PositionY[n]);
// Me mostro [object]

por lo que probaria:

trace(typeof Number(PositionX[n]));
trace(typeof Number(PositionY[n]));

y si te funciona y da number. Colocar esto también cuando asignas la posicion.

saludos
  #6 (permalink)  
Antiguo 06/06/2003, 09:34
 
Fecha de Ingreso: febrero-2002
Mensajes: 442
Antigüedad: 15 años, 9 meses
Puntos: 2
abuenog gracias por contestar!
Perdon por la demora ... es que estoy con bastante trabajo....
Te cuento:
Hice lo que dijiste...
cambie esto:
_root["BotLabel"+n+"_mc"]._x = PositionX[n];
_root["BotLabel"+n+"_mc"]._y = PositionY[n];

por esto:

BotLabel_mc["BotLabel"+n+"_mc"]._x = PositionX[n];
BotLabel_mc["BotLabel"+n+"_mc"]._y = PositionY[n];

Y me mostro undefined

Y esto:
trace(typeof Number(PositionX[n]));
trace(typeof Number(PositionY[n]));
Me dio number como decias!...
Ahora por lo menos se movieron todos los MC
Pero no se POR QUE me asigna las posiciones de _X e _Y de Todos los MC en la misma posicion de la pantalla.
Cuando en realidad yo muestro el array de posiciones y tengo todas las posiciones distintas... tanto de X como de Y.
Es raro... !

te dejo el zip.... gracias de antemano!
CLICK PARA BAJAR FLA

__________________________________________________ _
abuenop? alguna ultima sugerencia antes de que me rinda?
__________________
tech-nico.com

Última edición por OXIGENO; 06/06/2003 a las 09:34
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 09:42.