From 622b2f113d048993cb0ab41e32dc5fca54a4f88f Mon Sep 17 00:00:00 2001 From: Aust1n46 Date: Thu, 7 Feb 2019 16:06:07 -0500 Subject: [PATCH] API additions to ChatMessageEvent Made "" text configurable Added new config option 'messageremovertext:' --- MineverseChat/bungee.yml | 2 +- MineverseChat/config.yml | 1 + MineverseChat/defaultconfig.yml | 1 + .../chat/api/events/ChatMessageEvent.java | 22 ++++++++++++++++++- .../chat/command/chat/Removemessage.java | 5 +++-- .../Aust1n46/chat/listeners/ChatListener.java | 3 ++- MineverseChat/plugin.yml | 2 +- 7 files changed, 30 insertions(+), 6 deletions(-) diff --git a/MineverseChat/bungee.yml b/MineverseChat/bungee.yml index 490bfa1..3a57023 100644 --- a/MineverseChat/bungee.yml +++ b/MineverseChat/bungee.yml @@ -1,4 +1,4 @@ name: VentureChat main: mineverse.Aust1n46.chat.bungee.MineverseChatBungee -version: 2.14.0 +version: 2.14.2 author: Aust1n46 \ No newline at end of file diff --git a/MineverseChat/config.yml b/MineverseChat/config.yml index 4b35369..8a47041 100644 --- a/MineverseChat/config.yml +++ b/MineverseChat/config.yml @@ -132,6 +132,7 @@ ignorechat: false emptychannelalert: "&6No one is listening to you." messageremoverpermissions: '&cYou need additional permissions to view this message!' +messageremovertext: '&c&o' # The name of the group is the permissions node for the format # Example: venturechat.json.Owner is the node for the group Owner diff --git a/MineverseChat/defaultconfig.yml b/MineverseChat/defaultconfig.yml index 5c0fbc6..3cd559a 100644 --- a/MineverseChat/defaultconfig.yml +++ b/MineverseChat/defaultconfig.yml @@ -132,6 +132,7 @@ ignorechat: false emptychannelalert: "&6No one is listening to you." messageremoverpermissions: '&cYou need additional permissions to view this message!' +messageremovertext: '&c&o' # The name of the group is the permissions node for the format # Example: mineversechat.json.Owner is the node for the group Owner diff --git a/MineverseChat/mineverse/Aust1n46/chat/api/events/ChatMessageEvent.java b/MineverseChat/mineverse/Aust1n46/chat/api/events/ChatMessageEvent.java index 05b8ed8..995ce84 100644 --- a/MineverseChat/mineverse/Aust1n46/chat/api/events/ChatMessageEvent.java +++ b/MineverseChat/mineverse/Aust1n46/chat/api/events/ChatMessageEvent.java @@ -4,6 +4,8 @@ import org.bukkit.event.Event; import org.bukkit.event.HandlerList; import mineverse.Aust1n46.chat.ChatMessage; +import mineverse.Aust1n46.chat.api.MineverseChatPlayer; +import mineverse.Aust1n46.chat.channel.ChatChannel; /** * Event called when a message has been sent to a channel. @@ -12,13 +14,31 @@ import mineverse.Aust1n46.chat.ChatMessage; */ public class ChatMessageEvent extends Event { private static final HandlerList handlers = new HandlerList(); + private final MineverseChatPlayer mcp; + private final ChatChannel channel; + private final boolean bungee; private final ChatMessage chatMessage; private final String json; - public ChatMessageEvent(ChatMessage chatMessage, String json) { + public ChatMessageEvent(MineverseChatPlayer mcp, ChatChannel channel, boolean bungee, ChatMessage chatMessage, String json) { + this.mcp = mcp; + this.channel = channel; + this.bungee = bungee; this.chatMessage = chatMessage; this.json = json; } + + public MineverseChatPlayer getMineverseChatPlayer() { + return mcp; + } + + public ChatChannel getChannel() { + return channel; + } + + public boolean isBungee() { + return bungee; + } public ChatMessage getChatMessage() { return this.chatMessage; diff --git a/MineverseChat/mineverse/Aust1n46/chat/command/chat/Removemessage.java b/MineverseChat/mineverse/Aust1n46/chat/command/chat/Removemessage.java index 2dc8e6a..270edd8 100644 --- a/MineverseChat/mineverse/Aust1n46/chat/command/chat/Removemessage.java +++ b/MineverseChat/mineverse/Aust1n46/chat/command/chat/Removemessage.java @@ -181,7 +181,8 @@ public class Removemessage extends MineverseCommand { public WrappedChatComponent getMessageDeletedChatComponentPlayer() { if(this.messageDeletedComponentPlayer == null) { - this.messageDeletedComponentPlayer = WrappedChatComponent.fromJson("{\"text\":\"\",\"extra\":[{\"text\":\"\",\"color\":\"red\",\"italic\":\"true\",\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"" + Format.FormatStringAll(plugin.getConfig().getString("messageremoverpermissions")) + "\"}]}}}]}"); + //this.messageDeletedComponentPlayer = WrappedChatComponent.fromJson("{\"text\":\"\",\"extra\":[{\"text\":\"\",\"color\":\"red\",\"italic\":\"true\",\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"" + Format.FormatStringAll(plugin.getConfig().getString("messageremoverpermissions")) + "\"}]}}}]}"); + this.messageDeletedComponentPlayer = WrappedChatComponent.fromJson("{\"text\":\"\",\"extra\":[{\"text\":\"" + Format.FormatStringAll(plugin.getConfig().getString("messageremovertext")) + "\",\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"" + Format.FormatStringAll(plugin.getConfig().getString("messageremoverpermissions")) + "\"}]}}}]}"); } return this.messageDeletedComponentPlayer; } @@ -191,6 +192,6 @@ public class Removemessage extends MineverseCommand { if(message.getMessage().contains(ChatColor.stripColor(Format.FormatStringAll(plugin.getConfig().getString("guiicon"))))) { oMessage = oMessage.substring(0, oMessage.length() - ChatColor.stripColor(Format.FormatStringAll(plugin.getConfig().getString("guiicon"))).length() - 3) + "\"}]"; } - return WrappedChatComponent.fromJson(Format.FormatStringAll("{\"text\":\"\",\"extra\":[{\"text\":\"&c&o\",\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"&7Message: \"," + oMessage + "}}}]}")); + return WrappedChatComponent.fromJson(Format.FormatStringAll("{\"text\":\"\",\"extra\":[{\"text\":\"" + Format.FormatStringAll(plugin.getConfig().getString("messageremovertext")) + "\",\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"&7Message: \"," + oMessage + "}}}]}")); } } \ No newline at end of file diff --git a/MineverseChat/mineverse/Aust1n46/chat/listeners/ChatListener.java b/MineverseChat/mineverse/Aust1n46/chat/listeners/ChatListener.java index 48a502a..92de1ba 100644 --- a/MineverseChat/mineverse/Aust1n46/chat/listeners/ChatListener.java +++ b/MineverseChat/mineverse/Aust1n46/chat/listeners/ChatListener.java @@ -689,7 +689,7 @@ public class ChatListener implements Listener { MineverseChat.lastChatMessage = new ChatMessage(mcp.getPlayer().getName(), message, message.hashCode(), format, chat, eventChannel.getName()); MineverseChat.lastJson = Format.convertToJson(MineverseChat.lastChatMessage); - ChatMessageEvent chatMessageEvent = new ChatMessageEvent(MineverseChat.lastChatMessage, MineverseChat.lastJson); + ChatMessageEvent chatMessageEvent = new ChatMessageEvent(mcp, eventChannel, bungee, MineverseChat.lastChatMessage, MineverseChat.lastJson); Bukkit.getServer().getPluginManager().callEvent(chatMessageEvent); if(irc && plugin.irc) { @@ -749,6 +749,7 @@ public class ChatListener implements Listener { catch(Exception e) { e.printStackTrace(); } + } } catch(IllegalFormatException ex) { diff --git a/MineverseChat/plugin.yml b/MineverseChat/plugin.yml index 4cfade9..36c94ea 100644 --- a/MineverseChat/plugin.yml +++ b/MineverseChat/plugin.yml @@ -1,5 +1,5 @@ name: VentureChat -version: 2.14.0 +version: 2.14.2 main: mineverse.Aust1n46.chat.MineverseChat depend: [Vault, ProtocolLib, PlaceholderAPI] softdepend: [Towny, Factions, Heroes]