From 4559e5ff05e19817a21ae49f1c0d8a97d273f6a1 Mon Sep 17 00:00:00 2001 From: Thunderblade73 <85900443+Thunderblade73@users.noreply.github.com> Date: Sat, 10 Feb 2024 00:24:52 +0100 Subject: Splitting many utils functions from LorenzUtils up into other classes: ChatUtils, CollectionUtils, ConditionalUtils. And code cleanup #978 --- .../at/hannibal2/skyhanni/api/CollectionAPI.kt | 8 +- .../skyhanni/config/ConfigGuiForgeInterop.kt | 2 + .../hannibal2/skyhanni/config/ConfigGuiManager.kt | 1 - .../at/hannibal2/skyhanni/config/ConfigManager.kt | 1 + .../skyhanni/config/ConfigUpdaterMigrator.kt | 2 + .../at/hannibal2/skyhanni/config/SackData.java | 2 +- .../java/at/hannibal2/skyhanni/config/Storage.java | 16 +- .../hannibal2/skyhanni/config/commands/Commands.kt | 7 +- .../skyhanni/config/commands/SimpleCommand.kt | 3 + .../config/core/config/gui/GuiPositionEditor.kt | 1 + .../skyhanni/config/features/chat/ChatConfig.java | 3 +- .../crimsonisle/SulphurSkitterBoxConfig.java | 3 - .../garden/visitor/DropsStatisticsConfig.java | 13 +- .../skyhanni/config/features/misc/MiscConfig.java | 2 +- .../config/features/misc/pets/PetConfig.java | 1 + .../java/at/hannibal2/skyhanni/data/ChatManager.kt | 7 +- .../hannibal2/skyhanni/data/CropAccessoryData.kt | 3 +- .../hannibal2/skyhanni/data/EntityMovementData.kt | 1 + .../at/hannibal2/skyhanni/data/EventCounter.kt | 3 +- .../java/at/hannibal2/skyhanni/data/FriendAPI.kt | 1 + .../skyhanni/data/GardenCropMilestones.kt | 3 +- .../data/GardenCropMilestonesCommunityFix.kt | 14 +- .../hannibal2/skyhanni/data/GardenCropUpgrades.kt | 3 +- .../at/hannibal2/skyhanni/data/GuiEditManager.kt | 7 +- .../java/at/hannibal2/skyhanni/data/GuildAPI.kt | 1 + .../java/at/hannibal2/skyhanni/data/HypixelData.kt | 29 +- .../java/at/hannibal2/skyhanni/data/IslandType.kt | 3 +- .../skyhanni/data/ItemRenderBackground.kt | 3 +- .../at/hannibal2/skyhanni/data/LocationFixData.kt | 3 +- .../at/hannibal2/skyhanni/data/MayorElection.kt | 4 +- .../hannibal2/skyhanni/data/OtherInventoryData.kt | 3 +- .../at/hannibal2/skyhanni/data/OwnInventoryData.kt | 3 +- .../java/at/hannibal2/skyhanni/data/PartyAPI.kt | 10 +- .../hannibal2/skyhanni/data/ProfileStorageData.kt | 14 +- .../java/at/hannibal2/skyhanni/data/PurseAPI.kt | 1 + .../java/at/hannibal2/skyhanni/data/RenderData.kt | 8 +- .../java/at/hannibal2/skyhanni/data/SackAPI.kt | 8 +- .../at/hannibal2/skyhanni/data/ScoreboardData.kt | 3 +- .../at/hannibal2/skyhanni/data/SkillExperience.kt | 4 +- .../java/at/hannibal2/skyhanni/data/SlayerAPI.kt | 2 +- .../at/hannibal2/skyhanni/data/TitleManager.kt | 5 +- .../java/at/hannibal2/skyhanni/data/ToolTipData.kt | 1 + .../at/hannibal2/skyhanni/data/TrackerManager.kt | 4 +- .../data/jsonobjects/repo/ContributorListJson.java | 1 + .../skyhanni/data/jsonobjects/repo/GardenJson.java | 2 +- .../skyhanni/data/jsonobjects/repo/ItemsJson.java | 1 - .../skyhanni/data/model/ComposterUpgrade.kt | 1 + .../at/hannibal2/skyhanni/data/repo/RepoManager.kt | 28 +- .../at/hannibal2/skyhanni/data/repo/RepoUtils.kt | 8 +- .../hannibal2/skyhanni/events/BlockClickEvent.kt | 3 +- .../skyhanni/events/CheckRenderEntityEvent.kt | 4 +- .../at/hannibal2/skyhanni/events/CropClickEvent.kt | 4 +- .../skyhanni/events/EntityEquipmentChangeEvent.kt | 4 +- .../hannibal2/skyhanni/events/EntityMoveEvent.kt | 4 +- .../hannibal2/skyhanni/events/GuiContainerEvent.kt | 13 +- .../skyhanni/events/GuiRenderItemEvent.kt | 7 +- .../skyhanni/events/InventoryCloseEvent.kt | 1 + .../skyhanni/events/InventoryFullyOpenedEvent.kt | 1 + .../hannibal2/skyhanni/events/LorenzChatEvent.kt | 2 +- .../at/hannibal2/skyhanni/events/LorenzEvent.kt | 5 +- .../hannibal2/skyhanni/events/LorenzTickEvent.kt | 3 +- .../skyhanni/events/LorenzToolTipEvent.kt | 1 + .../at/hannibal2/skyhanni/events/PacketEvent.kt | 5 +- .../at/hannibal2/skyhanni/events/PlaySoundEvent.kt | 3 +- .../skyhanni/events/ReceiveParticleEvent.kt | 5 +- .../skyhanni/events/RenderEntityOutlineEvent.kt | 2 +- .../skyhanni/events/RenderItemTipEvent.kt | 3 +- .../skyhanni/events/RenderMobColoredEvent.kt | 4 +- .../skyhanni/events/ResetEntityHurtEvent.kt | 4 +- .../hannibal2/skyhanni/events/SackChangeEvent.kt | 2 +- .../skyhanni/events/SeaCreatureFishEvent.kt | 4 +- .../skyhanni/events/ServerBlockChangeEvent.kt | 4 +- .../skyhanni/features/bazaar/BazaarApi.kt | 2 + .../features/bazaar/BazaarBestSellMethod.kt | 1 + .../bazaar/BazaarCancelledBuyOrderClipboard.kt | 3 +- .../skyhanni/features/bazaar/BazaarDataHolder.kt | 7 +- .../features/bazaar/BazaarOpenPriceWebsite.kt | 1 + .../skyhanni/features/bazaar/BazaarOrderHelper.kt | 5 +- .../hannibal2/skyhanni/features/bingo/BingoAPI.kt | 1 + .../skyhanni/features/bingo/CompactBingoChat.kt | 6 +- .../skyhanni/features/bingo/FirstMinionTier.kt | 8 +- .../skyhanni/features/bingo/MinionCraftHelper.kt | 2 +- .../features/bingo/card/BingoCardDisplay.kt | 8 +- .../features/bingo/card/BingoCardReader.kt | 4 +- .../skyhanni/features/bingo/card/BingoCardTips.kt | 1 + .../features/bingo/card/goals/BingoGoal.kt | 1 + .../card/nextstephelper/BingoNextStepHelper.kt | 9 +- .../card/nextstephelper/steps/CollectionStep.kt | 1 + .../bingo/card/nextstephelper/steps/ItemsStep.kt | 1 + .../bingo/card/nextstephelper/steps/NextStep.kt | 2 +- .../card/nextstephelper/steps/SkillLevelStep.kt | 2 +- .../features/chat/ArachneChatMessageHider.kt | 1 + .../hannibal2/skyhanni/features/chat/ChatFilter.kt | 19 +- .../skyhanni/features/chat/ChatFilterGui.kt | 8 +- .../hannibal2/skyhanni/features/chat/ChatPeek.kt | 6 +- .../features/chat/CompactBestiaryChatMessage.kt | 6 +- .../features/chat/CompactSplashPotionMessage.kt | 6 +- .../skyhanni/features/chat/PlayerDeathMessages.kt | 3 +- .../skyhanni/features/chat/SkyblockXPInChat.kt | 4 +- .../hannibal2/skyhanni/features/chat/Translator.kt | 15 +- .../skyhanni/features/chat/WatchdogHider.kt | 1 + .../features/chat/playerchat/PlayerChatFilter.kt | 2 +- .../features/chat/playerchat/PlayerChatModifier.kt | 4 +- .../skyhanni/features/chroma/ChromaShader.kt | 1 + .../skyhanni/features/combat/BestiaryData.kt | 10 +- .../features/combat/damageindicator/BossType.kt | 19 +- .../combat/damageindicator/DamageCounter.kt | 3 +- .../damageindicator/DamageIndicatorManager.kt | 34 +- .../features/combat/damageindicator/EntityData.kt | 1 + .../features/combat/damageindicator/MobFinder.kt | 35 +- .../combat/endernodetracker/EnderNodeTracker.kt | 10 +- .../features/combat/ghostcounter/GhostCounter.kt | 13 +- .../features/combat/ghostcounter/GhostUtil.kt | 8 +- .../features/combat/mobs/AreaMiniBossFeatures.kt | 4 +- .../combat/mobs/AshfangMinisNametagHider.kt | 3 +- .../skyhanni/features/combat/mobs/MobHighlight.kt | 1 + .../skyhanni/features/combat/mobs/SpawnTimers.kt | 12 +- .../skyhanni/features/commands/PartyCommands.kt | 4 +- .../features/commands/SendCoordinatedCommand.kt | 5 +- .../features/commands/ViewRecipeCommand.kt | 3 +- .../skyhanni/features/commands/WarpIsCommand.kt | 2 +- .../skyhanni/features/commands/WikiManager.kt | 11 +- .../tabcomplete/GetFromSacksTabComplete.kt | 3 +- .../commands/tabcomplete/PlayerTabComplete.kt | 3 +- .../commands/tabcomplete/WarpTabComplete.kt | 3 +- .../skyhanni/features/cosmetics/ArrowTrail.kt | 2 +- .../features/cosmetics/CosmeticFollowingLine.kt | 7 +- .../skyhanni/features/dungeon/DungeonAPI.kt | 10 +- .../features/dungeon/DungeonBossMessages.kt | 2 +- .../skyhanni/features/dungeon/DungeonChatFilter.kt | 2 +- .../skyhanni/features/dungeon/DungeonCleanEnd.kt | 4 +- .../features/dungeon/DungeonDeathCounter.kt | 3 +- .../features/dungeon/DungeonFinderFeatures.kt | 2 +- .../features/dungeon/DungeonLividFinder.kt | 1 + .../features/dungeon/DungeonMilestonesDisplay.kt | 1 + .../features/dungeon/DungeonRankTabListColor.kt | 1 + .../features/dungeon/DungeonTeammateOutlines.kt | 2 +- .../skyhanni/features/dungeon/TerracottaPhase.kt | 1 + .../event/UniqueGiftingOpportunitiesFeatures.kt | 2 +- .../event/anniversary/Year300RaffleEvent.kt | 1 + .../skyhanni/features/event/diana/BurrowAPI.kt | 1 - .../features/event/diana/BurrowWarpHelper.kt | 11 +- .../features/event/diana/DianaProfitTracker.kt | 7 +- .../features/event/diana/GriffinBurrowHelper.kt | 17 +- .../event/diana/GriffinBurrowParticleFinder.kt | 2 +- .../features/event/diana/GriffinPetWarning.kt | 4 +- .../features/event/diana/HighlightInquisitors.kt | 1 + .../event/diana/InquisitorWaypointShare.kt | 20 +- .../event/diana/MythologicalCreatureTracker.kt | 15 +- .../features/event/diana/SoopyGuessBurrow.kt | 6 +- .../features/event/jerry/HighlightJerries.kt | 5 +- .../event/jerry/frozentreasure/FrozenTreasure.kt | 1 + .../jerry/frozentreasure/FrozenTreasureTracker.kt | 5 +- .../event/lobby/waypoints/EventWaypoint.kt | 2 +- .../lobby/waypoints/christmas/PresentWaypoints.kt | 6 +- .../lobby/waypoints/halloween/BasketEntrances.kt | 3 +- .../lobby/waypoints/halloween/BasketWaypoints.kt | 1 + .../skyhanni/features/event/spook/TheGreatSpook.kt | 4 +- .../skyhanni/features/event/winter/JyrreTimer.kt | 1 + .../features/event/winter/NewYearCakeReminder.kt | 4 +- .../features/fame/AccountUpgradeReminder.kt | 6 +- .../skyhanni/features/fame/CityProjectFeatures.kt | 9 +- .../skyhanni/features/fame/ReminderUtils.kt | 1 + .../skyhanni/features/fishing/ChumBucketHider.kt | 5 +- .../skyhanni/features/fishing/FishingAPI.kt | 2 +- .../features/fishing/FishingBaitWarnings.kt | 6 +- .../skyhanni/features/fishing/FishingDetection.kt | 1 + .../features/fishing/FishingHookDisplay.kt | 1 + .../skyhanni/features/fishing/FishingTimer.kt | 4 +- .../features/fishing/SeaCreatureFeatures.kt | 9 +- .../features/fishing/SeaCreatureManager.kt | 1 + .../fishing/SeaCreatureMessageShortener.kt | 1 + .../skyhanni/features/fishing/SharkFishCounter.kt | 4 +- .../features/fishing/ShowFishingItemName.kt | 2 +- .../fishing/tracker/FishingProfitTracker.kt | 7 +- .../features/fishing/tracker/SeaCreatureTracker.kt | 17 +- .../features/fishing/trophy/OdgerWaypoint.kt | 1 + .../features/fishing/trophy/TrophyFishFillet.kt | 1 + .../features/fishing/trophy/TrophyFishManager.kt | 4 +- .../features/fishing/trophy/TrophyFishMessages.kt | 22 +- .../features/fishing/trophy/TrophyRarity.kt | 3 +- .../skyhanni/features/garden/AnitaMedalProfit.kt | 7 +- .../features/garden/AtmosphericFilterDisplay.kt | 1 - .../skyhanni/features/garden/CropAccessory.kt | 6 +- .../hannibal2/skyhanni/features/garden/CropType.kt | 32 +- .../features/garden/FarmingFortuneDisplay.kt | 6 +- .../features/garden/FarmingMilestoneCommand.kt | 14 +- .../skyhanni/features/garden/GardenAPI.kt | 5 +- .../features/garden/GardenCropMilestoneFix.kt | 9 +- .../features/garden/GardenCropTimeCommand.kt | 17 +- .../features/garden/GardenCropsInCommand.kt | 19 +- .../skyhanni/features/garden/GardenLevelDisplay.kt | 19 +- .../features/garden/GardenNextJacobContest.kt | 24 +- .../skyhanni/features/garden/GardenOptimalSpeed.kt | 7 +- .../skyhanni/features/garden/GardenPlotAPI.kt | 9 +- .../skyhanni/features/garden/GardenWarpCommands.kt | 4 +- .../skyhanni/features/garden/GardenYawAndPitch.kt | 1 + .../skyhanni/features/garden/SensitivityReducer.kt | 5 +- .../skyhanni/features/garden/ToolTooltipTweaks.kt | 2 +- .../features/garden/composter/ComposterAPI.kt | 5 +- .../features/garden/composter/ComposterDisplay.kt | 10 +- .../garden/composter/ComposterInventoryNumbers.kt | 2 +- .../features/garden/composter/ComposterOverlay.kt | 40 +- .../composter/GardenComposterInventoryFeatures.kt | 6 +- .../features/garden/contest/FarmingContestAPI.kt | 7 +- .../garden/contest/JacobContestFFNeededDisplay.kt | 6 +- .../garden/contest/JacobContestStatsSummary.kt | 15 +- .../garden/contest/JacobContestTimeNeeded.kt | 11 +- .../contest/JacobFarmingContestsInventory.kt | 1 + .../features/garden/farming/ArmorDropTracker.kt | 7 +- .../features/garden/farming/CropMoneyDisplay.kt | 13 +- .../features/garden/farming/CropSpeedMeter.kt | 7 +- .../features/garden/farming/DicerRngDropTracker.kt | 8 +- .../garden/farming/FarmingWeightDisplay.kt | 20 +- .../features/garden/farming/GardenBestCropTime.kt | 7 +- .../garden/farming/GardenCropMilestoneDisplay.kt | 6 +- .../features/garden/farming/GardenCropSpeed.kt | 7 +- .../garden/farming/GardenCustomKeybinds.kt | 1 + .../features/garden/farming/GardenStartLocation.kt | 15 +- .../farming/WildStrawberryDyeNotification.kt | 4 +- .../garden/farming/WrongFungiCutterWarning.kt | 2 + .../garden/fortuneguide/CaptureFarmingGear.kt | 25 +- .../features/garden/fortuneguide/FFGuideGUI.kt | 4 +- .../features/garden/fortuneguide/FFStats.kt | 1 + .../garden/fortuneguide/FarmingReforges.kt | 4 +- .../features/garden/fortuneguide/FarmingSets.kt | 5 +- .../features/garden/fortuneguide/FortuneStats.kt | 2 +- .../features/garden/fortuneguide/FortuneUpgrade.kt | 4 +- .../garden/fortuneguide/FortuneUpgrades.kt | 17 +- .../garden/fortuneguide/pages/OverviewPage.kt | 4 +- .../garden/fortuneguide/pages/UpgradePage.kt | 1 + .../garden/inventory/AnitaExtraFarmingFortune.kt | 3 +- .../inventory/GardenCropMilestoneInventory.kt | 3 +- .../garden/inventory/GardenInventoryNumbers.kt | 2 +- .../garden/inventory/GardenNextPlotPrice.kt | 4 +- .../features/garden/inventory/GardenPlotIcon.kt | 4 +- .../garden/inventory/SkyMartCopperPrice.kt | 4 +- .../skyhanni/features/garden/pests/PestAPI.kt | 1 + .../skyhanni/features/garden/pests/PestFinder.kt | 14 +- .../skyhanni/features/garden/pests/PestSpawn.kt | 4 +- .../features/garden/pests/PestSpawnTimer.kt | 1 + .../skyhanni/features/garden/pests/SprayDisplay.kt | 5 +- .../features/garden/pests/SprayFeatures.kt | 2 +- .../skyhanni/features/garden/pests/SprayType.kt | 3 +- .../garden/visitor/GardenVisitorColorNames.kt | 1 + .../garden/visitor/GardenVisitorDropStatistics.kt | 7 +- .../garden/visitor/GardenVisitorFeatures.kt | 15 +- .../features/garden/visitor/GardenVisitorTimer.kt | 4 +- .../visitor/HighlightVisitorsOutsideOfGarden.kt | 4 +- .../features/garden/visitor/NPCVisitorFix.kt | 5 +- .../skyhanni/features/garden/visitor/VisitorAPI.kt | 11 +- .../features/garden/visitor/VisitorListener.kt | 9 +- .../features/garden/visitor/VisitorReward.kt | 8 +- .../garden/visitor/VisitorTooltipParser.kt | 2 +- .../features/inventory/AuctionsHighlighter.kt | 6 +- .../skyhanni/features/inventory/ChestValue.kt | 4 +- .../skyhanni/features/inventory/DojoRankDisplay.kt | 7 +- .../features/inventory/HideNotClickableItems.kt | 7 +- .../features/inventory/HighlightBonzoMasks.kt | 3 +- .../inventory/ItemDisplayOverlayFeatures.kt | 1 + .../skyhanni/features/inventory/ItemStars.kt | 1 - .../features/inventory/PowerStoneGuideFeatures.kt | 3 +- .../features/inventory/QuickCraftFeatures.kt | 2 +- .../features/inventory/RngMeterInventory.kt | 3 +- .../skyhanni/features/inventory/SackDisplay.kt | 5 +- .../skyhanni/features/inventory/StatsTuning.kt | 2 +- .../skyhanni/features/inventory/tiarelay/Relay.kt | 1 + .../features/inventory/tiarelay/TiaRelayHelper.kt | 8 +- .../inventory/tiarelay/TiaRelayWaypoints.kt | 1 + .../features/itemabilities/ChickenHeadTimer.kt | 1 + .../itemabilities/FireVeilWandParticles.kt | 3 +- .../itemabilities/abilitycooldown/ItemAbility.kt | 4 +- .../abilitycooldown/ItemAbilityCooldown.kt | 7 +- .../skyhanni/features/mining/DeepCavernsParkour.kt | 13 +- .../mining/HighlightMiningCommissionMobs.kt | 1 + .../skyhanni/features/mining/KingTalismanHelper.kt | 11 +- .../crystalhollows/CrystalHollowsNamesInCore.kt | 1 + .../mining/eventtracker/MiningEventTracker.kt | 4 +- .../features/mining/powdertracker/PowderTracker.kt | 9 +- .../skyhanni/features/minion/MinionCollectLogic.kt | 1 + .../skyhanni/features/minion/MinionFeatures.kt | 10 +- .../hannibal2/skyhanni/features/minion/MinionXp.kt | 3 +- .../skyhanni/features/misc/BetterSignEditing.kt | 1 + .../skyhanni/features/misc/ButtonOnPause.kt | 3 +- .../skyhanni/features/misc/CollectionTracker.kt | 17 +- .../skyhanni/features/misc/CurrentPetDisplay.kt | 1 + .../skyhanni/features/misc/CustomTextBox.kt | 5 +- .../skyhanni/features/misc/FandomWikiFromMenus.kt | 0 .../skyhanni/features/misc/FixNEUHeavyPearls.kt | 5 +- .../hannibal2/skyhanni/features/misc/HideArmor.kt | 1 + .../skyhanni/features/misc/InGameDateDisplay.kt | 5 +- .../skyhanni/features/misc/JoinCrystalHollows.kt | 9 +- .../skyhanni/features/misc/LesserOrbHider.kt | 4 +- .../skyhanni/features/misc/LimboTimeTracker.kt | 14 +- .../skyhanni/features/misc/LockMouseLook.kt | 9 +- .../skyhanni/features/misc/MarkedPlayerManager.kt | 12 +- .../skyhanni/features/misc/MovementSpeedDisplay.kt | 1 + .../features/misc/NonGodPotEffectDisplay.kt | 11 +- .../skyhanni/features/misc/ParticleHider.kt | 4 +- .../skyhanni/features/misc/PartyMemberOutlines.kt | 3 +- .../skyhanni/features/misc/PetExpTooltip.kt | 3 +- .../skyhanni/features/misc/PlayerChatSymbols.kt | 1 + .../skyhanni/features/misc/QuickModMenuSwitch.kt | 12 +- .../skyhanni/features/misc/ServerRestartTitle.kt | 1 + .../skyhanni/features/misc/SkyBlockKickDuration.kt | 1 + .../features/misc/SuperpairsClicksAlert.kt | 5 +- .../skyhanni/features/misc/TimeFeatures.kt | 1 + .../hannibal2/skyhanni/features/misc/TpsCounter.kt | 2 + .../misc/compacttablist/AdvancedPlayerList.kt | 6 +- .../features/misc/compacttablist/TabColumn.kt | 4 +- .../features/misc/compacttablist/TabListReader.kt | 1 + .../misc/compacttablist/TabListRenderer.kt | 4 +- .../features/misc/compacttablist/TabSection.kt | 3 +- .../features/misc/compacttablist/TabStringType.kt | 3 +- .../features/misc/discordrpc/DiscordRPCManager.kt | 28 +- .../features/misc/discordrpc/DiscordStatus.kt | 1 - .../misc/items/AuctionHouseCopyUnderbidPrice.kt | 4 +- .../features/misc/items/EstimatedItemValue.kt | 12 +- .../misc/items/EstimatedItemValueCalculator.kt | 8 +- .../features/misc/items/EstimatedWardrobePrice.kt | 1 + .../massconfiguration/DefaultConfigFeatures.kt | 19 +- .../massconfiguration/DefaultConfigOptionGui.kt | 6 +- .../massconfiguration/FeatureToggleableOption.kt | 4 +- .../misc/teleportpad/TeleportPadCompactName.kt | 3 +- .../misc/teleportpad/TeleportPadInventoryNumber.kt | 1 + .../features/misc/trevor/TrevorFeatures.kt | 1 + .../skyhanni/features/misc/trevor/TrevorSolver.kt | 1 + .../skyhanni/features/misc/trevor/TrevorTracker.kt | 5 +- .../misc/update/GuiOptionEditorUpdateCheck.kt | 1 + .../skyhanni/features/misc/update/UpdateManager.kt | 8 +- .../features/misc/visualwords/ModifyVisualWords.kt | 1 + .../features/misc/visualwords/VisualWord.kt | 5 +- .../features/misc/visualwords/VisualWordGui.kt | 5 +- .../skyhanni/features/nether/PabloHelper.kt | 5 +- .../skyhanni/features/nether/SulphurSkitterBox.kt | 6 +- .../features/nether/VolcanoExplosivityDisplay.kt | 3 +- .../features/nether/ashfang/AshfangBlazes.kt | 3 +- .../features/nether/ashfang/AshfangBlazingSouls.kt | 3 +- .../nether/ashfang/AshfangFreezeCooldown.kt | 1 + .../features/nether/ashfang/AshfangGravityOrbs.kt | 3 +- .../nether/ashfang/AshfangHideParticles.kt | 3 +- .../nether/ashfang/AshfangNextResetCooldown.kt | 1 + .../CrimsonIsleReputationHelper.kt | 9 +- .../dailykuudra/DailyKuudraBossHelper.kt | 6 +- .../reputationhelper/dailykuudra/KuudraTier.kt | 3 +- .../dailyquest/DailyQuestHelper.kt | 8 +- .../reputationhelper/dailyquest/QuestLoader.kt | 4 +- .../reputationhelper/dailyquest/quest/DojoQuest.kt | 2 +- .../dailyquest/quest/FetchQuest.kt | 8 +- .../dailyquest/quest/ProgressQuest.kt | 2 +- .../reputationhelper/dailyquest/quest/Quest.kt | 2 +- .../dailyquest/quest/TrophyFishQuest.kt | 2 +- .../reputationhelper/miniboss/CrimsonMiniBoss.kt | 2 +- .../miniboss/DailyMiniBossHelper.kt | 2 +- .../at/hannibal2/skyhanni/features/rift/RiftAPI.kt | 1 + .../rift/area/dreadfarm/RiftAgaricusCap.kt | 1 + .../area/dreadfarm/RiftWiltedBerberisHelper.kt | 5 +- .../rift/area/dreadfarm/VoltHighlighter.kt | 3 +- .../area/livingcave/LivingCaveDefenseBlocks.kt | 6 +- .../area/livingcave/LivingCaveLivingMetalHelper.kt | 1 + .../area/livingcave/LivingMetalSuitProgress.kt | 2 +- .../rift/area/mirrorverse/RiftLavaMazeParkour.kt | 6 +- .../rift/area/mirrorverse/RiftUpsideDownParkour.kt | 6 +- .../rift/area/mirrorverse/TubulatorParkour.kt | 8 +- .../area/stillgorechateau/RiftBloodEffigies.kt | 11 +- .../rift/area/westvillage/VerminTracker.kt | 10 +- .../rift/area/westvillage/kloon/KloonHacking.kt | 1 + .../features/rift/area/wyldwoods/RiftLarva.kt | 3 +- .../features/rift/area/wyldwoods/RiftOdonata.kt | 3 +- .../rift/area/wyldwoods/ShyCruxWarnings.kt | 1 + .../rift/everywhere/CruxTalismanDisplay.kt | 7 +- .../rift/everywhere/EnigmaSoulWaypoints.kt | 9 +- .../features/rift/everywhere/HighlightRiftGuide.kt | 3 +- .../skyhanni/features/rift/everywhere/RiftTimer.kt | 4 +- .../features/rift/everywhere/motes/RiftMotesOrb.kt | 3 +- .../rift/everywhere/motes/ShowMotesNpcSellPrice.kt | 5 +- .../features/slayer/SlayerItemsOnGround.kt | 1 + .../features/slayer/SlayerMiniBossFeatures.kt | 3 +- .../features/slayer/SlayerProfitTracker.kt | 10 +- .../skyhanni/features/slayer/SlayerQuestWarning.kt | 13 +- .../features/slayer/SlayerRngMeterDisplay.kt | 6 +- .../features/slayer/VampireSlayerFeatures.kt | 4 +- .../features/slayer/blaze/BlazeSlayerClearView.kt | 3 +- .../slayer/blaze/BlazeSlayerDaggerHelper.kt | 3 +- .../slayer/blaze/BlazeSlayerFirePitsWarning.kt | 2 + .../features/slayer/blaze/HellionShield.kt | 3 +- .../features/slayer/blaze/HellionShieldHelper.kt | 3 +- .../slayer/enderman/EndermanSlayerFeatures.kt | 11 +- .../features/stranded/HighlightPlaceableNpcs.kt | 1 + .../features/summonings/SummoningMobManager.kt | 5 +- .../features/summonings/SummoningSoulsName.kt | 6 +- .../skyhanni/mixins/hooks/FontRendererHook.kt | 4 +- .../hooks/MixinPatcherFontRendererHookHook.kt | 3 +- .../skyhanni/mixins/hooks/RenderGlobalHook.kt | 3 +- .../mixins/hooks/RenderLivingEntityHelper.kt | 7 +- .../mixins/hooks/RendererLivingEntityHook.kt | 3 +- .../skyhanni/mixins/init/SkyhanniMixinPlugin.java | 26 +- .../skyhanni/test/CommandsSendToServerLogger.kt | 3 +- .../at/hannibal2/skyhanni/test/DebugCommand.kt | 5 +- .../at/hannibal2/skyhanni/test/GriffinUtils.kt | 4 +- .../java/at/hannibal2/skyhanni/test/PacketTest.kt | 8 +- .../skyhanni/test/ParkourWaypointSaver.kt | 3 +- .../test/SkyHanniConfigSearchResetCommand.kt | 6 +- .../skyhanni/test/SkyHanniDebugsAndTests.kt | 47 ++- .../java/at/hannibal2/skyhanni/test/TestBingo.kt | 5 +- .../skyhanni/test/TestCopyBestiaryValues.kt | 3 +- .../skyhanni/test/TestCopyRngMeterValues.kt | 6 +- .../at/hannibal2/skyhanni/test/TestExportTools.kt | 5 +- .../java/at/hannibal2/skyhanni/test/WorldEdit.kt | 17 +- .../skyhanni/test/command/CopyItemCommand.kt | 6 +- .../test/command/CopyNearbyEntitiesCommand.kt | 8 +- .../test/command/CopyNearbyParticlesCommand.kt | 7 +- .../skyhanni/test/command/CopyScoreboardCommand.kt | 7 +- .../skyhanni/test/command/ErrorManager.kt | 11 +- .../skyhanni/test/command/TestChatCommand.kt | 9 +- .../skyhanni/test/hotswap/HotswapSupport.kt | 1 + .../skyhanni/test/hotswap/HotswapSupportHandle.kt | 1 + .../skyhanni/test/hotswap/HotswapSupportImpl.kt | 15 +- .../java/at/hannibal2/skyhanni/utils/APIUtil.kt | 27 +- .../java/at/hannibal2/skyhanni/utils/ChatUtils.kt | 203 ++++++++++ .../at/hannibal2/skyhanni/utils/ClipboardUtils.kt | 3 +- .../at/hannibal2/skyhanni/utils/CollectionUtils.kt | 115 ++++++ .../java/at/hannibal2/skyhanni/utils/ColorUtils.kt | 7 +- .../at/hannibal2/skyhanni/utils/CombatUtils.kt | 1 - .../hannibal2/skyhanni/utils/ConditionalUtils.kt | 33 ++ .../at/hannibal2/skyhanni/utils/ConfigUtils.kt | 2 +- .../java/at/hannibal2/skyhanni/utils/DelayedRun.kt | 3 +- .../skyhanni/utils/EntityOutlineRenderer.kt | 3 +- .../at/hannibal2/skyhanni/utils/EntityUtils.kt | 4 +- .../at/hannibal2/skyhanni/utils/GuiRenderUtils.kt | 8 +- .../skyhanni/utils/IdentityCharacteristics.kt | 1 + .../at/hannibal2/skyhanni/utils/InventoryUtils.kt | 4 +- .../java/at/hannibal2/skyhanni/utils/ItemBlink.kt | 3 +- .../skyhanni/utils/ItemStackTypeAdapter.kt | 4 +- .../java/at/hannibal2/skyhanni/utils/ItemUtils.kt | 4 +- .../at/hannibal2/skyhanni/utils/KSerializable.kt | 6 +- .../at/hannibal2/skyhanni/utils/KeyboardManager.kt | 1 + .../at/hannibal2/skyhanni/utils/LorenzColor.kt | 1 + .../at/hannibal2/skyhanni/utils/LorenzDebug.kt | 4 +- .../at/hannibal2/skyhanni/utils/LorenzLogger.kt | 2 + .../at/hannibal2/skyhanni/utils/LorenzUtils.kt | 435 ++------------------- .../java/at/hannibal2/skyhanni/utils/LorenzVec.kt | 1 + .../skyhanni/utils/MinecraftConsoleFilter.kt | 5 +- .../skyhanni/utils/MinecraftDispatcher.kt | 3 +- .../at/hannibal2/skyhanni/utils/MultiFilter.kt | 2 +- .../at/hannibal2/skyhanni/utils/NBTTypeAdapter.kt | 3 +- .../at/hannibal2/skyhanni/utils/NEUInternalName.kt | 3 +- .../java/at/hannibal2/skyhanni/utils/NEUItems.kt | 3 +- .../java/at/hannibal2/skyhanni/utils/NumberUtil.kt | 7 +- .../java/at/hannibal2/skyhanni/utils/OSUtils.kt | 2 +- .../at/hannibal2/skyhanni/utils/ParkourHelper.kt | 6 +- .../hannibal2/skyhanni/utils/RecalculatingValue.kt | 3 +- .../at/hannibal2/skyhanni/utils/ReflectionUtils.kt | 62 +++ .../at/hannibal2/skyhanni/utils/RenderUtils.kt | 28 +- .../java/at/hannibal2/skyhanni/utils/Season.kt | 4 +- .../at/hannibal2/skyhanni/utils/SimpleTimeMark.kt | 1 + .../skyhanni/utils/SkyBlockItemModifierUtils.kt | 9 +- .../java/at/hannibal2/skyhanni/utils/SoundUtils.kt | 3 +- .../at/hannibal2/skyhanni/utils/StringUtils.kt | 1 + .../at/hannibal2/skyhanni/utils/TabListData.kt | 20 +- .../java/at/hannibal2/skyhanni/utils/TimeMark.kt | 4 +- .../java/at/hannibal2/skyhanni/utils/TimeUtils.kt | 9 +- src/main/java/at/hannibal2/skyhanni/utils/Timer.kt | 3 +- .../at/hannibal2/skyhanni/utils/UtilsPatterns.kt | 4 +- .../utils/renderables/RenderLineTooltips.kt | 4 +- .../skyhanni/utils/renderables/Renderable.kt | 2 + .../skyhanni/utils/repopatterns/RepoPattern.kt | 3 +- .../utils/repopatterns/RepoPatternGroup.kt | 1 + .../skyhanni/utils/repopatterns/RepoPatternGui.kt | 6 +- .../skyhanni/utils/repopatterns/RepoPatternImpl.kt | 2 +- .../utils/repopatterns/RepoPatternManager.kt | 4 +- .../skyhanni/utils/shader/ShaderHelper.kt | 2 + .../skyhanni/utils/shader/ShaderManager.kt | 2 + .../at/hannibal2/skyhanni/utils/shader/Uniform.kt | 5 +- .../skyhanni/utils/tracker/ItemTrackerData.kt | 1 + .../skyhanni/utils/tracker/SkyHanniItemTracker.kt | 15 +- .../skyhanni/utils/tracker/SkyHanniTracker.kt | 10 +- .../skyhanni/utils/tracker/TrackerData.kt | 1 + 478 files changed, 2029 insertions(+), 1458 deletions(-) create mode 100644 src/main/java/at/hannibal2/skyhanni/features/misc/FandomWikiFromMenus.kt create mode 100644 src/main/java/at/hannibal2/skyhanni/utils/ChatUtils.kt create mode 100644 src/main/java/at/hannibal2/skyhanni/utils/CollectionUtils.kt create mode 100644 src/main/java/at/hannibal2/skyhanni/utils/ConditionalUtils.kt create mode 100644 src/main/java/at/hannibal2/skyhanni/utils/ReflectionUtils.kt (limited to 'src/main/java') diff --git a/src/main/java/at/hannibal2/skyhanni/api/CollectionAPI.kt b/src/main/java/at/hannibal2/skyhanni/api/CollectionAPI.kt index 3336fcae3..ff744cecd 100644 --- a/src/main/java/at/hannibal2/skyhanni/api/CollectionAPI.kt +++ b/src/main/java/at/hannibal2/skyhanni/api/CollectionAPI.kt @@ -4,10 +4,10 @@ import at.hannibal2.skyhanni.events.CollectionUpdateEvent import at.hannibal2.skyhanni.events.InventoryFullyOpenedEvent import at.hannibal2.skyhanni.events.ItemAddEvent import at.hannibal2.skyhanni.events.ProfileJoinEvent +import at.hannibal2.skyhanni.utils.ChatUtils +import at.hannibal2.skyhanni.utils.CollectionUtils.addOrPut import at.hannibal2.skyhanni.utils.ItemUtils.getLore import at.hannibal2.skyhanni.utils.ItemUtils.name -import at.hannibal2.skyhanni.utils.LorenzUtils -import at.hannibal2.skyhanni.utils.LorenzUtils.addOrPut import at.hannibal2.skyhanni.utils.NEUInternalName import at.hannibal2.skyhanni.utils.NEUItems import at.hannibal2.skyhanni.utils.NEUItems.getItemStackOrNull @@ -17,6 +17,7 @@ import at.hannibal2.skyhanni.utils.StringUtils.removeColor import net.minecraftforge.fml.common.eventhandler.SubscribeEvent class CollectionAPI { + // TODO USE SH-REPO private val counterPattern = ".* §e(?.*)§6/.*".toPattern() private val singleCounterPattern = "§7Total Collected: §e(?.*)".toPattern() @@ -76,13 +77,14 @@ class CollectionAPI { // TODO add support for replenish (higher collection than actual items in inv) if (internalName.getItemStackOrNull() == null) { - LorenzUtils.debug("CollectionAPI.addFromInventory: item is null for '$internalName'") + ChatUtils.debug("CollectionAPI.addFromInventory: item is null for '$internalName'") return } collectionValue.addOrPut(internalName, event.amount.toLong()) } companion object { + // TODO USE SH-REPO val collectionValue = mutableMapOf() private val collectionTier0Pattern = "§7Progress to .* I: .*".toPattern() diff --git a/src/main/java/at/hannibal2/skyhanni/config/ConfigGuiForgeInterop.kt b/src/main/java/at/hannibal2/skyhanni/config/ConfigGuiForgeInterop.kt index b0adea115..fd1fac07d 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/ConfigGuiForgeInterop.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/ConfigGuiForgeInterop.kt @@ -11,6 +11,7 @@ import java.io.IOException @Suppress("unused") class ConfigGuiForgeInterop : IModGuiFactory { + override fun initialize(minecraft: Minecraft) {} override fun mainConfigGuiClass() = WrappedSkyHanniConfig::class.java @@ -20,6 +21,7 @@ class ConfigGuiForgeInterop : IModGuiFactory { class WrappedSkyHanniConfig(private val parent: GuiScreen) : GuiScreenElementWrapper(ConfigGuiManager.getEditorInstance()) { + @Throws(IOException::class) override fun handleKeyboardInput() { if (Keyboard.getEventKeyState() && Keyboard.getEventKey() == Keyboard.KEY_ESCAPE) { diff --git a/src/main/java/at/hannibal2/skyhanni/config/ConfigGuiManager.kt b/src/main/java/at/hannibal2/skyhanni/config/ConfigGuiManager.kt index f6bcd3bbc..fe43a8f82 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/ConfigGuiManager.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/ConfigGuiManager.kt @@ -18,5 +18,4 @@ object ConfigGuiManager { } SkyHanniMod.screenToOpen = GuiScreenElementWrapper(editor) } - } diff --git a/src/main/java/at/hannibal2/skyhanni/config/ConfigManager.kt b/src/main/java/at/hannibal2/skyhanni/config/ConfigManager.kt index b69c90a59..125d395f8 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/ConfigManager.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/ConfigManager.kt @@ -46,6 +46,7 @@ typealias TrackerDisplayMode = SkyHanniTracker.DefaultDisplayMode class ConfigManager { companion object { + val gson = GsonBuilder().setPrettyPrinting() .excludeFieldsWithoutExposeAnnotation() .serializeSpecialFloatingPointValues() diff --git a/src/main/java/at/hannibal2/skyhanni/config/ConfigUpdaterMigrator.kt b/src/main/java/at/hannibal2/skyhanni/config/ConfigUpdaterMigrator.kt index 436132cd3..64a158d10 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/ConfigUpdaterMigrator.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/ConfigUpdaterMigrator.kt @@ -8,6 +8,7 @@ import com.google.gson.JsonObject import com.google.gson.JsonPrimitive object ConfigUpdaterMigrator { + val logger = LorenzLogger("ConfigMigration") const val CONFIG_VERSION = 23 fun JsonElement.at(chain: List, init: Boolean): JsonElement? { @@ -28,6 +29,7 @@ object ConfigUpdaterMigrator { var movesPerformed: Int, val dynamicPrefix: Map>, ) : LorenzEvent() { + init { dynamicPrefix.entries.filter { it.value.isEmpty() }.forEach { logger.log("Dynamic prefix ${it.key} does not resolve to anything.") diff --git a/src/main/java/at/hannibal2/skyhanni/config/SackData.java b/src/main/java/at/hannibal2/skyhanni/config/SackData.java index 61febed74..3495f9b8c 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/SackData.java +++ b/src/main/java/at/hannibal2/skyhanni/config/SackData.java @@ -23,4 +23,4 @@ public class SackData { @Expose public Map sackContents = new HashMap<>(); } -} \ No newline at end of file +} diff --git a/src/main/java/at/hannibal2/skyhanni/config/Storage.java b/src/main/java/at/hannibal2/skyhanni/config/Storage.java index a9364d695..56a11626a 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/Storage.java +++ b/src/main/java/at/hannibal2/skyhanni/config/Storage.java @@ -135,9 +135,9 @@ public class Storage { @Override public String toString() { return "MinionConfig{" + - "displayName='" + displayName + '\'' + - ", lastClicked=" + lastClicked + - '}'; + "displayName='" + displayName + '\'' + + ", lastClicked=" + lastClicked + + '}'; } } @@ -395,11 +395,11 @@ public class Storage { @Override public String toString() { return "SlayerRngMeterStorage{" + - "currentMeter=" + currentMeter + - ", gainPerBoss=" + gainPerBoss + - ", goalNeeded=" + goalNeeded + - ", itemGoal='" + itemGoal + '\'' + - '}'; + "currentMeter=" + currentMeter + + ", gainPerBoss=" + gainPerBoss + + ", goalNeeded=" + goalNeeded + + ", itemGoal='" + itemGoal + '\'' + + '}'; } } diff --git a/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt b/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt index e2868a931..6e7c80ce1 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt @@ -65,6 +65,7 @@ import at.hannibal2.skyhanni.test.command.CopyScoreboardCommand import at.hannibal2.skyhanni.test.command.ErrorManager import at.hannibal2.skyhanni.test.command.TestChatCommand import at.hannibal2.skyhanni.utils.APIUtil +import at.hannibal2.skyhanni.utils.ChatUtils import at.hannibal2.skyhanni.utils.LorenzUtils import at.hannibal2.skyhanni.utils.SoundUtils import at.hannibal2.skyhanni.utils.TabListData @@ -482,7 +483,7 @@ object Commands { @JvmStatic fun openFortuneGuide() { if (!LorenzUtils.inSkyBlock) { - LorenzUtils.userError("Join SkyBlock to open the fortune guide!") + ChatUtils.userError("Join SkyBlock to open the fortune guide!") } else { CaptureFarmingGear.captureFarmingGear() SkyHanniMod.screenToOpen = FFGuideGUI() @@ -492,7 +493,7 @@ object Commands { @JvmStatic fun openVisualWords() { if (!LorenzUtils.onHypixel) { - LorenzUtils.userError("You need to join Hypixel to use this feature!") + ChatUtils.userError("You need to join Hypixel to use this feature!") } else { if (VisualWordGui.sbeConfigPath.exists()) VisualWordGui.drawImport = true SkyHanniMod.screenToOpen = VisualWordGui() @@ -501,7 +502,7 @@ object Commands { private fun clearFarmingItems() { val storage = GardenAPI.storage?.fortune ?: return - LorenzUtils.chat("clearing farming items") + ChatUtils.chat("clearing farming items") storage.farmingItems.clear() storage.outdatedItems.clear() } diff --git a/src/main/java/at/hannibal2/skyhanni/config/commands/SimpleCommand.kt b/src/main/java/at/hannibal2/skyhanni/config/commands/SimpleCommand.kt index bca46dbd6..b8a5871b7 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/commands/SimpleCommand.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/commands/SimpleCommand.kt @@ -6,6 +6,7 @@ import net.minecraft.command.ICommandSender import net.minecraft.util.BlockPos class SimpleCommand : CommandBase { + private val commandName: String private val runnable: ProcessCommandRunnable private var tabRunnable: TabCompleteRunnable? = null @@ -22,10 +23,12 @@ class SimpleCommand : CommandBase { } abstract class ProcessCommandRunnable { + abstract fun processCommand(sender: ICommandSender?, args: Array?) } interface TabCompleteRunnable { + fun tabComplete(sender: ICommandSender?, args: Array?, pos: BlockPos?): List } diff --git a/src/main/java/at/hannibal2/skyhanni/config/core/config/gui/GuiPositionEditor.kt b/src/main/java/at/hannibal2/skyhanni/config/core/config/gui/GuiPositionEditor.kt index 88ec9e054..f6765ca2b 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/core/config/gui/GuiPositionEditor.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/core/config/gui/GuiPositionEditor.kt @@ -35,6 +35,7 @@ import org.lwjgl.input.Mouse import java.io.IOException class GuiPositionEditor(private val positions: List, private val border: Int) : GuiScreen() { + private var grabbedX = 0 private var grabbedY = 0 private var clickedPos = -1 diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/chat/ChatConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/chat/ChatConfig.java index 4e9a351a7..e46d8052a 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/chat/ChatConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/chat/ChatConfig.java @@ -7,9 +7,10 @@ import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; import io.github.moulberry.moulconfig.annotations.ConfigOption; +import org.lwjgl.input.Keyboard; + import java.util.ArrayList; import java.util.List; -import org.lwjgl.input.Keyboard; public class ChatConfig { diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/crimsonisle/SulphurSkitterBoxConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/crimsonisle/SulphurSkitterBoxConfig.java index 9577a9146..c37b16172 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/crimsonisle/SulphurSkitterBoxConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/crimsonisle/SulphurSkitterBoxConfig.java @@ -1,14 +1,11 @@ package at.hannibal2.skyhanni.config.features.crimsonisle; import at.hannibal2.skyhanni.config.FeatureToggle; -import at.hannibal2.skyhanni.config.HasLegacyId; -import at.hannibal2.skyhanni.features.nether.SulphurSkitterBox; import com.google.gson.annotations.Expose; import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; import io.github.moulberry.moulconfig.annotations.ConfigOption; -import io.github.moulberry.moulconfig.observer.Property; public class SulphurSkitterBoxConfig { diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/garden/visitor/DropsStatisticsConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/garden/visitor/DropsStatisticsConfig.java index 19cd42a16..c9be39d54 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/garden/visitor/DropsStatisticsConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/garden/visitor/DropsStatisticsConfig.java @@ -12,7 +12,18 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.*; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.ACCEPTED; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.COINS_SPENT; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.COPPER; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.DEDICATION_IV; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.DENIED; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.FARMING_EXP; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.GREEN_BANDANA; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.OVERGROWN_GRASS; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.SPACER_1; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.TITLE; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.TOTAL_VISITORS; +import static at.hannibal2.skyhanni.config.features.garden.visitor.DropsStatisticsConfig.DropsStatisticsTextEntry.VISITORS_BY_RARITY; public class DropsStatisticsConfig { diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java index fc7bac1e1..499514e2f 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java @@ -239,7 +239,7 @@ public class MiscConfig { @Expose @ConfigOption(name = "Fix Ghost Entities", desc = "Removes ghost entities caused by a Hypixel bug. " + - "This included Diana, Dungeon and Crimson Isle mobs and nametags.") + "This included Diana, Dungeon and Crimson Isle mobs and nametags.") @ConfigEditorBoolean @FeatureToggle public boolean fixGhostEntities = true; diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/misc/pets/PetConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/misc/pets/PetConfig.java index dc1919042..2103968e6 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/misc/pets/PetConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/misc/pets/PetConfig.java @@ -8,6 +8,7 @@ import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; import io.github.moulberry.moulconfig.annotations.ConfigOption; + import java.util.ArrayList; import java.util.Arrays; import java.util.List; diff --git a/src/main/java/at/hannibal2/skyhanni/data/ChatManager.kt b/src/main/java/at/hannibal2/skyhanni/data/ChatManager.kt index 08bef76ff..d631e8e26 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/ChatManager.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/ChatManager.kt @@ -9,8 +9,7 @@ import at.hannibal2.skyhanni.features.chat.ChatFilterGui import at.hannibal2.skyhanni.utils.IdentityCharacteristics import at.hannibal2.skyhanni.utils.LorenzLogger import at.hannibal2.skyhanni.utils.LorenzUtils -import at.hannibal2.skyhanni.utils.LorenzUtils.chat -import at.hannibal2.skyhanni.utils.LorenzUtils.makeAccessible +import at.hannibal2.skyhanni.utils.ReflectionUtils.makeAccessible import net.minecraft.client.Minecraft import net.minecraft.client.gui.ChatLine import net.minecraft.client.gui.GuiNewChat @@ -54,6 +53,7 @@ object ChatManager { val renderedString = "$format$name" companion object { + val maxLength by lazy { entries.maxOf { Minecraft.getMinecraft().fontRendererObj.getStringWidth(it.renderedString) } } @@ -64,7 +64,7 @@ object ChatManager { val message: IChatComponent, var actionKind: ActionKind, var actionReason: String?, - val modified: IChatComponent? + val modified: IChatComponent?, ) @SubscribeEvent(priority = EventPriority.LOW, receiveCanceled = true) @@ -77,7 +77,6 @@ object ChatManager { val actionBarEvent = LorenzActionBarEvent(message) actionBarEvent.postAndCatch() } - } @SubscribeEvent diff --git a/src/main/java/at/hannibal2/skyhanni/data/CropAccessoryData.kt b/src/main/java/at/hannibal2/skyhanni/data/CropAccessoryData.kt index ad5d01d3c..9ea5742a1 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/CropAccessoryData.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/CropAccessoryData.kt @@ -20,6 +20,7 @@ import java.io.ByteArrayInputStream import java.util.Base64 class CropAccessoryData { + // TODO USE SH-REPO private val accessoryBagNamePattern = "Accessory Bag \\((?\\d)/(?\\d)\\)".toPattern() private var loadedAccessoryThisProfile = false @@ -89,12 +90,12 @@ class CropAccessoryData { } } - private fun bestCropAccessory(items: Iterable) = items.mapNotNull { item -> CropAccessory.getByName(item.getInternalName()) } .maxOrNull() ?: CropAccessory.NONE companion object { + var accessoryBagPageCount = 0 private set diff --git a/src/main/java/at/hannibal2/skyhanni/data/EntityMovementData.kt b/src/main/java/at/hannibal2/skyhanni/data/EntityMovementData.kt index dec06dc8e..ae5a03878 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/EntityMovementData.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/EntityMovementData.kt @@ -13,6 +13,7 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent class EntityMovementData { companion object { + private val entityLocation = mutableMapOf() fun addToTrack(entity: Entity) { diff --git a/src/main/java/at/hannibal2/skyhanni/data/EventCounter.kt b/src/main/java/at/hannibal2/skyhanni/data/EventCounter.kt index 70de5e436..f7a730a65 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/EventCounter.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/EventCounter.kt @@ -1,13 +1,14 @@ package at.hannibal2.skyhanni.data import at.hannibal2.skyhanni.SkyHanniMod +import at.hannibal2.skyhanni.utils.CollectionUtils.addOrPut import at.hannibal2.skyhanni.utils.LorenzUtils -import at.hannibal2.skyhanni.utils.LorenzUtils.addOrPut import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators import at.hannibal2.skyhanni.utils.SimpleTimeMark import kotlin.time.Duration.Companion.seconds object EventCounter { + private val config get() = SkyHanniMod.feature.dev.debug private var map = mutableMapOf() diff --git a/src/main/java/at/hannibal2/skyhanni/data/FriendAPI.kt b/src/main/java/at/hannibal2/skyhanni/data/FriendAPI.kt index 834ccaa55..c9cfcc62f 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/FriendAPI.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/FriendAPI.kt @@ -15,6 +15,7 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent import java.util.UUID object FriendAPI { + // TODO USE SH-REPO private val removedFriendPattern = ".*\n§r§eYou removed §r(?.*)§e from your friends list!§r§9§m\n.*".toPattern() diff --git a/src/main/java/at/hannibal2/skyhanni/data/GardenCropMilestones.kt b/src/main/java/at/hannibal2/skyhanni/data/GardenCropMilestones.kt index 34baceb0b..dfa275cb7 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/GardenCropMilestones.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/GardenCropMilestones.kt @@ -1,5 +1,6 @@ package at.hannibal2.skyhanni.data +import at.hannibal2.skyhanni.data.jsonobjects.repo.GardenJson import at.hannibal2.skyhanni.events.CropMilestoneUpdateEvent import at.hannibal2.skyhanni.events.InventoryFullyOpenedEvent import at.hannibal2.skyhanni.events.RepositoryReloadEvent @@ -8,11 +9,11 @@ import at.hannibal2.skyhanni.features.garden.GardenAPI import at.hannibal2.skyhanni.utils.ItemUtils.getLore import at.hannibal2.skyhanni.utils.NumberUtil.formatNumber import at.hannibal2.skyhanni.utils.StringUtils.matchMatcher -import at.hannibal2.skyhanni.data.jsonobjects.repo.GardenJson import net.minecraft.item.ItemStack import net.minecraftforge.fml.common.eventhandler.SubscribeEvent object GardenCropMilestones { + // TODO USE SH-REPO private val cropPattern = "§7Harvest §f(?.*) §7on .*".toPattern() val totalPattern = "§7Total: §a(?.*)".toPattern() diff --git a/src/main/java/at/hannibal2/skyhanni/data/GardenCropMilestonesCommunityFix.kt b/src/main/java/at/hannibal2/skyhanni/data/GardenCropMilestonesCommunityFix.kt index 71398af27..950f226f1 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/GardenCropMilestonesCommunityFix.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/GardenCropMilestonesCommunityFix.kt @@ -6,11 +6,12 @@ import at.hannibal2.skyhanni.data.jsonobjects.repo.GardenJson import at.hannibal2.skyhanni.events.RepositoryReloadEvent import at.hannibal2.skyhanni.features.garden.CropType import at.hannibal2.skyhanni.features.garden.GardenAPI +import at.hannibal2.skyhanni.utils.ChatUtils +import at.hannibal2.skyhanni.utils.CollectionUtils.editCopy +import at.hannibal2.skyhanni.utils.CollectionUtils.nextAfter import at.hannibal2.skyhanni.utils.ItemUtils.getLore import at.hannibal2.skyhanni.utils.ItemUtils.name import at.hannibal2.skyhanni.utils.LorenzUtils -import at.hannibal2.skyhanni.utils.LorenzUtils.editCopy -import at.hannibal2.skyhanni.utils.LorenzUtils.nextAfter import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators import at.hannibal2.skyhanni.utils.NumberUtil.formatNumber import at.hannibal2.skyhanni.utils.NumberUtil.romanToDecimalIfNecessary @@ -23,6 +24,7 @@ import net.minecraft.item.ItemStack import net.minecraftforge.fml.common.eventhandler.SubscribeEvent object GardenCropMilestonesCommunityFix { + private val pattern = ".*§e(?.*)§6/§e(?.*)".toPattern() private var showWrongData = false private var showWhenAllCorrect = false @@ -55,7 +57,7 @@ object GardenCropMilestonesCommunityFix { } if (data.isNotEmpty()) { - LorenzUtils.chat( + ChatUtils.chat( "Found §c${data.size} §ewrong crop milestone steps in the menu! " + "Correct data got put into clipboard. " + "Please share it on the §bSkyHanni Discord §ein the channel §b#share-data§e." @@ -63,7 +65,7 @@ object GardenCropMilestonesCommunityFix { OSUtils.copyToClipboard("```${data.joinToString("\n")}```") } else { if (showWhenAllCorrect) { - LorenzUtils.chat("No wrong crop milestone steps found!") + ChatUtils.chat("No wrong crop milestone steps found!") } } } @@ -71,7 +73,7 @@ object GardenCropMilestonesCommunityFix { private fun checkForWrongData( stack: ItemStack, crop: CropType, - wrongData: MutableList + wrongData: MutableList, ) { val name = stack.name ?: return val rawNumber = name.removeColor().replace(crop.cropName, "").trim() @@ -151,7 +153,7 @@ object GardenCropMilestonesCommunityFix { } } totalFixedValues += fixed - LorenzUtils.chat("Fixed: $fixed/$alreadyCorrect, total fixes: $totalFixedValues") + ChatUtils.chat("Fixed: $fixed/$alreadyCorrect, total fixes: $totalFixedValues") val s = ConfigManager.gson.toJsonTree(GardenCropMilestones.cropMilestoneData).toString() OSUtils.copyToClipboard("\"crop_milestones\":$s,") } diff --git a/src/main/java/at/hannibal2/skyhanni/data/GardenCropUpgrades.kt b/src/main/java/at/hannibal2/skyhanni/data/GardenCropUpgrades.kt index 1ea0871ee..c15299ab3 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/GardenCropUpgrades.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/GardenCropUpgrades.kt @@ -12,6 +12,7 @@ import at.hannibal2.skyhanni.utils.StringUtils.removeColor import net.minecraftforge.fml.common.eventhandler.SubscribeEvent class GardenCropUpgrades { + // TODO USE SH-REPO private val tierPattern = "§7Current Tier: §[0-9a-e](\\d)§7/§a9".toRegex() private val chatUpgradePattern = " {2}§r§6§lCROP UPGRADE §e§f([\\w ]+)§7 #(\\d)".toRegex() @@ -39,6 +40,7 @@ class GardenCropUpgrades { } companion object { + private val cropUpgrades: MutableMap? get() = GardenAPI.storage?.cropUpgrades fun CropType.getUpgradeLevel() = cropUpgrades?.get(this) @@ -46,6 +48,5 @@ class GardenCropUpgrades { fun CropType.setUpgradeLevel(level: Int) { cropUpgrades?.put(this, level) } - } } diff --git a/src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt b/src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt index 0f1da835b..9c50b1c09 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/GuiEditManager.kt @@ -6,10 +6,11 @@ import at.hannibal2.skyhanni.config.core.config.gui.GuiPositionEditor import at.hannibal2.skyhanni.events.GuiRenderEvent import at.hannibal2.skyhanni.events.LorenzKeyPressEvent import at.hannibal2.skyhanni.test.SkyHanniDebugsAndTests +import at.hannibal2.skyhanni.utils.ChatUtils import at.hannibal2.skyhanni.utils.LorenzUtils -import at.hannibal2.skyhanni.utils.LorenzUtils.getPropertiesWithType import at.hannibal2.skyhanni.utils.LorenzUtils.isRancherSign import at.hannibal2.skyhanni.utils.NEUItems +import at.hannibal2.skyhanni.utils.ReflectionUtils.getPropertiesWithType import at.hannibal2.skyhanni.utils.SimpleTimeMark import io.github.moulberry.notenoughupdates.itemeditor.GuiElementTextField import io.github.moulberry.notenoughupdates.profileviewer.GuiProfileViewer @@ -78,7 +79,7 @@ class GuiEditManager { SkyHanniMod.screenToOpen = GuiPositionEditor(latestPositions.values.toList(), 2) if (hotkeyReminder && lastHotkeyReminded.passedSince() > 30.minutes) { lastHotkeyReminded = SimpleTimeMark.now() - LorenzUtils.chat( + ChatUtils.chat( "§eTo edit hidden GUI elements:\n" + " §7- §e1. Set a key in /sh edit.\n" + " §7- §e2. Click that key while the GUI element is visible." @@ -116,7 +117,7 @@ class GuiEditManager { fun Position.getAbsY() = getAbsY0(getDummySize(true).y) fun GuiProfileViewer.anyTextBoxFocused() = - this.getPropertiesWithType().any{it.focus} + this.getPropertiesWithType().any { it.focus } } } diff --git a/src/main/java/at/hannibal2/skyhanni/data/GuildAPI.kt b/src/main/java/at/hannibal2/skyhanni/data/GuildAPI.kt index 5a4fb4f99..f4273e745 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/GuildAPI.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/GuildAPI.kt @@ -5,6 +5,7 @@ import at.hannibal2.skyhanni.utils.StringUtils.cleanPlayerName import net.minecraftforge.fml.common.eventhandler.SubscribeEvent object GuildAPI { + private var inGuildMessage = false private val list = mutableListOf() diff --git a/src/main/java/at/hannibal2/skyhanni/data/HypixelData.kt b/src/main/java/at/hannibal2/skyhanni/data/HypixelData.kt index 3f6ec7051..57889cc48 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/HypixelData.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/HypixelData.kt @@ -10,6 +10,7 @@ import at.hannibal2.skyhanni.events.LorenzWorldChangeEvent import at.hannibal2.skyhanni.events.ProfileJoinEvent import at.hannibal2.skyhanni.features.bingo.BingoAPI import at.hannibal2.skyhanni.test.command.ErrorManager +import at.hannibal2.skyhanni.utils.ChatUtils import at.hannibal2.skyhanni.utils.LorenzLogger import at.hannibal2.skyhanni.utils.LorenzUtils import at.hannibal2.skyhanni.utils.StringUtils.matchMatcher @@ -26,6 +27,7 @@ import net.minecraftforge.fml.common.network.FMLNetworkEvent import kotlin.concurrent.thread class HypixelData { + private val patternGroup = RepoPattern.group("data.hypixeldata") private val tabListProfilePattern by patternGroup.pattern( "tablistprofile", @@ -43,6 +45,7 @@ class HypixelData { private var lastLocRaw = 0L companion object { + private val patternGroup = RepoPattern.group("data.hypixeldata") private val serverIdScoreboardPattern by patternGroup.pattern( "serverid.scoreboard", @@ -61,7 +64,7 @@ class HypixelData { var skyBlockIsland = IslandType.UNKNOWN var serverId: String? = null - //Ironman, Stranded and Bingo + // Ironman, Stranded and Bingo var noTrade = false var ironman = false @@ -95,16 +98,20 @@ class HypixelData { if (!LorenzUtils.inSkyBlock) return null if (serverId != null) return serverId - ScoreboardData.sidebarLinesFormatted.forEach { serverIdScoreboardPattern.matchMatcher(it) { - val serverType = if (group("servertype") == "M") "mega" else "mini" - serverId = "$serverType${group("serverid")}" - return serverId - } } + ScoreboardData.sidebarLinesFormatted.forEach { + serverIdScoreboardPattern.matchMatcher(it) { + val serverType = if (group("servertype") == "M") "mega" else "mini" + serverId = "$serverType${group("serverid")}" + return serverId + } + } - TabListData.getTabList().forEach { serverIdTablistPattern.matchMatcher(it) { - serverId = group("serverid") - return serverId - } } + TabListData.getTabList().forEach { + serverIdTablistPattern.matchMatcher(it) { + serverId = group("serverid") + return serverId + } + } return serverId } @@ -262,7 +269,7 @@ class HypixelData { if (skyBlockIsland != islandType) { IslandChangeEvent(islandType, skyBlockIsland).postAndCatch() if (islandType == IslandType.UNKNOWN) { - LorenzUtils.debug("Unknown island detected: '$newIsland'") + ChatUtils.debug("Unknown island detected: '$newIsland'") loggerIslandChange.log("Unknown: '$newIsland'") } else { loggerIslandChange.log(islandType.name) diff --git a/src/main/java/at/hannibal2/skyhanni/data/IslandType.kt b/src/main/java/at/hannibal2/skyhanni/data/IslandType.kt index a3eef5dd9..e6a01136c 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/IslandType.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/IslandType.kt @@ -17,7 +17,7 @@ enum class IslandType(val displayName: String, val modeName: String = "null") { CRYSTAL_HOLLOWS("Crystal Hollows"), THE_PARK("The Park", "floating_islands_1"), DEEP_CAVERNS("Deep Caverns", "deep_caverns"), - GOLD_MINES("Gold Mine", "gold_mine"),//TODO confirm + GOLD_MINES("Gold Mine", "gold_mine"),// TODO confirm GARDEN("Garden"), GARDEN_GUEST("Garden Guest"), SPIDER_DEN("Spider's Den"), @@ -29,6 +29,7 @@ enum class IslandType(val displayName: String, val modeName: String = "null") { ; companion object { + fun getByNameOrUnknown(name: String) = getByNameOrNull(name) ?: UNKNOWN fun getByName(name: String) = getByNameOrNull(name) ?: error("IslandType not found: '$name'") diff --git a/src/main/java/at/hannibal2/skyhanni/data/ItemRenderBackground.kt b/src/main/java/at/hannibal2/skyhanni/data/ItemRenderBackground.kt index f62ebd800..406901b9d 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/ItemRenderBackground.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/ItemRenderBackground.kt @@ -38,7 +38,6 @@ class ItemRenderBackground { } } - @SubscribeEvent fun renderOverlayLol(event: RenderRealOverlayEvent) { val stack = event.stack @@ -70,4 +69,4 @@ class ItemRenderBackground { GlStateManager.popMatrix() } } -} \ No newline at end of file +} diff --git a/src/main/java/at/hannibal2/skyhanni/data/LocationFixData.kt b/src/main/java/at/hannibal2/skyhanni/data/LocationFixData.kt index f32256031..728678824 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/LocationFixData.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/LocationFixData.kt @@ -1,13 +1,14 @@ package at.hannibal2.skyhanni.data +import at.hannibal2.skyhanni.data.jsonobjects.repo.LocationFixJson import at.hannibal2.skyhanni.events.RepositoryReloadEvent import at.hannibal2.skyhanni.utils.LocationUtils.isPlayerInside -import at.hannibal2.skyhanni.data.jsonobjects.repo.LocationFixJson import net.minecraft.util.AxisAlignedBB import net.minecraftforge.fml.common.eventhandler.EventPriority import net.minecraftforge.fml.common.eventhandler.SubscribeEvent object LocationFixData { + private var locationFixes = mutableListOf() class LocationFix(val island: IslandType, val area: AxisAlignedBB, val realLocation: String) diff --git a/src/main/java/at/hannibal2/skyhanni/data/MayorElection.kt b/src/main/java/at/hannibal2/skyhanni/data/MayorElection.kt index 646337a27..e8abad8a9 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/MayorElection.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/MayorElection.kt @@ -5,8 +5,8 @@ import at.hannibal2.skyhanni.config.ConfigManager import at.hannibal2.skyhanni.data.jsonobjects.local.MayorJson import at.hannibal2.skyhanni.events.LorenzTickEvent