diff options
author | Rime <81419447+Emirlol@users.noreply.github.com> | 2024-05-29 19:47:05 +0300 |
---|---|---|
committer | Rime <81419447+Emirlol@users.noreply.github.com> | 2024-06-08 04:13:47 +0300 |
commit | cac8a42e71b04833d5b62e8bd48e496b493f1afa (patch) | |
tree | 48993e1be46c36c60d133ebf8c48abea740180e9 /src/main/java/de/hysky/skyblocker/skyblock | |
parent | ececd4c3d491e989869abafe38a9ed490cb7620b (diff) | |
download | Skyblocker-cac8a42e71b04833d5b62e8bd48e496b493f1afa.tar.gz Skyblocker-cac8a42e71b04833d5b62e8bd48e496b493f1afa.tar.bz2 Skyblocker-cac8a42e71b04833d5b62e8bd48e496b493f1afa.zip |
Fix titlePattern not matching when the title is changed by ChestValue
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/skyblock')
4 files changed, 8 insertions, 2 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextAdder.java b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextAdder.java index 5ef388bd..b41f42fc 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextAdder.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextAdder.java @@ -1,5 +1,6 @@ package de.hysky.skyblocker.skyblock.item.slottext; +import de.hysky.skyblocker.skyblock.ChestValue; import net.minecraft.screen.slot.Slot; import net.minecraft.text.Text; import org.jetbrains.annotations.Nullable; @@ -12,6 +13,8 @@ import java.util.regex.Pattern; public abstract class SlotTextAdder { /** * The title of the screen must match this pattern for this adder to be applied. Null means it will be applied to all screens. + * @implNote Don't end your regex with a {@code $} as {@link ChestValue} appends text to the end of the title, + * so the regex will stop matching if the player uses it. */ public final Pattern titlePattern; 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 06eb4d28..513764ea 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 @@ -35,7 +35,7 @@ public class SlotTextManager { private static void onScreenChange(Screen screen) { final String title = screen.getTitle().getString(); for (SlotTextAdder adder : adders) { - if (adder.titlePattern == null || adder.titlePattern.matcher(title).matches()) { + if (adder.titlePattern == null || adder.titlePattern.matcher(title).find()) { currentScreenAdders.add(adder); } } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/TooltipManager.java b/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/TooltipManager.java index f6652248..324c0616 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/TooltipManager.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/TooltipManager.java @@ -40,7 +40,7 @@ public class TooltipManager { private static void onScreenChange(Screen screen) { final String title = screen.getTitle().getString(); for (TooltipAdder adder : adders) { - if (adder.titlePattern == null || adder.titlePattern.matcher(title).matches()) { + if (adder.titlePattern == null || adder.titlePattern.matcher(title).find()) { currentScreenAdders.add(adder); } } diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/adders/TooltipAdder.java b/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/adders/TooltipAdder.java index b0b24c1c..065dfe5e 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/adders/TooltipAdder.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/tooltip/adders/TooltipAdder.java @@ -1,5 +1,6 @@ package de.hysky.skyblocker.skyblock.item.tooltip.adders; +import de.hysky.skyblocker.skyblock.ChestValue; import de.hysky.skyblocker.skyblock.item.tooltip.TooltipManager; import net.minecraft.screen.slot.Slot; import net.minecraft.text.Text; @@ -13,6 +14,8 @@ import java.util.regex.Pattern; public abstract class TooltipAdder { /** * The title of the screen must match this pattern for this adder to be applied. Null means it will be applied to all screens. + * @implNote Don't end your regex with a {@code $} as {@link ChestValue} appends text to the end of the title, + * so the regex will stop matching if the player uses it. */ public final Pattern titlePattern; /** |