From ace7691b7fd006a42ef84982186f8a1310357171 Mon Sep 17 00:00:00 2001
From: TheLonelyWolf <42873246+TheLonelyWolf1@users.noreply.github.com>
Date: Tue, 14 Jun 2022 20:24:42 +0200
Subject: [PATCH 1/2] Added MiniMessage Support as CommandTag - CommandTags:
minimessage=
Tested with: 1.19, 1.18, 1.16
DISCLAIMER: Only works on Paper 1.18 or newer!
---
pom.xml | 16 ++++++++++++-
.../classresources/Serializer.java | 12 ++++++++++
.../commandtags/tags/standard/BasicTags.java | 24 +++++++++++++++++++
3 files changed, 51 insertions(+), 1 deletion(-)
create mode 100644 src/me/rockyhawk/commandpanels/classresources/Serializer.java
diff --git a/pom.xml b/pom.xml
index 0dc0ce9..5e3f775 100644
--- a/pom.xml
+++ b/pom.xml
@@ -12,5 +12,19 @@
8
8
-
+
+
+
+ sonatype
+ https://oss.sonatype.org/content/groups/public/
+
+
+
+
+
+ net.kyori
+ adventure-text-minimessage
+ 4.11.0
+
+
\ No newline at end of file
diff --git a/src/me/rockyhawk/commandpanels/classresources/Serializer.java b/src/me/rockyhawk/commandpanels/classresources/Serializer.java
new file mode 100644
index 0000000..dbb0a80
--- /dev/null
+++ b/src/me/rockyhawk/commandpanels/classresources/Serializer.java
@@ -0,0 +1,12 @@
+package me.rockyhawk.commandpanels.classresources;
+
+import net.kyori.adventure.text.Component;
+import net.kyori.adventure.text.minimessage.MiniMessage;
+
+public class Serializer {
+
+ public static Component serializeText(String msg){
+ Component parsedText = MiniMessage.miniMessage().deserialize(msg);
+ return parsedText;
+ }
+}
diff --git a/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java b/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java
index 345e764..8a3153e 100644
--- a/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java
+++ b/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java
@@ -2,13 +2,21 @@ package me.rockyhawk.commandpanels.commandtags.tags.standard;
import me.rockyhawk.commandpanels.CommandPanels;
import me.rockyhawk.commandpanels.api.PanelCommandEvent;
+import me.rockyhawk.commandpanels.classresources.Serializer;
import me.rockyhawk.commandpanels.commandtags.CommandTagEvent;
+import me.rockyhawk.commandpanels.ioclasses.legacy.LegacyVersion;
+import me.rockyhawk.commandpanels.ioclasses.legacy.MinecraftVersions;
import me.rockyhawk.commandpanels.openpanelsmanager.PanelOpenType;
+import net.kyori.adventure.audience.Audience;
+import net.kyori.adventure.text.Component;
import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
import org.bukkit.Sound;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
+import java.util.Arrays;
+
public class BasicTags implements Listener {
CommandPanels plugin;
public BasicTags(CommandPanels pl) {
@@ -98,5 +106,21 @@ public class BasicTags implements Listener {
PanelCommandEvent commandEvent = new PanelCommandEvent(e.p, e.args[0], e.panel);
Bukkit.getPluginManager().callEvent(commandEvent);
}
+ if(e.name.equalsIgnoreCase("minimessage=")){
+ e.commandTagUsed();
+ String tag = plugin.config.getString("config.format.tag") + " ";
+ if(Bukkit.getServer().getVersion().contains("Paper")){
+ LegacyVersion legacy = new LegacyVersion(plugin);
+ if(legacy.LOCAL_VERSION.greaterThanOrEqualTo(MinecraftVersions.v1_18)){
+ Audience player = (Audience) e.p; // Needed because the basic Player from the Event can't send Paper's Components
+ Component parsedText = Serializer.serializeText(String.join(" ",e.args));
+ player.sendMessage(parsedText);
+ }else{
+ plugin.tex.sendString(e.p, tag + ChatColor.RED + "MiniMessage-Feature needs Paper 1.18 or newer to work!");
+ }
+ }else{
+ plugin.tex.sendString(e.p, tag + ChatColor.RED + "MiniMessage-Feature needs Paper 1.18 or newer to work!");
+ }
+ }
}
}
From 3d49d7281e41a917b9d397724426ffc1e005836f Mon Sep 17 00:00:00 2001
From: TheLonelyWolf <42873246+TheLonelyWolf1@users.noreply.github.com>
Date: Thu, 16 Jun 2022 12:20:54 +0200
Subject: [PATCH 2/2] Fix Failing Checks for PR
---
.../{Serializer.java => SerializerUtils.java} | 2 +-
.../commandpanels/commandtags/tags/standard/BasicTags.java | 6 ++----
2 files changed, 3 insertions(+), 5 deletions(-)
rename src/me/rockyhawk/commandpanels/classresources/{Serializer.java => SerializerUtils.java} (91%)
diff --git a/src/me/rockyhawk/commandpanels/classresources/Serializer.java b/src/me/rockyhawk/commandpanels/classresources/SerializerUtils.java
similarity index 91%
rename from src/me/rockyhawk/commandpanels/classresources/Serializer.java
rename to src/me/rockyhawk/commandpanels/classresources/SerializerUtils.java
index dbb0a80..8c88f62 100644
--- a/src/me/rockyhawk/commandpanels/classresources/Serializer.java
+++ b/src/me/rockyhawk/commandpanels/classresources/SerializerUtils.java
@@ -3,7 +3,7 @@ package me.rockyhawk.commandpanels.classresources;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.MiniMessage;
-public class Serializer {
+public class SerializerUtils {
public static Component serializeText(String msg){
Component parsedText = MiniMessage.miniMessage().deserialize(msg);
diff --git a/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java b/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java
index 8a3153e..d2918a4 100644
--- a/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java
+++ b/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java
@@ -2,7 +2,7 @@ package me.rockyhawk.commandpanels.commandtags.tags.standard;
import me.rockyhawk.commandpanels.CommandPanels;
import me.rockyhawk.commandpanels.api.PanelCommandEvent;
-import me.rockyhawk.commandpanels.classresources.Serializer;
+import me.rockyhawk.commandpanels.classresources.SerializerUtils;
import me.rockyhawk.commandpanels.commandtags.CommandTagEvent;
import me.rockyhawk.commandpanels.ioclasses.legacy.LegacyVersion;
import me.rockyhawk.commandpanels.ioclasses.legacy.MinecraftVersions;
@@ -15,8 +15,6 @@ import org.bukkit.Sound;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
-import java.util.Arrays;
-
public class BasicTags implements Listener {
CommandPanels plugin;
public BasicTags(CommandPanels pl) {
@@ -113,7 +111,7 @@ public class BasicTags implements Listener {
LegacyVersion legacy = new LegacyVersion(plugin);
if(legacy.LOCAL_VERSION.greaterThanOrEqualTo(MinecraftVersions.v1_18)){
Audience player = (Audience) e.p; // Needed because the basic Player from the Event can't send Paper's Components
- Component parsedText = Serializer.serializeText(String.join(" ",e.args));
+ Component parsedText = SerializerUtils.serializeText(String.join(" ",e.args));
player.sendMessage(parsedText);
}else{
plugin.tex.sendString(e.p, tag + ChatColor.RED + "MiniMessage-Feature needs Paper 1.18 or newer to work!");