summaryrefslogtreecommitdiffstats
path: root/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java
diff options
context:
space:
mode:
Diffstat (limited to 'EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java')
-rw-r--r--EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java39
1 files changed, 14 insertions, 25 deletions
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java
index 21a71f046..3035a75f0 100644
--- a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java
+++ b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java
@@ -1,10 +1,12 @@
package com.earth2me.essentials.chat;
import static com.earth2me.essentials.I18n._;
-import com.earth2me.essentials.IEssentials;
+import com.earth2me.essentials.api.IEssentials;
+import com.earth2me.essentials.chat.listenerlevel.EssentialsChatPlayerListenerHighest;
+import com.earth2me.essentials.chat.listenerlevel.EssentialsChatPlayerListenerLowest;
+import com.earth2me.essentials.chat.listenerlevel.EssentialsChatPlayerListenerNormal;
import java.util.HashMap;
import java.util.Map;
-import java.util.concurrent.ConcurrentSkipListMap;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.bukkit.event.Event.Priority;
@@ -17,7 +19,6 @@ import org.bukkit.plugin.java.JavaPlugin;
public class EssentialsChat extends JavaPlugin
{
private static final Logger LOGGER = Logger.getLogger("Minecraft");
- private transient Map<String, IEssentialsChatListener> chatListener;
@Override
public void onEnable()
@@ -34,35 +35,23 @@ public class EssentialsChat extends JavaPlugin
return;
}
- chatListener = new ConcurrentSkipListMap<String, IEssentialsChatListener>();
- final Map<PlayerChatEvent, ChatStore> chatStore = new HashMap<PlayerChatEvent, ChatStore>();
+ final Map<PlayerChatEvent, String> charges = new HashMap<PlayerChatEvent, String>();
- final EssentialsChatPlayerListenerLowest playerListenerLowest = new EssentialsChatPlayerListenerLowest(getServer(), ess, chatListener, chatStore);
- final EssentialsChatPlayerListenerNormal playerListenerNormal = new EssentialsChatPlayerListenerNormal(getServer(), ess, chatListener, chatStore);
- final EssentialsChatPlayerListenerHighest playerListenerHighest = new EssentialsChatPlayerListenerHighest(getServer(), ess, chatListener, chatStore);
- pluginManager.registerEvents(playerListenerLowest, this);
- pluginManager.registerEvents(playerListenerNormal, this);
- pluginManager.registerEvents(playerListenerHighest, this);
+ final EssentialsChatPlayerListenerLowest playerListenerLowest = new EssentialsChatPlayerListenerLowest(getServer(), ess);
+ final EssentialsChatPlayerListenerNormal playerListenerNormal = new EssentialsChatPlayerListenerNormal(getServer(), ess, charges);
+ final EssentialsChatPlayerListenerHighest playerListenerHighest = new EssentialsChatPlayerListenerHighest(getServer(), ess, charges);
+ final EssentialsLocalChatEventListener localChatListener = new EssentialsLocalChatEventListener(getServer(), ess);
+ pluginManager.registerEvent(Type.PLAYER_CHAT, playerListenerLowest, Priority.Lowest, this);
+ pluginManager.registerEvent(Type.PLAYER_CHAT, playerListenerNormal, Priority.Normal, this);
+ pluginManager.registerEvent(Type.PLAYER_CHAT, playerListenerHighest, Priority.Highest, this);
+ pluginManager.registerEvent(Type.CUSTOM_EVENT, localChatListener, Priority.Highest, this);
+ LOGGER.info(_("loadinfo", this.getDescription().getName(), this.getDescription().getVersion(), "essentials team"));
}
@Override
public void onDisable()
{
- if (chatListener != null)
- {
- chatListener.clear();
- }
- }
-
- public void addEssentialsChatListener(final String plugin, final IEssentialsChatListener listener)
- {
- chatListener.put(plugin, listener);
- }
-
- public IEssentialsChatListener removeEssentialsChatListener(final String plugin)
- {
- return chatListener.remove(plugin);
}
}