Comunidad de diseño web y desarrollo en internet online

Problemas con array y bucle for AS2

Citar            
MensajeEscrito el 10 Ene 2012 09:34 am
Hola a todos, os comento un problema en el que me he quedado encallado. Estoy haciendo un juego donde caen objetos y abajo con una cesta se han de recoger. Son 10 objetos los que caen y hay un contador de puntuación para cada objeto. Bien, al final el objeto que más puntos tiene, quiero que se muestre como el conseguido. Pondré el ejemplo con 2 objetos.

Código ActionScript :

//estos serían los contadores con su variable
contador_impresora.text=win_impresora;
contador_iphone.text=win_iphone; 

var resultado:Array = new Array (win_impresora,win_iphone);

var maximo:Number=0;
for(i=0; i<resultado.length; i++){
   maximo = Math.max(resultado[i],maximo);
  }


Esto me da el valor máximo conseguido de todos los contadores, y me lo hace bien, el tema es cómo puedo saber a qué contador pertenece ese valor para poder así mostrar el producto. No sé si habría que utilizar arrays multidimensionales, pero lo he hecho y me da undefined u otro error. Por favor ayuda. Muchas gracias

Por djlgomez

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Ene 2012 01:02 pm
Haz un segundo array donde guardes el nombre de los productos en el mismo orden de los puntajes

Código ActionScript :

var productos:Array = new Array ("impresora","iphone");


Luego ve guardando también el índice para poder recuperar el producto

Código ActionScript :

var indice:Number = 0;
var maximo:Number = 0;
for(i=0; i<resultado.length; i++){
    if(resultado[i]>maximo) indice = i;
   maximo = Math.max(resultado[i],maximo);  
  }
trace("el producto es "+productos[indice])


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Ene 2012 03:30 pm
graciaaaaaaaaaass Jorge, menudo máquina! mil gracias

al final quería que dependiendo del premio, me hiciera visible éste en grande pero no sé pq se vuelve loco y me saca otros premios. (si supieras porqué es te lo agradecería)

soy muy novato y lo había hecho así:

if(productos[indice]=2){
tv_mc._visible=true;
}

pero ya te digo se vuelve loco y al final lo he dejado dentro de un texto

resultado_txt.text=productos[indice];

que me salva del apuro.

Mil gracias de nuevo

Un saludo

Por djlgomez

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Ene 2012 03:37 pm
Tip: en un MC pon etiquetas de fotograma, una por cada producto y la imagen del producto, claro, luego haz

miClip.gotoAndStop(productos[indice])

El if the falla porque tienes un solo igual (asignación) en vez de dos (comparación)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Ene 2012 04:38 pm
impresionante jorge

juego terminado y bonito gracias a tu inestimable ayuda

Gracias

Por djlgomez

3 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.