From fc8d82ca5e95d13bcd2205406f1ddcf9e525eb6d Mon Sep 17 00:00:00 2001 From: CalMWolfs <94038482+CalMWolfs@users.noreply.github.com> Date: Wed, 10 Apr 2024 17:18:35 +1000 Subject: Backend: Remove some more deprecated functions and misc code cleanup (#1402) Co-authored-by: Empa <42304516+ItsEmpa@users.noreply.github.com> Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com> --- .../features/garden/AtmosphericFilterDisplay.kt | 5 ++-- .../features/garden/FarmingFortuneDisplay.kt | 4 +-- .../features/garden/GardenNextJacobContest.kt | 34 +++++++++++----------- .../composter/GardenComposterInventoryFeatures.kt | 20 ++++++++----- .../features/garden/farming/ArmorDropTracker.kt | 9 +++--- .../features/garden/farming/CropMoneyDisplay.kt | 4 +-- .../garden/farming/FarmingWeightDisplay.kt | 18 +++++++----- .../garden/farming/GardenCropMilestoneDisplay.kt | 2 +- .../visitor/HighlightVisitorsOutsideOfGarden.kt | 5 ++-- 9 files changed, 52 insertions(+), 49 deletions(-) (limited to 'src/main/java/at/hannibal2/skyhanni/features/garden') diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/AtmosphericFilterDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/AtmosphericFilterDisplay.kt index e4f81bf2e..dfd5c6533 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/AtmosphericFilterDisplay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/AtmosphericFilterDisplay.kt @@ -3,7 +3,7 @@ package at.hannibal2.skyhanni.features.garden import at.hannibal2.skyhanni.SkyHanniMod import at.hannibal2.skyhanni.config.enums.OutsideSbFeature import at.hannibal2.skyhanni.events.GuiRenderEvent -import at.hannibal2.skyhanni.events.LorenzTickEvent +import at.hannibal2.skyhanni.events.SecondPassedEvent import at.hannibal2.skyhanni.utils.LorenzUtils import at.hannibal2.skyhanni.utils.RenderUtils.renderString import at.hannibal2.skyhanni.utils.Season @@ -16,10 +16,9 @@ class AtmosphericFilterDisplay { private var display = "" @SubscribeEvent - fun onTick(event: LorenzTickEvent) { + fun onSecondPassed(event: SecondPassedEvent) { if (!isEnabled()) return if (!GardenAPI.inGarden() && !config.outsideGarden) return - if (!event.repeatSeconds(1)) return display = drawDisplay(Season.getCurrentSeason() ?: return) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/FarmingFortuneDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/FarmingFortuneDisplay.kt index 3df7a8bbf..cf826429d 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/FarmingFortuneDisplay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/FarmingFortuneDisplay.kt @@ -15,7 +15,7 @@ import at.hannibal2.skyhanni.utils.ChatUtils import at.hannibal2.skyhanni.utils.CollectionUtils.nextAfter import at.hannibal2.skyhanni.utils.ItemUtils.getInternalName import at.hannibal2.skyhanni.utils.ItemUtils.getLore -import at.hannibal2.skyhanni.utils.LorenzUtils +import at.hannibal2.skyhanni.utils.LorenzUtils.round import at.hannibal2.skyhanni.utils.NEUInternalName import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators import at.hannibal2.skyhanni.utils.RenderUtils.renderRenderables @@ -159,7 +159,7 @@ object FarmingFortuneDisplay { list.add(Renderable.string( "§6Farming Fortune§7: §e" + if (!recentlySwitchedTool && farmingFortune != -1.0) { - LorenzUtils.formatDouble(farmingFortune, 0) + farmingFortune.round(0).addSeparators() } else "§7" + (displayCrop.getLatestTrueFarmingFortune()?.addSeparators() ?: "?") )) add(Renderable.horizontalContainer(list)) diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/GardenNextJacobContest.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/GardenNextJacobContest.kt index 055b79a02..6be8da28f 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/GardenNextJacobContest.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/GardenNextJacobContest.kt @@ -10,7 +10,7 @@ import at.hannibal2.skyhanni.events.DebugDataCollectEvent import at.hannibal2.skyhanni.events.GuiRenderEvent import at.hannibal2.skyhanni.events.InventoryCloseEvent import at.hannibal2.skyhanni.events.InventoryFullyOpenedEvent -import at.hannibal2.skyhanni.events.LorenzTickEvent +import at.hannibal2.skyhanni.events.SecondPassedEvent import at.hannibal2.skyhanni.events.TabListUpdateEvent import at.hannibal2.skyhanni.features.garden.GardenAPI.addCropIcon import at.hannibal2.skyhanni.test.command.ErrorManager @@ -74,8 +74,9 @@ object GardenNextJacobContest { "§(e○|6☘) §7(?.*)" ) - private val closeToNewYear = "§7Close to new SB year!" - private const val maxContestsPerYear = 124 + private const val CLOSE_TO_NEW_YEAR_TEXT = "§7Close to new SB year!" + private const val MAX_CONTESTS_PER_YEAR = 124 + private val contestDuration = 20.minutes private var lastWarningTime = SimpleTimeMark.farPast() @@ -146,7 +147,7 @@ object GardenNextJacobContest { } if (isCloseToNewYear()) { - newList.add(closeToNewYear) + newList.add(CLOSE_TO_NEW_YEAR_TEXT) } else { newList.add("§cOpen calendar for") newList.add("§cmore exact data!") @@ -166,9 +167,8 @@ object GardenNextJacobContest { } @SubscribeEvent - fun onTick(event: LorenzTickEvent) { + fun onSecondPassed(event: SecondPassedEvent) { if (!isEnabled()) return - if (!event.repeatSeconds(2)) return if (inCalendar) return update() @@ -221,7 +221,7 @@ object GardenNextJacobContest { } // Skip if contests are already loaded for this year - if (contests.size == maxContestsPerYear) return + if (contests.size == MAX_CONTESTS_PER_YEAR) return // Manually loading contests for (item in items) { @@ -241,7 +241,7 @@ object GardenNextJacobContest { } // If contests were just fully saved - if (contests.size == maxContestsPerYear) { + if (contests.size == MAX_CONTESTS_PER_YEAR) { nextContestsAvailableAt = SkyBlockTime(SkyBlockTime.now().year + 1, 1, 2).toMillis() if (isSendEnabled()) { @@ -302,7 +302,7 @@ object GardenNextJacobContest { } return } - if (contests.size == maxContestsPerYear) { + if (contests.size == MAX_CONTESTS_PER_YEAR) { sendContests() } if (!SkyHanniMod.feature.storage.contestSendingAsked && config.shareAutomatically == ShareContestsEntry.ASK) { @@ -338,7 +338,7 @@ object GardenNextJacobContest { if (inCalendar) { val size = contests.size - val percentage = size.toDouble() / maxContestsPerYear + val percentage = size.toDouble() / MAX_CONTESTS_PER_YEAR val formatted = LorenzUtils.formatPercentage(percentage) list.add("§eDetected $formatted of farming contests this year") @@ -347,7 +347,7 @@ object GardenNextJacobContest { if (contests.isEmpty()) { if (isCloseToNewYear()) { - list.add(closeToNewYear) + list.add(CLOSE_TO_NEW_YEAR_TEXT) } else { list.add("§cOpen calendar to read Jacob contest times!") } @@ -361,7 +361,7 @@ object GardenNextJacobContest { if (nextContest != null) return drawNextContest(nextContest, list) if (isCloseToNewYear()) { - list.add(closeToNewYear) + list.add(CLOSE_TO_NEW_YEAR_TEXT) } else { list.add("§cOpen calendar to read Jacob contest times!") } @@ -378,7 +378,7 @@ object GardenNextJacobContest { ): MutableList { var duration = nextContest.endTime.timeUntil() if (duration > 4.days) { - list.add(closeToNewYear) + list.add(CLOSE_TO_NEW_YEAR_TEXT) return list } @@ -524,7 +524,7 @@ object GardenNextJacobContest { config.shareAutomatically == ShareContestsEntry.ASK // (Only call if isSendEnabled()) private fun fetchContestsIfAble() { - if (isFetchingContests || contests.size == maxContestsPerYear || !isFetchEnabled()) return + if (isFetchingContests || contests.size == MAX_CONTESTS_PER_YEAR || !isFetchEnabled()) return // Allows retries every 10 minutes when it's after 1 day into the new year val currentMills = System.currentTimeMillis() if (lastFetchAttempted + 600_000 > currentMills || currentMills < nextContestsAvailableAt) return @@ -565,7 +565,7 @@ object GardenNextJacobContest { ChatUtils.clickableChat("Click here to open your calendar!", "calendar") } - if (newContests.count() == maxContestsPerYear) { + if (newContests.count() == MAX_CONTESTS_PER_YEAR) { ChatUtils.chat("Successfully loaded this year's contests from elitebot.dev automatically!") contests = newContests @@ -585,7 +585,7 @@ object GardenNextJacobContest { } private fun sendContests() { - if (isSendingContests || contests.size != maxContestsPerYear || isCloseToNewYear()) return + if (isSendingContests || contests.size != MAX_CONTESTS_PER_YEAR || isCloseToNewYear()) return isSendingContests = true @@ -614,7 +614,7 @@ object GardenNextJacobContest { } else { ErrorManager.logErrorStateWithData( "Something went wrong submitting upcoming contests!", - "submitContestsToElite not sucessful" + "submitContestsToElite not successful" ) } } catch (e: Exception) { diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/composter/GardenComposterInventoryFeatures.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/composter/GardenComposterInventoryFeatures.kt index c8eebc10a..bffd6ac17 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/composter/GardenComposterInventoryFeatures.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/composter/GardenComposterInventoryFeatures.kt @@ -4,14 +4,14 @@ import at.hannibal2.skyhanni.config.ConfigUpdaterMigrator import at.hannibal2.skyhanni.events.GuiContainerEvent import at.hannibal2.skyhanni.events.LorenzToolTipEvent import at.hannibal2.skyhanni.features.garden.GardenAPI -import at.hannibal2.skyhanni.utils.ChatUtils +import at.hannibal2.skyhanni.test.command.ErrorManager import at.hannibal2.skyhanni.utils.InventoryUtils import at.hannibal2.skyhanni.utils.InventoryUtils.getUpperItems import at.hannibal2.skyhanni.utils.ItemUtils import at.hannibal2.skyhanni.utils.ItemUtils.getLore import at.hannibal2.skyhanni.utils.LorenzColor import at.hannibal2.skyhanni.utils.LorenzUtils -import at.hannibal2.skyhanni.utils.NEUItems +import at.hannibal2.skyhanni.utils.NEUInternalName import at.hannibal2.skyhanni.utils.NEUItems.getPrice import at.hannibal2.skyhanni.utils.NumberUtil import at.hannibal2.skyhanni.utils.RenderUtils.highlight @@ -48,14 +48,18 @@ class GardenComposterInventoryFeatures { if (line.endsWith(" Copper")) continue if (line == "") break val (itemName, amount) = ItemUtils.readItemAmount(line) ?: run { - ChatUtils.error("Could not read item '$line'") + ErrorManager.logErrorStateWithData( + "Error reading item line", + "could not read item line", + "line" to line + ) continue } - val internalName = NEUItems.getInternalNameOrNull(itemName) - if (internalName == null) { - ChatUtils.error( - "Error reading internal name for item '$itemName§c' " + - "(in GardenComposterInventoryFeatures)" + val internalName = NEUInternalName.fromItemNameOrNull(itemName) ?: run { + ErrorManager.logErrorStateWithData( + "Error reading internal name for item: $itemName", + "could not find internal name for", + "itemName" to itemName ) continue } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/ArmorDropTracker.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/ArmorDropTracker.kt index 5e6494f66..46ff67a2b 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/ArmorDropTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/ArmorDropTracker.kt @@ -7,9 +7,9 @@ import at.hannibal2.skyhanni.data.jsonobjects.repo.ArmorDropsJson.DropInfo import at.hannibal2.skyhanni.events.GuiRenderEvent import at.hannibal2.skyhanni.events.IslandChangeEvent import at.hannibal2.skyhanni.events.LorenzChatEvent -import at.hannibal2.skyhanni.events.LorenzTickEvent import at.hannibal2.skyhanni.events.ProfileJoinEvent import at.hannibal2.skyhanni.events.RepositoryReloadEvent +import at.hannibal2.skyhanni.events.SecondPassedEvent import at.hannibal2.skyhanni.features.garden.CropType import at.hannibal2.skyhanni.features.garden.GardenAPI import at.hannibal2.skyhanni.utils.CollectionUtils.addAsSingletonList @@ -51,6 +51,7 @@ object ArmorDropTracker { var drops: MutableMap = mutableMapOf() } + // Todo use repo pattern enum class ArmorDropType(val dropName: String, val chatMessage: String) { CROPIE("§9Cropie", "§6§lRARE CROP! §r§f§r§9Cropie §r§b(Armor Set Bonus)"), SQUASH("§5Squash", "§6§lRARE CROP! §r§f§r§5Squash §r§b(Armor Set Bonus)"), @@ -105,13 +106,11 @@ object ArmorDropTracker { } @SubscribeEvent - fun onTick(event: LorenzTickEvent) { + fun onSecondPassed(event: SecondPassedEvent) { if (!GardenAPI.inGarden()) return if (!config.enabled) return - if (event.repeatSeconds(1)) { - checkArmor() - } + checkArmor() } private fun checkArmor() { diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/CropMoneyDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/CropMoneyDisplay.kt index 3b5ee8dab..3f796c47d 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/CropMoneyDisplay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/CropMoneyDisplay.kt @@ -5,8 +5,8 @@ import at.hannibal2.skyhanni.config.ConfigUpdaterMigrator import at.hannibal2.skyhanni.config.features.garden.MoneyPerHourConfig.CustomFormatEntry import at.hannibal2.skyhanni.events.GardenToolChangeEvent import at.hannibal2.skyhanni.events.GuiRenderEvent -import at.hannibal2.skyhanni.events.LorenzTickEvent import at.hannibal2.skyhanni.events.ProfileJoinEvent +import at.hannibal2.skyhanni.events.SecondPassedEvent import at.hannibal2.skyhanni.features.garden.CropType import at.hannibal2.skyhanni.features.garden.CropType.Companion.getByNameOrNull import at.hannibal2.skyhanni.features.garden.GardenAPI @@ -80,7 +80,7 @@ object CropMoneyDisplay { } @SubscribeEvent - fun onTick(event: LorenzTickEvent) { + fun onSecondPassed(event: SecondPassedEvent) { if (!isEnabled()) return if (!event.repeatSeconds(5)) return diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/FarmingWeightDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/FarmingWeightDisplay.kt index eda69d483..71490fe2a 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/FarmingWeightDisplay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/FarmingWeightDisplay.kt @@ -21,6 +21,7 @@ import at.hannibal2.skyhanni.test.command.ErrorManager import at.hannibal2.skyhanni.utils.APIUtil import at.hannibal2.skyhanni.utils.ChatUtils import at.hannibal2.skyhanni.utils.LorenzUtils +import at.hannibal2.skyhanni.utils.LorenzUtils.round import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators import at.hannibal2.skyhanni.utils.OSUtils import at.hannibal2.skyhanni.utils.RenderUtils.renderRenderables @@ -95,6 +96,7 @@ class FarmingWeightDisplay { event.move(3, "garden.eliteFarmingWeightETAGoalRank", "garden.eliteFarmingWeights.ETAGoalRank") event.move(3, "garden.eliteFarmingWeightIgnoreLow", "garden.eliteFarmingWeights.ignoreLow") event.move(14, "garden.eliteFarmingWeight.offScreenDropMessage", "garden.eliteFarmingWeights.showLbChange") + event.move(34, "garden.eliteFarmingWeights.ETAGoalRank", "garden.eliteFarmingWeights.etaGoalRank") } companion object { @@ -219,22 +221,22 @@ class FarmingWeightDisplay { } val totalWeight = (localWeight + weight) - return "§e" + LorenzUtils.formatDouble(totalWeight, 2) + return "§e" + totalWeight.round(2).addSeparators() } private fun getRankGoal(): Int { - val value = config.ETAGoalRank + val value = config.etaGoalRank var goal = 10000 // Check that the provided string is valid val parsed = value.toIntOrNull() ?: 0 if (parsed < 1 || parsed > goal) { - ChatUtils.error("Invalid Farming Weight Overtake Goal!") - ChatUtils.chat( - "§eEdit the Overtake Goal config value with a valid number [1-10000] to use this feature!", - false + ChatUtils.chatAndOpenConfig( + "Invalid Farming Weight Overtake Goal! Click here to edit the Overtake Goal config value " + + "to a valid number [1-10000] to use this feature!", + GardenAPI.config.eliteFarmingWeights::etaGoalRank ) - config.ETAGoalRank = goal.toString() + config.etaGoalRank = goal.toString() } else { goal = parsed } @@ -299,7 +301,7 @@ class FarmingWeightDisplay { " §7(§b$format§7)" } else "" - val weightFormat = LorenzUtils.formatDouble(weightUntilOvertake, 2) + val weightFormat = weightUntilOvertake.round(2).addSeparators() val text = "§e$weightFormat$timeFormat §7behind §b$nextName" return if (showRankGoal) { Renderable.string(text) diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/GardenCropMilestoneDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/GardenCropMilestoneDisplay.kt index 112fce914..43b3f8ab7 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/farming/GardenCropMilestoneDisplay.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/farming/GardenCropMilestoneDisplay.kt @@ -197,7 +197,7 @@ object GardenCropMilestoneDisplay { val format = (farmingFortuneSpeed * 60).addSeparators() lineMap[4] = Collections.singletonList("§7Crops/Minute§8: §e$format") - val formatBps = LorenzUtils.formatDouble(speed, config.blocksBrokenPrecision) + val formatBps = speed.round(config.blocksBrokenPrecision).addSeparators() lineMap[5] = Collections.singletonList("§7Blocks/Second§8: §e$formatBps") } diff --git a/src/main/java/at/hannibal2/skyhanni/features/garden/visitor/HighlightVisitorsOutsideOfGarden.kt b/src/main/java/at/hannibal2/skyhanni/features/garden/visitor/HighlightVisitorsOutsideOfGarden.kt index 582f0b359..1faa94c81 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/garden/visitor/HighlightVisitorsOutsideOfGarden.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/garden/visitor/HighlightVisitorsOutsideOfGarden.kt @@ -2,9 +2,9 @@ package at.hannibal2.skyhanni.features.garden.visitor import at.hannibal2.skyhanni.config.features.garden.visitor.VisitorConfig.VisitorBlockBehaviour import at.hannibal2.skyhanni.data.jsonobjects.repo.GardenJson -import at.hannibal2.skyhanni.events.LorenzTickEvent import at.hannibal2.skyhanni.events.PacketEvent import at.hannibal2.skyhanni.events.RepositoryReloadEvent +import at.hannibal2.skyhanni.events.SecondPassedEvent import at.hannibal2.skyhanni.features.garden.GardenAPI import at.hannibal2.skyhanni.mixins.hooks.RenderLivingEntityHelper import at.hannibal2.skyhanni.utils.ChatUtils @@ -63,9 +63,8 @@ class HighlightVisitorsOutsideOfGarden { } @SubscribeEvent - fun onTick(event: LorenzTickEvent) { + fun onSecondPassed(event: SecondPassedEvent) { if (!config.highlightVisitors) return - if (!event.repeatSeconds(1)) return EntityUtils.getEntities() .filter { it !is EntityArmorStand && isVisitor(it) } .forEach { -- cgit