aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/features/fame
diff options
context:
space:
mode:
authorhannibal2 <24389977+hannibal002@users.noreply.github.com>2024-03-06 23:51:02 +0100
committerGitHub <noreply@github.com>2024-03-06 23:51:02 +0100
commit0a95a791eb57a546fb5421594abae740faf1dfdb (patch)
tree82bfc13c544a60d496bab081b66ddd73e07d62a3 /src/main/java/at/hannibal2/skyhanni/features/fame
parent28430fe85115334fb06fb7e3cc36da819f08dace (diff)
downloadskyhanni-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/fame')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt36
1 files changed, 20 insertions, 16 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt b/src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt
index 37c92d5c0..786719391 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/fame/CityProjectFeatures.kt
@@ -13,14 +13,19 @@ import at.hannibal2.skyhanni.utils.ChatUtils
import at.hannibal2.skyhanni.utils.CollectionUtils.addAsSingletonList
import at.hannibal2.skyhanni.utils.ItemUtils
import at.hannibal2.skyhanni.utils.ItemUtils.getLore
+import at.hannibal2.skyhanni.utils.ItemUtils.itemName
import at.hannibal2.skyhanni.utils.ItemUtils.name
import at.hannibal2.skyhanni.utils.LorenzColor
import at.hannibal2.skyhanni.utils.LorenzUtils
+import at.hannibal2.skyhanni.utils.NEUInternalName
import at.hannibal2.skyhanni.utils.NEUItems
+import at.hannibal2.skyhanni.utils.NEUItems.getItemStack
+import at.hannibal2.skyhanni.utils.NEUItems.getPrice
import at.hannibal2.skyhanni.utils.NumberUtil
import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators
import at.hannibal2.skyhanni.utils.RenderUtils.highlight
import at.hannibal2.skyhanni.utils.RenderUtils.renderStringsAndItems
+import at.hannibal2.skyhanni.utils.SimpleTimeMark
import at.hannibal2.skyhanni.utils.StringUtils.matchMatcher
import at.hannibal2.skyhanni.utils.StringUtils.matches
import at.hannibal2.skyhanni.utils.TimeUtils
@@ -100,10 +105,9 @@ class CityProjectFeatures {
if (config.showMaterials) {
// internal name -> amount
- val materials = mutableMapOf<String, Int>()
+ val materials = mutableMapOf<NEUInternalName, Int>()
for ((_, item) in event.inventoryItems) {
- val itemName = item.name ?: continue
- if (itemName != "§eContribute this component!") continue
+ if (item.name != "§eContribute this component!") continue
fetchMaterials(item, materials)
}
@@ -111,9 +115,9 @@ class CityProjectFeatures {
}
if (config.showReady) {
- var nextTime = Long.MAX_VALUE
+ var nextTime = SimpleTimeMark.farFuture()
+ val now = SimpleTimeMark.now()
for ((_, item) in event.inventoryItems) {
- val itemName = item.name ?: continue
val lore = item.getLore()
val completed = lore.lastOrNull()?.let { completedPattern.matches(it) } ?: false
@@ -122,17 +126,17 @@ class CityProjectFeatures {
contributeAgainPattern.matchMatcher(line) {
val rawTime = group("time")
if (rawTime.contains("Soon!")) return@matchMatcher
- val duration = TimeUtils.getMillis(rawTime)
- val endTime = System.currentTimeMillis() + duration
+ val duration = TimeUtils.getDuration(rawTime)
+ val endTime = now + duration
if (endTime < nextTime) {
nextTime = endTime
}
}
}
- if (itemName != "§eContribute this component!") continue
- nextTime = System.currentTimeMillis()
+ if (item.name != "§eContribute this component!") continue
+ nextTime = now
}
- ProfileStorageData.playerSpecific?.nextCityProjectParticipationTime = nextTime
+ ProfileStorageData.playerSpecific?.nextCityProjectParticipationTime = nextTime.toMillis()
}
}
@@ -143,7 +147,7 @@ class CityProjectFeatures {
return true
}
- private fun buildList(materials: MutableMap<String, Int>) = buildList<List<Any>> {
+ private fun buildList(materials: MutableMap<NEUInternalName, Int>) = buildList<List<Any>> {
addAsSingletonList("§7City Project Materials")
if (materials.isEmpty()) {
@@ -152,8 +156,8 @@ class CityProjectFeatures {
}
for ((internalName, amount) in materials) {
- val stack = NEUItems.getItemStack(internalName)
- val name = stack.name ?: continue
+ val stack = internalName.getItemStack()
+ val name = internalName.itemName
val list = mutableListOf<Any>()
list.add(" §7- ")
list.add(stack)
@@ -166,14 +170,14 @@ class CityProjectFeatures {
}
}) { inInventory && !NEUItems.neuHasFocus() })
- val price = NEUItems.getPrice(internalName) * amount
+ val price = internalName.getPrice(false) * amount
val format = NumberUtil.format(price)
list.add(" §7(§6$format§7)")
add(list)
}
}
- private fun fetchMaterials(item: ItemStack, materials: MutableMap<String, Int>) {
+ private fun fetchMaterials(item: ItemStack, materials: MutableMap<NEUInternalName, Int>) {
var next = false
val lore = item.getLore()
val completed = lore.lastOrNull()?.let { completedPattern.matches(it) } ?: false
@@ -188,7 +192,7 @@ class CityProjectFeatures {
if (line.contains("Bits")) break
val (name, amount) = ItemUtils.readItemAmount(line) ?: continue
- val internalName = NEUItems.getRawInternalName(name)
+ val internalName = NEUInternalName.fromItemName(name)
val old = materials.getOrPut(internalName) { 0 }
materials[internalName] = old + amount
}