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

problema con array

Estas en el tema de problema con array en el foro de Flash y Actionscript en Foros del Web. Hola a todos... quiero cargar swfs externos de forma aleatoria que contienen música. de manera que cada vez que se cargue la página suene una ...
  #1 (permalink)  
Antiguo 24/03/2006, 23:47
Avatar de viles@  
Fecha de Ingreso: marzo-2005
Ubicación: Ecatepec México
Mensajes: 46
Antigüedad: 19 años, 8 meses
Puntos: 0
problema con array

Hola a todos... quiero cargar swfs externos de forma aleatoria que contienen música. de manera que cada vez que se cargue la página suene una melodia diferente.... encontré que para hacer esto necesito de un array y este es el que uso:

aMovies = new Array();
aMovies[ 0 ] = "musi1.swf";
aMovies[ 1 ] = "musi2.swf";
aMovies[ 2 ] = "musi3.swf";
aMovies[ 3 ] = "musi4.swf";
aMovies[ 4 ] = "musi5.swf";
aMovies[ 5 ] = "musi6.swf";
pelicula = aMovies[random(6)];
contenedor.loadMovie(pelicula);
stop();

si subo los swfs que contienen la música musi1.swf etc. junto al swf que tiene el array sí los jala... el problema es que la música va a estar alojada en otro sitio... es decir el swf del array los va a llamar desde otra página diferente a la que está alojado.... intenté poner la dirección completa de los swf con la música... pero no los jala..... qué puedo hacer para llamarlos???.
espero me entiendan.
ADIOX
  #2 (permalink)  
Antiguo 25/03/2006, 02:23
 
Fecha de Ingreso: marzo-2006
Mensajes: 25
Antigüedad: 18 años, 8 meses
Puntos: 0
Hola:

Por ejemplo en tu página principal puedes poner esto:


Código:
var sonido:MovieClip;
var ruta:String = "ruta de internet sin los nombres de los archivos";
var lista:Array = new Array();
for(var i=0;i<6;i++){
    lista[i] = "musi"+[i+1]+".swf";
}
mc.loadMovie(ruta+lista[Math.random()*lista.length-1]);
Mira a ver si te sirve.
  #3 (permalink)  
Antiguo 25/03/2006, 09:27
Avatar de viles@  
Fecha de Ingreso: marzo-2005
Ubicación: Ecatepec México
Mensajes: 46
Antigüedad: 19 años, 8 meses
Puntos: 0
Hola M@nrique... he probado lo que dices y quedó así

var sonido:MovieClip;
var ruta:String = "http: // galeon.com/deprofundisdomine/";
var lista:Array = new Array();
for(var i=0;i<6;i++){
lista[i] = "musica1"+[i+1]+".swf";
}
mc.loadMovie(ruta+lista[Math.random()*lista.length-1]);

Pero no se oye nada... además de que no sé como añadir los demás archivos a la lista... o si se repite el código para cada archivo.
GRACIAS
  #4 (permalink)  
Antiguo 25/03/2006, 14:21
 
Fecha de Ingreso: marzo-2006
Mensajes: 25
Antigüedad: 18 años, 8 meses
Puntos: 0
Cita:
Iniciado por viles@
Hola M@nrique... he probado lo que dices y quedó así

var sonido:MovieClip;
var ruta:String = "http: // galeon.com/deprofundisdomine/";
var lista:Array = new Array();
for(var i=0;i<6;i++){
lista[i] = "musica1"+[i+1]+".swf";
}
mc.loadMovie(ruta+lista[Math.random()*lista.length-1]);

Pero no se oye nada... además de que no sé como añadir los demás archivos a la lista... o si se repite el código para cada archivo.
GRACIAS
A ver.

Lo que haces con el for(var i=0;i<6;i++) es hacer un bucle que se repetirá hasta 6 veces en este caso. Todo lo que tenga dentro de las llaves es lo que se va a ejecutar, en este caso lista[i] = "musi"+[i+1]+".swf";

Cuando el bucle pasa una vez, tenemos literalmente:

lista[0] = "musi1.swf"; // que es el nombre del 1er MC con música.

Cuando pasa 2:

lista[1] = "musi2.swf" // que es el nombre del 2º MC con música.

y así hasta seis veces.

Cita:
Iniciado por viles@
for(var i=0;i<6;i++){
lista[i] = "musica1"+[i+1]+".swf";
}
En principio no carga puesto porque lo que estas metiendo en el array es:

lista[0] = "musica11.swf";
lista[1] = "musica12.swf"; etc...

Por otro lado, comentarte que para importar música lo puedes hacer directamente con Sound.loadSound(), que para efectos de carga es mucho más ligero, y bajo mi punto de vista más correcto, pues utilizas las funciones que pone a disposición Flash.
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 23:28.