Yo si jejeje. Se hacer un reloj que cada media hora se retrasa 1 segundo (no tiene la exactitud de un reloj suizo pero... es bastante funcional :P).
Bueno, lo que debes hacer, es que el contador solo llegue a 1 y se reinicie (reset). Entonces, al mismo tiempo que se reinicia, en un contador sumas 1.
A ver... Esto de la programación trata de comerse la cabeza. NO hay una funcion para TODO lo que queremos. Con las funciones primarias debes ser capaz de crear funciones más complejas. Sinó, la programación sería MUY limitada.
gracias por la respuesta, eso trate de hacer pero nadamas llega a tres y deja de avanzar y no se por que mira parte de mi codigo:
rojo = Color.new(200,0,0)
tiempo=Timer.new()
tiempo:start()
segundos = 0
while true do
screen:clear()
tiempoactual = tiempo:time()
--ciclo en el que asigno 1000 a 1 segundo
if tiempoactual==1000 then
segundos=segundos + 1
tiempo:reset(0)
tiempo:start()
end
screen:print(375,170,":"..segundos,rojo)
screen.waitVblankStart()
screen.flip()
end
es lo que hice pero no se porque a veces nadamas llega hasta tres o se queda en cero Xb
Piensa que le estás diciendo que cuando el tiempo marque EXACTAMENTE 1000, se sume un segundo. Como el cronometro va TAN rápido, tanto que va más rapido que el propio bucle, a veces, se salta el "1000".
Es decir, no cuenta de 1 en 1, y puede que te pase de 998 a 1001, entonces como nunca ha sido 1000, el cronometro se sale de tu IF.
Lo que tienes que decirle, esque si es = a 1000 o mayor, entre en el IF:
if tiempoactual>=1000 then segundos=segundos + 1 tiempo:reset(0) tiempo:start() end
Con eso te bastará, ya tienes tu cronometro acabado ;).
Yo si jejeje. Se hacer un
Yo si jejeje. Se hacer un reloj que cada media hora se retrasa 1 segundo (no tiene la exactitud de un reloj suizo pero... es bastante funcional :P).
Bueno, lo que debes hacer, es que el contador solo llegue a 1 y se reinicie (reset). Entonces, al mismo tiempo que se reinicia, en un contador sumas 1.
A ver... Esto de la programación trata de comerse la cabeza. NO hay una funcion para TODO lo que queremos. Con las funciones primarias debes ser capaz de crear funciones más complejas. Sinó, la programación sería MUY limitada.
Saludos.
www.SceneBeta.com recomienda Mozilla FireFox.
gracias por la respuesta,
gracias por la respuesta, eso trate de hacer pero nadamas llega a tres y deja de avanzar y no se por que mira parte de mi codigo:
rojo = Color.new(200,0,0)
tiempo=Timer.new()
tiempo:start()
segundos = 0
while true do
screen:clear()
tiempoactual = tiempo:time()
--ciclo en el que asigno 1000 a 1 segundo
if tiempoactual==1000 then
segundos=segundos + 1
tiempo:reset(0)
tiempo:start()
end
screen:print(375,170,":"..segundos,rojo)
screen.waitVblankStart()
screen.flip()
end
es lo que hice pero no se porque a veces nadamas llega hasta tres o se queda en cero Xb
Si... es un problema de
Si... es un problema de precisión...
Piensa que le estás diciendo que cuando el tiempo marque EXACTAMENTE 1000, se sume un segundo. Como el cronometro va TAN rápido, tanto que va más rapido que el propio bucle, a veces, se salta el "1000".
Es decir, no cuenta de 1 en 1, y puede que te pase de 998 a 1001, entonces como nunca ha sido 1000, el cronometro se sale de tu IF.
Lo que tienes que decirle, esque si es = a 1000 o mayor, entre en el IF:
if tiempoactual>=1000 then
segundos=segundos + 1
tiempo:reset(0)
tiempo:start()
end
Con eso te bastará, ya tienes tu cronometro acabado ;).
Saludos.
PD: Espero no haber llegado muy tarde :P
www.SceneBeta.com recomienda Mozilla FireFox.