aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de
diff options
context:
space:
mode:
authorRime <81419447+Emirlol@users.noreply.github.com>2024-05-31 20:56:24 +0300
committerRime <81419447+Emirlol@users.noreply.github.com>2024-06-08 04:13:47 +0300
commit1f333588274d473dfc41580e1e34ce7f405da9ea (patch)
tree36a2a7f4aaf53f7e3ab92ed312ae0cc787ee0aea /src/main/java/de
parent52b7980c44b167612f6e9b864d7b483fba909270 (diff)
downloadSkyblocker-1f333588274d473dfc41580e1e34ce7f405da9ea.tar.gz
Skyblocker-1f333588274d473dfc41580e1e34ce7f405da9ea.tar.bz2
Skyblocker-1f333588274d473dfc41580e1e34ce7f405da9ea.zip
Add skyblock level adder
Diffstat (limited to 'src/main/java/de')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java4
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/SkyblockLevelAdder.java28
2 files changed, 31 insertions, 1 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java
index 513764ea..7087f602 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java
@@ -3,6 +3,7 @@ package de.hysky.skyblocker.skyblock.item.slottext;
import de.hysky.skyblocker.skyblock.item.slottext.adders.EnchantmentLevelAdder;
import de.hysky.skyblocker.skyblock.item.slottext.adders.MinionLevelAdder;
import de.hysky.skyblocker.skyblock.item.slottext.adders.PetLevelAdder;
+import de.hysky.skyblocker.skyblock.item.slottext.adders.SkyblockLevelAdder;
import net.fabricmc.fabric.api.client.screen.v1.ScreenEvents;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.ingame.HandledScreen;
@@ -16,7 +17,8 @@ public class SlotTextManager {
private static final SlotTextAdder[] adders = new SlotTextAdder[]{
new EnchantmentLevelAdder(),
new MinionLevelAdder(),
- new PetLevelAdder()
+ new PetLevelAdder(),
+ new SkyblockLevelAdder()
};
private static final ArrayList<SlotTextAdder> currentScreenAdders = new ArrayList<>();
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/SkyblockLevelAdder.java b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/SkyblockLevelAdder.java
new file mode 100644
index 00000000..bab88372
--- /dev/null
+++ b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/SkyblockLevelAdder.java
@@ -0,0 +1,28 @@
+package de.hysky.skyblocker.skyblock.item.slottext.adders;
+
+import de.hysky.skyblocker.skyblock.item.slottext.SlotTextAdder;
+import de.hysky.skyblocker.utils.ItemUtils;
+import net.minecraft.screen.slot.Slot;
+import net.minecraft.text.Text;
+import org.apache.commons.lang3.math.NumberUtils;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
+
+public class SkyblockLevelAdder extends SlotTextAdder {
+ public SkyblockLevelAdder() {
+ super("^SkyBlock Menu");
+ }
+
+ @Override
+ public @Nullable Text getText(Slot slot) {
+ if (slot.getIndex() != 22) return null;
+ List<Text> lore = ItemUtils.getLore(slot.getStack());
+ if (lore.isEmpty()) return null;
+ List<Text> siblings = lore.getFirst().getSiblings();
+ if (siblings.size() < 3) return null;
+ Text levelText = siblings.get(2); //The 3rd child is the level text itself
+ if (!NumberUtils.isDigits(levelText.getString())) return null;
+ return levelText;
+ }
+}