From 0a95a791eb57a546fb5421594abae740faf1dfdb Mon Sep 17 00:00:00 2001 From: hannibal2 <24389977+hannibal002@users.noreply.github.com> Date: Wed, 6 Mar 2024 23:51:02 +0100 Subject: 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> --- .../skyhanni/features/fame/CityProjectFeatures.kt | 36 ++++++++++++---------- 1 file changed, 20 insertions(+), 16 deletions(-) (limited to 'src/main/java/at/hannibal2/skyhanni/features/fame') 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() + val materials = mutableMapOf() 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) = buildList> { + private fun buildList(materials: MutableMap) = buildList> { 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() 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) { + private fun fetchMaterials(item: ItemStack, materials: MutableMap) { 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 } -- cgit