Hola de nuevo!!
Veo que cambio bastante tu código, eso es bueno. A hora lo que realmente necesitas, es saber que en flash las variables son algo asi como "multidato" si no las declaras de un tipo especifico, estas pueden ir cambiando de tipo de dato a lo largo del programa, según tu conveniencia.
Entonces esto significa que no necesitas convertir de numero a cadena, pero tampoco quiere decir que este bien; valgame la rebusnancia... perdón la redundancia. Lo que estas haciendo con este código, es que estas comparando los elementos de un arreglo y un arreglo puede tener todo tipo de datos. ¿Y cual es el error? La respuesta es que en el
switch estas comparando la variable
q que es una cadena y le das el valor de un elemento de un arreglo; en el
case pones
1 y no
"1". Entonces los tipos de la variable para comparar no son iguales al
switch; por lo cual ninguna condición se cumple.
La solución a todo esto es que solo agreges comillas al case y de pasada te doy un tip, si no usas el debugger de flas, utiliza
trace(cualquiercosa) para saber que parte del codigo se ejecuta.
Código ActionScript:
Ver original//supongamos que var laguia:String = miparametro.variable1.toString(); equivale a 24315
var miparametro:Object=LoaderInfo(this.root.loaderInfo).parameters;
function animar(p) {
var orden:Array=p.split("");
var q:String=orden[1];
switch (q) {
case "1" ://<-----------------aquí pongo las comillas
trace("1");
gotoAndPlay(2);
break;
case "2" :
trace("2");
gotoAndPlay(20);
break;
case "3" :
trace("3");
gotoAndPlay(40);
break;
case "4" :
trace("4");
gotoAndPlay(60);
break;
case "5" :
trace("5");
gotoAndPlay(80);
break;
}
}
LoaderInfo(this.root.loaderInfo).parameters;
var laguia:String = miparametro.variable1.toString();//<--Aqui tu ya combiertes de number a string
animar(String(laguia));
elnumero.text=miparametro.variable1;