aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/moe/nea/notenoughupdates/util/Timer.kt
diff options
context:
space:
mode:
authornea <nea@nea.moe>2023-05-03 01:09:19 +0200
committernea <nea@nea.moe>2023-05-03 01:09:19 +0200
commitf93df266c60de0567be1c963d0fbc0861bc4f197 (patch)
tree5e699594a3664fd339283d3b111ad67ad2275c4a /src/main/kotlin/moe/nea/notenoughupdates/util/Timer.kt
parent3be33bb522f468b812bb59b7f2edc8d1ca352661 (diff)
downloadfirmament-f93df266c60de0567be1c963d0fbc0861bc4f197.tar.gz
firmament-f93df266c60de0567be1c963d0fbc0861bc4f197.tar.bz2
firmament-f93df266c60de0567be1c963d0fbc0861bc4f197.zip
Move WorldReadyEvent back more
Diffstat (limited to 'src/main/kotlin/moe/nea/notenoughupdates/util/Timer.kt')
-rw-r--r--src/main/kotlin/moe/nea/notenoughupdates/util/Timer.kt23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/main/kotlin/moe/nea/notenoughupdates/util/Timer.kt b/src/main/kotlin/moe/nea/notenoughupdates/util/Timer.kt
new file mode 100644
index 0000000..14f76f7
--- /dev/null
+++ b/src/main/kotlin/moe/nea/notenoughupdates/util/Timer.kt
@@ -0,0 +1,23 @@
+package moe.nea.notenoughupdates.util
+
+import kotlin.time.Duration
+import kotlin.time.ExperimentalTime
+import kotlin.time.TimeSource
+
+@OptIn(ExperimentalTime::class)
+class Timer {
+ private var mark: TimeSource.Monotonic.ValueTimeMark? = null
+
+ fun timePassed(): Duration {
+ return mark?.elapsedNow() ?: Duration.INFINITE
+ }
+
+ fun markNow() {
+ mark = TimeSource.Monotonic.markNow()
+ }
+
+ fun markFarPast() {
+ mark = null
+ }
+
+}