summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2014-03-30 15:50:32 +0100
committerKHobbits <rob@khobbits.co.uk>2014-03-30 15:50:32 +0100
commit0e6a5240db2134147b5f13cba7cc4cf99809ba6f (patch)
tree78b0ba48d7ce8cc90f8e7a2097b1fe9849d8a0b2
parentf272a7ecd61e5870ce4a86e5101592ff16a59ea9 (diff)
downloadEssentials-0e6a5240db2134147b5f13cba7cc4cf99809ba6f.tar
Essentials-0e6a5240db2134147b5f13cba7cc4cf99809ba6f.tar.gz
Essentials-0e6a5240db2134147b5f13cba7cc4cf99809ba6f.tar.lz
Essentials-0e6a5240db2134147b5f13cba7cc4cf99809ba6f.tar.xz
Essentials-0e6a5240db2134147b5f13cba7cc4cf99809ba6f.zip
Add chat configurables.
-rw-r--r--Essentials/src/com/earth2me/essentials/ISettings.java4
-rw-r--r--Essentials/src/com/earth2me/essentials/Settings.java30
-rw-r--r--EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java1
-rw-r--r--EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java15
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<AsyncPlayerChatEvent, ChatStore> chatStore = Collections.synchronizedMap(new HashMap<AsyncPlayerChatEvent, ChatStore>());
-
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 "";
}
}