Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: jhgv en Diciembre 31, 2019, 01:21:51 am

Título: Cambio de controles
Publicado por: jhgv en Diciembre 31, 2019, 01:21:51 am
 :-[ Hola de nuevo, me veo patetico consultandoles amigos, perdon uwu.
ControlMove = ControlDevice + "(" + CtrlMove + ")";
ControlDevice = keyboard_check_pressed;
CtrlMove = vk_left;
tengo este codigo para que en un futuro el jugador pueda cambiar los controles pero no solo eso sino que alterne el port entre teclado o mando… si solo permitiera el uso del teclado seria tan sencillo como poner "Keyboard_check (CtrlMove)" y que la variable "ctrlmove" la pudiera modificar el jugador y asi cambiar los controles, pero como Tambien quiero permitir el uso de mandos no lo puedo usar por el " keyboard_check"
entienden la idea ¿no? :c me sale este error
In Script Controles_Jugador_1 at line 3 : cannot use function/script name for a variable, using "keyboard_check_pressed"
Compile Failed - Please check the Compile window for any additional information

Tambien noto que esos parentesis que le agregue en la var "ControlMove" para que la "detecte" como una funcion Tambien me dara error :c

Viendo lo malo que redacte tengo que recurrir a hacer esta biblia perdonen amigos, mil gracias a quien me ayude...
La var "ControlDevice" me gustaría que en el futuro en vez de poner "Keyboard_check_pressed" se pueda cambiar a la función para mandos, era algo como "gamepadbutton" todo entendible allí ¿no?, la var "CtrlMove" es la que guarda la constante "vk_left,right..." o inclusive las constantes para mando. Y por último la var "ControlMove" es la que mezclaria las dos variables anteriores, ejemplo:
ControlDevice: keyboard_check_pressed
CtrlMove: vk_left
>>>*ControlMove*: Control device (en este caso Keyboard_check_pressed) + CtrlMove (en este caso la tecla de izquierda)

Veran me salta error por la variable "Controldevice" por guardar "keyboard_check" sin parentesis y asi T_T ash no hay caso... ya son suficientes detalles me woa a murir chale *Invoco a johan*
Título: Re:Cambio de controles
Publicado por: Jucarave en Diciembre 31, 2019, 01:32:58 am
Hola jhgv

Podrías lograr algo similar si usas la función "script_execute"

// por ejemplo si fueras a hacer 
keyboard_check(ord("W"));

// podrías hacerlo con script_execute así:
script_execute(keyboard_check, ord("W"));

Saludos
Título: Re:Cambio de controles
Publicado por: jhgv en Diciembre 31, 2019, 03:22:02 am
Hola jhgv

Podrías lograr algo similar si usas la función "script_execute"

// por ejemplo si fueras a hacer 
keyboard_check(ord("W"));

// podrías hacerlo con script_execute así:
script_execute(keyboard_check, ord("W"));

Saludos
Creo que no me di a entender T_T perdón, estoy perdido amigo! :C
Título: Re:Cambio de controles
Publicado por: Goganpis en Diciembre 31, 2019, 07:48:30 am
Creo que no me di a entender T_T perdón, estoy perdido amigo! :C


Ajustalo a tus necesidades te recomiendo tener scripts aparte para el pressed, released y el tiempo real.  :-[
Nota: global.Pref_Controls debe ser declarada anteriormente sino enviara error.

Script:
var j,l;
j = argument0; // Para mando
l = argument1; // Para teclado
if global.Pref_Controls == "Mando"
{
// Devolver la funcion de mando que necesitas con el mapeo
}
else if global.Pref_Controls == "Teclado"
{
// Devolver la funcion de teclado que necesitas
}
Título: Re:Cambio de controles
Publicado por: jhgv en Diciembre 31, 2019, 08:04:57 am
Ajustalo a tus necesidades te recomiendo tener scripts aparte para el pressed, released y el tiempo real.  :-[
Nota: global.Pref_Controls debe ser declarada anteriormente sino enviara error.

Script:
var j,l;
j = argument0; // Para mando
l = argument1; // Para teclado
if global.Pref_Controls == "Mando"
{
// Devolver la funcion de mando que necesitas con el mapeo
}
else if global.Pref_Controls == "Teclado"
{
// Devolver la funcion de teclado que necesitas
}
Esa es una muy buena forma. Ya la había pensado pero no la use porque creo que requerira muchísimo mas Código... usare este metodo a ver como fluye, muchas gracias amigo <3 :)
Título: Re:Cambio de controles
Publicado por: Goganpis en Enero 01, 2020, 09:39:15 pm
Jajaja Siempre a la orden  :-[

Acostumbra a salir al entorno de afuera y siempre que estes relajado interpreta la logica de la vida como un pseudocodigo aprenderás un monton de como funciona cualquier cosa.