Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: vronik en Julio 18, 2014, 02:06:37 PM

Título: TextBox y VirtualKey
Publicado por: vronik en Julio 18, 2014, 02:06:37 PM
Hola a tod@s..

Estoy un poco desesperada ya con este tema, llevo muy poco trabajando con Game Maker Studio, pero basicamente tengo dos problemas, estoy programando tres botones virtuales (derecha, izquierda y aceleracion), para un coche, el juego tiene que funcionar en una tablet, porque es para Android y no logro que me funcionen correctamente, me da la sensacion de que se solapan, aunque cada uno tiene su objeto y sus direcciones sobre el objeto coche, van un poco a su aire.

Por otra parte, me gustaria hacer una pantalla de registro normal como todas las aplicaciones, nombre, contraseña y mail y claro Game Maker Studio no tiene componentes TextBox para introducir Texto.  >:(

Puede por favor, alguien ayudarme o darme ideas, soluciones, ejemplos, necesito cualquier cosa que me oriente.  :-[

Gracias de antemano y salu2 a tod@s...  :P

V.-
Título: Re:TextBox y VirtualKey
Publicado por: penumbra en Julio 18, 2014, 10:27:09 PM
por favor comparte el código de las teclas virtuales, tanto su creación como el código que hace que se mueva el coche.

Sobre lo del sistema de registro, si quieres hacer un sistema bonito, con una apariencia personalizada, es decir, formas y cuadros de texto que se vean como tú quieres, es algo bastante lioso si vas comenzando con el GML. La lectura y manejo de texto se hace con las funciones que leen pulsaciones de tecla y con las funciones para manipular cadenas. Aparte, tienes que hacerte unos sprites para representar las textbox. Repito es algo lioso, pero le puedes dar un vistazo al manual.

Si no te interesa el aspecto de los cuadros de texto, GM:S tiene su muy rudimentario y feo a la vista sistema de TextBox, el cual hay que manejar a través de un evento asíncrono. Por ejemplo, esta función solicita nombre y contraseña

get_login_async()

si no se quiere usar la anterior, se puede usar esta, que también serviría para solicitar todo, incluído la dirección del correo
get_string_async()

Título: Re:TextBox y VirtualKey
Publicado por: vronik en Julio 19, 2014, 03:45:25 PM
Hola Penumbra,

El codigo de los virtual Key que uso son estos,
global.vkup = virtual_key_add(gui_width-600, gui_height-60, 64, 64, vk_up);

global.vkright = virtual_key_add(gui_width-790, gui_height-70, 64, 64, vk_right);

global.vkdown = virtual_key_add(gui_width-500, gui_height-60, 64, 64, vk_down);

global.vkleft = virtual_key_add(gui_width-700, gui_height-74, 64, 64, vk_left);

global.vksalida = virtual_key_add(gui_width-400, gui_height-100, 50, 50, vk_space);

Lo he resuelto un poco también añadiendo un evento por cada uno de ellos, press left, right, up y down, mas space para un botón de terminar el juego.  :o

Ahora lo que mas me preocupa es el registro, porque no tengo ni idea de como hacerlo y lo mas lamentable es que lo necesito, voy a mirarme esas funciones que me has comentado, pero si pudieses ayudarme un poco con el codigo te lo agradeceria infinitamente, aunque he de confesarte que me parece bastante curioso, que no haya ningun pluging ni nada que se le parezca para poderlo utilizar dentro del game maker.  :P :-[

Te reitero las gracias y un saludo.  :)

V.-
Título: Re:TextBox y VirtualKey
Publicado por: penumbra en Julio 19, 2014, 10:05:01 PM
Cita de: vronik en Julio 19, 2014, 03:45:25 PM
Lo he resuelto un poco también añadiendo un evento por cada uno de ellos, press left, right, up y down, mas space para un botón de terminar el juego.  :o
Esa es la manera en que se deben manejar las teclas virtuales, un evento para cada una.

Cita de: vronik en Julio 19, 2014, 03:45:25 PM
Ahora lo que mas me preocupa es el registro, porque no tengo ni idea de como hacerlo y lo mas lamentable es que lo necesito

¿Y cómo va a funcionar ese registro? ¿Los datos se enviarán a un servidor en línea? El envío de datos en línea, incluso el sistema de textbox no son cosas con las que yo recomendaría iniciar un primer juego en GM.

Hay otros entornos de desarrollo que tienen comportamientos prefabricados. Por algún motivo, GM no sigue esa filosofía, da las herramientas elementales para hacer muchas cosas, pero el desarrollador es el que tiene que (como se dice por acá) "machetearle" para armar el comportamiento. Eso al final, aunque es más enredoso y hasta fastidioso que algo prefabricado, también brinda más flexibilidad y libertad para hacer algo al gusto. 
Título: Re:TextBox y VirtualKey
Publicado por: vronik en Julio 19, 2014, 10:22:13 PM
Hola Penumbra ...

Que va, nada de en linea, tengo que almacenar los datos de registro en un fichero de texto en el tablet donde funciona el juego, totalmente off line.  :-X :-\

Esto es un problema que me ha caido heredado Penumbra, yo no tenia ni idea de la plataforma ni nada, lo he aprendido a marchas forzadas y dedicandole muchas horas de mi tiempo personal, lo del fichero ya lo he conseguido con unas funciones que trae el game maker que puedo abrirlo para introducir los datos e ir acumulando la información dentro de el.

De hecho ahora estoy probando contar vueltas y guardar eso en el fichero.

Mi GRAN problema ahora son los puñeteros Textbox, que me llevan de cabeza, llevo desde ayer viernes, hoy sabado y veo que mañana domingo tendre que pasar todo mi tiempo libre con este problema, que horror, estoy empezando a odiar esto, que horror...  >:(

Muchas gracias por todo penumbra, eres el unico que me ha ayudado un poco, porque no sera por pedir ayuda en diversos foros, te lo agradezco.  ;)

Un saludo...

V.-

Título: Re:TextBox y VirtualKey
Publicado por: penumbra en Julio 19, 2014, 10:29:27 PM
¿Tus textbox los quieres hacer personalizados o te valdrían los del GM:S? Saludos y no desesperes

Título: Re:TextBox y VirtualKey
Publicado por: vronik en Julio 20, 2014, 12:08:13 PM
Hola penumbra,

Me gustaria hacerlos personalizados, pero en este punto de desesperacion, ya con los que vienen me valdria, es que tengo una presion con este tema, que de verdad estoy hartaaaa...  >:( >:( :-[ :-[ :'( :'(

Lo poco que he avanzado ha sido gracias a tu ayuda y tus pistas.  :) :P

Me puedes ayudar un poco mas con los textbox?.  :o

MUCHISIMAS GRACIAS y un salu2.  ;) ;D

V.-
Título: Re:TextBox y VirtualKey
Publicado por: penumbra en Julio 20, 2014, 08:49:01 PM
Usando los de GM:S sería:
[CREATE]
mensaje = -1
nombre = ""

Tienes que decidir cuándo llamar a la función que lee la entrada de usuario, puede ser en un evento de click, por ejemplo al pulsar un objeto obj_boton_login. En dicho evento se llamaría a la función:
mensaje = get_string_async("Introduce el nombre de usuario", "");
el segundo argumento es el nombre que por defecto aparece con el cuadro de diálogo, en este caso, una cadena vacía

Por último, hay que manejar el texto introducido, para eso tienes que usar un evento asíncrono de diálogo:
(http://sia1.subirimagenes.net/img/2014/07/20/140720083902107780.gif)
En el cual:
var i_d = ds_map_find_value(async_load, "id");
if i_d == mensaje
{
    if ds_map_find_value(async_load, "status")                  //Si se presionó "OK" status = 1 (true)
    {
           if ds_map_find_value(async_load, "result") != ""     // Si no se introdujo una cadena vacía
           {
                 nombre = ds_map_find_value(async_load, "result");  //Guardar el texto introducido en la variable nombre
           }
    }
}

Obviamente que después tendrías que comprobar (probablemente en [STEP]) que nombre no contuviera una cadena vacía y de ser así, guardar el nombre en el archivo de texto. En este ejemplo usé la función get_string_async(), la verdad no he usado nunca get_login_async, pero en el manual se incluye un ejemplo del uso.

async_load es una variable de GM:S que apunta a un mapa que contiene distintos pares clave-valor con el resultado de la función asíncrona. Esta variable sólo se puede manejar dentro del evento asíncrono, nunca fuera de él (creo que el mapa se destruye automáticamente al terminar dicho evento). El manual explica qué valores contiene async_load según la función asíncrona que se use.


Título: Re:TextBox y VirtualKey
Publicado por: vronik en Julio 20, 2014, 09:50:38 PM
Hola Penumbra,

Ahora mismo me pongo a ello, a probarlo y con tu pista seguro que lo soluciono ...  ;) ;) ;)

Que decirte, no tengo palabras: MUCHISIMAS GRACIAS !!!!!!  :) :P :P :P

Espero algun dia poder devolverte el favor....  8) :o

Saludos...  :) :P

V.-
Título: Re:TextBox y VirtualKey
Publicado por: vronik en Julio 22, 2014, 02:47:14 PM
Penumbra ...

MUCHISIMAS GRACIAS, lo logre ya lo tengo hecho, con el fichero formateado, listo con mis datos, mis vueltas todo.... de verdad muchas gracias ...  :) :) :P

Sabes cual es mi problema ahora, que me da error al momento de crear el APK ???, lo voy a mirar a ver que pasa ...  :'( :'( :'(

Muchos saludos ...  :) :)

V.-