Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Munguia en Diciembre 06, 2010, 08:27:29 AM

Título: misma tecla
Publicado por: Munguia en Diciembre 06, 2010, 08:27:29 AM
quiero accionar con la misma tecla crear un objeto y con la misma deshaserlo, por ejemplo el minimapa, cual es el comando?
Título: Re: misma tecla
Publicado por: spreos22 en Diciembre 06, 2010, 09:37:11 AM
Bueno, digamos que al activar el minimapa se activa una variable llamada minimapa (cambia a true) y que cuando se desactiva, dicha variable cambia a false;

[gml]if(keyboard_check_pressed(tecla) && minimapa == false) {ActivarMinimapa();}
else if(keyboard_check_pressed(tecla) && minimapa == true){DesactivarMinimapa();}[/gml]

Bueno, sustituyendo tecla por el codigo de tecla deseado y los nombres ActivarMinimapa() y DesactivarMinimapa() por las acciones o los scripts para realizar dicha accion creo que ya funcionaria.

Lo mismo tambi?n se puede hacer con D&D pero hace mucho tiempo que no lo toco.
Título: Re: misma tecla
Publicado por: Hackware en Diciembre 07, 2010, 11:58:24 PM
Bueno, suponiendo que dibujar el minimapa depende de una variable true/false puedes simplificar el c?digo de esta manera:

[gml]if keyboard_check_pressed(tecla) minimapa = !minimapa;[/gml]

Pura vida.
Título: Re: misma tecla
Publicado por: Wadk en Diciembre 08, 2010, 07:02:59 AM
M?s simple:
[gml]minimapa = minimapa ^^ keyboard_check_pressed(tecla);[/gml]
;P
Título: Re: misma tecla
Publicado por: Hackware en Diciembre 08, 2010, 08:00:08 AM
??Por un espacio?! ?V?lgame! Que complicado eres, Wadk...
Título: Re: misma tecla
Publicado por: Wadk en Diciembre 08, 2010, 08:19:33 AM
Cita de: Hackware en Diciembre 08, 2010, 08:00:08 AM
??Por un espacio?! ?V?lgame! Que complicado eres, Wadk...
Jajaja :P
Tambi?n deber?a ir m?s r?pido porque elimin? el if.
Título: Re: misma tecla
Publicado por: Hackware en Diciembre 08, 2010, 06:14:03 PM
Pues si lo hace seguramente ni se nota. :P

De todos modos explicanos c?mo funciona el ^^ en tu c?digo, al menos yo nunca lo hab?a visto. :-[
Título: Re: misma tecla
Publicado por: brunoxzx en Diciembre 09, 2010, 08:21:24 PM
@hackware
pues "^^" es lo mismo que "XOR" y yo lo entiendo como las leyes de los signos
signos iguales dan +
y distintos dan -

solo que aqui es numeros iguales dan 0
y distintos dan 1
as?
0y0=0
0y1=1
1y0=1
1y1=0

entonces lo que escribi? wadk seria que si minimapa es 0 y si no estas presionando TECLA entonces como los 2 son "0" minimapa sigue siendo 0 (0y0=0), pero si presionas TECLA entonces como minimapa es 0 pro TECLA ya es 1 minimapa cambia su valor a 1 (0y1=1), luego minimapa es 1 pero como no estas presionando TECLA su valor sigue siendo 1 (1y0=1) y bueno cuando minimapa es 1 pero estas presionando TECLA su valor cambia a 0 (1y1=0).

Uff creo que no necesitabas el ultimo p?rrafo pero lo escribo por que mucha gente lee el post y les puede servir.
Título: Re: misma tecla
Publicado por: Wadk en Diciembre 11, 2010, 04:23:14 AM
Exacto.
?Por qu? tanta gente pasa por alto el xor? :'( Con lo ?til que es :'(

XD

Cita de: Hackware en Diciembre 08, 2010, 06:14:03 PM
Pues si lo hace seguramente ni se nota. :P
No importa O:< Si conoc?s una mejor alternativa, ?por qu? no usarla?
Adem?s mi c?digo no es necesariamente menor solo por un caracter.
Yo si fuera a usar un if lo escribir?a as?:
[gml]if (keyboard_check_pressed(tecla)){
    minimapa = !minimapa;
}[/gml]
Aunque se trate de una sola sentencia dentro del if. Me parece mucho m?s legible y "limpio".
Adem?s es parte del est?ndar de C++, que no es el est?ndar de GML, pero es "saludable" aplicarlo en GML tambi?n. :P
Título: Re: misma tecla
Publicado por: Hackware en Diciembre 11, 2010, 05:00:50 AM
Pues yo no uso C++, por lo que desconoc?a el dato, jeje. Supongo que bajo esas circunstancias tienes raz?n.
Título: Re: misma tecla
Publicado por: brunoxzx en Diciembre 11, 2010, 08:50:03 AM
pues yo nunca e usado c++  :D pero el manual de GM deberia de tener la explicaci?n de como funciona, en el manual de gm en ingles lo ?nico que viene de xor es esto
Citar^^ = xor
yo para aprender lo que era busque xor en google.
Título: Re: misma tecla
Publicado por: Fede en Diciembre 12, 2010, 05:51:02 AM
se pueden usar otras compuertas logicas?
como esta la XOR (ex-or)
deberia de estar
la
and
nand
not
yes
or
nor
xnor

estan?
Título: Re: misma tecla
Publicado por: Hackware en Diciembre 12, 2010, 07:21:22 PM
F1.
Título: Re: misma tecla
Publicado por: Wadk en Diciembre 13, 2010, 07:13:04 AM
Cita de: Hackware en Diciembre 12, 2010, 07:21:22 PM
F1.
Am?n.