diff options
author | hannibal2 <24389977+hannibal002@users.noreply.github.com> | 2024-03-06 23:51:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-06 23:51:02 +0100 |
commit | 0a95a791eb57a546fb5421594abae740faf1dfdb (patch) | |
tree | 82bfc13c544a60d496bab081b66ddd73e07d62a3 /src/main/java/at/hannibal2/skyhanni/features/itemabilities | |
parent | 28430fe85115334fb06fb7e3cc36da819f08dace (diff) | |
download | skyhanni-0a95a791eb57a546fb5421594abae740faf1dfdb.tar.gz skyhanni-0a95a791eb57a546fb5421594abae740faf1dfdb.tar.bz2 skyhanni-0a95a791eb57a546fb5421594abae740faf1dfdb.zip |
Internal Changes: Many small code cleanups (#1101)
Co-authored-by: Thunderblade73 <85900443+Thunderblade73@users.noreply.github.com>
Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com>
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/features/itemabilities')
-rw-r--r-- | src/main/java/at/hannibal2/skyhanni/features/itemabilities/ChickenHeadTimer.kt | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/itemabilities/ChickenHeadTimer.kt b/src/main/java/at/hannibal2/skyhanni/features/itemabilities/ChickenHeadTimer.kt index 6386ef478..643e15623 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/itemabilities/ChickenHeadTimer.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/itemabilities/ChickenHeadTimer.kt @@ -10,28 +10,30 @@ import at.hannibal2.skyhanni.utils.InventoryUtils import at.hannibal2.skyhanni.utils.ItemUtils.name import at.hannibal2.skyhanni.utils.LorenzUtils import at.hannibal2.skyhanni.utils.RenderUtils.renderString -import at.hannibal2.skyhanni.utils.TimeUtils +import at.hannibal2.skyhanni.utils.SimpleTimeMark +import at.hannibal2.skyhanni.utils.TimeUtils.format import net.minecraftforge.fml.common.eventhandler.SubscribeEvent +import kotlin.time.Duration.Companion.seconds class ChickenHeadTimer { + private val config get() = SkyHanniMod.feature.itemAbilities.chickenHead private var hasChickenHead = false - private var lastTime = 0L - private val config get() = SkyHanniMod.feature.itemAbilities.chickenHead + private var lastTime = SimpleTimeMark.farPast() + private val cooldown = 5.seconds @SubscribeEvent fun onTick(event: LorenzTickEvent) { if (!isEnabled()) return if (!event.isMod(5)) return - val itemStack = InventoryUtils.getHelmet() - val name = itemStack?.name ?: "" + val name = InventoryUtils.getHelmet()?.name ?: "" hasChickenHead = name.contains("Chicken Head") } @SubscribeEvent fun onWorldChange(event: LorenzWorldChangeEvent) { - lastTime = System.currentTimeMillis() + lastTime = SimpleTimeMark.now() } @SubscribeEvent @@ -39,7 +41,7 @@ class ChickenHeadTimer { if (!isEnabled()) return if (!hasChickenHead) return if (event.message == "§aYou laid an egg!") { - lastTime = System.currentTimeMillis() + lastTime = SimpleTimeMark.now() if (config.hideChat) { event.blockedReason = "chicken_head_timer" } @@ -51,14 +53,11 @@ class ChickenHeadTimer { if (!isEnabled()) return if (!hasChickenHead) return - val sinceLastTime = System.currentTimeMillis() - lastTime - val cooldown = 5_000 - val remainingTime = cooldown - sinceLastTime - - val displayText = if (remainingTime < 0) { + val remainingTime = cooldown - lastTime.passedSince() + val displayText = if (remainingTime.isNegative()) { "Chicken Head Timer: §aNow" } else { - val formatDuration = TimeUtils.formatDuration(remainingTime) + val formatDuration = remainingTime.format() "Chicken Head Timer: §b$formatDuration" } |