summaryrefslogtreecommitdiffstats
path: root/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2011-12-09 02:48:39 +0100
committersnowleo <schneeleo@gmail.com>2011-12-09 02:48:57 +0100
commit543ed2af1ed35a9e6446a2ec2fb5c26ff5aca97c (patch)
treee501a4fe97f6a68eaddb570a544e116056129e31 /EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java
parent4df8de54af8e1483e594807c9568505b47a97396 (diff)
downloadEssentials-543ed2af1ed35a9e6446a2ec2fb5c26ff5aca97c.tar
Essentials-543ed2af1ed35a9e6446a2ec2fb5c26ff5aca97c.tar.gz
Essentials-543ed2af1ed35a9e6446a2ec2fb5c26ff5aca97c.tar.lz
Essentials-543ed2af1ed35a9e6446a2ec2fb5c26ff5aca97c.tar.xz
Essentials-543ed2af1ed35a9e6446a2ec2fb5c26ff5aca97c.zip
Fix broken charge for shout and question
Diffstat (limited to 'EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java')
-rw-r--r--EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java25
1 files changed, 14 insertions, 11 deletions
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java
index 17a219acd..22989d4f9 100644
--- a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java
+++ b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java
@@ -10,14 +10,25 @@ import org.bukkit.event.player.PlayerChatEvent;
public class EssentialsChatPlayerListenerHighest extends EssentialsChatPlayer
{
- public EssentialsChatPlayerListenerHighest(Server server, IEssentials ess, Map<String, IEssentialsChatListener> listeners)
+ private final transient Map<PlayerChatEvent, String> charges;
+
+ public EssentialsChatPlayerListenerHighest(final Server server,
+ final IEssentials ess,
+ final Map<String, IEssentialsChatListener> listeners,
+ final Map<PlayerChatEvent, String> charges)
{
super(server, ess, listeners);
+ this.charges = charges;
}
@Override
public void onPlayerChat(final PlayerChatEvent event)
{
+ String charge = charges.remove(event);
+ if (charge == null)
+ {
+ charge = "chat";
+ }
if (isAborted(event))
{
return;
@@ -27,22 +38,14 @@ public class EssentialsChatPlayerListenerHighest extends EssentialsChatPlayer
* This file should handle charging the user for the action before returning control back
*/
final User user = ess.getUser(event.getPlayer());
- final String chatType = getChatType(event.getMessage());
- final StringBuilder command = new StringBuilder();
- command.append("chat");
-
- if (chatType.length() > 0)
- {
- command.append("-").append(chatType);
- }
try
{
- charge(user, command.toString());
+ charge(user, charge);
}
catch (ChargeException e)
{
- ess.showError(user, e, command.toString());
+ ess.showError(user, e, charge);
event.setCancelled(true);
return;
}