From 0e6a5240db2134147b5f13cba7cc4cf99809ba6f Mon Sep 17 00:00:00 2001 From: KHobbits Date: Sun, 30 Mar 2014 15:50:32 +0100 Subject: Add chat configurables. --- .../src/com/earth2me/essentials/ISettings.java | 4 +++ .../src/com/earth2me/essentials/Settings.java | 30 ++++++++++++++++++++++ .../earth2me/essentials/chat/EssentialsChat.java | 1 - .../essentials/chat/EssentialsChatPlayer.java | 15 ++++++----- 4 files changed, 43 insertions(+), 7 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/ISettings.java b/Essentials/src/com/earth2me/essentials/ISettings.java index b48cf7d91..a3bc8e290 100644 --- a/Essentials/src/com/earth2me/essentials/ISettings.java +++ b/Essentials/src/com/earth2me/essentials/ISettings.java @@ -29,6 +29,10 @@ public interface ISettings extends IConf String getChatFormat(String group); int getChatRadius(); + + char getChatShout(); + + char getChatQuestion(); BigDecimal getCommandCost(IEssentialsCommand cmd); diff --git a/Essentials/src/com/earth2me/essentials/Settings.java b/Essentials/src/com/earth2me/essentials/Settings.java index 0bc4dba7f..1fd501eb3 100644 --- a/Essentials/src/com/earth2me/essentials/Settings.java +++ b/Essentials/src/com/earth2me/essentials/Settings.java @@ -94,6 +94,34 @@ public class Settings implements net.ess3.api.ISettings { return chatRadius; } + + // #easteregg + private char chatShout = '!'; + + private char _getChatShout() + { + return config.getString("chat.shout", "!").charAt(0); + } + + @Override + public char getChatShout() + { + return chatShout; + } + + // #easteregg + private char chatQuestion = '?'; + + private char _getChatQuestion() + { + return config.getString("chat.question", "?").charAt(0); + } + + @Override + public char getChatQuestion() + { + return chatQuestion; + } private boolean teleportSafety; @@ -524,6 +552,8 @@ public class Settings implements net.ess3.api.ISettings disablePrefix = _disablePrefix(); disableSuffix = _disableSuffix(); chatRadius = _getChatRadius(); + chatShout = _getChatShout(); + chatQuestion = _getChatQuestion(); commandCosts = _getCommandCosts(); socialSpyCommands = _getSocialSpyCommands(); warnOnBuildDisallow = _warnOnBuildDisallow(); diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java index 3ce515f3b..d8b40d36c 100644 --- a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java +++ b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java @@ -33,7 +33,6 @@ public class EssentialsChat extends JavaPlugin final Map chatStore = Collections.synchronizedMap(new HashMap()); - final EssentialsChatPlayerListenerLowest playerListenerLowest = new EssentialsChatPlayerListenerLowest(getServer(), ess, chatStore); final EssentialsChatPlayerListenerNormal playerListenerNormal = new EssentialsChatPlayerListenerNormal(getServer(), ess, chatStore); final EssentialsChatPlayerListenerHighest playerListenerHighest = new EssentialsChatPlayerListenerHighest(getServer(), ess, chatStore); diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java index 6c97d91ed..8b8737e14 100644 --- a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java +++ b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java @@ -47,15 +47,18 @@ public abstract class EssentialsChatPlayer implements Listener //Ignore empty chat events generated by plugins return ""; } - switch (message.charAt(0)) + + final char prefix = message.charAt(0); + if (prefix == ess.getSettings().getChatShout()) { - case '!': return "shout"; - case '?': + } + else if (prefix == ess.getSettings().getChatQuestion()) + { return "question"; - //case '@': - //return "admin"; - default: + } + else + { return ""; } } -- cgit v1.2.3