Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: nonoroman en Abril 30, 2018, 10:26:01 PM

Título: REALIZAR LA FUNCION DE UNA TECLA PULSANDO EL MANDO
Publicado por: nonoroman en Abril 30, 2018, 10:26:01 PM
Buenas, os traigo la siguiente cuestion, no se si alguien lo habra hecho alguna vez o si es imposible de hacer.

El caso, es que se trata de mover una player que esta configurado con las teclas, las tipicas flechas del cursor, hacerlo mover con el mando gamepad, pero del modo que, al pulsar por ejemplo arriba en el game pad, el codigo engañe al sistema de manera que se crea que esta pulsando la tecla arriba.

Para asi, ejecutarse toda la cadena ya realizada al pulsar la tecla arriba.

Por ejemplo, algo seria asi;

if gamepad_button_check_pressed(0, gp_padu)
   {
       keyboard_check_pressed(vk_anykey)=true;
   }


Pero esto me da error, pero lo he puesto para que entedais mi idea, y si hay alguna forma de lograrlo.

Saludos y gracias de antemano.  ;)

Título: Re:REALIZAR LA FUNCION DE UNA TECLA PULSANDO EL MANDO
Publicado por: Goganpis en Mayo 01, 2018, 12:25:44 AM
 Esa forma es imposible porque estas alterando una entrada del mando en donde lo que haces es que si tu agarras una taza con tu mano izquierda al mismo quieres mover la mano izquierda de tu mama sin tener el control de ella no tiene logica y simplemente eso lo que hace es devolver un true o un false si es presionado por eso no se puede alterar.

Pero lo mas cercano a esto es hacer una variable y solo verificas si hace alguna de esas dos funciones ejemplo:

key = (gamepad_button_check_pressed(0, gp_padu)==1 or keyboard_check_pressed(vk_anykey)==1)

if (key == 1) // 1 o el mismo true utilizo el 1 porque me da flojera escribir true o false xD
{
x += 4
}
Título: Re:REALIZAR LA FUNCION DE UNA TECLA PULSANDO EL MANDO
Publicado por: Clamud en Mayo 01, 2018, 02:51:49 PM
Se puede simular la presión de una tecla con
[gml]
keyboard_key_press(vk_up);
[/gml]
y para que la tecla ya no se detecte como presionada se debe presionar y soltar la tecla o usar la función
[gml]
keyboard_key_release(vk_up);
[/gml]
Debes usar esas funciones junto a las funciones
[gml]
gamepad_button_check_pressed
gamepad_button_check_released
[/gml]
pero creo que es mejor usar el método con if.
Título: Re:REALIZAR LA FUNCION DE UNA TECLA PULSANDO EL MANDO
Publicado por: nonoroman en Mayo 04, 2018, 11:00:35 PM
Muchas gracias por responder. Lo probare.

Saludos.