aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/moe/nea/firmament/features/mining/PristineProfitTracker.kt
diff options
context:
space:
mode:
authorLinnea Gräf <nea@nea.moe>2024-05-07 21:11:09 +0200
committerLinnea Gräf <nea@nea.moe>2024-05-07 21:11:09 +0200
commit93e6e0ab16df0808ee7720202a32967eddcf5c10 (patch)
tree0939d44ec0c848f8712df8b03f30af1d34eabfa0 /src/main/kotlin/moe/nea/firmament/features/mining/PristineProfitTracker.kt
parent8f3cc34740fcfe1572d23c8f1c1db1a309217b84 (diff)
downloadfirmament-93e6e0ab16df0808ee7720202a32967eddcf5c10.tar.gz
firmament-93e6e0ab16df0808ee7720202a32967eddcf5c10.tar.bz2
firmament-93e6e0ab16df0808ee7720202a32967eddcf5c10.zip
Fix up most of the remaining event handlers
[no changelog]
Diffstat (limited to 'src/main/kotlin/moe/nea/firmament/features/mining/PristineProfitTracker.kt')
-rw-r--r--src/main/kotlin/moe/nea/firmament/features/mining/PristineProfitTracker.kt32
1 files changed, 18 insertions, 14 deletions
diff --git a/src/main/kotlin/moe/nea/firmament/features/mining/PristineProfitTracker.kt b/src/main/kotlin/moe/nea/firmament/features/mining/PristineProfitTracker.kt
index 89ef264..1597501 100644
--- a/src/main/kotlin/moe/nea/firmament/features/mining/PristineProfitTracker.kt
+++ b/src/main/kotlin/moe/nea/firmament/features/mining/PristineProfitTracker.kt
@@ -12,6 +12,7 @@ import kotlinx.serialization.Serializable
import kotlinx.serialization.serializer
import kotlin.time.Duration.Companion.seconds
import net.minecraft.text.Text
+import moe.nea.firmament.annotations.Subscribe
import moe.nea.firmament.events.ProcessChatEvent
import moe.nea.firmament.features.FirmamentFeature
import moe.nea.firmament.gui.config.ManagedConfig
@@ -62,7 +63,7 @@ object PristineProfitTracker : FirmamentFeature {
val pristineRegex =
"PRISTINE! You found . Flawed (?<kind>${
- GemstoneKind.values().joinToString("|") { it.label }
+ GemstoneKind.entries.joinToString("|") { it.label }
}) Gemstone x(?<count>[0-9,]+)!".toPattern()
val collectionHistogram = Histogram<Double>(10000, 180.seconds)
@@ -97,9 +98,13 @@ object PristineProfitTracker : FirmamentFeature {
val moneyPerSecond = moneyHistogram.averagePer({ it }, 1.seconds)
if (collectionPerSecond == null || moneyPerSecond == null) return
ProfitHud.collectionCurrent = collectionPerSecond
- ProfitHud.collectionText = Text.stringifiedTranslatable("firmament.pristine-profit.collection", formatCurrency(collectionPerSecond * SECONDS_PER_HOUR, 1)).formattedString()
+ ProfitHud.collectionText = Text.stringifiedTranslatable("firmament.pristine-profit.collection",
+ formatCurrency(collectionPerSecond * SECONDS_PER_HOUR,
+ 1)).formattedString()
ProfitHud.moneyCurrent = moneyPerSecond
- ProfitHud.moneyText = Text.stringifiedTranslatable("firmament.pristine-profit.money", formatCurrency(moneyPerSecond * SECONDS_PER_HOUR, 1)).formattedString()
+ ProfitHud.moneyText = Text.stringifiedTranslatable("firmament.pristine-profit.money",
+ formatCurrency(moneyPerSecond * SECONDS_PER_HOUR, 1))
+ .formattedString()
val data = DConfig.data
if (data != null) {
if (data.maxCollectionPerSecond < collectionPerSecond && collectionHistogram.oldestUpdate()
@@ -118,17 +123,16 @@ object PristineProfitTracker : FirmamentFeature {
}
- override fun onLoad() {
- ProcessChatEvent.subscribe {
- pristineRegex.useMatch(it.unformattedString) {
- val gemstoneKind = GemstoneKind.valueOf(group("kind").uppercase())
- val flawedCount = parseIntWithComma(group("count"))
- val moneyAmount = sellingStrategy.getSellPrice(gemstoneKind.flawedId) * flawedCount
- moneyHistogram.record(moneyAmount)
- val collectionAmount = flawedCount * ROUGHS_PER_FLAWED
- collectionHistogram.record(collectionAmount.toDouble())
- updateUi()
- }
+ @Subscribe
+ fun onMessage(it: ProcessChatEvent) {
+ pristineRegex.useMatch(it.unformattedString) {
+ val gemstoneKind = GemstoneKind.valueOf(group("kind").uppercase())
+ val flawedCount = parseIntWithComma(group("count"))
+ val moneyAmount = sellingStrategy.getSellPrice(gemstoneKind.flawedId) * flawedCount
+ moneyHistogram.record(moneyAmount)
+ val collectionAmount = flawedCount * ROUGHS_PER_FLAWED
+ collectionHistogram.record(collectionAmount.toDouble())
+ updateUi()
}
}
}