diff options
| author | Rime <81419447+Emirlol@users.noreply.github.com> | 2024-07-27 11:42:37 +0300 |
|---|---|---|
| committer | Rime <81419447+Emirlol@users.noreply.github.com> | 2024-07-27 11:42:37 +0300 |
| commit | 44770abb621167802883abd18b34479e861326e5 (patch) | |
| tree | 46c956ea57be3650c7dcd0d12c9621182d5a2a90 /src/main/java | |
| parent | 7704d0d36585c5a1e8b6fc22bdfe77417af12c20 (diff) | |
| download | Skyblocker-44770abb621167802883abd18b34479e861326e5.tar.gz Skyblocker-44770abb621167802883abd18b34479e861326e5.tar.bz2 Skyblocker-44770abb621167802883abd18b34479e861326e5.zip | |
Fix slot text not working on favorited pets
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/PetLevelAdder.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/PetLevelAdder.java b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/PetLevelAdder.java index fbacc65c..e940b17a 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/PetLevelAdder.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/adders/PetLevelAdder.java @@ -1,7 +1,7 @@ package de.hysky.skyblocker.skyblock.item.slottext.adders; -import de.hysky.skyblocker.skyblock.item.slottext.SlotText; import de.hysky.skyblocker.skyblock.item.slottext.SimpleSlotTextAdder; +import de.hysky.skyblocker.skyblock.item.slottext.SlotText; import de.hysky.skyblocker.utils.ItemUtils; import net.minecraft.item.ItemStack; import net.minecraft.item.Items; @@ -12,18 +12,22 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; public class PetLevelAdder extends SimpleSlotTextAdder { + private static final Pattern LEVEL_PATTERN = Pattern.compile("⭐? ?\\[Lvl (\\d+)].*"); public PetLevelAdder() { super(); } @Override public @NotNull List<SlotText> getText(@Nullable Slot slot, @NotNull ItemStack stack, int slotId) { - if (!stack.isOf(Items.PLAYER_HEAD)) return List.of(); - String level = CatacombsLevelAdder.getBracketedLevelFromName(stack); + if (!stack.isOf(Items.PLAYER_HEAD) || !ItemUtils.getItemId(stack).equals("PET")) return List.of(); + Matcher matcher = LEVEL_PATTERN.matcher(stack.getName().getString()); + if (!matcher.matches()) return List.of(); + String level = matcher.group(1); if (!NumberUtils.isDigits(level) || "100".equals(level) || "200".equals(level)) return List.of(); - if (!ItemUtils.getItemId(stack).equals("PET")) return List.of(); - return List.of(SlotText.topLeft(Text.literal(level).withColor(0xFFDDC1))); + return SlotText.topLeftList(Text.literal(level).withColor(0xFFDDC1)); } } |
