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

PCNONOGames  www.pcnono.es

 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
}

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.

Muchas gracias por responder. Lo probare.

Saludos.
PCNONOGames  www.pcnono.es