From c4dfb229e7eaaffefe053afc90ac1371db24936e Mon Sep 17 00:00:00 2001 From: hannibal2 <24389977+hannibal00212@users.noreply.github.com> Date: Tue, 5 Dec 2023 15:47:21 +0100 Subject: GardenNextJacobContest now uses SimpleTimeMark. SimpleTimeMark is storable in the config and compareable --- src/main/java/at/hannibal2/skyhanni/utils/SimpleTimeMark.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/main/java/at/hannibal2/skyhanni/utils') diff --git a/src/main/java/at/hannibal2/skyhanni/utils/SimpleTimeMark.kt b/src/main/java/at/hannibal2/skyhanni/utils/SimpleTimeMark.kt index 3e30f300c..66629d11d 100644 --- a/src/main/java/at/hannibal2/skyhanni/utils/SimpleTimeMark.kt +++ b/src/main/java/at/hannibal2/skyhanni/utils/SimpleTimeMark.kt @@ -6,7 +6,7 @@ import kotlin.time.Duration import kotlin.time.Duration.Companion.milliseconds @JvmInline -value class SimpleTimeMark(private val millis: Long) { +value class SimpleTimeMark(private val millis: Long) : Comparable { operator fun minus(other: SimpleTimeMark) = (millis - other.millis).milliseconds @@ -24,6 +24,8 @@ value class SimpleTimeMark(private val millis: Long) { fun isFarPast() = millis == 0L + override fun compareTo(other: SimpleTimeMark): Int = millis.compareTo(other.millis) + override fun toString(): String { if (millis == 0L) return "The Far Past" return Instant.ofEpochMilli(millis).toString() @@ -31,6 +33,8 @@ value class SimpleTimeMark(private val millis: Long) { fun toMillis() = millis + fun toSkyBlockTime() = SkyBlockTime.fromInstant(Instant.ofEpochMilli(millis)) + companion object { fun now() = SimpleTimeMark(System.currentTimeMillis()) fun farPast() = SimpleTimeMark(0) -- cgit