tiempo

Temporizadores para enfriamientos y eventos periódicos, y los cuadros por segundo reales del juego en ejecución.

importar
usar std/pincel/tiempo

Tipos

tiempo.Temporizador

Cuenta segundos hacia una duración, creado con tiempo.temporizador; sirve para enfriamientos, invulnerabilidad o eventos periódicos. Es un objeto compartido.

Temporizador.avanzar(dt decimal) bool

Suma `dt` segundos y devuelve `verdadero` en el paso en que el temporizador llega a su duración. Llámalo una vez por cuadro en actualizar.

Temporizador.terminado() bool

Indica si un temporizador sin repetición ya llegó a su duración (un temporizador que se repite nunca queda terminado).

Temporizador.terminar()

Lo da por terminado ya, por ejemplo para que un enfriamiento empiece listo.

Temporizador.reiniciar()

Vuelve a contar desde cero.

Temporizador.restante() decimal

Segundos que faltan para que termine.

Temporizador.progreso() decimal

Fracción transcurrida, de 0 a 1; útil para barras de carga o con std/mate/curvas.

Funciones

tiempo.fps() decimal

Cuadros por segundo reales que se están dibujando (varía con el rendimiento).

tiempo.tps() decimal

Actualizaciones por segundo reales que se están ejecutando (compáralo con el `tps` configurado en pincel.ejecutar).

tiempo.ahora() decimal

Segundos transcurridos desde que empezó el programa, con decimales. Sirve para cronometrar o para repartir un cálculo largo entre cuadros: `var limite = tiempo.ahora() + 0.008`. No depende de `dt` ni del reloj del sistema.

tiempo.temporizador(duracion decimal, bucle bool = falso) tiempo.Temporizador

Crea un Temporizador que dura `duracion` segundos. Con `bucle = verdadero` vuelve a empezar solo cada vez que termina (eventos periódicos); si no, se queda terminado hasta que lo reinicies (enfriamientos).