diff --git a/resource/config.yml b/resource/config.yml index 134e012..10b30b1 100644 --- a/resource/config.yml +++ b/resource/config.yml @@ -18,6 +18,8 @@ config: stop-sound: true disabled-world-message: true panel-snooper: false + allow-unsafe-mini-message: false + disable-unsafe-mm-warning: false format: tag: '&6[&bCommandPanels&6] ' perms: '&cNo permission.' diff --git a/src/me/rockyhawk/commandpanels/CommandPanels.java b/src/me/rockyhawk/commandpanels/CommandPanels.java index b4d33b8..8cfe388 100644 --- a/src/me/rockyhawk/commandpanels/CommandPanels.java +++ b/src/me/rockyhawk/commandpanels/CommandPanels.java @@ -272,6 +272,9 @@ public class CommandPanels extends JavaPlugin{ //get tag tag = tex.colour(config.getString("config.format.tag")); + if(config.getBoolean("config.allow-unsafe-mini-message") && !config.getBoolean("config.disable-unsafe-mm-warning")){ + Bukkit.getLogger().warning("[CommandPanels] Allow unsafe MiniMessage detected! Please proceed with caution as no support will be given for it!"); + } Bukkit.getLogger().info("[CommandPanels] RockyHawk's CommandPanels v" + this.getDescription().getVersion() + " Plugin Loaded!"); } diff --git a/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java b/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java index 6aa867c..e4d345a 100644 --- a/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java +++ b/src/me/rockyhawk/commandpanels/commandtags/tags/standard/BasicTags.java @@ -142,7 +142,13 @@ public class BasicTags implements Listener { Component parsedText = SerializerUtils.serializeText(String.join(" ",e.args)); player.sendMessage(parsedText); }else{ - plugin.tex.sendString(e.p, plugin.tag + ChatColor.RED + "MiniMessage-Feature needs Paper 1.18 or newer to work!"); + if(plugin.legacy.LOCAL_VERSION.greaterThanOrEqualTo(MinecraftVersions.v1_18) && plugin.config.getBoolean("config.allow-unsafe-mini-message")){ + Audience player = (Audience) e.p; // Needed because the basic Player from the Event can't send Paper's Components + Component parsedText = SerializerUtils.serializeText(String.join(" ",e.args)); + player.sendMessage(parsedText); + }else{ + plugin.tex.sendString(e.p, plugin.tag + ChatColor.RED + "MiniMessage-Feature needs Paper 1.18 or newer to work!"); + } } } }