diff options
Diffstat (limited to 'src/main/java/de')
34 files changed, 252 insertions, 116 deletions
diff --git a/src/main/java/de/hysky/skyblocker/SkyblockerMod.java b/src/main/java/de/hysky/skyblocker/SkyblockerMod.java index a08c3093..06018168 100644 --- a/src/main/java/de/hysky/skyblocker/SkyblockerMod.java +++ b/src/main/java/de/hysky/skyblocker/SkyblockerMod.java @@ -8,7 +8,7 @@ import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.config.datafixer.ConfigDataFixer; import de.hysky.skyblocker.skyblock.StatusBarTracker; import de.hysky.skyblocker.skyblock.item.tooltip.BackpackPreview; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import de.hysky.skyblocker.utils.Utils; import de.hysky.skyblocker.utils.discord.DiscordRPCManager; import de.hysky.skyblocker.utils.scheduler.MessageScheduler; @@ -66,7 +66,7 @@ public class SkyblockerMod implements ClientModInitializer { Scheduler.INSTANCE.scheduleCyclic(Utils::update, 20); Scheduler.INSTANCE.scheduleCyclic(DiscordRPCManager::updateDataAndPresence, 200); Scheduler.INSTANCE.scheduleCyclic(BackpackPreview::tick, 50); - Scheduler.INSTANCE.scheduleCyclic(PlayerListMgr::updateList, 20); + Scheduler.INSTANCE.scheduleCyclic(PlayerListManager::updateList, 20); } /** diff --git a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java index 890d86aa..3eed81da 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java @@ -7,6 +7,7 @@ import de.hysky.skyblocker.config.screens.powdertracker.PowderFilterConfigScreen import de.hysky.skyblocker.skyblock.dwarven.CrystalsHudWidget; import de.hysky.skyblocker.skyblock.dwarven.CarpetHighlighter; import de.hysky.skyblocker.skyblock.dwarven.PowderMiningTracker; +import de.hysky.skyblocker.skyblock.tabhud.widget.CommsWidget; import dev.isxander.yacl3.api.*; import dev.isxander.yacl3.api.controller.ColorControllerBuilder; import de.hysky.skyblocker.skyblock.tabhud.config.WidgetsConfigurationScreen; @@ -42,6 +43,12 @@ public class MiningCategory { .controller(ConfigUtils::createBooleanController) .build()) + .option(ButtonOption.createBuilder() + .name(Text.translatable("skyblocker.config.mining.dwarvenHud.screen")) + .text(Text.translatable("text.skyblocker.open")) + .action((screen, opt) -> MinecraftClient.getInstance().setScreen(new WidgetsConfigurationScreen(Location.DWARVEN_MINES, CommsWidget.ID, screen))) + .build()) + //Dwarven Mines .group(OptionGroup.createBuilder() .name(Text.translatable("skyblocker.config.mining.dwarvenMines")) diff --git a/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java index 208113ef..6d18c451 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java @@ -240,6 +240,25 @@ public class UIAndVisualsCategory { newValue -> config.uiAndVisuals.tabHud.tabHudScale = newValue) .controller(opt -> IntegerSliderControllerBuilder.create(opt).range(10, 200).step(1)) .build()) + .option(Option.<Boolean>createBuilder() + .name(Text.translatable("skyblocker.config.uiAndVisuals.tabHud.showVanillaTabByDefault")) + .description(OptionDescription.of(Text.translatable("skyblocker.config.uiAndVisuals.tabHud.showVanillaTabByDefault.@Tooltip"))) + .binding(defaults.uiAndVisuals.tabHud.showVanillaTabByDefault, + () -> config.uiAndVisuals.tabHud.showVanillaTabByDefault, + newValue -> config.uiAndVisuals.tabHud.showVanillaTabByDefault = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .option(Option.<UIAndVisualsConfig.TabHudStyle>createBuilder() + .name(Text.translatable("skyblocker.config.uiAndVisuals.tabHud.style")) + .description(OptionDescription.of(Text.translatable("skyblocker.config.uiAndVisuals.tabHud.style.@Tooltip[0]"), + Text.translatable("skyblocker.config.uiAndVisuals.tabHud.style.@Tooltip[1]"), + Text.translatable("skyblocker.config.uiAndVisuals.tabHud.style.@Tooltip[2]"), + Text.translatable("skyblocker.config.uiAndVisuals.tabHud.style.@Tooltip[3]"))) + .binding(defaults.uiAndVisuals.tabHud.style, + () -> config.uiAndVisuals.tabHud.style, + newValue -> config.uiAndVisuals.tabHud.style = newValue) + .controller(ConfigUtils::createEnumCyclingListController) + .build()) .option(Option.<Boolean>createBuilder() .name(Text.translatable("skyblocker.config.uiAndVisuals.tabHud.enableHudBackground")) .description(OptionDescription.of(Text.translatable("skyblocker.config.uiAndVisuals.tabHud.enableHudBackground.@Tooltip"))) diff --git a/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java index f73f38a9..34c59429 100644 --- a/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java @@ -175,6 +175,10 @@ public class MiningConfig { public boolean autoShareCorpses = false; } + /** + * @deprecated See {@link UIAndVisualsConfig.TabHudStyle}. + */ + @Deprecated public enum DwarvenHudStyle { SIMPLE, FANCY, CLASSIC; diff --git a/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java index aaf6e9df..7a6b3f5d 100644 --- a/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java @@ -187,6 +187,12 @@ public class UIAndVisualsConfig { @SerialEntry public int tabHudScale = 100; + @SerialEntry + public boolean showVanillaTabByDefault = false; + + @SerialEntry + public TabHudStyle style = TabHudStyle.FANCY; + @SerialEntry public boolean enableHudBackground = true; @@ -203,6 +209,36 @@ public class UIAndVisualsConfig { public NameSorting nameSorting = NameSorting.DEFAULT; } + public enum TabHudStyle { + /** + * The minimal style, with no decorations, icons, or custom components, + * rendered in a minimal rectangle background, + * or no background at all if {@link TabHudConf#enableHudBackground} is false. + */ + MINIMAL, + /** + * The simple style, with no decorations, icons, or custom components. + */ + SIMPLE, + /** + * The classic style, with decorations such as icons but no custom components. + */ + CLASSIC, + /** + * The default style, with all custom components and decorations in use. + */ + FANCY; + + public boolean isMinimal() { + return this == MINIMAL; + } + + @Override + public String toString() { + return I18n.translate("skyblocker.config.uiAndVisuals.tabHud.style." + name()); + } + } + @Deprecated public enum NameSorting { DEFAULT, ALPHABETICAL; diff --git a/src/main/java/de/hysky/skyblocker/mixins/ClientPlayNetworkHandlerMixin.java b/src/main/java/de/hysky/skyblocker/mixins/ClientPlayNetworkHandlerMixin.java index cf4d2060..258d6a44 100644 --- a/src/main/java/de/hysky/skyblocker/mixins/ClientPlayNetworkHandlerMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixins/ClientPlayNetworkHandlerMixin.java @@ -18,7 +18,7 @@ import de.hysky.skyblocker.skyblock.end.EnderNodes; import de.hysky.skyblocker.skyblock.end.TheEnd; import de.hysky.skyblocker.skyblock.slayers.SlayerManager; import de.hysky.skyblocker.skyblock.slayers.boss.demonlord.FirePillarAnnouncer; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import de.hysky.skyblocker.skyblock.waypoint.MythologicalRitual; import de.hysky.skyblocker.utils.Utils; import net.minecraft.client.network.ClientPlayNetworkHandler; @@ -101,7 +101,7 @@ public abstract class ClientPlayNetworkHandlerMixin { @Inject(method = "onPlayerListHeader", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/hud/PlayerListHud;setFooter(Lnet/minecraft/text/Text;)V")) private void skyblocker$updatePlayerListFooter(PlayerListHeaderS2CPacket packet, CallbackInfo ci) { - PlayerListMgr.updateFooter(packet.footer()); + PlayerListManager.updateFooter(packet.footer()); } @WrapWithCondition(method = "onPlayerList", at = @At(value = "INVOKE", target = "Lorg/slf4j/Logger;warn(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V", remap = false)) diff --git a/src/main/java/de/hysky/skyblocker/mixins/InGameHudMixin.java b/src/main/java/de/hysky/skyblocker/mixins/InGameHudMixin.java index d8373119..a41a2776 100644 --- a/src/main/java/de/hysky/skyblocker/mixins/InGameHudMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixins/InGameHudMixin.java @@ -24,7 +24,6 @@ import net.minecraft.client.gui.LayeredDrawer; import net.minecraft.client.gui.hud.InGameHud; import net.minecraft.client.gui.hud.PlayerListHud; import net.minecraft.client.render.RenderLayer; -import net.minecraft.client.render.RenderTickCounter; import net.minecraft.client.util.Window; import net.minecraft.client.util.math.MatrixStack; import net.minecraft.entity.player.PlayerEntity; @@ -202,6 +201,6 @@ public abstract class InGameHudMixin { @WrapWithCondition(method = "renderPlayerList", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/hud/PlayerListHud;render(Lnet/minecraft/client/gui/DrawContext;ILnet/minecraft/scoreboard/Scoreboard;Lnet/minecraft/scoreboard/ScoreboardObjective;)V")) private boolean skyblocker$shouldRenderHud(PlayerListHud playerListHud, DrawContext context, int scaledWindowWidth, Scoreboard scoreboard, ScoreboardObjective objective) { - return !Utils.isOnSkyblock() || !SkyblockerConfigManager.get().uiAndVisuals.tabHud.tabHudEnabled || TabHud.defaultTgl.isPressed() || MinecraftClient.getInstance().currentScreen instanceof WidgetsConfigurationScreen; + return !Utils.isOnSkyblock() || !SkyblockerConfigManager.get().uiAndVisuals.tabHud.tabHudEnabled || TabHud.shouldRenderVanilla() || MinecraftClient.getInstance().currentScreen instanceof WidgetsConfigurationScreen; } } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java index a00025d0..56ae089d 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/DungeonScore.java @@ -7,7 +7,7 @@ import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.config.configs.DungeonsConfig; import de.hysky.skyblocker.events.DungeonEvents; import de.hysky.skyblocker.skyblock.dungeon.secrets.DungeonManager; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import de.hysky.skyblocker.utils.Constants; import de.hysky.skyblocker.utils.ProfileUtils; import de.hysky.skyblocker.utils.Utils; @@ -231,7 +231,7 @@ public class DungeonScore { } private static int getCompletedRooms() { - Matcher matcher = PlayerListMgr.regexAt(43, COMPLETED_ROOMS_PATTERN); + Matcher matcher = PlayerListManager.regexAt(43, COMPLETED_ROOMS_PATTERN); return matcher != null ? Integer.parseInt(matcher.group("rooms")) : 0; } @@ -259,14 +259,14 @@ public class DungeonScore { } private static int getPuzzleCount() { - Matcher matcher = PlayerListMgr.regexAt(47, PUZZLE_COUNT_PATTERN); + Matcher matcher = PlayerListManager.regexAt(47, PUZZLE_COUNT_PATTERN); return matcher != null ? Integer.parseInt(matcher.group("count")) : 0; } private static int getPuzzlePenalty() { int incompletePuzzles = 0; for (int index = 0; index < puzzleCount; index++) { - Matcher puzzleMatcher = PlayerListMgr.regexAt(48 + index, PUZZLES_PATTERN); + Matcher puzzleMatcher = PlayerListManager.regexAt(48 + index, PUZZLES_PATTERN); if (puzzleMatcher == null) break; if (puzzleMatcher.group("state").matches("[✖✦]")) incompletePuzzles++; } @@ -274,13 +274,13 @@ public class DungeonScore { } private static double getSecretsPercentage() { - Matcher matcher = PlayerListMgr.regexAt(44, SECRETS_PATTERN); + Matcher matcher = PlayerListManager.regexAt(44, SECRETS_PATTERN); return matcher != null ? Double.parseDouble(matcher.group("secper")) : 0; } private static int getCrypts() { - Matcher matcher = PlayerListMgr.regexAt(33, CRYPTS_PATTERN); - if (matcher == null) matcher = PlayerListMgr.regexAt(32, CRYPTS_PATTERN); //If class milestone 9 is reached, crypts goes up by 1 + Matcher matcher = PlayerListManager.regexAt(33, CRYPTS_PATTERN); + if (matcher == null) matcher = PlayerListManager.regexAt(32, CRYPTS_PATTERN); //If class milestone 9 is reached, crypts goes up by 1 return matcher != null ? Integer.parseInt(matcher.group("crypts")) : 0; } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonPlayerManager.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonPlayerManager.java index 6a516007..4c3a0e8c 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonPlayerManager.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonPlayerManager.java @@ -8,7 +8,7 @@ import org.jetbrains.annotations.Range; import de.hysky.skyblocker.annotations.Init; import de.hysky.skyblocker.events.DungeonEvents; import de.hysky.skyblocker.skyblock.dungeon.DungeonClass; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import it.unimi.dsi.fastutil.objects.Object2ReferenceMap; import it.unimi.dsi.fastutil.objects.Object2ReferenceOpenHashMap; import net.minecraft.entity.player.PlayerEntity; @@ -51,6 +51,6 @@ public class DungeonPlayerManager { } private static Matcher getPlayerFromTab(@Range(from = 1, to = 5) int index) { - return PlayerListMgr.regexAt(1 + (index - 1) * 4, PLAYER_TAB_PATTERN); + return PlayerListManager.regexAt(1 + (index - 1) * 4, PLAYER_TAB_PATTERN); } } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretsTracker.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretsTracker.java index 31d0aba0..2cf700bb 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretsTracker.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretsTracker.java @@ -5,7 +5,7 @@ import com.google.gson.JsonParser; import de.hysky.skyblocker.annotations.Init; import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.events.DungeonEvents; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import de.hysky.skyblocker.skyblock.tabhud.widget.DungeonPlayerWidget; import de.hysky.skyblocker.utils.ApiUtils; import de.hysky.skyblocker.utils.Constants; @@ -131,7 +131,7 @@ public class SecretsTracker { } private static String getPlayerNameAt(int index) { - Matcher matcher = PlayerListMgr.regexAt(1 + (index - 1) * 4, DungeonPlayerWidget.PLAYER_PATTERN); + Matcher matcher = PlayerListManager.regexAt(1 + (index - 1) * 4, DungeonPlayerWidget.PLAYER_PATTERN); return matcher != null ? matcher.group("name") : ""; } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java index 4b04430d..e7f4a6b7 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/WishingCompassSolver.java @@ -2,7 +2,7 @@ package de.hysky.skyblocker.skyblock.dwarven; import de.hysky.skyblocker.annotations.Init; import de.hysky.skyblocker.config.SkyblockerConfigManager; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import de.hysky.skyblocker.utils.Constants; import de.hysky.skyblocker.utils.Utils; import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents; @@ -110,11 +110,11 @@ public class WishingCompassSolver { return false; } //make sure the data is in tab and if not tell the user - if (PlayerListMgr.getPlayerStringList().stream().noneMatch(entry -> entry.startsWith("Active Effects:"))) { + if (PlayerListManager.getPlayerStringList().stream().noneMatch(entry -> entry.startsWith("Active Effects:"))) { CLIENT.player.sendMessage(Constants.PREFIX.get().append(Text.translatable("skyblocker.config.mining.crystalsWaypoints.wishingCompassSolver.enableTabEffectsMessage")), false); return false; } - return PlayerListMgr.getPlayerStringList().stream().anyMatch(entry -> entry.startsWith("King's Scent")); + return PlayerListManager.getPlayerStringList().stream().anyMatch(entry -> entry.startsWith("King's Scent")); } private static boolean isKeyInInventory() { @@ -131,13 +131,13 @@ public class WishingCompassSolver { } //make sure the data is in tab and if not tell the user - if (PlayerListMgr.getPlayerStringList().stream().noneMatch(entry -> entry.equals("Crystals:"))) { + if (PlayerListManager.getPlayerStringList().stream().noneMatch(entry -> entry.equals("Crystals:"))) { CLIENT.player.sendMessage(Constants.PREFIX.get().append(Text.translatable("skyblocker.config.mining.crystalsWaypoints.wishingCompassSolver.enableTabMessage")), false); return false; } //return if the crystal for a zone is found - Stream<String> displayNameStream = PlayerListMgr.getPlayerStringList().stream(); + Stream<String> displayNameStream = PlayerListManager.getPlayerStringList().stream(); return switch (zone) { case JUNGLE -> displayNameStream.noneMatch(entry -> entry.equals("Amethyst: ✖ Not Found")); case MITHRIL_DEPOSITS -> displayNameStream.noneMatch(entry -> entry.equals("Jade: ✖ Not Found")); diff --git a/src/main/java/de/hysky/skyblocker/skyblock/garden/FarmingHudWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/garden/FarmingHudWidget.java index 868bf4cf..ab37080f 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/garden/FarmingHudWidget.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/garden/FarmingHudWidget.java @@ -6,8 +6,8 @@ import de.hysky.skyblocker.skyblock.item.tooltip.info.TooltipInfoType; import de.hysky.skyblocker.skyblock.itemlist.ItemRepository; import de.hysky.skyblocker.skyblock.tabhud.util.Ico; import de.hysky.skyblocker.skyblock.tabhud.widget.ComponentBasedWidget; +import de.hysky.skyblocker.skyblock.tabhud.widget.component.Components; import de.hysky.skyblocker.skyblock.tabhud.widget.component.PlainTextComponent; -import de.hysky.skyblocker.skyblock.tabhud.widget.component.ProgressComponent; import de.hysky.skyblocker.utils.ItemUtils; import de.hysky.skyblocker.utils.Location; import it.unimi.dsi.fastutil.doubles.DoubleBooleanPair; @@ -96,7 +96,7 @@ public class FarmingHudWidget extends ComponentBasedWidget { addSimpleIcoText(Ico.GOLD, "Coins/h: ", Formatting.GOLD, getPriceText(cropItemId, cropsPerMinute)); addSimpleIcoText(cropStack, "Blocks/s: ", Formatting.YELLOW, Integer.toString(FarmingHud.blockBreaks())); //noinspection DataFlowIssue - addComponent(new ProgressComponent(Ico.LANTERN, Text.literal("Farming Level: "), FarmingHud.farmingXpPercentProgress(), Formatting.GOLD.getColorValue())); + addComponent(Components.progressComponent(Ico.LANTERN, Text.literal("Farming Level: "), FarmingHud.farmingXpPercentProgress(), Formatting.GOLD.getColorValue())); addSimpleIcoText(Ico.LIME_DYE, "Farming XP/h: ", Formatting.YELLOW, FarmingHud.NUMBER_FORMAT.format((int) FarmingHud.farmingXpPerHour())); Entity cameraEntity = client.getCameraEntity(); diff --git a/src/main/java/de/hysky/skyblocker/skyblock/garden/GardenPlotsWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/garden/GardenPlotsWidget.java index 41da74da..93fc0c49 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/garden/GardenPlotsWidget.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/garden/GardenPlotsWidget.java @@ -7,7 +7,7 @@ import de.hysky.skyblocker.SkyblockerMod; import de.hysky.skyblocker.annotations.Init; import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.events.SkyblockEvents; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import de.hysky.skyblocker.utils.Utils; import de.hysky.skyblocker.utils.scheduler.MessageScheduler; import it.unimi.dsi.fastutil.ints.*; @@ -262,8 +262,8 @@ public class GardenPlotsWidget extends ClickableWidget { private void updateInfestedFromTab() { infectedPlots.clear(); - for (int i = 0; i < PlayerListMgr.getPlayerStringList().size(); i++) { - String string = PlayerListMgr.getPlayerStringList().get(i); + for (int i = 0; i < PlayerListManager.getPlayerStringList().size(); i++) { + String string = PlayerListManager.getPlayerStringList().get(i); if (string.startsWith("Plots:")) { String[] split = string.split(":")[1].split(","); for (String s : split) { diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/TabHud.java b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/TabHud.java index 19663040..aa56e3e2 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/TabHud.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/TabHud.java @@ -1,6 +1,7 @@ package de.hysky.skyblocker.skyblock.tabhud; import de.hysky.skyblocker.annotations.Init; +import de.hysky.skyblocker.config.SkyblockerConfigManager; import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; import net.minecraft.client.option.KeyBinding; import net.minecraft.client.util.InputUtil; @@ -8,7 +9,7 @@ import org.lwjgl.glfw.GLFW; public class TabHud { public static KeyBinding toggleSecondary; - public static KeyBinding defaultTgl; + private static KeyBinding defaultTgl; @Init public static void init() { @@ -23,4 +24,8 @@ public class TabHud { GLFW.GLFW_KEY_M, "key.categories.skyblocker")); } + + public static boolean shouldRenderVanilla() { + return defaultTgl.isPressed() != SkyblockerConfigManager.get().uiAndVisuals.tabHud.showVanillaTabByDefault; + } } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/WidgetsConfigurationScreen.java b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/WidgetsConfigurationScreen.java index 71c5b494..8a0e0509 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/WidgetsConfigurationScreen.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/WidgetsConfigurationScreen.java @@ -5,7 +5,7 @@ import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.skyblock.tabhud.config.entries.WidgetEntry; import de.hysky.skyblocker.skyblock.tabhud.config.preview.PreviewTab; import de.hysky.skyblocker.skyblock.tabhud.screenbuilder.ScreenMaster; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import de.hysky.skyblocker.skyblock.tabhud.widget.HudWidget; import de.hysky.skyblocker.utils.ItemUtils; import de.hysky.skyblocker.utils.Location; @@ -275,7 +275,7 @@ public class WidgetsConfigurationScreen extends Screen implements ScreenHandlerL this.handler.onClosed(this.client.player); } handler.removeListener(this); - Scheduler.INSTANCE.schedule(PlayerListMgr::updateList, 1); + Scheduler.INSTANCE.schedule(PlayerListManager::updateList, 1); SkyblockerConfigManager.save(); } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/preview/PreviewTab.java b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/preview/PreviewTab.java index 2cd743ac..18d608ed 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/preview/PreviewTab.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/preview/PreviewTab.java @@ -8,7 +8,7 @@ import de.hysky.skyblocker.skyblock.tabhud.screenbuilder.ScreenBuilder; import de.hysky.skyblocker.skyblock.tabhud.screenbuilder.ScreenMaster; import de.hysky.skyblocker.skyblock.tabhud.screenbuilder.pipeline.PositionRule; import de.hysky.skyblocker.skyblock.tabhud.screenbuilder.pipeline.WidgetPositioner; -import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr; +import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListManager; import de.hysky.skyblocker.skyblock.tabhud.widget.HudWidget; import de.hysky.skyblocker.skyblock.tabhud.widget.TabHudWidget; import de.hysky.skyblocker.utils.EnumUtils; @@ -197,7 +197,7 @@ public class PreviewTab implements Tab { private void updatePlayerListFromPreview() { if (mode == Mode.DUNGEON) { - PlayerListMgr.updateDungeons(DungeonsTabPlaceholder.get()); + PlayerListManager.updateDungeons(DungeonsTabPlaceholder.get()); return; } if (!parent.isPreviewVisible() || parent.getHandler() == null) return; @@ -240,7 +240,7 @@ public class PreviewTab implements Tab { } } } - PlayerListMgr.updateWidgetsFrom(lines.stream().map(line -> { + PlayerListManager.updateWidgetsFrom(lines.stream().map(line -> { PlayerListEntry playerListEntry = new PlayerListEntry(new GameProfile(UUID.randomUUID(), ""), false); playerListEntry.setDisplayName(line); return playerListEntry; diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/screenbuilder/ScreenBuilder.java b/src/main/java/de/hysky/skyblocker/skyblock/ta |
