Deshabilitar teclado

Publicado por Alfonsos1, Noviembre 17, 2009, 05:21:42 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Alfonsos1

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.

knd144

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  :-[

Alfonsos1

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...

shaoran

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() ]


Alfonsos1

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

Guacusio

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?



Alfonsos1

#6
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  :-\

Powered by EzPortal
SMF spam blocked by CleanTalk