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

Problemas con for

Estas en el tema de Problemas con for en el foro de Flash y Actionscript en Foros del Web. Intento cargar unos swf dinamicamente,cuando se carge el primero lo quiero mover a una velocidad determida desde la posicion en la que se ha cargado ...
  #1 (permalink)  
Antiguo 19/04/2005, 21:13
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 20 años, 11 meses
Puntos: 0
Problemas con for

Intento cargar unos swf dinamicamente,cuando se carge el primero
lo quiero mover a una velocidad determida desde la posicion en la
que se ha cargado hasta otra posicion final.
Al mismo tiempo quiero que la carga de los demas no se
inicien hata que el primero halla llegado hasta su posicion final.

¿Como puedo mover el clip1 dentro del for?
¿Como puedo pausar el for hasta que el clip1 llegue a la posicion final?


posicionfinal= 800;
velocidad = 200;

for (var i = 0; i<10; i++) {
_root.createEmptyMovieClip("clip"+i,i);
_root["clip"+i].loadMovie("anuncio"+i+".swf"],"clip"+i);
_root["clip"+i]._x=100*i;
_root["clip"+i]._y=i*20;
}
  #2 (permalink)  
Antiguo 19/04/2005, 21:37
Avatar de goc00  
Fecha de Ingreso: enero-2002
Ubicación: 000's DiMensiOn
Mensajes: 979
Antigüedad: 22 años, 3 meses
Puntos: 3
Crea un mc vacío, pones un onEnterFrame dentro del ciclo y eso:

Código:
posicionFinal=800;
for(i=0;i<10;i++) {
  _root.createEmptyMovieClip("clip"+i,i);
  _root["clip"+i].loadMovie("anuncio"+i+".swf");
  _root.createEmptyMovieClip("mcCiclo", 20); //depth 20 para evitar problemas XD
  _root.mcCiclo.onEnterFrame=function() {
    if(_root["clip"+i]._x<posicionFinal) {
      _root["clip"+i]._x+=10; //mover de a 10px sobre el eje x
    }
    else {
       delete _root.mcCiclo.onEnterFrame;
    }
  };
}
__________________
GOC00 CominG soOn v2.0
CyA! & GooD LuCK...
  #3 (permalink)  
Antiguo 20/04/2005, 01:26
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 20 años, 11 meses
Puntos: 0
goc00 Creo que la cosa va por ahi, aunque no estoy muy seguro.
Gracias por responderme a todos los mensajes.
Te comento lo que quiero conseguir:

Quiero cargar una primero una fotografia en una posicion determinada,
despues que la fotografia se dezplace hasta una posicion determinada,
(algo similar a "la interpolacion de flash").
Cuando esa fotografia llege a su destino,y no antes, quiero cargar otra fotografia
y dezplazarla hasta otra posicion determinada, y asi sucesivamente......


He colocado varios trace para ver como se ejecuta el codigo y
he cambiado el loadmovie para que cargue jpg en lugar de swf.
Tambien he puesto una situcion inicila en el eje x para todos los clips la misma=20

posicionFinal=800;
for(i=0;i<4;i++) {
_root.createEmptyMovieClip("clip"+i,i);
_root["clip"+i].loadMovie("foto"+i+".jpg");
_root["clip"+i]._x=20;
ancho=_root["clip"+i]._x;
_root.createEmptyMovieClip("mcCiclo", 20); //depth 20 para evitar problemas XD
_root.mcCiclo.onEnterFrame=function() {
if(_root["clip"+i]._x<posicionFinal) {
trace("ancho1:"+ancho);
_root["clip"+i]._x+=10; //mover de a 10px sobre el eje x
trace("Clip:"+i);
}
else {
trace("ancho2:"+ancho);
delete _root.mcCiclo.onEnterFrame;
trace("Sale del onEnterFrame:");
trace("Clip otrosa:"+i);
}
trace("Clip otrosb:"+i);
};
}



La salida de depurcion es:
ancho2:20
Sale del onEnterFrame:
Clip otrosa:4
Clip otrosb:4


Mis preguntas son:
¿Por que no obtengo en la depuracion el valor de todos los clips, y solo obtengo los del ultimo?
¿Por que no obtengo nada donde he puesto: trace("ancho1:"+ancho);?
¿Por que no obtengo nada donde he puesto: trace("Clip:"+i);?
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 22:58.