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

Error que sale a veces con inteligencia artificial , ¿por que????????

Estas en el tema de Error que sale a veces con inteligencia artificial , ¿por que???????? en el foro de Flash y Actionscript en Foros del Web. ¡Hola! ¿Que tal? Tengo un problema bastante extraño y que me está acarrenado más de un dolor de cabeza. Tengo un código de una sola ...
  #1 (permalink)  
Antiguo 27/07/2010, 15:30
Avatar de andmai  
Fecha de Ingreso: enero-2010
Mensajes: 84
Antigüedad: 14 años, 10 meses
Puntos: 1
Exclamación Error que sale a veces con inteligencia artificial , ¿por que????????

¡Hola!

¿Que tal?
Tengo un problema bastante extraño y que me está acarrenado más de un dolor de cabeza.
Tengo un código de una sola capa y varios fotogramas(se trata de un juego). En el frame principal tengo varios botones entre los que está uno para pasar de turno al siguiente jugador(he de aclarar que solo hay un jugador humano, los otros 3 son "virtuales", se mueven con inteligencia artificial) y que siempre funciona correctamente excepto cnd los jugadores "virtuales" se pasan información entre ellos.Cuando esto ocurre y llega el turno del jugador humano tras hacer click sobre un dado, se bloquea el boton pasar y aparece este mensaje:


Código:
TypeError: Error #1009: No se puede acceder a una propiedad o a un método de una referencia a un objeto nulo.

El código del frame principal es este:


Código:
	dado.addEventListener(MouseEvent.CLICK,mouseClik);

dado.setBloq(false);

function mouseClik(event:MouseEvent):void {
	
	if (dado.getBloq()==false&&indiceFicha==0) {
		

		dado.start();
		

		dado.setBloq(true);//para que se quede bloqueado el dado tras lanzarlo una vez
		

		rdoDado=dado.getValor();


		botnAcusacion.addEventListener(MouseEvent.CLICK,irAcusar);
		botnAcusacion.buttonMode=true;

		botnSuposicion.addEventListener(MouseEvent.CLICK,hacerSuposicion);
		botnSuposicion.buttonMode=true;

btnPasar.addEventListener(MouseEvent.CLICK,pasarSiguiente);
btnPasar.buttonMode=true;

		
	}
}


function pasarSiguiente(event:MouseEvent) {
	gotoAndPlay("pasar Turno");
}
A los otros botones no les pasa esto, y no entiendo la razón de que dé este error solo en esta situación(las llamadas siempre son iguales y menos aún que solo le ocurra a uno de los 3 botones, si los 3 deberian "activarse" tras lanzar el dado.



Espero haberme explicado con claridad y que alguien pueda ayudarme.
Muchas gracias
  #2 (permalink)  
Antiguo 28/07/2010, 02:39
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 2 meses
Puntos: 214
Respuesta: Error que sale a veces con inteligencia artificial , ¿por que????????

Hola
bueno, pues tal vez hay alguna acción que se esta ejecutando a destiempo, pues como dice el error, la acción se esta haciendo sobre un objeto nulo (errores de flash, para nada especificos) así que te aconsejaría hacer un paso a paso de la situación, en el caso de flash pues ve poniendo cada segmento en comentario (por ej pon en comentario partes de la función mouseClick para ver si se va este error), pero pues si tienes plasmada la lógica de funcionamiento del juego, te recomiendo que la revises para saber en que punto es que siempre se da este error y a que parte del código corresponde, y con eso te será más fácil identificarlo, bueno, paciencia con eso
saludos
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #3 (permalink)  
Antiguo 28/07/2010, 14:45
Avatar de andmai  
Fecha de Ingreso: enero-2010
Mensajes: 84
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Error que sale a veces con inteligencia artificial , ¿por que????????

Gracias mortiprogramador.Ya he hecho lo de ir comentando el código, y el error siempre me da aquí
Código:
		btnPasarA.addEventListener(MouseEvent.CLICK,pasarSiguiente);
Me he fijado que es siemrpe en la misma sitiuación.En mi juego, cnd es el turno de un jugador, elije 3 cartas del juego y en orden de las agujas del reloj los demas jugadores han d mostrar una de esas 3 cartas (en caso de las tuvieran).Al jugador que esta jugando en ese momento solo se le mostrara1 carta,la del 1º jugador que tenga una carta que coincida con las escogidas por el k esta jugando.Tras una jugada de un jugador virtual, si el humano no tiene ninguna carta que mostrar y salta el turno al siguiente jugador virtual, cuando llega el turno del jugadir humano es cunado SALE EL ERROR.
No entiendo pork me aparece en ese boton y no en otro....
  #4 (permalink)  
Antiguo 28/07/2010, 19:44
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 2 meses
Puntos: 214
Respuesta: Error que sale a veces con inteligencia artificial , ¿por que????????

bueno, en ese caso tal vez poniendo un if que revise las condiciones necesarias, y si se cumple o no (dependiendo de tus condiciones) que se ejecute el listener, pues tienes diversión para rato, que te diviertas!
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com

Etiquetas: inteligencia, sale
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 14:31.