Agosto 19, 2015, 12:03:01 AM Ultima modificación: Agosto 26, 2015, 06:51:37 PM por djboro88
Hola GAMEMAKER@S !!
¿Existe alguna forma de poder mostrar la hora real en el juego?

Cita de: djboro88 en Agosto 19, 2015, 12:03:01 AM
Hola GAMEMAKER@S !!
¿Existe alguna forma de poder mostrar la hora real en el juego?

Bueno, te hice un ejemplo en .gm8 de como sería, pero el problema es que no se mueve, es decir, cuando inicias el juego muestra la hora, pero no se mueve junto al reloj
Cordialmente Jodidox!

Se me ocurrio esta idea pero no se que tan buena sea: mira

Cordialmente Jodidox!

#3 Agosto 19, 2015, 12:53:19 AM Ultima modificación: Agosto 19, 2015, 12:57:06 AM por djboro88
Me referia a la hora y minutos reales  XD

Lo suyo es que se actualizara cada minuto que pasa.
Ya que con los ejemplos, he visto que muestra la hora y minutos al iniciar, pero no se muestra "real" durante todo el tiempo que esta el juego abierto.

¿Alguna idea?

Cita de: djboro88 en Agosto 19, 2015, 12:53:19 AM
Me referia a la hora y minutos reales  XD

Lo suyo es que se actualizara cada minuto que pasa.
¿alguna idea?

Mira el ultimo ejemplo
Cordialmente Jodidox!

Lo he visto.
Pero no actualiza el tiempo.

Es decir los segundos no pasan, ni los minutos y seguramente tampoco las horas.

Ahora, mira este.  :D
Cordialmente Jodidox!

La vedad... ESTUPENDO !!  ;D
Una pregunta más... por rizar el rizo.

Para que en vez de 1h 8m se muestre con cero delante como el siguiente formato "01:08"
¿Como se podría conseguir?

Creo que eso tiene que ver con el formato de hora que tenga el computador, o al menos eso entendí leyendo el manual. Quizás mas tarde miro y te paso otro ejemplo.  XD
Cordialmente Jodidox!

Ansioso estaré a la espera...  :D

Lo que hizo jodidox es una forma de hacerlo pero no me parece que sea lo mejor confiar en el room speed para medir el tiempo ya que esa variable no tiene estabilidad asegurada. En vez de eso yo usaría las mismas funciones que puso en el evento create directamente.

El formato de la hora no lo da la configuración del PC, tú mismo se la puedes dar. Por ejemplo, para colocar un cero antes del dígito de hora, minuto o segundo si éste es menor a 10:

Evento step:
myhour = date_get_hour(date_current_datetime());
myminute = date_get_minute(date_current_datetime());
mysecond = date_get_second(date_current_datetime());

if mysecond<10
    mysecond="0"+string(mysecond);
else
    mysecond=string(mysecond);
if myminute<10
    myminute="0"+string(myminute);
else
    myminute=string(myminute);
if myhour<10
    myhour="0"+string(myhour);
else
    myhour=string(myhour);


Evento draw:
draw_text(x,y,myhour+":"+myminute+":"+mysecond);

Se puede optimizar más este código para hacer el cálculo de los minutos y horas nuevos sólo cuando cambie el valor de los segundos respecto a su valor en el step anterior, pero respondiendo a tu pregunta de cómo darle formato a la hora, esa es una amnera.


Cita de: Guacusio en Agosto 20, 2015, 02:07:26 PM
Lo que hizo jodidox es una forma de hacerlo pero no me parece que sea lo mejor confiar en el room speed para medir el tiempo ya que esa variable no tiene estabilidad asegurada. En vez de eso yo usaría las mismas funciones que puso en el evento create directamente.

El formato de la hora no lo da la configuración del PC, tú mismo se la puedes dar. Por ejemplo, para colocar un cero antes del dígito de hora, minuto o segundo si éste es menor a 10:

Evento step:
myhour = date_get_hour(date_current_datetime());
myminute = date_get_minute(date_current_datetime());
mysecond = date_get_second(date_current_datetime());

if mysecond<10
    mysecond="0"+string(mysecond);
else
    mysecond=string(mysecond);
if myminute<10
    myminute="0"+string(myminute);
else
    myminute=string(myminute);
if myhour<10
    myhour="0"+string(myhour);
else
    myhour=string(myhour);


Evento draw:
draw_text(x,y,myhour+":"+myminute+":"+mysecond);

Se puede optimizar más este código para hacer el cálculo de los minutos y horas nuevos sólo cuando cambie el valor de los segundos respecto a su valor en el step anterior, pero respondiendo a tu pregunta de cómo darle formato a la hora, esa es una amnera.

Gracias Guacusio, aunque en el evento draw te hizo falta algo,

Evento draw:

draw_text(x,y,string(myhour) +" :"+ string(myminute) + " :"+ string(mysecond));


Así es que debe de ir el codigo,  :D

Dejo un ejemplo para mi amigo djboro88
Ya esta como tu quieres, si algo me avisas.

Saludos,

Cordialmente Jodidox!

Si lo necesitas en  :GMS: también te dejo un ejemplo  :D
Cordialmente Jodidox!

Cita de: jodidox en Agosto 20, 2015, 02:26:43 PM
Gracias Guacusio, aunque en el evento draw te hizo falta algo,

Evento draw:

draw_text(x,y,string(myhour) +" :"+ string(myminute) + " :"+ string(mysecond));


Así es que debe de ir el codigo,  :D

XD

¡Pero si ya se pasaron a tipo string en el evento step! ...   :P


Funciona perfecto !!

Una ultima duda..
¿Como se puede mantener la hora fija?
Es decir, si el jugador se mueve por la room, que se mantenga siempre visible.