Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Alfonsos1 en Noviembre 17, 2009, 05:21:42 PM

Título: Deshabilitar teclado
Publicado por: Alfonsos1 en Noviembre 17, 2009, 05:21:42 PM
tengo GM7 lite

tengo que hacer la IA para mi juego, y la manera mas fasil es simulando que la computadora presiona una tecla en vez de que tenga que poner todas las acciones que hara esa tecla en el codigo.
Pero no quiero permitir que el jugador interfiera cuando le toca al enemigo, por lo que quiero desabilitar el teclado, en otras palabras que si se presiona UP no se ejecute el evento press_UP.
Título: Re: Deshabilitar teclado
Publicado por: knd144 en Noviembre 17, 2009, 09:24:01 PM
Pues se me ocurre una variable que este desactivada cuando sea el turno del enemigo y se active en el turno propio, y las acciones de las teclas solo se realizaran si tal variable esta el true  :-[
Título: Re: Deshabilitar teclado
Publicado por: Alfonsos1 en Noviembre 17, 2009, 10:20:30 PM
Citarlas acciones de las teclas solo se realizaran si tal variable esta el true
eso haria que ni yo ni la computadora pudiera jugar en su turno, ya que la computadora simula presionar las teclas para llebar a cabo su turno.

Si no es posible deshabilitar al teclado, se les ocurre alguna otra forma de hacerlo con variables o algo...
Título: Re: Deshabilitar teclado
Publicado por: shaoran en Noviembre 17, 2009, 10:33:57 PM
Si lo analizamos te seria mas practico hacer un script con la aciones,o varios sripts como en este caso.
La verdad..? que diferencia hay entre Simulo>Actuo con Actuo directamete?.Simular las teclas te lleva mas trabajo aunque no te parezca.

Mi recomendanci?n es que hagas los scripts de la IA y lo llames cuando necesites[por ejemplo: pegarpi?a() ]

Título: Re: Deshabilitar teclado
Publicado por: Alfonsos1 en Noviembre 19, 2009, 12:56:51 AM
me costo mucho pero creo que lo solucione

justo antes del codigo en el que la computadora """preciona""" una tecla puse: io_clear();

probe y no hacia nada en el turno de la computadora.

luego puse: io_handle(); despues del codigo en el que la computadora """precione""" una tecla

probe y funciono como devia, en otras palabras no influia las teclas que yo tocara y la computadora llevaba acabo su turno sin problemas
Título: Re: Deshabilitar teclado
Publicado por: Guacusio en Noviembre 19, 2009, 01:06:05 AM
Despu?s de leer tu pregunta, me qued? dando vueltas la siguiente inquietud: ?c?mo hace la "computadora" para presionar las teclas? ?Usas event_perform y llamas a los eventos de teclas? ?Y c?mo sabe el juego que debe reconocer s?lo aquellos eventos que genera la computadora durante el turno de ?sta y no los de las teclas presionadas? ?Los movimientos de la computadora son instant?neos o dejan tiempo al jugador para presionar teclas?

Título: Re: Deshabilitar teclado
Publicado por: Alfonsos1 en Noviembre 20, 2009, 01:07:02 PM
Citar?c?mo hace la "computadora" para presionar las teclas?

keyboard_key_press()

Citar?Y c?mo sabe el juego que debe reconocer s?lo aquellos eventos que genera la computadora durante el turno de ?sta y no los de las teclas presionadas?

crei haberlo solucionado pero enrrealidad no, voy a pregunatr para que sirven esas funciones que mencione porqu el manual no las espica mucho  ?_?

cuando probaba el juego a Speed 30 andaba bien, pero si lo pruevo a Speed 3 si podia interferir con el turno de la computador  :-\