Anuncios Google

Ayuda en LUA

Tengo casi terminado mi homebrew y me falta una cosa, la alarma. No se como hacerla , ni como empezar. Lo que quiero hacer es un selector de hora entonces que se ponga el BUS y la CPU a 10 y la pantalla apagada y cuando sea la hora que reproduzca un sonido. Si alguien sabe como hacerlo que no dude en postearlo, xD.

Gracias de antemano y brazo si hace falta.


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

solo estoy pidiendo ayuda

solo estoy pidiendo ayuda mas o menos como se hace porqu eso de hacer una alarma no tengo ni dea

Imagen de P22

¿¿?? Estás pidiendo que

¿¿?? Estás pidiendo que te hagan tu homebrew?

de momento con esto hago

de momento con esto hago algo pero para hacer el selector tu crees que funcionaria soleccionar la hora que quieres entonces que automaticamente reste la hora que quieres que suene con la hora de ahora y que si por ejemplo da 2 horas entonces que al cabo de dos horas suene?

 gracias por la ayuda

Imagen de DeViaNTe

Algo asi...

A ver, tienes que evaluar los posibles casos, tu haces algo para introducir la hora. OK

Hora actual 17:00

La hora introducida es menor que la de ahora? Ej: 16:00

Oh dios, negativo en el resultado, el timer no acabará nunca... Y posiblemente ni se queje...

Si es menor, tenemos 16h, a parte de las que falten para 24 de 17, entonces, nuestras horas a esperar serian:

 16 + ( 24 - 17 ) <- ok?  un total de 23h, por 60 minutos por 60 segundos....

Tiempo a esperar en segundos = ( Hora introducida + ( 24 - hora actual ) ) * 60 * 60

Eso en el caso de que la hora introducida sea MENOR a la hora actual, en caso contrario, una simple resta:

Tiempo a esperar en segundos = ( Hora introducida - Hora actual ) * 60 * 60.

Ya tenemos el tiempo, entonces usando la funcion de antes con ese tiempo a esperar.

Voilà un selector de tiempo, luego apañalo con un método de introducirlo bonito, y algun efecto animado y ya tienes un alarma.

Espero esto resuelva tus posibles dudas sobre tiempos y horas :)

P.d: haz lo mismo para minutos si quieres algo mas "funcional" y añadele segundos si quieres, puedes ponerle hasta milisegundos (a esto le llamo precisión suiza) :)
Pero no hace falta meterle demasiado, horas y minutos bastará y no será engorroso de utilizar.


Actualmente desarrollando nuestra web y UXCode : http://www.gcrew.es

Imagen de DeViaNTe

Respuesta en LUA

Pues se me ocurren varias maneras, unas mas bestias que otras... xD

La primera y más bestia, pero que obviamente no te dejaría tocar nada mientras hace la espera sería un System.sleep( tutiempo * 1000 ); <- un método un tanto "rústico".. ;)

Ahora a lo serio, en los manuales te viene hecho y todo... pero bueno, te adapto uno... código para Luaplayer HM7 y superiores (también funciona en LuaHMv2)

 

Para usarla: en cualquier parte del código, poner
encender_alarma( 50 ) <-- 50 segundos...
encender_alarma( 20 ) <-- 20 segundos...
etc...

Para saber la hora actual:
   horaactual = System.getTime(1)            
   minutoactual = System.getTime(2)

y haz un calculo de horafinal - hora para saber el tiempo que necesitas estar en espera..

 

function encender_alarma( tiempo )
    local temporizador = Timer.new()
    local anulada = "no"

    temporizador:start()
    while temporizador:time() < (tiempo * 1000) do
      local pad = Controls.read();
      if pad:cross() or pad:circle() or pad:triangle() or pad:square() then
        anulada = "si"
        break;
      end
    end
    if anulada == "no" then
      ---REPRODUCIR SONIDO, pon aqui tu code del sonido
    end
end

 


Actualmente desarrollando nuestra web y UXCode : http://www.gcrew.es

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.