From bd3f0329d0e391bd84b5f9e3ff207d9dd9815853 Mon Sep 17 00:00:00 2001 From: Yasin Date: Mon, 9 Oct 2023 12:58:02 +0200 Subject: new pr because fixing merge conflict would take too long --- .../xmrvizzy/skyblocker/skyblock/FairySouls.java | 215 ---------- .../skyblocker/skyblock/FancyStatusBars.java | 192 --------- .../skyblocker/skyblock/FishingHelper.java | 62 --- .../skyblocker/skyblock/HotbarSlotLock.java | 40 -- .../skyblocker/skyblock/QuiverWarning.java | 66 --- .../skyblocker/skyblock/StatusBarTracker.java | 109 ----- .../skyblocker/skyblock/TeleportOverlay.java | 114 ----- .../skyblocker/skyblock/barn/HungryHiker.java | 47 -- .../skyblocker/skyblock/barn/TreasureHunter.java | 61 --- .../skyblocker/skyblock/dungeon/CroesusHelper.java | 34 -- .../skyblocker/skyblock/dungeon/DungeonBlaze.java | 152 ------- .../skyblock/dungeon/DungeonChestProfit.java | 169 -------- .../skyblocker/skyblock/dungeon/DungeonMap.java | 61 --- .../skyblock/dungeon/DungeonMapConfigScreen.java | 62 --- .../skyblocker/skyblock/dungeon/LividColor.java | 42 -- .../skyblocker/skyblock/dungeon/OldLever.java | 40 -- .../skyblocker/skyblock/dungeon/Reparty.java | 94 ---- .../skyblock/dungeon/StarredMobGlow.java | 56 --- .../skyblocker/skyblock/dungeon/ThreeWeirdos.java | 39 -- .../skyblocker/skyblock/dungeon/TicTacToe.java | 136 ------ .../skyblocker/skyblock/dungeon/Trivia.java | 100 ----- .../skyblock/dungeon/secrets/DungeonMapUtils.java | 275 ------------ .../skyblock/dungeon/secrets/DungeonSecrets.java | 451 -------------------- .../skyblocker/skyblock/dungeon/secrets/Room.java | 473 --------------------- .../skyblock/dungeon/secrets/SecretWaypoint.java | 142 ------- .../skyblock/dungeon/terminal/ColorTerminal.java | 72 ---- .../skyblock/dungeon/terminal/OrderTerminal.java | 58 --- .../dungeon/terminal/StartsWithTerminal.java | 35 -- .../skyblocker/skyblock/dwarven/DwarvenHud.java | 144 ------- .../skyblock/dwarven/DwarvenHudConfigScreen.java | 67 --- .../skyblocker/skyblock/dwarven/Fetchur.java | 53 --- .../skyblocker/skyblock/dwarven/Puzzler.java | 39 -- .../skyblock/experiment/ChronomatronSolver.java | 129 ------ .../skyblock/experiment/ExperimentSolver.java | 60 --- .../skyblock/experiment/SuperpairsSolver.java | 81 ---- .../skyblock/experiment/UltrasequencerSolver.java | 80 ---- .../skyblocker/skyblock/filters/AbilityFilter.java | 15 - .../skyblocker/skyblock/filters/AdFilter.java | 39 -- .../skyblocker/skyblock/filters/AoteFilter.java | 15 - .../skyblocker/skyblock/filters/AutopetFilter.java | 35 -- .../skyblocker/skyblock/filters/ComboFilter.java | 16 - .../skyblocker/skyblock/filters/HealFilter.java | 15 - .../skyblock/filters/ImplosionFilter.java | 15 - .../skyblock/filters/MoltenWaveFilter.java | 15 - .../skyblocker/skyblock/filters/ShowOffFilter.java | 18 - .../skyblock/filters/SimpleChatFilter.java | 17 - .../skyblock/filters/TeleportPadFilter.java | 16 - .../skyblocker/skyblock/item/AttributeShards.java | 59 --- .../skyblocker/skyblock/item/BackpackPreview.java | 235 ---------- .../skyblock/item/CompactorDeletorPreview.java | 92 ---- .../item/CompactorPreviewTooltipComponent.java | 54 --- .../skyblock/item/CustomArmorDyeColors.java | 82 ---- .../skyblocker/skyblock/item/CustomArmorTrims.java | 154 ------- .../skyblocker/skyblock/item/CustomItemNames.java | 74 ---- .../skyblocker/skyblock/item/ItemCooldowns.java | 115 ----- .../skyblocker/skyblock/item/ItemProtection.java | 75 ---- .../skyblock/item/ItemRarityBackgrounds.java | 109 ----- .../skyblocker/skyblock/item/PriceInfoTooltip.java | 443 ------------------- .../skyblock/item/SkyblockItemRarity.java | 29 -- .../skyblocker/skyblock/item/WikiLookup.java | 56 --- .../skyblock/itemlist/ItemFixerUpper.java | 341 --------------- .../skyblock/itemlist/ItemListWidget.java | 102 ----- .../skyblocker/skyblock/itemlist/ItemRegistry.java | 137 ------ .../skyblock/itemlist/ItemStackBuilder.java | 154 ------- .../skyblock/itemlist/ResultButtonWidget.java | 65 --- .../skyblock/itemlist/SearchResultsWidget.java | 228 ---------- .../skyblock/itemlist/SkyblockCraftingRecipe.java | 60 --- .../skyblocker/skyblock/quicknav/QuickNav.java | 80 ---- .../skyblock/quicknav/QuickNavButton.java | 107 ----- .../skyblocker/skyblock/rift/EffigyWaypoints.java | 71 ---- .../skyblock/rift/HealingMelonIndicator.java | 27 -- .../skyblocker/skyblock/rift/ManiaIndicator.java | 42 -- .../skyblock/rift/MirrorverseWaypoints.java | 88 ---- .../skyblocker/skyblock/rift/StakeIndicator.java | 27 -- .../xmrvizzy/skyblocker/skyblock/rift/TheRift.java | 21 - .../skyblock/rift/TwinClawsIndicator.java | 43 -- .../skyblocker/skyblock/shortcut/Shortcuts.java | 208 --------- .../shortcut/ShortcutsConfigListWidget.java | 232 ---------- .../skyblock/shortcut/ShortcutsConfigScreen.java | 113 ----- .../skyblock/special/SpecialEffects.java | 96 ----- .../skyblocker/skyblock/spidersden/Relics.java | 171 -------- .../skyblocker/skyblock/tabhud/TabHud.java | 39 -- .../tabhud/screenbuilder/ScreenBuilder.java | 179 -------- .../tabhud/screenbuilder/ScreenMaster.java | 144 ------- .../tabhud/screenbuilder/pipeline/AlignStage.java | 83 ---- .../screenbuilder/pipeline/CollideStage.java | 153 ------- .../screenbuilder/pipeline/PipelineStage.java | 14 - .../tabhud/screenbuilder/pipeline/PlaceStage.java | 94 ---- .../tabhud/screenbuilder/pipeline/StackStage.java | 114 ----- .../skyblocker/skyblock/tabhud/util/Ico.java | 60 --- .../skyblock/tabhud/util/PlayerListMgr.java | 172 -------- .../skyblock/tabhud/util/PlayerLocator.java | 87 ---- .../skyblock/tabhud/util/ScreenConst.java | 13 - .../tabhud/widget/CameraPositionWidget.java | 37 -- .../skyblock/tabhud/widget/CommsWidget.java | 63 --- .../skyblock/tabhud/widget/ComposterWidget.java | 30 -- .../skyblock/tabhud/widget/CookieWidget.java | 50 --- .../skyblock/tabhud/widget/DungeonBuffWidget.java | 68 --- .../skyblock/tabhud/widget/DungeonDeathWidget.java | 47 -- .../tabhud/widget/DungeonDownedWidget.java | 44 -- .../tabhud/widget/DungeonPlayerWidget.java | 103 ----- .../tabhud/widget/DungeonPuzzleWidget.java | 57 --- .../tabhud/widget/DungeonSecretWidget.java | 26 -- .../tabhud/widget/DungeonServerWidget.java | 48 --- .../skyblock/tabhud/widget/EffectWidget.java | 67 --- .../skyblock/tabhud/widget/ElectionWidget.java | 104 ----- .../skyblock/tabhud/widget/ErrorWidget.java | 32 -- .../skyblock/tabhud/widget/EssenceWidget.java | 47 -- .../skyblock/tabhud/widget/EventWidget.java | 35 -- .../skyblock/tabhud/widget/FireSaleWidget.java | 68 --- .../skyblock/tabhud/widget/ForgeWidget.java | 81 ---- .../skyblock/tabhud/widget/GardenServerWidget.java | 54 --- .../skyblock/tabhud/widget/GardenSkillsWidget.java | 80 ---- .../tabhud/widget/GardenVisitorsWidget.java | 30 -- .../skyblock/tabhud/widget/GuestServerWidget.java | 30 -- .../skyblock/tabhud/widget/IslandGuestsWidget.java | 47 -- .../skyblock/tabhud/widget/IslandOwnersWidget.java | 66 --- .../skyblock/tabhud/widget/IslandSelfWidget.java | 43 -- .../skyblock/tabhud/widget/IslandServerWidget.java | 32 -- .../tabhud/widget/JacobsContestWidget.java | 62 --- .../skyblock/tabhud/widget/MinionWidget.java | 151 ------- .../skyblock/tabhud/widget/ParkServerWidget.java | 30 -- .../skyblock/tabhud/widget/PlayerListWidget.java | 71 ---- .../skyblock/tabhud/widget/PowderWidget.java | 29 -- .../skyblock/tabhud/widget/ProfileWidget.java | 28 -- .../skyblock/tabhud/widget/QuestWidget.java | 33 -- .../skyblock/tabhud/widget/ReputationWidget.java | 69 --- .../skyblock/tabhud/widget/ServerWidget.java | 30 -- .../skyblock/tabhud/widget/SkillsWidget.java | 78 ---- .../skyblock/tabhud/widget/TrapperWidget.java | 25 -- .../skyblock/tabhud/widget/UpgradeWidget.java | 51 --- .../skyblock/tabhud/widget/VolcanoWidget.java | 59 --- .../skyblocker/skyblock/tabhud/widget/Widget.java | 216 ---------- .../tabhud/widget/component/Component.java | 31 -- .../widget/component/IcoFatTextComponent.java | 45 -- .../tabhud/widget/component/IcoTextComponent.java | 40 -- .../widget/component/PlainTextComponent.java | 30 -- .../tabhud/widget/component/PlayerComponent.java | 39 -- .../tabhud/widget/component/ProgressComponent.java | 69 --- .../tabhud/widget/component/TableComponent.java | 58 --- .../skyblock/tabhud/widget/hud/HudCommsWidget.java | 73 ---- .../tabhud/widget/rift/AdvertisementWidget.java | 35 -- .../tabhud/widget/rift/GoodToKnowWidget.java | 69 --- .../tabhud/widget/rift/RiftProfileWidget.java | 21 - .../tabhud/widget/rift/RiftProgressWidget.java | 123 ------ .../tabhud/widget/rift/RiftServerInfoWidget.java | 27 -- .../tabhud/widget/rift/RiftStatsWidget.java | 43 -- .../skyblock/tabhud/widget/rift/ShenWidget.java | 22 - 148 files changed, 12454 deletions(-) delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/QuiverWarning.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/TreasureHunter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/CroesusHelper.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonChestProfit.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMapConfigScreen.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/LividColor.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/OldLever.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/StarredMobGlow.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdos.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TicTacToe.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/DungeonMapUtils.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/DungeonSecrets.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/Room.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/ColorTerminal.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/OrderTerminal.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/StartsWithTerminal.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ChronomatronSolver.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ExperimentSolver.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/UltrasequencerSolver.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/MoltenWaveFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ShowOffFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/SimpleChatFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilter.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/AttributeShards.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/BackpackPreview.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CompactorDeletorPreview.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CompactorPreviewTooltipComponent.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CustomArmorDyeColors.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CustomArmorTrims.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/CustomItemNames.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/ItemCooldowns.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/ItemProtection.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/ItemRarityBackgrounds.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/SkyblockItemRarity.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemFixerUpper.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemListWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemRegistry.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemStackBuilder.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ResultButtonWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/SearchResultsWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/SkyblockCraftingRecipe.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNav.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/EffigyWaypoints.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/HealingMelonIndicator.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/ManiaIndicator.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/MirrorverseWaypoints.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/StakeIndicator.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/TheRift.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/TwinClawsIndicator.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/shortcut/Shortcuts.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/shortcut/ShortcutsConfigListWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/shortcut/ShortcutsConfigScreen.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/special/SpecialEffects.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/spidersden/Relics.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/TabHud.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/screenbuilder/ScreenBuilder.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/screenbuilder/ScreenMaster.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/screenbuilder/pipeline/AlignStage.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/screenbuilder/pipeline/CollideStage.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/screenbuilder/pipeline/PipelineStage.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/screenbuilder/pipeline/PlaceStage.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/screenbuilder/pipeline/StackStage.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/util/Ico.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/util/PlayerListMgr.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/util/PlayerLocator.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/util/ScreenConst.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CameraPositionWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CommsWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ComposterWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/CookieWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonBuffWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonDeathWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonDownedWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonPlayerWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonPuzzleWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonSecretWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/DungeonServerWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/EffectWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ElectionWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ErrorWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/EssenceWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/EventWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/FireSaleWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ForgeWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/GardenServerWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/GardenSkillsWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/GardenVisitorsWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/GuestServerWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/IslandGuestsWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/IslandOwnersWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/IslandSelfWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/IslandServerWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/JacobsContestWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/MinionWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ParkServerWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/PlayerListWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/PowderWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ProfileWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/QuestWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ReputationWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/ServerWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/SkillsWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/TrapperWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/UpgradeWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/VolcanoWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/Widget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/component/Component.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/component/IcoFatTextComponent.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/component/IcoTextComponent.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/component/PlainTextComponent.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/component/PlayerComponent.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/component/ProgressComponent.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/component/TableComponent.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/hud/HudCommsWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/rift/AdvertisementWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/rift/GoodToKnowWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/rift/RiftProfileWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/rift/RiftProgressWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/rift/RiftServerInfoWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/rift/RiftStatsWidget.java delete mode 100644 src/main/java/me/xmrvizzy/skyblocker/skyblock/tabhud/widget/rift/ShenWidget.java (limited to 'src/main/java/me/xmrvizzy/skyblocker/skyblock') diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java deleted file mode 100644 index 46454fb3..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java +++ /dev/null @@ -1,215 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock; - -import com.google.common.collect.ImmutableSet; -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import com.mojang.brigadier.CommandDispatcher; -import me.xmrvizzy.skyblocker.SkyblockerMod; -import me.xmrvizzy.skyblocker.config.SkyblockerConfig; -import me.xmrvizzy.skyblocker.config.SkyblockerConfigManager; -import me.xmrvizzy.skyblocker.utils.NEURepo; -import me.xmrvizzy.skyblocker.utils.PosUtils; -import me.xmrvizzy.skyblocker.utils.Utils; -import me.xmrvizzy.skyblocker.utils.render.RenderHelper; -import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback; -import net.fabricmc.fabric.api.client.command.v2.FabricClientCommandSource; -import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents; -import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents; -import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext; -import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents; -import net.minecraft.client.MinecraftClient; -import net.minecraft.command.CommandRegistryAccess; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.text.Text; -import net.minecraft.util.DyeColor; -import net.minecraft.util.math.BlockPos; -import org.jetbrains.annotations.Nullable; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.*; -import java.util.*; -import java.util.concurrent.CompletableFuture; - -import static net.fabricmc.fabric.api.client.command.v2.ClientCommandManager.literal; - -public class FairySouls { - private static final Logger LOGGER = LoggerFactory.getLogger(FairySouls.class); - private static CompletableFuture fairySoulsLoaded; - private static int maxSouls = 0; - private static final Map> fairySouls = new HashMap<>(); - private static final Map>> foundFairies = new HashMap<>(); - - @SuppressWarnings("UnusedReturnValue") - public static CompletableFuture runAsyncAfterFairySoulsLoad(Runnable runnable) { - if (fairySoulsLoaded == null) { - LOGGER.error("Fairy Souls have not being initialized yet! Please ensure the Fairy Souls module is initialized before modules calling this method in SkyblockerMod#onInitializeClient. This error can be safely ignore in a test environment."); - return CompletableFuture.completedFuture(null); - } - return fairySoulsLoaded.thenRunAsync(runnable); - } - - public static int getFairySoulsSize(@Nullable String location) { - return location == null ? maxSouls : fairySouls.get(location).size(); - } - - public static void init() { - loadFairySouls(); - ClientLifecycleEvents.CLIENT_STOPPING.register(FairySouls::saveFoundFairySouls); - ClientCommandRegistrationCallback.EVENT.register(FairySouls::registerCommands); - WorldRenderEvents.AFTER_TRANSLUCENT.register(FairySouls::render); - ClientReceiveMessageEvents.GAME.register(FairySouls::onChatMessage); - } - - private static void loadFairySouls() { - fairySoulsLoaded = NEURepo.runAsyncAfterLoad(() -> { - try (BufferedReader reader = new BufferedReader(new FileReader(NEURepo.LOCAL_REPO_DIR.resolve("constants").resolve("fairy_souls.json").toFile()))) { - for (Map.Entry fairySoulJson : JsonParser.parseReader(reader).getAsJsonObject().asMap().entrySet()) { - if (fairySoulJson.getKey().equals("//") || fairySoulJson.getKey().equals("Max Souls")) { - if (fairySoulJson.getKey().equals("Max Souls")) { - maxSouls = fairySoulJson.getValue().getAsInt(); - } - continue; - } - ImmutableSet.Builder fairySoulsForLocation = ImmutableSet.builder(); - for (JsonElement fairySoul : fairySoulJson.getValue().getAsJsonArray().asList()) { - fairySoulsForLocation.add(PosUtils.parsePosString(fairySoul.getAsString())); - } - fairySouls.put(fairySoulJson.getKey(), fairySoulsForLocation.build()); - } - LOGGER.debug("[Skyblocker] Loaded fairy soul locations"); - } catch (IOException e) { - LOGGER.error("[Skyblocker] Failed to load fairy soul locations", e); - } - - try (BufferedReader reader = new BufferedReader(new FileReader(SkyblockerMod.CONFIG_DIR.resolve("found_fairy_souls.json").toFile()))) { - for (Map.Entry foundFairiesForProfileJson : JsonParser.parseReader(reader).getAsJsonObject().asMap().entrySet()) { - Map> foundFairiesForProfile = new HashMap<>(); - for (Map.Entry foundFairiesForLocationJson : foundFairiesForProfileJson.getValue().getAsJsonObject().asMap().entrySet()) { - Set foundFairiesForLocation = new HashSet<>(); - for (JsonElement foundFairy : foundFairiesForLocationJson.getValue().getAsJsonArray().asList()) { - foundFairiesForLocation.add(PosUtils.parsePosString(foundFairy.getAsString())); - } - foundFairiesForProfile.put(foundFairiesForLocationJson.getKey(), foundFairiesForLocation); - } - foundFairies.put(foundFairiesForProfileJson.getKey(), foundFairiesForProfile); - } - LOGGER.debug("[Skyblocker] Loaded found fairy souls"); - } catch (FileNotFoundException ignored) { - } catch (IOException e) { - LOGGER.error("[Skyblocker] Failed to load found fairy souls", e); - } - }); - } - - private static void saveFoundFairySouls(MinecraftClient client) { - try (BufferedWriter writer = new BufferedWriter(new FileWriter(SkyblockerMod.CONFIG_DIR.resolve("found_fairy_souls.json").toFile()))) { - JsonObject foundFairiesJson = new JsonObject(); - for (Map.Entry>> foundFairiesForProfile : foundFairies.entrySet()) { - JsonObject foundFairiesForProfileJson = new JsonObject(); - for (Map.Entry> foundFairiesForLocation : foundFairiesForProfile.getValue().entrySet()) { - JsonArray foundFairiesForLocationJson = new JsonArray(); - for (BlockPos foundFairy : foundFairiesForLocation.getValue()) { - foundFairiesForLocationJson.add(PosUtils.getPosString(foundFairy)); - } - foundFairiesForProfileJson.add(foundFairiesForLocation.getKey(), foundFairiesForLocationJson); - } - foundFairiesJson.add(foundFairiesForProfile.getKey(), foundFairiesForProfileJson); - } - SkyblockerMod.GSON.toJson(foundFairiesJson, writer); - writer.close(); - LOGGER.info("[Skyblocker] Saved found fairy souls"); - } catch (IOException e) { - LOGGER.error("[Skyblocker] Failed to write found fairy souls to file", e); - } - } - - private static void registerCommands(CommandDispatcher dispatcher, CommandRegistryAccess registryAccess) { - dispatcher.register(literal(SkyblockerMod.NAMESPACE) - .then(literal("fairySouls") - .then(literal("markAllInCurrentIslandFound").executes(context -> { - FairySouls.markAllFairiesOnCurrentIslandFound(); - context.getSource().sendFeedback(Text.translatable("skyblocker.fairySouls.markAllFound")); - return 1; - })) - .then(literal("markAllInCurrentIslandMissing").executes(context -> { - FairySouls.markAllFairiesOnCurrentIslandMissing(); - context.getSource().sendFeedback(Text.translatable("skyblocker.fairySouls.markAllMissing")); - return 1; - })))); - } - - private static void render(WorldRenderContext context) { - SkyblockerConfig.FairySouls fairySoulsConfig = SkyblockerConfigManager.get().general.fairySouls; - - if (fairySoulsConfig.enableFairySoulsHelper && fairySoulsLoaded.isDone() && fairySouls.containsKey(Utils.getLocationRaw())) { - for (BlockPos fairySoulPos : fairySouls.get(Utils.getLocationRaw())) { - boolean fairySoulNotFound = isFairySoulMissing(fairySoulPos); - if (!fairySoulsConfig.highlightFoundSouls && !fairySoulNotFound || fairySoulsConfig.highlightOnlyNearbySouls && fairySoulPos.getSquaredDistance(context.camera().getPos()) > 2500) { - continue; - } - float[] colorComponents = fairySoulNotFound ? DyeColor.GREEN.getColorComponents() : DyeColor.RED.getColorComponents(); - RenderHelper.renderFilledThroughWallsWithBeaconBeam(context, fairySoulPos, colorComponents, 0.5F); - } - } - } - - private static void onChatMessage(Text text, boolean overlay) { - String message = text.getString(); - if (message.equals("You have already found that Fairy Soul!") || message.equals("§d§lSOUL! §fYou found a §dFairy Soul§f!")) { - markClosestFairyFound(); - } - } - - private static void markClosestFairyFound() { - if (!fairySoulsLoaded.isDone()) return; - PlayerEntity player = MinecraftClient.getInstance().player; - if (player == null) { - LOGGER.warn("[Skyblocker] Failed to mark closest fairy soul as found because player is null"); - return; - } - fairySouls.get(Utils.getLocationRaw()).stream() - .filter(FairySouls::isFairySoulMissing) - .min(Comparator.comparingDouble(fairySoulPos -> fairySoulPos.getSquaredDistance(player.getPos()))) - .filter(fairySoulPos -> fairySoulPos.getSquaredDistance(player.getPos()) <= 16) - .ifPresent(fairySoulPos -> { - initializeFoundFairiesForCurrentProfileAndLocation(); - foundFairies.get(Utils.getProfile()).get(Utils.getLocationRaw()).add(fairySoulPos); - }); - } - - private static boolean isFairySoulMissing(BlockPos fairySoulPos) { - Map> foundFairiesForProfile = foundFairies.get(Utils.getProfile()); - if (foundFairiesForProfile == null) { - return true; - } - Set foundFairiesForProfileAndLocation = foundFairiesForProfile.get(Utils.getLocationRaw()); - if (foundFairiesForProfileAndLocation == null) { - return true; - } - return !foundFairiesForProfileAndLocation.contains(fairySoulPos); - } - - public static void markAllFairiesOnCurrentIslandFound() { - initializeFoundFairiesForCurrentProfileAndLocation(); - foundFairies.get(Utils.getProfile()).get(Utils.getLocationRaw()).addAll(fairySouls.get(Utils.getLocationRaw())); - } - - public static void markAllFairiesOnCurrentIslandMissing() { - Map> foundFairiesForProfile = foundFairies.get(Utils.getProfile()); - if (foundFairiesForProfile != null) { - foundFairiesForProfile.remove(Utils.getLocationRaw()); - } - } - - private static void initializeFoundFairiesForCurrentProfileAndLocation() { - initializeFoundFairiesForProfileAndLocation(Utils.getProfile(), Utils.getLocationRaw()); - } - - private static void initializeFoundFairiesForProfileAndLocation(String profile, String location) { - foundFairies.computeIfAbsent(profile, profileKey -> new HashMap<>()); - foundFairies.get(profile).computeIfAbsent(location, locationKey -> new HashSet<>()); - } -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java deleted file mode 100644 index a7428056..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java +++ /dev/null @@ -1,192 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock; - -import me.xmrvizzy.skyblocker.SkyblockerMod; -import me.xmrvizzy.skyblocker.config.SkyblockerConfigManager; -import me.xmrvizzy.skyblocker.utils.Utils; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.font.TextRenderer; -import net.minecraft.client.gui.DrawContext; -import net.minecraft.util.Identifier; - -public class FancyStatusBars { - private static final Identifier BARS = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/bars.png"); - - private final MinecraftClient client = MinecraftClient.getInstance(); - private final StatusBarTracker statusBarTracker = SkyblockerMod.getInstance().statusBarTracker; - - private final StatusBar[] bars = new StatusBar[]{ - new StatusBar(0, 16733525, 2), // Health Bar - new StatusBar(1, 5636095, 2), // Intelligence Bar - new StatusBar(2, 12106180, 1), // Defence Bar - new StatusBar(3, 8453920, 1), // Experience Bar - }; - - // Positions to show the bars - // 0: Hotbar Layer 1, 1: Hotbar Layer 2, 2: Right of hotbar - // Anything outside the set values hides the bar - private final int[] anchorsX = new int[3]; - private final int[] anchorsY = new int[3]; - - public FancyStatusBars() { - moveBar(0, 0); - moveBar(1, 0); - moveBar(2, 0); - moveBar(3, 0); - } - - private int fill(int value, int max) { - return (100 * value) / max; - } - - public boolean render(DrawContext context, int scaledWidth, int scaledHeight) { - var player = client.player; - if (!SkyblockerConfigManager.get().general.bars.enableBars || player == null || Utils.isInTheRift()) - return false; - anchorsX[0] = scaledWidth / 2 - 91; - anchorsY[0] = scaledHeight - 33; - anchorsX[1] = anchorsX[0]; - anchorsY[1] = anchorsY[0] - 10; - anchorsX[2] = (scaledWidth / 2 + 91) + 2; - anchorsY[2] = scaledHeight - 16; - - bars[0].update(statusBarTracker.getHealth()); - bars[1].update(statusBarTracker.getMana()); - int def = statusBarTracker.getDefense(); - bars[2].fill[0] = fill(def, def + 100); - bars[2].text = def; - bars[3].fill[0] = (int) (100 * player.experienceProgress); - bars[3].text = player.experienceLevel; - - // Update positions of bars from config - for (int i = 0; i < 4; i++) { - int configAnchorNum = switch (i) { - case 0 -> SkyblockerConfigManager.get().general.bars.barPositions.healthBarPosition.toInt(); - case 1 -> SkyblockerConfigManager.get().general.bars.barPositions.manaBarPosition.toInt(); - case 2 -> SkyblockerConfigManager.get().general.bars.barPositions.defenceBarPosition.toInt(); - case 3 -> SkyblockerConfigManager.get().general.bars.barPositions.experienceBarPosition.toInt(); - default -> 0; - }; - - if (bars[i].anchorNum != configAnchorNum) - moveBar(i, configAnchorNum); - } - - for (var bar : bars) { - bar.draw(context); - } - for (var bar : bars) { - bar.drawText(context); - } - return true; - } - - public void moveBar(int bar, int location) { - // Set the bar to the new anchor - bars[bar].anchorNum = location; - - // Count how many bars are in each location - int layer1Count = 0, layer2Count = 0, rightCount = 0; - for (int i = 0; i < 4; i++) { - switch (bars[i].anchorNum) { - case 0 -> layer1Count++; - case 1 -> layer2Count++; - case 2 -> rightCount++; - } - } - - // Set the bars width and offsetX according to their anchor and how many bars are on that layer - int adjustedLayer1Count = 0, adjustedLayer2Count = 0, adjustedRightCount = 0; - for (int i = 0; i < 4; i++) { - switch (bars[i].anchorNum) { - case 0 -> { - bars[i].bar_width = (172 - ((layer1Count - 1) * 11)) / layer1Count; - bars[i].offsetX = adjustedLayer1Count * (bars[i].bar_width + 11 + (layer1Count == 3 ? 0 : 1)); - adjustedLayer1Count++; - } - case 1 -> { - bars[i].bar_width = (172 - ((layer2Count - 1) * 11)) / layer2Count; - bars[i].offsetX = adjustedLayer2Count * (bars[i].bar_width + 11 + (layer2Count == 3 ? 0 : 1)); - adjustedLayer2Count++; - } - case 2 -> { - bars[i].bar_width = 50; - bars[i].offsetX = adjustedRightCount * (50 + 11); - adjustedRightCount++; - } - } - } - } - - private class StatusBar { - public final int[] fill; - public int offsetX; - private final int v; - private final int text_color; - public int anchorNum; - public int bar_width; - public Object text; - - private StatusBar(int i, int textColor, int fillNum) { - this.v = i * 9; - this.text_color = textColor; - this.fill = new int[fillNum]; - this.fill[0] = 100; - this.anchorNum = 0; - this.text = ""; - } - - public void update(StatusBarTracker.Resource resource) { - int max = resource.max(); - int val = resource.value(); - this.fill[0] = fill(val, max); - this.fill[1] = fill(resource.overflow(), max); - this.text = val; - } - - public void draw(DrawContext context) { - // Dont draw if anchorNum is outside of range - if (anchorNum < 0 || anchorNum > 2) return; - - // Draw the icon for the bar - context.drawTexture(BARS, anchorsX[anchorNum] + offsetX, anchorsY[anchorNum], 0, v, 9, 9); - - // Draw the background for the bar - context.drawTexture(BARS, anchorsX[anchorNum] + offsetX + 10, anchorsY[anchorNum], 10, v, 2, 9); - for (int i = 2; i < bar_width - 2; i += 58) { - context.drawTexture(BARS, anchorsX[anchorNum] + offsetX + 10 + i, anchorsY[anchorNum], 12, v, Math.min(58, bar_width - 2 - i), 9); - } - context.drawTexture(BARS, anchorsX[anchorNum] + offsetX + 10 + bar_width - 2, anchorsY[anchorNum], 70, v, 2, 9); - - // Draw the filled part of the bar - for (int i = 0; i < fill.length; i++) { - int fill_width = this.fill[i] * (bar_width - 2) / 100; - if (fill_width >= 1) { - context.drawTexture(BARS, anchorsX[anchorNum] + offsetX + 11, anchorsY[anchorNum], 72 + i * 60, v, 1, 9); - } - for (int j = 1; j < fill_width - 1; j += 58) { - context.drawTexture(BARS, anchorsX[anchorNum] + offsetX + 11 + j, anchorsY[anchorNum], 73 + i * 60, v, Math.min(58, fill_width - 1 - j), 9); - } - if (fill_width == bar_width - 2) { - context.drawTexture(BARS, anchorsX[anchorNum] + offsetX + 11 + fill_width - 1, anchorsY[anchorNum], 131 + i * 60, v, 1, 9); - } - } - } - - public void drawText(DrawContext context) { - // Dont draw if anchorNum is outside of range - if (anchorNum < 0 || anchorNum > 2) return; - - TextRenderer textRenderer = client.textRenderer; - String text = this.text.toString(); - int x = anchorsX[anchorNum] + this.offsetX + 11 + (bar_width - textRenderer.getWidth(text)) / 2; - int y = anchorsY[anchorNum] - 3; - - final int[] offsets = new int[]{-1, 1}; - for (int i : offsets) { - context.drawText(textRenderer, text, x + i, y, 0, false); - context.drawText(textRenderer, text, x, y + i, 0, false); - } - context.drawText(textRenderer, text, x, y, text_color, false); - } - } -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java deleted file mode 100644 index dca3f30b..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java +++ /dev/null @@ -1,62 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock; - -import me.xmrvizzy.skyblocker.config.SkyblockerConfigManager; -import me.xmrvizzy.skyblocker.utils.render.RenderHelper; -import me.xmrvizzy.skyblocker.utils.render.title.Title; -import net.fabricmc.fabric.api.event.player.UseItemCallback; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.network.ClientPlayerEntity; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.item.FishingRodItem; -import net.minecraft.item.ItemStack; -import net.minecraft.network.packet.s2c.play.PlaySoundS2CPacket; -import net.minecraft.util.Formatting; -import net.minecraft.util.TypedActionResult; -import net.minecraft.util.math.MathHelper; -import net.minecraft.util.math.Vec3d; - -public class FishingHelper { - private static final Title title = new Title("skyblocker.fishing.reelNow", Formatting.GREEN); - private static long startTime; - private static Vec3d normalYawVector; - - public static void init() { - UseItemCallback.EVENT.register((player, world, hand) -> { - ItemStack stack = player.getStackInHand(hand); - if (stack.getItem() instanceof FishingRodItem) { - if (player.fishHook == null) { - start(player); - } else { - reset(); - } - } - return TypedActionResult.pass(stack); - }); - } - - public static void start(PlayerEntity player) { - startTime = System.currentTimeMillis(); - float yawRad = player.getYaw() * 0.017453292F; - normalYawVector = new Vec3d(-MathHelper.sin(yawRad), 0, MathHelper.cos(yawRad)); - } - - public static void reset() { - startTime = 0; - } - - public static void onSound(PlaySoundS2CPacket packet) { - String path = packet.getSound().value().getId().getPath(); - if (SkyblockerConfigManager.get().general.fishing.enableFishingHelper && startTime != 0 && System.currentTimeMillis() >= startTime + 2000 && ("entity.generic.splash".equals(path) || "entity.player.splash".equals(path))) { - ClientPlayerEntity player = MinecraftClient.getInstance().player; - if (player != null && player.fishHook != null) { - Vec3d soundToFishHook = player.fishHook.getPos().subtract(packet.getX(), 0, packet.getZ()); - if (Math.abs(normalYawVector.x * soundToFishHook.z - normalYawVector.z * soundToFishHook.x) < 0.2D && Math.abs(normalYawVector.dotProduct(soundToFishHook)) < 4D && player.getPos().squaredDistanceTo(packet.getX(), packet.getY(), packet.getZ()) > 1D) { - RenderHelper.displayInTitleContainerAndPlaySound(title, 10); - reset(); - } - } else { - reset(); - } - } - } -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java deleted file mode 100644 index 30dd1270..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java +++ /dev/null @@ -1,40 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock; - -import me.xmrvizzy.skyblocker.config.SkyblockerConfigManager; -import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; -import net.minecraft.client.network.ClientPlayerEntity; -import net.minecraft.client.option.KeyBinding; -import org.lwjgl.glfw.GLFW; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -import java.util.List; - -public class HotbarSlotLock { - public static KeyBinding hotbarSlotLock; - - public static void init() { - hotbarSlotLock = KeyBindingHelper.registerKeyBinding(new KeyBinding( - "key.hotbarSlotLock", - GLFW.GLFW_KEY_H, - "key.categories.skyblocker" - )); - } - - public static boolean isLocked(int slot) { - return SkyblockerConfigManager.get().general.lockedSlots.contains(slot); - } - - public static void handleDropSelectedItem(int slot, CallbackInfoReturnable cir) { - if (isLocked(slot)) cir.setReturnValue(false); - } - - public static void handleInputEvents(ClientPlayerEntity player) { - while (hotbarSlotLock.wasPressed()) { - List lockedSlots = SkyblockerConfigManager.get().general.lockedSlots; - int selected = player.getInventory().selectedSlot; - if (!isLocked(player.getInventory().selectedSlot)) lockedSlots.add(selected); - else lockedSlots.remove(Integer.valueOf(selected)); - SkyblockerConfigManager.save(); - } - } -} \ No newline at end of file diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/QuiverWarning.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/QuiverWarning.java deleted file mode 100644 index 2d0715e4..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/QuiverWarning.java +++ /dev/null @@ -1,66 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock; - -import me.xmrvizzy.skyblocker.config.SkyblockerConfigManager; -import me.xmrvizzy.skyblocker.utils.Utils; -import me.xmrvizzy.skyblocker.utils.scheduler.Scheduler; -import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.gui.hud.InGameHud; -import net.minecraft.text.Text; -import net.minecraft.util.Formatting; -import org.jetbrains.annotations.Nullable; - -public class QuiverWarning { - @Nullable - private static Type warning = null; - - public static void init() { - ClientReceiveMessageEvents.ALLOW_GAME.register(QuiverWarning::onChatMessage); - Scheduler.INSTANCE.scheduleCyclic(QuiverWarning::update, 10); - } - - public static boolean onChatMessage(Text text, boolean overlay) { - String message = text.getString(); - if (SkyblockerConfigManager.get().general.quiverWarning.enableQuiverWarning && message.endsWith("left in your Quiver!")) { - MinecraftClient.getInstance().inGameHud.setDefaultTitleFade(); - if (message.startsWith("You only have 50")) { - onChatMessage(Type.FIFTY_LEFT); - } else if (message.startsWith("You only have 10")) { - onChatMessage(Type.TEN_LEFT); - } else if (message.startsWith("You don't have any more")) { - onChatMessage(Type.EMPTY); - } - } - return true; - } - - private static void onChatMessage(Type warning) { - if (!Utils.isInDungeons()) { - MinecraftClient.getInstance().inGameHud.setTitle(Text.translatable(warning.key).formatted(Formatting.RED)); - } else if (SkyblockerConfigManager.get().general.quiverWarning.enableQuiverWarningInDungeons) { - MinecraftClient.getInstance().inGameHud.setTitle(Text.translatable(warning.key).formatted(Formatting.RED)); - QuiverWarning.warning = warning; - } - } - - public static void update() { - if (warning != null && SkyblockerConfigManager.get().general.quiverWarning.enableQuiverWarning && SkyblockerConfigManager.get().general.quiverWarning.enableQuiverWarningAfterDungeon && !Utils.isInDungeons()) { - InGameHud inGameHud = MinecraftClient.getInstance().inGameHud; - inGameHud.setDefaultTitleFade(); - inGameHud.setTitle(Text.translatable(warning.key).formatted(Formatting.RED)); - warning = null; - } - } - - private enum Type { - NONE(""), - FIFTY_LEFT("50Left"), - TEN_LEFT("10Left"), - EMPTY("empty"); - private final String key; - - Type(String key) { - this.key = "skyblocker.quiverWarning." + key; - } - } -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java deleted file mode 100644 index ae5aff0b..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/StatusBarTracker.java +++ /dev/null @@ -1,109 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock; - -import me.xmrvizzy.skyblocker.config.SkyblockerConfigManager; -import me.xmrvizzy.skyblocker.utils.Utils; -import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.network.ClientPlayerEntity; -import net.minecraft.text.Text; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -public class StatusBarTracker { - private static final Pattern STATUS_HEALTH = Pattern.compile("§[6c](\\d+(,\\d\\d\\d)*)/(\\d+(,\\d\\d\\d)*)❤(?:(\\+§c(\\d+(,\\d\\d\\d)*). *)| *)"); - private static final Pattern DEFENSE_STATUS = Pattern.compile("§a(\\d+(,\\d\\d\\d)*)§a❈ Defense *"); - private static final Pattern MANA_USE = Pattern.compile("§b-(\\d+(,\\d\\d\\d)*) Mana \\(§\\S+(?:\\s\\S+)* *"); - private static final Pattern MANA_STATUS = Pattern.compile("§b(\\d+(,\\d\\d\\d)*)/(\\d+(,\\d\\d\\d)*)✎ (?:Mana|§3(\\d+(,\\d\\d\\d)*)ʬ) *"); - - private Resource health = new Resource(100, 100, 0); - private Resource mana = new Resource(100, 100, 0); - private int defense = 0; - - public void init() { - ClientReceiveMessageEvents.MODIFY_GAME.register(this::onOverlayMessage); - } - - public Resource getHealth() { - return this.health; - } - - public Resource getMana() { - return this.mana; - } - - public int getDefense() { - return this.defense; - } - - private int parseInt(Matcher m, int group) { - return Integer.parseInt(m.group(group).replace(",", "")); - } - - private void updateMana(Matcher m) { - int value = parseInt(m, 1); - int max = parseInt(m, 3); - int overflow = m.group(5) == null ? 0 : parseInt(m, 5); - this.mana = new Resource(value, max, overflow); - } - - private void updateHealth(Matcher m) { - int value = parseInt(m, 1); - int max = parseInt(m, 3); - int overflow = Math.max(0, value - max); - if (MinecraftClient.getInstance() != null && MinecraftClient.getInstance().player != null) { - ClientPlayerEntity player = MinecraftClient.getInstance().player; - value = (int) (player.getHealth() * max / player.getMaxHealth()); - overflow = (int) (player.getAbsorptionAmount() * max / player.getMaxHealth()); - } - this.health = new Resource(Math.min(value, max), max, Math.min(overflow, max)); - } - - private String reset(String str, Matcher m) { - str = str.substring(m.end()); - m.reset(str); - return str; - } - - private Text onOverlayMessage(Text text, boolean overlay) { - if (!overlay || !Utils.isOnSkyblock() || !SkyblockerConfigManager.get().general.bars.enableBars || Utils.isInTheRift()) { - return text; - } - return Text.of(update(text.getString(), SkyblockerConfigManager.get().messages.hideMana)); - } - - public String update(String actionBar, boolean filterManaUse) { - var sb = new StringBuilder(); - Matcher matcher = STATUS_HEALTH.matcher(actionBar); - if (!matcher.lookingAt()) - return actionBar; - updateHealth(matcher); - if (matcher.group(5) != null) { - sb.append("§c❤"); - sb.append(matcher.group(5)); - } - actionBar = reset(actionBar, matcher); - if (matcher.usePattern(MANA_STATUS).lookingAt()) { - defense = 0; - updateMana(matcher); - actionBar = reset(actionBar, matcher); - } else { - if (matcher.usePattern(DEFENSE_STATUS).lookingAt()) { - defense = parseInt(matcher, 1); - actionBar = reset(actionBar, matcher); - } else if (filterManaUse && matcher.usePattern(MANA_USE).lookingAt()) { - actionBar = reset(actionBar, matcher); - } - if (matcher.usePattern(MANA_STATUS).find()) { - updateMana(matcher); - matcher.appendReplacement(sb, ""); - } - } - matcher.appendTail(sb); - String res = sb.toString().trim(); - return res.isEmpty() ? null : res; - } - - public record Resource(int value, int max, int overflow) { - } -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java deleted file mode 100644 index 1aeeb6d3..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java +++ /dev/null @@ -1,114 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock; - -import com.mojang.blaze3d.systems.RenderSystem; -import me.xmrvizzy.skyblocker.config.SkyblockerConfigManager; -import me.xmrvizzy.skyblocker.skyblock.item.PriceInfoTooltip; -import me.xmrvizzy.skyblocker.utils.Utils; -import me.xmrvizzy.skyblocker.utils.render.RenderHelper; -import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext; -import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents; -import net.minecraft.block.BlockState; -import net.minecraft.client.MinecraftClient; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NbtCompound; -import net.minecraft.util.hit.BlockHitResult; -import net.minecraft.util.hit.HitResult; -import net.minecraft.util.math.BlockPos; - -public class TeleportOverlay { - private static final float[] COLOR_COMPONENTS = {118f / 255f, 21f / 255f, 148f / 255f}; - private static final MinecraftClient client = MinecraftClient.getInstance(); - - public static void init() { - WorldRenderEvents.AFTER_TRANSLUCENT.register(TeleportOverlay::render); - } - - private static void render(WorldRenderContext wrc) { - if (Utils.isOnSkyblock() && SkyblockerConfigManager.get().general.teleportOverlay.enableTeleportOverlays && client.player != null && client.world != null) { - ItemStack heldItem = client.player.getMainHandStack(); - String itemId = PriceInfoTooltip.getInternalNameFromNBT(heldItem, true); - NbtCompound nbt = heldItem.getNbt(); - - if (itemId != null) { - switch (itemId) { - case "ASPECT_OF_THE_LEECH_1" -> { - if (SkyblockerConfigManager.get().general.teleportOverlay.enableWeirdTransmission) { - render(wrc, 3); - } - } - case "ASPECT_OF_THE_LEECH_2" -> { - if (SkyblockerConfigManager.get().general.teleportOverlay.enableWeirdTransmission) { - render(wrc, 4); - } - } - case "ASPECT_OF_THE_END", "ASPECT_OF_THE_VOID" -> { - if (SkyblockerConfigManager.get().general.teleportOverlay.enableEtherTransmission && client.options.sneakKey.isPressed() && nbt != null && nbt.getCompound("ExtraAttributes").getInt("ethermerge") == 1) { - render(wrc, nbt, 57); - } else if (SkyblockerConfigManager.get().general.teleportOverlay.enableInstantTransmission) { - render(wrc, nbt, 8); - } - } - case "ETHERWARP_CONDUIT" -> { - if (SkyblockerConfigManager.get().general.teleportOverlay.enableEtherTransmission) { - render(wrc, nbt, 57); - } - } - case "SINSEEKER_SCYTHE" -> { - if (SkyblockerConfigManager.get().general.teleportOverlay.enableSinrecallTransmission) { - render(wrc, nbt, 4); - } - } - case "NECRON_BLADE", "ASTRAEA", "HYPERION", "SCYLLA", "VALKYRIE" -> { - if (SkyblockerConfigManager.get().general.teleportOverlay.enableWitherImpact) { - render(wrc, 10); - } - } - } - } - } - } - - /** - * Renders the teleport overlay with a given base range and the tuned transmission stat. - */ - private static void render(WorldRenderContext wrc, NbtCompound nbt, int baseRange) { - render(wrc, nbt != null && nbt.getCompound("ExtraAttributes").contains("tuned_transmission") ? baseRange + nbt.getCompound("ExtraAttributes").getInt("tuned_transmission") : baseRange); - } - - /** - * Renders the teleport overlay with a given range. Uses {@link MinecraftClient#crosshairTarget} if it is a block and within range. Otherwise, raycasts from the player with the given range. - * - * @implNote {@link MinecraftClient#player} and {@link MinecraftClient#world} must not be null when calling this method. - */ - private static void render(WorldRenderContext wrc, int range) { - if (client.crosshairTarget != null && client.crosshairTarget.getType() == HitResult.Type.BLOCK && client.crosshairTarget instanceof BlockHitResult blockHitResult && client.crosshairTarget.squaredDistanceTo(client.player) < range * range) { - render(wrc, blockHitResult); - } else if (client.interactionManager != null && range > client.interactionManager.getReachDistance()) { - @SuppressWarnings("DataFlowIssue") - HitResult result = client.player.raycast(range, wrc.tickDelta(), false); - if (result.getType() == HitResult.Type.BLOCK && result instanceof BlockHitResult blockHitResult) { - render(wrc, blockHitResult); - } - } - } - - /** - * Renders the teleport overlay at the given {@link BlockHitResult}. - * - * @implNote {@link MinecraftClient#world} must not be null when calling this method. - */ - private static void render(WorldRenderContext wrc, BlockHitResult blockHitResult) { - BlockPos pos = blockHitResult.getBlockPos(); - @SuppressWarnings("DataFlowIssue") - BlockState state = client.world.getBlockState(pos); - if (!state.isAir() && client.world.getBlockState(pos.up()).isAir() && client.world.getBlockState(pos.up(2)).isAir()) { - RenderSystem.polygonOffset(-1f, -10f); - RenderSystem.enablePolygonOffset(); - - RenderHelper.renderFilledIfVisible(wrc, pos, COLOR_COMPONENTS, 0.5f); - - RenderSystem.polygonOffset(0f, 0f); - RenderSystem.disablePolygonOffset(); - } - } -} diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java deleted file mode 100644 index 91862622..00000000 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java +++ /dev/null @@ -1,47 +0,0 @@ -package me.xmrvizzy.skyblocker.skyblock.barn; - -import me.xmrvizzy.skyblocker.config.SkyblockerConfigManager; -import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult; -import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener; -import net.minecraft.client.MinecraftClient; -import net.minecraft.text.Text; - -import java.util.HashMap; -import java.util.Map; -import java.util.regex.Matcher; - -public class HungryHiker extends ChatPatternListener { - - private static final Map foods; - - public HungryHiker() { super("^§e\\[NPC] Hungry Hiker§f: (The food I want is|(I asked for) food that is) ([a-zA-Z, '\\-]*\\.)$"); } - - @