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

problema en juego en flash

Estas en el tema de problema en juego en flash en el foro de Flash y Actionscript en Foros del Web. hola a todos. estoy empezando con esto de AS y me a surgido un problema: estoy haciendo un juego para flash donde un bucle genera ...
  #1 (permalink)  
Antiguo 15/06/2011, 05:09
 
Fecha de Ingreso: octubre-2010
Ubicación: madrid
Mensajes: 10
Antigüedad: 14 años, 1 mes
Puntos: 0
Pregunta problema en juego en flash

hola a todos.

estoy empezando con esto de AS y me a surgido un problema:

estoy haciendo un juego para flash donde un bucle genera cada x tiempo (con un TimerEvent) un objeto tipo vehículo y lo añade a un array mediante push.

El caso es que cuando dicho vehículo se sale de la pantalla, no me interesa que siga formando parte del array por que a la hora de recorrerlo para buscar colisiones, no quiero acabar teniendo mil elementos inútiles ( sería una burrada)

entonces he echo lo siguiente:

Código:
public function eliminar():void
		
				{
					for(contador2 =0; contador2<=contador_coches ; contador2++)
					{
					
					if (coches[contador2].x > 900 || coches[contador2].x < (-100) || coches[contador2].y > 700 || coches[contador2].y < (-100) )
					
						 {
							coches.splice(contador2, 1);
							contador_coches--;
						 }
					}
				}
contador coches es una variable tipo static que va almacenando el numero de coches que se generan (contador_coches++ al instanciar un objeto en el Time Event)

Los números que comparo con las coordenadas en el if son los anchos y largos de la pantalla + 100 pixeles). Así detecto si alguno de los objetos del array se sale de la pantalla. en caso de ser así, elimina dicho objeto del array y resta al total coches una unidad.


el caso es que me sale este error:

TypeError: Error #1010: Un término no está definido y no tiene propiedades.
at Juego/eliminar()
at Juego/mov2()
at flash.utils::Timer/_timerDispatch()
at flash.utils::Timer/tick()

donde hace referencia a todos los sitios en los que aparece esta función. Haciendo pruebas creo que el problema esta en "coches[contador2].x". esta mal referirse así a las coordenadas de un objeto??
habría otra forma de hacer esto??

Gracias a todos.
  #2 (permalink)  
Antiguo 15/06/2011, 12:44
Avatar de eveldevil  
Fecha de Ingreso: octubre-2007
Mensajes: 84
Antigüedad: 17 años, 1 mes
Puntos: 6
Respuesta: problema en juego en flash

Esta bien la forma que accedes a las coordenadas, creo que el problema esta en el for, me parece que queres acceder a elementos que no existen, proba quitar el <= y deja solo el <, asi: contador2<contador_coches.

Etiquetas: flash, javascript, juego
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 20:38.