aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorviciscat <51047087+viciscat@users.noreply.github.com>2024-07-19 13:50:59 +0200
committerviciscat <51047087+viciscat@users.noreply.github.com>2024-12-12 18:19:33 +0100
commit8dc5764a0c9d44ab0e87a0c798286b9f16a4dcc2 (patch)
tree0714c63e4e0cc0b3dc97e055d1381c46ca0f6d3a /src/main/java
parent195da65186d5684979c97c3aad150cf2ea86f363 (diff)
downloadSkyblocker-8dc5764a0c9d44ab0e87a0c798286b9f16a4dcc2.tar.gz
Skyblocker-8dc5764a0c9d44ab0e87a0c798286b9f16a4dcc2.tar.bz2
Skyblocker-8dc5764a0c9d44ab0e87a0c798286b9f16a4dcc2.zip
h
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/PreviewTab.java10
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/tabhud/screenbuilder/ScreenMaster.java2
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/tabhud/util/PlayerListMgr.java4
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/MinionWidget.java2
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/TabHudWidget.java2
5 files changed, 16 insertions, 4 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/PreviewTab.java b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/PreviewTab.java
index 80316a77..34400e26 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/PreviewTab.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/config/PreviewTab.java
@@ -301,7 +301,15 @@ public class PreviewTab implements Tab {
}).width(width).build());
- String parentName = positionRule.parent().equals("screen") ? "Screen" : ScreenMaster.widgetInstances.get(positionRule.parent()).getNiceName();
+ String parentName;
+ HudWidget parent;
+ if (positionRule.parent().equals("screen")) {
+ parentName = "Screen";
+ } else if ((parent = ScreenMaster.widgetInstances.get(positionRule.parent())) == null) {
+ parentName = "Unloaded Widget";
+ } else {
+ parentName = parent.getNiceName();
+ }
widgetOptions.addWidget(ButtonWidget.builder(Text.literal("Parent: " + parentName), button -> {
this.previewWidget.pickParent = true;
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/screenbuilder/ScreenMaster.java b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/screenbuilder/ScreenMaster.java
index bdfe792b..021e3ebc 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/screenbuilder/ScreenMaster.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/screenbuilder/ScreenMaster.java
@@ -12,6 +12,7 @@ import de.hysky.skyblocker.events.HudRenderEvents;
import de.hysky.skyblocker.events.SkyblockEvents;
import de.hysky.skyblocker.annotations.Init;
import de.hysky.skyblocker.skyblock.tabhud.TabHud;
+import de.hysky.skyblocker.skyblock.tabhud.config.WidgetsConfigurationScreen;
import de.hysky.skyblocker.skyblock.tabhud.screenbuilder.pipeline.PositionRule;
import de.hysky.skyblocker.skyblock.tabhud.util.PlayerListMgr;
import de.hysky.skyblocker.skyblock.tabhud.widget.DungeonPlayerWidget;
@@ -160,6 +161,7 @@ public class ScreenMaster {
HudRenderEvents.BEFORE_CHAT.register((context, tickDelta) -> {
if (!Utils.isOnSkyblock()) return;
MinecraftClient client = MinecraftClient.getInstance();
+ if (client.currentScreen instanceof WidgetsConfigurationScreen) return;
Window window = client.getWindow();
float scale = SkyblockerConfigManager.get().uiAndVisuals.tabHud.tabHudScale / 100f;
MatrixStack matrices = context.getMatrices();
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/util/PlayerListMgr.java b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/util/PlayerListMgr.java
index 81eaeae7..b94c2503 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/util/PlayerListMgr.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/util/PlayerListMgr.java
@@ -79,10 +79,12 @@ public class PlayerListMgr {
playerStringList = playerList.stream().map(PlayerListEntry::getDisplayName).filter(Objects::nonNull).map(Text::getString).map(String::strip).toList();
}
+ if (MinecraftClient.getInstance().currentScreen instanceof WidgetsConfigurationScreen widgetsConfigurationScreen && widgetsConfigurationScreen.isPreviewVisible()) return;
+
if (Utils.isInDungeons()) {
updateDungeons(null);
}
- else if (!(MinecraftClient.getInstance().currentScreen instanceof WidgetsConfigurationScreen widgetsConfigurationScreen && widgetsConfigurationScreen.isPreviewVisible())) {
+ else {
updateWidgetsFrom(playerList.stream().map(PlayerListEntry::getDisplayName).filter(Objects::nonNull).toList());
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/MinionWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/MinionWidget.java
index 0af122df..8941fe05 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/MinionWidget.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/MinionWidget.java
@@ -100,7 +100,7 @@ public class MinionWidget extends TabHudWidget {
addComponent(new PlainTextComponent(lines.getFirst().copy().append(Text.literal(" minions"))));
for (int i = 1; i < lines.size(); i++) {
String string = lines.get(i).getString();
- if (string.toLowerCase().contains("... and")) this.addComponent(new PlainTextComponent(lines.get(i)));
+ if (string.toLowerCase().startsWith("...")) this.addComponent(new PlainTextComponent(lines.get(i).copy().formatted(Formatting.GRAY)));
else addMinionComponent(string);
}
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/TabHudWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/TabHudWidget.java
index 1d6a735b..e4ca0e27 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/TabHudWidget.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/tabhud/widget/TabHudWidget.java
@@ -45,7 +45,7 @@ public abstract class TabHudWidget extends ComponentBasedWidget {
/**
* Update the content from the hypixel widget's lines
*
- * @param lines the lines, they are formatted, no blank lines will be present.
+ * @param lines the lines, they are formatted and trimmed, no blank lines will be present.
* If the vanilla tab widget has text right after the : they will be put on the first line.
*/
protected abstract void updateContent(List<Text> lines);