aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorRime <81419447+Emirlol@users.noreply.github.com>2024-05-29 19:16:05 +0300
committerRime <81419447+Emirlol@users.noreply.github.com>2024-06-08 04:13:47 +0300
commit70f64540381615499964bfb42afa9d969cf52b59 (patch)
tree69b4490c14cd8a436d0715330a05cfc9332296ad /src/main
parentc5b456cf7264edb802b0af18e1075451c39276b5 (diff)
downloadSkyblocker-70f64540381615499964bfb42afa9d969cf52b59.tar.gz
Skyblocker-70f64540381615499964bfb42afa9d969cf52b59.tar.bz2
Skyblocker-70f64540381615499964bfb42afa9d969cf52b59.zip
Add enchantment level slot text
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java2
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/EnchantmentLevelAdder.java32
2 files changed, 34 insertions, 0 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 b6dfa6cd..bc555454 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
@@ -1,5 +1,6 @@
package de.hysky.skyblocker.skyblock.item.slottext;
+import de.hysky.skyblocker.skyblock.item.slottext.adders.EnchantmentLevelAdder;
import net.fabricmc.fabric.api.client.screen.v1.ScreenEvents;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.ingame.HandledScreen;
@@ -11,6 +12,7 @@ import java.util.ArrayList;
public class SlotTextManager {
private static final SlotTextAdder[] adders = new SlotTextAdder[]{
+ new EnchantmentLevelAdder()
};
private static final ArrayList<SlotTextAdder> currentScreenAdders = new ArrayList<>();
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/EnchantmentLevelAdder.java b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/EnchantmentLevelAdder.java
new file mode 100644
index 00000000..e041f675
--- /dev/null
+++ b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/EnchantmentLevelAdder.java
@@ -0,0 +1,32 @@
+package de.hysky.skyblocker.skyblock.item.slottext.adders;
+
+import de.hysky.skyblocker.skyblock.chocolatefactory.ChocolateFactorySolver;
+import de.hysky.skyblocker.skyblock.item.slottext.SlotTextAdder;
+import de.hysky.skyblocker.utils.ItemUtils;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.Items;
+import net.minecraft.screen.slot.Slot;
+import net.minecraft.text.Text;
+import net.minecraft.util.Formatting;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
+
+public class EnchantmentLevelAdder extends SlotTextAdder {
+ public EnchantmentLevelAdder() {
+ super();
+ }
+
+ @Override
+ public @Nullable Text getText(Slot slot) {
+ final ItemStack itemStack = slot.getStack();
+ if (!itemStack.isOf(Items.ENCHANTED_BOOK)) return null;
+ List<Text> lore = ItemUtils.getLore(itemStack);
+ if (lore.isEmpty()) return null;
+ String firstLine = lore.getFirst().getString();
+ String romanNumeral = firstLine.substring(firstLine.lastIndexOf(' ') + 1); //+1 because we don't need the space itself
+ int level = ChocolateFactorySolver.romanToDecimal(romanNumeral); //Temporary line. The method will be moved out later.
+ if (level == 0) return null;
+ return Text.literal(String.valueOf(level)).formatted(Formatting.BLUE);
+ }
+}