From bb9e24dd964474923f8f312b0ca742972c585ef6 Mon Sep 17 00:00:00 2001 From: carm Date: Fri, 8 Sep 2023 23:47:53 +0800 Subject: [PATCH] =?UTF-8?q?fix(item):=20=E4=BF=AE=E5=A4=8D=E4=B8=8A?= =?UTF-8?q?=E4=B8=8B=E7=A9=BA=E8=A1=8C=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/pom.xml | 2 +- platform/bukkit/pom.xml | 2 +- .../bukkit/value/ConfiguredItem.java | 2 +- .../bukkit/src/test/java/LoreInsertTest.java | 63 +++++++++++++++++++ .../bukkit/src/test/java/LoreOffsetTest.java | 20 ------ platform/bungee/pom.xml | 2 +- pom.xml | 2 +- 7 files changed, 68 insertions(+), 25 deletions(-) create mode 100644 platform/bukkit/src/test/java/LoreInsertTest.java delete mode 100644 platform/bukkit/src/test/java/LoreOffsetTest.java diff --git a/common/pom.xml b/common/pom.xml index 12bac81..15ff34d 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -5,7 +5,7 @@ mineconfiguration-parent cc.carm.lib - 2.8.3 + 2.8.4 4.0.0 diff --git a/platform/bukkit/pom.xml b/platform/bukkit/pom.xml index 381395b..6aaa319 100644 --- a/platform/bukkit/pom.xml +++ b/platform/bukkit/pom.xml @@ -5,7 +5,7 @@ mineconfiguration-parent cc.carm.lib - 2.8.3 + 2.8.4 ../../pom.xml 4.0.0 diff --git a/platform/bukkit/src/main/java/cc/carm/lib/mineconfiguration/bukkit/value/ConfiguredItem.java b/platform/bukkit/src/main/java/cc/carm/lib/mineconfiguration/bukkit/value/ConfiguredItem.java index 58c557d..d8037c8 100644 --- a/platform/bukkit/src/main/java/cc/carm/lib/mineconfiguration/bukkit/value/ConfiguredItem.java +++ b/platform/bukkit/src/main/java/cc/carm/lib/mineconfiguration/bukkit/value/ConfiguredItem.java @@ -27,7 +27,7 @@ import java.util.regex.Pattern; public class ConfiguredItem extends ConfiguredSection { - public static final @NotNull Pattern LORE_INSERT_PATTERN = Pattern.compile("^#(.*)#(\\{\\w+})?$"); + public static final @NotNull Pattern LORE_INSERT_PATTERN = Pattern.compile("^#(.*)#(\\{.*})?$"); public static final @NotNull Pattern LORE_OFFSET_PATTERN = Pattern.compile("\\{(-?\\d+)(?:,(-?\\d+))?}"); public static ItemConfigBuilder create() { diff --git a/platform/bukkit/src/test/java/LoreInsertTest.java b/platform/bukkit/src/test/java/LoreInsertTest.java new file mode 100644 index 0000000..3220389 --- /dev/null +++ b/platform/bukkit/src/test/java/LoreInsertTest.java @@ -0,0 +1,63 @@ +import cc.carm.lib.mineconfiguration.bukkit.value.ConfiguredItem; +import org.junit.Test; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.regex.Matcher; + +public class LoreInsertTest { + + + @Test + public void insert() { + List original = Arrays.asList( + "测试lore的第一行", + "测试lore的第二行", + "#click-lore#{1,2}", + "测试lore的倒数第二行", + "测试lore的倒数第一行" + ); + + List replace = Arrays.asList("> 插入的点击行1", "> 插入的点击行2"); + Map> inserted = new HashMap<>(); + inserted.put("click-lore", replace); + + System.out.println(ConfiguredItem.insertLore(original, inserted)); + } + + + @Test + public void parse() { + System.out.println(parse("#click-lore#{1,0}")); + System.out.println(parse("#click-lore#{1,2}")); + System.out.println(parse("#click-lore#{1}")); + System.out.println(parse("#click-lore#{我}")); + } + + public static String parse(String line) { + Matcher matcher = ConfiguredItem.LORE_INSERT_PATTERN.matcher(line); + if (!matcher.matches()) { + return line; + } else { + String path = matcher.group(1); + String offset = matcher.group(2); + return "Path -> " + path + " Offset-> " + offset; + } + } + + @Test + public void offset() { + + System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{1,-5}")); + System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{1,2}")); + System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{1,0}")); + System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{2}")); + System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{我}")); + System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{我,爱你}")); + + } + + +} diff --git a/platform/bukkit/src/test/java/LoreOffsetTest.java b/platform/bukkit/src/test/java/LoreOffsetTest.java deleted file mode 100644 index 85ba4f2..0000000 --- a/platform/bukkit/src/test/java/LoreOffsetTest.java +++ /dev/null @@ -1,20 +0,0 @@ -import cc.carm.lib.mineconfiguration.bukkit.value.ConfiguredItem; -import org.junit.Test; - -import java.util.Arrays; - -public class LoreOffsetTest { - - - @Test - public void lore() { - - System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{1,-5}")); - System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{1,2}")); - System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{1,0}")); - System.out.println(ConfiguredItem.addLoreOffset(Arrays.asList("测试lore", "第二行"), "{2}")); - - } - - -} diff --git a/platform/bungee/pom.xml b/platform/bungee/pom.xml index 9fb3490..3679815 100644 --- a/platform/bungee/pom.xml +++ b/platform/bungee/pom.xml @@ -5,7 +5,7 @@ mineconfiguration-parent cc.carm.lib - 2.8.3 + 2.8.4 ../../pom.xml 4.0.0 diff --git a/pom.xml b/pom.xml index a133f5f..3af6027 100644 --- a/pom.xml +++ b/pom.xml @@ -17,7 +17,7 @@ cc.carm.lib mineconfiguration-parent - 2.8.3 + 2.8.4 pom common