summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore4
-rw-r--r--Essentials/nbproject/project.properties4
-rw-r--r--Essentials/src/com/earth2me/essentials/Essentials.java51
-rw-r--r--Essentials/src/com/earth2me/essentials/Util.java15
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandme.java2
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandmsg.java4
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandr.java4
-rw-r--r--Essentials/src/com/earth2me/essentials/craftbukkit/DummyOfflinePlayer.java7
-rw-r--r--Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java27
-rw-r--r--Essentials/src/com/earth2me/essentials/craftbukkit/ItemDupeFix.java25
-rw-r--r--Essentials/src/com/earth2me/essentials/craftbukkit/SetBed.java25
-rw-r--r--Essentials/src/com/earth2me/essentials/listener/EssentialsBlockListener.java8
-rw-r--r--Essentials/src/com/earth2me/essentials/listener/EssentialsPlayerListener.java36
-rw-r--r--Essentials/src/com/earth2me/essentials/listener/EssentialsPluginListener.java18
-rw-r--r--Essentials/src/com/earth2me/essentials/listener/TNTExplodeListener.java8
-rw-r--r--Essentials/src/com/earth2me/essentials/register/payment/methods/VaultEco.java15
-rw-r--r--Essentials/src/messages.properties4
-rw-r--r--Essentials/src/messages_da.properties3
-rw-r--r--Essentials/src/messages_de.properties4
-rw-r--r--Essentials/src/messages_en.properties9
-rw-r--r--Essentials/src/messages_es.properties3
-rw-r--r--Essentials/src/messages_fr.properties4
-rw-r--r--Essentials/src/messages_nl.properties3
-rw-r--r--Essentials/test/com/earth2me/essentials/FakeServer.java25
-rw-r--r--EssentialsChat/src/com/earth2me/essentials/chat/ChatStore.java51
-rw-r--r--EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIP.java13
-rw-r--r--EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java8
-rw-r--r--EssentialsGroupBridge/.classpath4
-rw-r--r--EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/OverrideListener.java25
-rw-r--r--EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/Permissions.java21
-rw-r--r--EssentialsGroupManager/src/Changelog.txt7
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/GlobalGroups.java8
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java6
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/Tasks/BukkitPermsUpdateTask.java2
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java10
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMGroupEvent.java13
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMSystemEvent.java15
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMUserEvent.java13
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMWorldListener.java11
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java132
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java123
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/PermissionsReaderInterface.java3
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyBlockListener.java36
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyEntityListener.java22
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyListener.java58
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyPlayerListener.java16
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java2
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtect.java35
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java27
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java17
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java8
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java12
-rw-r--r--EssentialsSigns/src/com/earth2me/essentials/signs/EssentialsSignsPlugin.java7
-rw-r--r--EssentialsSigns/src/com/earth2me/essentials/signs/SignBlockListener.java19
-rw-r--r--EssentialsSigns/src/com/earth2me/essentials/signs/SignEntityListener.java12
-rw-r--r--EssentialsSigns/src/com/earth2me/essentials/signs/SignPlayerListener.java12
-rw-r--r--EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawn.java27
-rw-r--r--EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java6
-rw-r--r--EssentialsSpawn/src/com/earth2me/essentials/spawn/SpawnStorage.java7
-rw-r--r--EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPP.java8
-rw-r--r--EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java12
-rw-r--r--lib/bukkit.jarbin4412119 -> 4707726 bytes
-rw-r--r--lib/craftbukkit.jarbin10393769 -> 10707001 bytes
-rw-r--r--lib/lombok-0.10.8.jar (renamed from lib/lombok-0.10.1.jar)bin1668835 -> 1733245 bytes
64 files changed, 654 insertions, 462 deletions
diff --git a/.gitignore b/.gitignore
index 8d1266938..21875b641 100644
--- a/.gitignore
+++ b/.gitignore
@@ -39,4 +39,6 @@
/.idea
*.iml
/EssentialsSigns/nbproject/private/
-/Essentials2Compat/nbproject/private/ \ No newline at end of file
+/Essentials2Compat/nbproject/private/
+/Essentials2Compat/dist/
+/Essentials2Compat/build/ \ No newline at end of file
diff --git a/Essentials/nbproject/project.properties b/Essentials/nbproject/project.properties
index b6b6c3142..d9a76ba1e 100644
--- a/Essentials/nbproject/project.properties
+++ b/Essentials/nbproject/project.properties
@@ -71,7 +71,7 @@ file.reference.craftbukkit.jar=../lib/craftbukkit.jar
file.reference.iCo4.jar=../lib/iCo4.jar
file.reference.iCo5.jar=../lib/iCo5.jar
file.reference.iCo6.jar=../lib/iCo6.jar
-file.reference.lombok-0.10.1.jar=../lib/lombok-0.10.1.jar
+file.reference.lombok.jar=../lib/lombok-0.10.8.jar
file.reference.MultiCurrency.jar=../lib/MultiCurrency.jar
file.reference.Permissions3.jar=../lib/Permissions3.jar
file.reference.PermissionsBukkit-1.2.jar=../lib/PermissionsBukkit-1.2.jar
@@ -91,7 +91,7 @@ javac.classpath=\
${file.reference.PermissionsEx.jar}:\
${file.reference.bPermissions.jar}:\
${file.reference.PermissionsBukkit-1.2.jar}:\
- ${file.reference.lombok-0.10.1.jar}:\
+ ${file.reference.lombok.jar}:\
${reference.EssentialsGroupManager.jar}:\
${file.reference.bukkit.jar}:\
${file.reference.craftbukkit.jar}:\
diff --git a/Essentials/src/com/earth2me/essentials/Essentials.java b/Essentials/src/com/earth2me/essentials/Essentials.java
index 400ef4f81..7a331c3d0 100644
--- a/Essentials/src/com/earth2me/essentials/Essentials.java
+++ b/Essentials/src/com/earth2me/essentials/Essentials.java
@@ -20,7 +20,6 @@ package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.*;
import com.earth2me.essentials.craftbukkit.BetterLocation;
-import com.earth2me.essentials.craftbukkit.ItemDupeFix;
import com.earth2me.essentials.listener.*;
import com.earth2me.essentials.perm.PermissionsHandler;
import com.earth2me.essentials.register.payment.Methods;
@@ -41,10 +40,10 @@ import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
-import org.bukkit.event.Event.Priority;
-import org.bukkit.event.Event.Type;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
-import org.bukkit.event.player.PlayerListener;
import org.bukkit.plugin.InvalidDescriptionException;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginDescriptionFile;
@@ -55,7 +54,7 @@ import org.yaml.snakeyaml.error.YAMLException;
public class Essentials extends JavaPlugin implements IEssentials
{
- public static final int BUKKIT_VERSION = 1713;
+ public static final int BUKKIT_VERSION = 1791;
private static final Logger LOGGER = Logger.getLogger("Minecraft");
private transient ISettings settings;
private final transient TNTExplodeListener tntListener = new TNTExplodeListener(this);
@@ -183,14 +182,14 @@ public class Essentials extends JavaPlugin implements IEssentials
LOGGER.log(Level.SEVERE, _("essentialsHelp1"));
}
LOGGER.log(Level.SEVERE, exception.toString());
- pm.registerEvent(Type.PLAYER_JOIN, new PlayerListener()
+ pm.registerEvents(new Listener()
{
- @Override
- public void onPlayerJoin(PlayerJoinEvent event)
+ @EventHandler(priority = EventPriority.LOW)
+ public void onPlayerJoin(final PlayerJoinEvent event)
{
event.getPlayer().sendMessage("Essentials failed to load, read the log file.");
}
- }, Priority.Low, this);
+ }, this);
for (Player player : getServer().getOnlinePlayers())
{
player.sendMessage("Essentials failed to load, read the log file.");
@@ -201,50 +200,28 @@ public class Essentials extends JavaPlugin implements IEssentials
backup = new Backup(this);
permissionsHandler = new PermissionsHandler(this);
final EssentialsPluginListener serverListener = new EssentialsPluginListener(this);
- pm.registerEvent(Type.PLUGIN_ENABLE, serverListener, Priority.Low, this);
- pm.registerEvent(Type.PLUGIN_DISABLE, serverListener, Priority.Low, this);
+ pm.registerEvents(serverListener, this);
reloadList.add(serverListener);
final EssentialsPlayerListener playerListener = new EssentialsPlayerListener(this);
- pm.registerEvent(Type.PLAYER_JOIN, playerListener, Priority.Monitor, this);
- pm.registerEvent(Type.PLAYER_QUIT, playerListener, Priority.Monitor, this);
- pm.registerEvent(Type.PLAYER_CHAT, playerListener, Priority.Lowest, this);
- pm.registerEvent(Type.PLAYER_COMMAND_PREPROCESS, playerListener, Priority.Lowest, this);
- pm.registerEvent(Type.PLAYER_MOVE, playerListener, Priority.High, this);
- pm.registerEvent(Type.PLAYER_LOGIN, playerListener, Priority.High, this);
- pm.registerEvent(Type.PLAYER_TELEPORT, playerListener, Priority.High, this);
- pm.registerEvent(Type.PLAYER_EGG_THROW, playerListener, Priority.High, this);
- pm.registerEvent(Type.PLAYER_BUCKET_EMPTY, playerListener, Priority.High, this);
- pm.registerEvent(Type.PLAYER_ANIMATION, playerListener, Priority.High, this);
- pm.registerEvent(Type.PLAYER_CHANGED_WORLD, playerListener, Priority.Normal, this);
- pm.registerEvent(Type.PLAYER_INTERACT, playerListener, Priority.Monitor, this);
- pm.registerEvent(Type.PLAYER_PICKUP_ITEM, playerListener, Priority.Low, this);
- pm.registerEvent(Type.PLAYER_TELEPORT, new ItemDupeFix(), Priority.Monitor, this);
+ pm.registerEvents(playerListener, this);
final EssentialsBlockListener blockListener = new EssentialsBlockListener(this);
- pm.registerEvent(Type.BLOCK_PLACE, blockListener, Priority.Lowest, this);
+ pm.registerEvents(blockListener, this);
final EssentialsEntityListener entityListener = new EssentialsEntityListener(this);
- pm.registerEvent(Type.ENTITY_DAMAGE, entityListener, Priority.Lowest, this);
- pm.registerEvent(Type.ENTITY_COMBUST, entityListener, Priority.Lowest, this);
- pm.registerEvent(Type.ENTITY_DEATH, entityListener, Priority.Lowest, this);
- pm.registerEvent(Type.ENTITY_REGAIN_HEALTH, entityListener, Priority.Lowest, this);
- pm.registerEvent(Type.FOOD_LEVEL_CHANGE, entityListener, Priority.Lowest, this);
+ pm.registerEvents(entityListener, this);
jails = new Jails(this);
reloadList.add(jails);
- pm.registerEvent(Type.ENTITY_EXPLODE, tntListener, Priority.High, this);
-
- pm.registerEvent(Type.WORLD_LOAD, BetterLocation.getListener(), Priority.Monitor, this);
- pm.registerEvent(Type.WORLD_UNLOAD, BetterLocation.getListener(), Priority.Monitor, this);
- getServer().getScheduler().scheduleAsyncRepeatingTask(this, BetterLocation.getListener(), 200, 200);
+ pm.registerEvents(tntListener, this);
+
final EssentialsTimer timer = new EssentialsTimer(this);
getServer().getScheduler().scheduleSyncRepeatingTask(this, timer, 1, 100);
Economy.setEss(this);
execTimer.mark("RegListeners");
- LOGGER.info(_("loadinfo", this.getDescription().getName(), this.getDescription().getVersion(), Util.joinList(this.getDescription().getAuthors())));
final String timeroutput = execTimer.end();
if (getSettings().isDebug())
{
diff --git a/Essentials/src/com/earth2me/essentials/Util.java b/Essentials/src/com/earth2me/essentials/Util.java
index 6f2065b46..6ca05c2a0 100644
--- a/Essentials/src/com/earth2me/essentials/Util.java
+++ b/Essentials/src/com/earth2me/essentials/Util.java
@@ -620,7 +620,8 @@ public final class Util
perm.recalculatePermissibles();
return perm;
}
- private static transient final Pattern COLOR_PATTERN = Pattern.compile("\u00A7+[0-9A-FKa-fk]");
+ private static transient final Pattern VANILLA_COLOR_PATTERN = Pattern.compile("\u00A7+[0-9A-FKa-fk]");
+ private static transient final Pattern EASY_COLOR_PATTERN = Pattern.compile("&([0-9a-fk])");
public static String stripColor(final String input)
{
@@ -629,6 +630,16 @@ public final class Util
return null;
}
- return COLOR_PATTERN.matcher(input).replaceAll("");
+ return VANILLA_COLOR_PATTERN.matcher(input).replaceAll("");
+ }
+
+ public static String replaceColor(final String input)
+ {
+ if (input == null)
+ {
+ return null;
+ }
+
+ return EASY_COLOR_PATTERN.matcher(input).replaceAll("\u00a7$1");
}
}
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandme.java b/Essentials/src/com/earth2me/essentials/commands/Commandme.java
index 252244cba..e657b833d 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandme.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandme.java
@@ -23,7 +23,7 @@ public class Commandme extends EssentialsCommand
String message = getFinalArg(args, 0);
if (user.isAuthorized("essentials.chat.color"))
{
- message = message.replaceAll("&([0-9a-fk])", "§$1");
+ message = Util.replaceColor(message);
}
else {
message = Util.stripColor(message);
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandmsg.java b/Essentials/src/com/earth2me/essentials/commands/Commandmsg.java
index a61d6c49c..4c0b0a76c 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandmsg.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandmsg.java
@@ -33,7 +33,7 @@ public class Commandmsg extends EssentialsCommand
}
if (user.isAuthorized("essentials.msg.color"))
{
- message = message.replaceAll("&([0-9a-fk])", "§$1");
+ message = Util.replaceColor(message);
}
else
{
@@ -42,7 +42,7 @@ public class Commandmsg extends EssentialsCommand
}
else
{
- message = message.replaceAll("&([0-9a-fk])", "§$1");
+ message = Util.replaceColor(message);
}
final String translatedMe = _("me");
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandr.java b/Essentials/src/com/earth2me/essentials/commands/Commandr.java
index 48a723513..3b20eb5de 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandr.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandr.java
@@ -28,7 +28,7 @@ public class Commandr extends EssentialsCommand
IUser user = ess.getUser((Player)sender);
if (user.isAuthorized("essentials.msg.color"))
{
- message = message.replaceAll("&([0-9a-fk])", "§$1");
+ message = Util.replaceColor(message);
}
else
{
@@ -39,7 +39,7 @@ public class Commandr extends EssentialsCommand
}
else
{
- message = message.replaceAll("&([0-9a-fk])", "§$1");
+ message = Util.replaceColor(message);
replyTo = Console.getConsoleReplyTo();
senderName = Console.NAME;
}
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/DummyOfflinePlayer.java b/Essentials/src/com/earth2me/essentials/craftbukkit/DummyOfflinePlayer.java
index 93efc8720..66adf7b6f 100644
--- a/Essentials/src/com/earth2me/essentials/craftbukkit/DummyOfflinePlayer.java
+++ b/Essentials/src/com/earth2me/essentials/craftbukkit/DummyOfflinePlayer.java
@@ -2,6 +2,7 @@ package com.earth2me.essentials.craftbukkit;
import java.util.Map;
import org.bukkit.Bukkit;
+import org.bukkit.Location;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
@@ -89,5 +90,11 @@ public class DummyOfflinePlayer implements OfflinePlayer
{
throw new UnsupportedOperationException("Not supported yet.");
}
+
+ @Override
+ public Location getBedSpawnLocation()
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
}
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java b/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java
index bd4d09111..e78e508f7 100644
--- a/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java
+++ b/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java
@@ -1,7 +1,9 @@
package com.earth2me.essentials.craftbukkit;
import java.io.File;
+import java.util.Collection;
import java.util.List;
+import java.util.Set;
import java.util.UUID;
import org.bukkit.*;
import org.bukkit.block.Biome;
@@ -10,6 +12,7 @@ import org.bukkit.entity.*;
import org.bukkit.generator.BlockPopulator;
import org.bukkit.generator.ChunkGenerator;
import org.bukkit.inventory.ItemStack;
+import org.bukkit.plugin.Plugin;
import org.bukkit.util.Vector;
@@ -521,4 +524,28 @@ public class FakeWorld implements World
{
throw new UnsupportedOperationException("Not supported yet.");
}
+
+ @Override
+ public <T extends Entity> Collection<T> getEntitiesByClass(Class<T>... types)
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public WorldType getWorldType()
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public void sendPluginMessage(Plugin plugin, String string, byte[] bytes)
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public Set<String> getListeningPluginChannels()
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
}
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/ItemDupeFix.java b/Essentials/src/com/earth2me/essentials/craftbukkit/ItemDupeFix.java
deleted file mode 100644
index 243049e0a..000000000
--- a/Essentials/src/com/earth2me/essentials/craftbukkit/ItemDupeFix.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.earth2me.essentials.craftbukkit;
-
-import net.minecraft.server.EntityPlayer;
-import org.bukkit.craftbukkit.entity.CraftPlayer;
-import org.bukkit.event.player.PlayerListener;
-import org.bukkit.event.player.PlayerTeleportEvent;
-
-
-public class ItemDupeFix extends PlayerListener
-{
- @Override
- public void onPlayerTeleport(final PlayerTeleportEvent event)
- {
- if (event.isCancelled())
- {
- return;
- }
- final CraftPlayer player = (CraftPlayer)event.getPlayer();
- final EntityPlayer entity = player.getHandle();
- if (entity.activeContainer != entity.defaultContainer)
- {
- entity.closeInventory();
- }
- }
-}
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/SetBed.java b/Essentials/src/com/earth2me/essentials/craftbukkit/SetBed.java
deleted file mode 100644
index 331d14139..000000000
--- a/Essentials/src/com/earth2me/essentials/craftbukkit/SetBed.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.earth2me.essentials.craftbukkit;
-
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import net.minecraft.server.ChunkCoordinates;
-import org.bukkit.block.Block;
-import org.bukkit.craftbukkit.entity.CraftPlayer;
-import org.bukkit.entity.Player;
-
-
-public class SetBed
-{
- public static void setBed(final Player player, final Block block)
- {
- try
- {
- final CraftPlayer cplayer = (CraftPlayer)player;
- cplayer.getHandle().a(new ChunkCoordinates(block.getX(), block.getY(), block.getZ()));
- }
- catch (Throwable ex)
- {
- Logger.getLogger("Minecraft").log(Level.SEVERE, null, ex);
- }
- }
-}
diff --git a/Essentials/src/com/earth2me/essentials/listener/EssentialsBlockListener.java b/Essentials/src/com/earth2me/essentials/listener/EssentialsBlockListener.java
index 760b9cb90..0b461eb91 100644
--- a/Essentials/src/com/earth2me/essentials/listener/EssentialsBlockListener.java
+++ b/Essentials/src/com/earth2me/essentials/listener/EssentialsBlockListener.java
@@ -4,12 +4,14 @@ import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IUser;
import org.bukkit.GameMode;
-import org.bukkit.event.block.BlockListener;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.inventory.ItemStack;
-public class EssentialsBlockListener extends BlockListener
+public class EssentialsBlockListener implements Listener
{
private final transient IEssentials ess;
@@ -19,7 +21,7 @@ public class EssentialsBlockListener extends BlockListener
this.ess = ess;
}
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onBlockPlace(final BlockPlaceEvent event)
{
if (event.isCancelled())
diff --git a/Essentials/src/com/earth2me/essentials/listener/EssentialsPlayerListener.java b/Essentials/src/com/earth2me/essentials/listener/EssentialsPlayerListener.java
index 6e5ff855a..5250fba52 100644
--- a/Essentials/src/com/earth2me/essentials/listener/EssentialsPlayerListener.java
+++ b/Essentials/src/com/earth2me/essentials/listener/EssentialsPlayerListener.java
@@ -5,7 +5,6 @@ import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.ISettings;
import com.earth2me.essentials.api.IUser;
-import com.earth2me.essentials.craftbukkit.SetBed;
import com.earth2me.essentials.textreader.IText;
import com.earth2me.essentials.textreader.KeywordReplacer;
import com.earth2me.essentials.textreader.TextInput;
@@ -23,6 +22,9 @@ import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Server;
import org.bukkit.entity.Player;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerLoginEvent.Result;
import org.bukkit.event.player.*;
@@ -30,7 +32,7 @@ import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
import org.bukkit.inventory.ItemStack;
-public class EssentialsPlayerListener extends PlayerListener
+public class EssentialsPlayerListener implements Listener
{
private static final Logger LOGGER = Logger.getLogger("Minecraft");
private final transient Server server;
@@ -43,7 +45,7 @@ public class EssentialsPlayerListener extends PlayerListener
this.server = parent.getServer();
}
- @Override
+ @EventHandler(priority = EventPriority.NORMAL)
public void onPlayerRespawn(final PlayerRespawnEvent event)
{
final IUser user = ess.getUser(event.getPlayer());
@@ -51,7 +53,7 @@ public class EssentialsPlayerListener extends PlayerListener
user.updateDisplayName();
}
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onPlayerChat(final PlayerChatEvent event)
{
@Cleanup
@@ -76,7 +78,7 @@ public class EssentialsPlayerListener extends PlayerListener
user.updateDisplayName();
}
- @Override
+ @EventHandler(priority = EventPriority.HIGH)
public void onPlayerMove(final PlayerMoveEvent event)
{
if (event.isCancelled())
@@ -115,7 +117,7 @@ public class EssentialsPlayerListener extends PlayerListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.MONITOR)
public void onPlayerQuit(final PlayerQuitEvent event)
{
@Cleanup
@@ -137,7 +139,7 @@ public class EssentialsPlayerListener extends PlayerListener
user.dispose();
}
- @Override
+ @EventHandler(priority = EventPriority.MONITOR)
public void onPlayerJoin(final PlayerJoinEvent event)
{
ess.getBackup().startTask();
@@ -193,7 +195,7 @@ public class EssentialsPlayerListener extends PlayerListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGH)
public void onPlayerLogin(final PlayerLoginEvent event)
{
if (event.getResult() != Result.ALLOWED && event.getResult() != Result.KICK_FULL && event.getResult() != Result.KICK_BANNED)
@@ -228,7 +230,7 @@ public class EssentialsPlayerListener extends PlayerListener
user.updateCompass();
}
- @Override
+ @EventHandler(priority = EventPriority.HIGH)
public void onPlayerTeleport(final PlayerTeleportEvent event)
{
if (event.isCancelled())
@@ -250,7 +252,7 @@ public class EssentialsPlayerListener extends PlayerListener
user.updateCompass();
}
- @Override
+ @EventHandler(priority = EventPriority.HIGH)
public void onPlayerEggThrow(final PlayerEggThrowEvent event)
{
@Cleanup
@@ -264,7 +266,7 @@ public class EssentialsPlayerListener extends PlayerListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGH)
public void onPlayerBucketEmpty(final PlayerBucketEmptyEvent event)
{
@Cleanup
@@ -284,7 +286,7 @@ public class EssentialsPlayerListener extends PlayerListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.NORMAL)
public void onPlayerAnimation(final PlayerAnimationEvent event)
{
final IUser user = ess.getUser(event.getPlayer());
@@ -342,7 +344,7 @@ public class EssentialsPlayerListener extends PlayerListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.MONITOR)
public void onPlayerCommandPreprocess(final PlayerCommandPreprocessEvent event)
{
if (event.isCancelled())
@@ -371,7 +373,7 @@ public class EssentialsPlayerListener extends PlayerListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.MONITOR)
public void onPlayerChangedWorld(final PlayerChangedWorldEvent event)
{
@Cleanup
@@ -397,7 +399,7 @@ public class EssentialsPlayerListener extends PlayerListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.MONITOR)
public void onPlayerInteract(final PlayerInteractEvent event)
{
if (event.isCancelled())
@@ -414,11 +416,11 @@ public class EssentialsPlayerListener extends PlayerListener
settings.acquireReadLock();
if (settings.getData().getCommands().getHome().isUpdateBedAtDaytime() && event.getClickedBlock().getType() == Material.BED_BLOCK)
{
- SetBed.setBed(event.getPlayer(), event.getClickedBlock());
+ event.getPlayer().setBedSpawnLocation(event.getClickedBlock().getLocation());
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onPlayerPickupItem(final PlayerPickupItemEvent event)
{
if (event.isCancelled())
diff --git a/Essentials/src/com/earth2me/essentials/listener/EssentialsPluginListener.java b/Essentials/src/com/earth2me/essentials/listener/EssentialsPluginListener.java
index 8e1f8f374..8d8879f4a 100644
--- a/Essentials/src/com/earth2me/essentials/listener/EssentialsPluginListener.java
+++ b/Essentials/src/com/earth2me/essentials/listener/EssentialsPluginListener.java
@@ -3,35 +3,35 @@ package com.earth2me.essentials.listener;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IReload;
import java.util.logging.Level;
-import java.util.logging.Logger;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.server.PluginDisableEvent;
import org.bukkit.event.server.PluginEnableEvent;
-import org.bukkit.event.server.ServerListener;
-public class EssentialsPluginListener extends ServerListener implements IReload
+public class EssentialsPluginListener implements Listener, IReload
{
private final transient IEssentials ess;
- private static final Logger LOGGER = Logger.getLogger("Minecraft");
-
+
public EssentialsPluginListener(final IEssentials ess)
{
super();
this.ess = ess;
}
- @Override
+ @EventHandler(priority = EventPriority.MONITOR)
public void onPluginEnable(final PluginEnableEvent event)
{
ess.getPermissionsHandler().checkPermissions();
ess.getCommandHandler().addPlugin(event.getPlugin());
if (!ess.getPaymentMethod().hasMethod() && ess.getPaymentMethod().setMethod(ess.getServer().getPluginManager()))
{
- LOGGER.log(Level.INFO, "[Essentials] Payment method found ({0} version: {1})", new Object[]{ess.getPaymentMethod().getMethod().getName(), ess.getPaymentMethod().getMethod().getVersion()});
+ ess.getLogger().log(Level.INFO, "Payment method found ({0} version: {1})", new Object[]{ess.getPaymentMethod().getMethod().getName(), ess.getPaymentMethod().getMethod().getVersion()});
}
}
- @Override
+ @EventHandler(priority = EventPriority.MONITOR)
public void onPluginDisable(final PluginDisableEvent event)
{
ess.getPermissionsHandler().checkPermissions();
@@ -40,7 +40,7 @@ public class EssentialsPluginListener extends ServerListener implements IReload
if (ess.getPaymentMethod() != null && ess.getPaymentMethod().hasMethod() && ess.getPaymentMethod().checkDisabled(event.getPlugin()))
{
ess.getPaymentMethod().reset();
- LOGGER.log(Level.INFO, "[Essentials] Payment method was disabled. No longer accepting payments.");
+ ess.getLogger().log(Level.INFO, "Payment method was disabled. No longer accepting payments.");
}
}
diff --git a/Essentials/src/com/earth2me/essentials/listener/TNTExplodeListener.java b/Essentials/src/com/earth2me/essentials/listener/TNTExplodeListener.java
index 1f0035d76..a16710617 100644
--- a/Essentials/src/com/earth2me/essentials/listener/TNTExplodeListener.java
+++ b/Essentials/src/com/earth2me/essentials/listener/TNTExplodeListener.java
@@ -4,11 +4,13 @@ import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.craftbukkit.FakeExplosion;
import java.util.concurrent.atomic.AtomicBoolean;
import org.bukkit.entity.LivingEntity;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityExplodeEvent;
-import org.bukkit.event.entity.EntityListener;
-public class TNTExplodeListener extends EntityListener implements Runnable
+public class TNTExplodeListener implements Listener, Runnable
{
private final transient IEssentials ess;
private transient AtomicBoolean enabled = new AtomicBoolean(false);
@@ -34,7 +36,7 @@ public class TNTExplodeListener extends EntityListener implements Runnable
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onEntityExplode(final EntityExplodeEvent event)
{
if (!enabled.get())
diff --git a/Essentials/src/com/earth2me/essentials/register/payment/methods/VaultEco.java b/Essentials/src/com/earth2me/essentials/register/payment/methods/VaultEco.java
index c7757f66b..84ce816cf 100644
--- a/Essentials/src/com/earth2me/essentials/register/payment/methods/VaultEco.java
+++ b/Essentials/src/com/earth2me/essentials/register/payment/methods/VaultEco.java
@@ -121,8 +121,19 @@ public class VaultEco implements Method
@Override
public boolean isCompatible(Plugin plugin)
{
- RegisteredServiceProvider<Economy> ecoPlugin = plugin.getServer().getServicesManager().getRegistration(net.milkbowl.vault.economy.Economy.class);
- return plugin instanceof Vault && ecoPlugin != null && !ecoPlugin.getProvider().getName().equals("Essentials Economy");
+ try
+ {
+ RegisteredServiceProvider<Economy> ecoPlugin = plugin.getServer().getServicesManager().getRegistration(net.milkbowl.vault.economy.Economy.class);
+ return plugin instanceof Vault && ecoPlugin != null && !ecoPlugin.getProvider().getName().equals("Essentials Economy");
+ }
+ catch (LinkageError e)
+ {
+ return false;
+ }
+ catch (Exception e)
+ {
+ return false;
+ }
}
@Override
diff --git a/Essentials/src/messages.properties b/Essentials/src/messages.properties
index 289e69fe6..1bf1ffca7 100644
--- a/Essentials/src/messages.properties
+++ b/Essentials/src/messages.properties
@@ -33,6 +33,8 @@ canTalkAgain=\u00a77You can talk again
cantFindGeoIpDB=Can''t find GeoIP database!
cantReadGeoIpDB=Failed to read GeoIP database!
cantSpawnItem=\u00a7cYou are not allowed to spawn the item {0}
+chatTypeLocal=[L]
+chatTypeSpy=[Spy]
commandFailed=Command {0} failed:
commandHelpFailedForPlugin=Error getting help for: {0}
commandNotLoaded=\u00a7cCommand {0} is improperly loaded.
@@ -169,7 +171,6 @@ listAmount = \u00a79There are \u00a7c{0}\u00a79 out of maximum \u00a7c{1}\u00a79
listAmountHidden = \u00a79There are \u00a7c{0}\u00a77/{1}\u00a79 out of maximum \u00a7c{2}\u00a79 players online.
listHiddenTag = \u00a77[HIDDEN]\u00a7f
loadWarpError=Failed to load warp {0}
-loadinfo=Loaded {0} build {1} by: {2}
localFormat=Local: <{0}> {1}
mailClear=\u00a7cTo mark your mail as read, type /mail clear
mailCleared=\u00a77Mail Cleared!
@@ -408,4 +409,3 @@ years=years
youAreHealed=\u00a77You have been healed.
youHaveNewMail=\u00a7cYou have {0} messages!\u00a7f Type \u00a77/mail read\u00a7f to view your mail.
-
diff --git a/Essentials/src/messages_da.properties b/Essentials/src/messages_da.properties
index a78db7a37..bef1683a7 100644
--- a/Essentials/src/messages_da.properties
+++ b/Essentials/src/messages_da.properties
@@ -33,6 +33,8 @@ canTalkAgain=\u00a77Du kan nu snakke igen.
cantFindGeoIpDB=Kan ikke finde GeoIP database!
cantReadGeoIpDB=Fejl ved afl\u00e6sning af GeoIP database!
cantSpawnItem=\u00a7cDu har ikke tilladelse til at skabe tingen.{0}
+chatTypeLocal=[L]
+chatTypeSpy=[Spy]
commandFailed=Kommandoen {0} fejlede:
commandHelpFailedForPlugin=Fejl ved hentning af hj\u00e6lp til: {0}
commandNotLoaded=\u00a7cKommando {0} er ikke indl\u00e6st korrekt.
@@ -169,7 +171,6 @@ listAmount = \u00a79Der er \u00a7c{0}\u00a79 ud af maksimum\u00a7c{1}\u00a79 spi
listAmountHidden = \u00a79Der er \u00a7c{0}\u00a77/{1}\u00a79 ud af maksimum \u00a7c{2}\u00a79 spillere online.
listHiddenTag = \u00a77[HIDDEN]\u00a7f
loadWarpError=Kunne ikke l\u00c3\u00a6se warp {0}
-loadinfo=Loadede {0} build {1} af {2}
localFormat=Local: <{0}> {1}
mailClear=\u00a7cFor at markere din flaskepost som l\u00e6st, skriv /mail clear
mailCleared=\u00a77Flaskepot ryddet!
diff --git a/Essentials/src/messages_de.properties b/Essentials/src/messages_de.properties
index 3825e8b9c..6431f6f94 100644
--- a/Essentials/src/messages_de.properties
+++ b/Essentials/src/messages_de.properties
@@ -33,6 +33,8 @@ canTalkAgain=\u00a77Du kannst wieder sprechen.
cantFindGeoIpDB=Kann GeoIP-Datenbank nicht finden!
cantReadGeoIpDB=Fehler beim Einlesen der GeoIP-Datenbank!
cantSpawnItem=\u00a7cDu darfst {0} nicht erzeugen.
+chatTypeLocal=[L]
+chatTypeSpy=[Spy]
commandFailed=Befehl {0} scheiterte:
commandHelpFailedForPlugin=Fehler beim Abrufen der Hilfe f\u00fcr: {0}
commandNotLoaded=\u00a7cBefehl {0} ist nicht richtig geladen.
@@ -169,7 +171,6 @@ listAmount = \u00a79Es sind \u00a7c{0}\u00a79 von maximal \u00a7c{1}\u00a79 Spie
listAmountHidden = \u00a79Es sind \u00a7c{0}\u00a77/{1}\u00a79 von maximal \u00a7c{2}\u00a79 Spielern online.
listHiddenTag = \u00a77[Versteckt]\u00a7f
loadWarpError=Fehler beim Laden von Warp-Punkt {0}
-loadinfo=Plugin {0} Version {1} geladen, erstellt von {2}, \u00fcbersetzt von snowleo
localFormat=Lokal: <{0}> {1}
mailClear=\u00a7cUm deine Nachrichten zu l\u00f6schen, schreibe /mail clear
mailCleared=\u00a77Nachrichten gel\u00f6scht!
@@ -407,4 +408,3 @@ year=Jahr
years=Jahre
youAreHealed=\u00a77Du wurdest geheilt.
youHaveNewMail=\u00a7cDu hast {0} Nachrichten!\u00a7f Schreibe \u00a77/mail read\u00a7f um deine Nachrichten anzuzeigen.
-
diff --git a/Essentials/src/messages_en.properties b/Essentials/src/messages_en.properties
index 289e69fe6..389d9c955 100644
--- a/Essentials/src/messages_en.properties
+++ b/Essentials/src/messages_en.properties
@@ -33,6 +33,8 @@ canTalkAgain=\u00a77You can talk again
cantFindGeoIpDB=Can''t find GeoIP database!
cantReadGeoIpDB=Failed to read GeoIP database!
cantSpawnItem=\u00a7cYou are not allowed to spawn the item {0}
+chatTypeLocal=[L]
+chatTypeSpy=[Spy]
commandFailed=Command {0} failed:
commandHelpFailedForPlugin=Error getting help for: {0}
commandNotLoaded=\u00a7cCommand {0} is improperly loaded.
@@ -169,7 +171,6 @@ listAmount = \u00a79There are \u00a7c{0}\u00a79 out of maximum \u00a7c{1}\u00a79
listAmountHidden = \u00a79There are \u00a7c{0}\u00a77/{1}\u00a79 out of maximum \u00a7c{2}\u00a79 players online.
listHiddenTag = \u00a77[HIDDEN]\u00a7f
loadWarpError=Failed to load warp {0}
-loadinfo=Loaded {0} build {1} by: {2}
localFormat=Local: <{0}> {1}
mailClear=\u00a7cTo mark your mail as read, type /mail clear
mailCleared=\u00a77Mail Cleared!
@@ -292,7 +293,11 @@ requestDenied=\u00a77Teleport request denied.
requestDeniedFrom=\u00a77{0} denied your teleport request.
requestSent=\u00a77Request sent to {0}\u00a77.
requestTimedOut=\u00a7cTeleport request has timed out
+<<<<<<< HEAD
requiredBukkit= * ! * You need atleast build {0} of CraftBukkit, download it from http://ci.bukkit.org.
+=======
+requiredBukkit=* ! * You need atleast build {0} of CraftBukkit, download it from http://ci.bukkit.org.
+>>>>>>> refs/heads/master
returnPlayerToJailError=Error occurred when trying to return player to jail.
second=second
seconds=seconds
@@ -407,5 +412,3 @@ year=year
years=years
youAreHealed=\u00a77You have been healed.
youHaveNewMail=\u00a7cYou have {0} messages!\u00a7f Type \u00a77/mail read\u00a7f to view your mail.
-
-
diff --git a/Essentials/src/messages_es.properties b/Essentials/src/messages_es.properties
index a118d000e..1f58b9840 100644
--- a/Essentials/src/messages_es.properties
+++ b/Essentials/src/messages_es.properties
@@ -33,6 +33,8 @@ canTalkAgain=\u00a77Ya puedes hablar de nuevo
cantFindGeoIpDB=No se puede encontrar la bases de datos del Geo IP
cantReadGeoIpDB=Error al intentar leer la base de datos del Geo IP
cantSpawnItem=\u00a7cNo tienes acceso para producir este objeto {0}
+chatTypeLocal=[L]
+chatTypeSpy=[Spy]
commandFailed=Command {0} fallado:
commandHelpFailedForPlugin=Error obteniendo ayuda para: {0}
commandNotLoaded=\u00a7cCommand {0} esta cargado incorrectamente.
@@ -169,7 +171,6 @@ listAmount = \u00a79There are \u00a7c{0}\u00a79 out of maximum \u00a7c{1}\u00a79
listAmountHidden = \u00a79There are \u00a7c{0}\u00a77/{1}\u00a79 out of maximum \u00a7c{2}\u00a79 players online.
listHiddenTag = \u00a77[HIDDEN]\u00a7f
loadWarpError=Error al cargar el tenetransporte {0}
-loadinfo=Cargado {0}, construido {1} por: {2}
localFormat=Local: <{0}> {1}
mailClear=\u00a7cPara marcar tu email como leido, escribe /mail clear
mailCleared=\u00a77Email limpiado!
diff --git a/Essentials/src/messages_fr.properties b/Essentials/src/messages_fr.properties
index 22903b279..da56fedce 100644
--- a/Essentials/src/messages_fr.properties
+++ b/Essentials/src/messages_fr.properties
@@ -33,6 +33,8 @@ canTalkAgain=\u00a77Vous pouvez de nouveau parler.
cantFindGeoIpDB=N''arrive pas \u00e0 trouver la base de donn\u00e9es GeoIP!
cantReadGeoIpDB=Echec de la lecture de la base de donn\u00e9es GeoIP!
cantSpawnItem=\u00a7cVous n''avez pas le droit de faire appara\u00c3\u00aetre {0}
+chatTypeLocal=[L]
+chatTypeSpy=[Spy]
commandFailed=\u00c9chec de la commande {0} :
commandHelpFailedForPlugin=Erreur d''obtention d''aide pour : {0}
commandNotLoaded=\u00a7cLa commande {0} a \u00e9t\u00e9 mal charg\u00e9e.
@@ -169,7 +171,6 @@ listAmount = \u00a79Il y a \u00a7c{0}\u00a79 joueurs en ligne sur \u00a7c{1}\u00
listAmountHidden = \u00a79Il y a \u00a7c{0}\u00a77/{1}\u00a79 sur un maximum de \u00a7c{2}\u00a79 joueurs en ligne.
listHiddenTag = \u00a77[MASQU\u00c9]\u00a7f
loadWarpError=\u00c9chec du chargement du raccourci {0}
-loadinfo={0} version {1} par {2} a \u00e9t\u00e9 charg\u00e9
localFormat=Locale :<{0}> {1}
mailClear=\u00a7cPour marquer votre courrier en tant que lu, entrez /mail clear
mailCleared=\u00a77Courrier supprim\u00e9 !
@@ -407,4 +408,3 @@ year=ann\u00e9e
years=ann\u00e9es
youAreHealed=\u00a77Vous avez \u00e9t\u00e9 soign\u00e9.
youHaveNewMail=\u00a7cVous avez {0} messages ! \u00a7fEntrez \u00a77/mail read\u00a7f pour voir votre courrier.
-
diff --git a/Essentials/src/messages_nl.properties b/Essentials/src/messages_nl.properties
index 185c400b3..0bedee060 100644
--- a/Essentials/src/messages_nl.properties
+++ b/Essentials/src/messages_nl.properties
@@ -33,6 +33,8 @@ canTalkAgain=\u00a77Je kan weer praten.
cantFindGeoIpDB=De GeoIP database kon niet gevonden worden!
cantReadGeoIpDB=Fout bij het lezen van de GeoIP database!
cantSpawnItem=\u00a7cJe bent niet bevoegd om {0} te spawnen.
+chatTypeLocal=[L]
+chatTypeSpy=[Spy]
commandFailed=Opdracht {0} mislukt:
commandHelpFailedForPlugin=Fout bij het \u200b\u200bkrijgen van hulp voor: {0}
commandNotLoaded=\u00a7cOpdracht {0} is fout geladen.
@@ -169,7 +171,6 @@ listAmount = \u00a79There are \u00a7c{0}\u00a79 out of maximum \u00a7c{1}\u00a79
listAmountHidden = \u00a79There are \u00a7c{0}\u00a77/{1}\u00a79 out of maximum \u00a7c{2}\u00a79 players online.
listHiddenTag = \u00a77[HIDDEN]\u00a7f
loadWarpError=Fout bij het laden van warp {0}
-loadinfo=Build {1} geladen {0} van {2}
localFormat=Local: <{0}> {1}
mailClear=\u00a7cType /mail clear, om ej berichten als gelezen te markeren.
mailCleared=\u00a77Bericht geklaard!
diff --git a/Essentials/test/com/earth2me/essentials/FakeServer.java b/Essentials/test/com/earth2me/essentials/FakeServer.java
index 35e5f6f53..d54ca031a 100644
--- a/Essentials/test/com/earth2me/essentials/FakeServer.java
+++ b/Essentials/test/com/earth2me/essentials/FakeServer.java
@@ -22,6 +22,7 @@ import org.bukkit.map.MapView;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.ServicesManager;
+import org.bukkit.plugin.messaging.Messenger;
import org.bukkit.scheduler.BukkitScheduler;
import org.bukkit.scheduler.BukkitTask;
import org.bukkit.scheduler.BukkitWorker;
@@ -545,6 +546,12 @@ public class FakeServer implements Server
{
throw new UnsupportedOperationException("Not supported yet.");
}
+
+ @Override
+ public Location getBedSpawnLocation()
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
};
}
@@ -619,4 +626,22 @@ public class FakeServer implements Server
{
throw new UnsupportedOperationException("Not supported yet.");
}
+
+ @Override
+ public Messenger getMessenger()
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public void sendPluginMessage(Plugin plugin, String string, byte[] bytes)
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ @Override
+ public Set<String> getListeningPluginChannels()
+ {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
}
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/ChatStore.java b/EssentialsChat/src/com/earth2me/essentials/chat/ChatStore.java
new file mode 100644
index 000000000..bd6a9adab
--- /dev/null
+++ b/EssentialsChat/src/com/earth2me/essentials/chat/ChatStore.java
@@ -0,0 +1,51 @@
+package com.earth2me.essentials.chat;
+
+import com.earth2me.essentials.Trade;
+import com.earth2me.essentials.api.IEssentials;
+import com.earth2me.essentials.api.IUser;
+
+
+public class ChatStore
+{
+ private final transient IUser user;
+ private final transient String type;
+ private final transient Trade charge;
+ private long radius;
+
+ ChatStore(final IEssentials ess, final IUser user, final String type)
+ {
+ this.user = user;
+ this.type = type;
+ this.charge = new Trade(getLongType(), ess);
+ }
+
+ public IUser getUser()
+ {
+ return user;
+ }
+
+ public Trade getCharge()
+ {
+ return charge;
+ }
+
+ public String getType()
+ {
+ return type;
+ }
+
+ public final String getLongType()
+ {
+ return type.length() > 0 ? "chat" : "chat-" + type;
+ }
+
+ public long getRadius()
+ {
+ return radius;
+ }
+
+ public void setRadius(final long radius)
+ {
+ this.radius = radius;
+ }
+}
diff --git a/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIP.java b/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIP.java
index 783684ef8..2fa8b0adf 100644
--- a/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIP.java
+++ b/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIP.java
@@ -3,17 +3,12 @@ package com.earth2me.essentials.geoip;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import java.util.logging.Level;
-import java.util.logging.Logger;
-import org.bukkit.event.Event.Priority;
-import org.bukkit.event.Event.Type;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
public class EssentialsGeoIP extends JavaPlugin
{
- private static final Logger logger = Logger.getLogger("Minecraft");
-
public EssentialsGeoIP()
{
}
@@ -30,18 +25,16 @@ public class EssentialsGeoIP extends JavaPlugin
final IEssentials ess = (IEssentials)pm.getPlugin("Essentials");
if (!this.getDescription().getVersion().equals(ess.getDescription().getVersion()))
{
- logger.log(Level.WARNING, _("versionMismatchAll"));
+ getLogger().log(Level.WARNING, _("versionMismatchAll"));
}
if (!ess.isEnabled()) {
this.setEnabled(false);
return;
}
final EssentialsGeoIPPlayerListener playerListener = new EssentialsGeoIPPlayerListener(this, ess);
- pm.registerEvent(Type.PLAYER_JOIN, playerListener, Priority.Monitor, this);
+ pm.registerEvents(playerListener, this);
ess.addReloadListener(playerListener);
- logger.info(_("loadinfo", this.getDescription().getName(), this.getDescription().getVersion(), "essentials team"));
-
- logger.log(Level.INFO, "This product includes GeoLite data created by MaxMind, available from http://www.maxmind.com/.");
+ getLogger().log(Level.INFO, "This product includes GeoLite data created by MaxMind, available from http://www.maxmind.com/.");
}
}
diff --git a/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java b/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
index aa54dbf25..19cc06dc4 100644
--- a/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
+++ b/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
@@ -16,12 +16,14 @@ import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.zip.GZIPInputStream;
import org.bukkit.entity.Player;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
-import org.bukkit.event.player.PlayerListener;
import org.bukkit.plugin.Plugin;
-public class EssentialsGeoIPPlayerListener extends PlayerListener implements IReload
+public class EssentialsGeoIPPlayerListener implements Listener, IReload
{
private transient LookupService ls = null;
private static final Logger LOGGER = Logger.getLogger("Minecraft");
@@ -39,7 +41,7 @@ public class EssentialsGeoIPPlayerListener extends PlayerListener implements IRe
onReload();
}
- @Override
+ @EventHandler(priority = EventPriority.MONITOR)
public void onPlayerJoin(final PlayerJoinEvent event)
{
final IUser u = ess.getUser(event.getPlayer());
diff --git a/EssentialsGroupBridge/.classpath b/EssentialsGroupBridge/.classpath
index a1bc47710..9330eb06e 100644
--- a/EssentialsGroupBridge/.classpath
+++ b/EssentialsGroupBridge/.classpath
@@ -2,8 +2,8 @@
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="lib" path="../lib/bukkit-0.0.1-SNAPSHOT.jar"/>
- <classpathentry kind="lib" path="../lib/craftbukkit-0.0.1-SNAPSHOT.jar"/>
+ <classpathentry kind="lib" path="../lib/bukkit.jar"/>
+ <classpathentry kind="lib" path="../lib/craftbukkit.jar"/>
<classpathentry combineaccessrules="false" kind="src" path="/EssentialsGroupManager"/>
<classpathentry kind="lib" path="../lib/Permissions3.jar"/>
<classpathentry kind="output" path="bin"/>
diff --git a/EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/OverrideListener.java b/EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/OverrideListener.java
new file mode 100644
index 000000000..762e42b49
--- /dev/null
+++ b/EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/OverrideListener.java
@@ -0,0 +1,25 @@
+package com.nijikokun.bukkit.Permissions;
+
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.server.PluginEnableEvent;
+import org.bukkit.event.Listener;
+
+
+
+public class OverrideListener implements Listener {
+
+ Permissions permClass;
+
+ OverrideListener(Permissions instance) {
+ this.permClass = instance;
+ }
+
+ @EventHandler(priority = EventPriority.NORMAL)
+ public void onPluginEnable(PluginEnableEvent event) {
+ if (event.getPlugin().getDescription().getName().equals("GroupManager")) {
+ permClass.setGM(event.getPlugin());
+ }
+ }
+
+} \ No newline at end of file
diff --git a/EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/Permissions.java b/EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/Permissions.java
index 5d027cccc..99fd18ce8 100644
--- a/EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/Permissions.java
+++ b/EssentialsGroupBridge/src/com/nijikokun/bukkit/Permissions/Permissions.java
@@ -4,10 +4,6 @@ import com.nijiko.permissions.PermissionHandler;
import java.util.logging.Logger;
//import org.anjocaido.groupmanager.GroupManager;
import org.anjocaido.groupmanager.permissions.NijikoPermissionsProxy;
-import org.bukkit.event.Event.Priority;
-import org.bukkit.event.Event.Type;
-import org.bukkit.event.server.PluginEnableEvent;
-import org.bukkit.event.server.ServerListener;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.java.JavaPlugin;
@@ -41,15 +37,7 @@ public class Permissions extends JavaPlugin {
setGM(p);
} else {
if (this.getServer() != null) {
- this.getServer().getPluginManager().registerEvent(Type.PLUGIN_ENABLE, new ServerListener() {
-
- @Override
- public void onPluginEnable(PluginEnableEvent event) {
- if (event.getPlugin().getDescription().getName().equals("GroupManager")) {
- Permissions.this.setGM(event.getPlugin());
- }
- }
- }, Priority.Normal, this);
+ this.getServer().getPluginManager().registerEvents(new OverrideListener(this), this);
}
}
} else {
@@ -62,7 +50,7 @@ public class Permissions extends JavaPlugin {
}
}
- private void setGM(final Plugin p) {
+ public void setGM(final Plugin p) {
//GroupManager groupManager = (GroupManager) p;
((NijikoPermissionsProxy) Security).setGM(p);
}
@@ -79,4 +67,9 @@ public class Permissions extends JavaPlugin {
Security = new NijikoPermissionsProxy(null);
}
}
+
+
+
}
+
+
diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt
index 876dc28b7..456283c63 100644
--- a/EssentialsGroupManager/src/Changelog.txt
+++ b/EssentialsGroupManager/src/Changelog.txt
@@ -103,4 +103,9 @@ v 1.8:
- Catch NullPointerErrors generated by blank permission nodes.
- Removed '- bukkit.command' form the globalgroups permission nodes.
v 1.9:
- - Optimize populating Bukkit perms so we no longer calculate the child nodes (Bukkit already does this). \ No newline at end of file
+ - Optimize populating Bukkit perms so we no longer calculate the child nodes (Bukkit already does this).
+ - Added a tidy error message for invalid permission entries in GlobalGroups.
+ - Better optimize assembling of a players permissions and allow the * node to populate all registered superperms.
+ - Fixed text when adding a subgroup to not say the player was moved.
+ - Update to new Bukkit Event system.
+ - Update GroupManagerBridge for new event system. \ No newline at end of file
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GlobalGroups.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GlobalGroups.java
index f1bf10985..d9715d4be 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GlobalGroups.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GlobalGroups.java
@@ -125,8 +125,12 @@ public class GlobalGroups {
if (element != null)
if (element instanceof List) {
- for (String node : (List<String>) element) {
- newGroup.addPermission(node);
+ try {
+ for (String node : (List<String>) element) {
+ newGroup.addPermission(node);
+ }
+ } catch (ClassCastException e) {
+ throw new IllegalArgumentException("Invalid permission node for global group: " + groupName);
}
} else if (element instanceof String) {
newGroup.addPermission((String) element);
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
index 8134a1c23..db2e60fda 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
@@ -38,8 +38,6 @@ import org.bukkit.command.CommandSender;
import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.Event;
-import org.bukkit.event.Event.Priority;
-import org.bukkit.event.world.WorldListener;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.ServicePriority;
import org.bukkit.plugin.java.JavaPlugin;
@@ -82,7 +80,7 @@ public class GroupManager extends JavaPlugin {
private GMLoggerHandler ch;
public static BukkitPermissions BukkitPermissions;
- private static WorldListener WorldEvents;
+ private static GMWorldListener WorldEvents;
public static final Logger logger = Logger.getLogger(GroupManager.class.getName());
// PERMISSIONS FOR COMMAND BEING LOADED
@@ -493,7 +491,7 @@ public class GroupManager extends JavaPlugin {
}
// PARECE OK
auxUser.addSubGroup(auxGroup);
- sender.sendMessage(ChatColor.YELLOW + "You changed player '" + auxUser.getName() + "' group to '" + auxGroup.getName() + "'.");
+ sender.sendMessage(ChatColor.YELLOW + "You added subgroup '" + auxGroup.getName() + "' to player '" + auxUser.getName() + "'.");
targetPlayer = this.getServer().getPlayer(auxUser.getName());
if (targetPlayer != null)
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/Tasks/BukkitPermsUpdateTask.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/Tasks/BukkitPermsUpdateTask.java
index 8788fc83b..f4b805c35 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/Tasks/BukkitPermsUpdateTask.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/Tasks/BukkitPermsUpdateTask.java
@@ -18,7 +18,7 @@ public class BukkitPermsUpdateTask implements Runnable {
public void run() {
// Signal loaded and update BukkitPermissions.
GroupManager.setLoaded(true);
- //GroupManager.BukkitPermissions.collectPermissions();
+ GroupManager.BukkitPermissions.collectPermissions();
GroupManager.BukkitPermissions.updateAllPlayers();
GroupManager.logger.info("Bukkit Permissions Updated!");
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java
index 1f2be9875..d41f96b0d 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java
@@ -113,7 +113,7 @@ public class User extends DataUnit implements Cloneable {
this.group = group;
flagAsChanged();
if (GroupManager.isLoaded())
- if (GroupManager.BukkitPermissions.player_join = false)
+ if (!GroupManager.BukkitPermissions.isPlayer_join())
GroupManager.BukkitPermissions.updateAllPlayers();
}
@@ -130,7 +130,7 @@ public class User extends DataUnit implements Cloneable {
this.group = group.getName();
flagAsChanged();
if (GroupManager.isLoaded()) {
- if (GroupManager.BukkitPermissions.player_join = false)
+ if (!GroupManager.BukkitPermissions.isPlayer_join())
GroupManager.BukkitPermissions.updateAllPlayers();
// Do we notify of the group change?
@@ -159,7 +159,7 @@ public class User extends DataUnit implements Cloneable {
subGroups.add(subGroup.getName());
flagAsChanged();
if (GroupManager.isLoaded()) {
- if (GroupManager.BukkitPermissions.player_join = false)
+ if (!GroupManager.BukkitPermissions.isPlayer_join())
GroupManager.BukkitPermissions.updateAllPlayers();
GroupManagerEventHandler.callEvent(this, Action.USER_SUBGROUP_CHANGED);
}
@@ -182,7 +182,7 @@ public class User extends DataUnit implements Cloneable {
if (subGroups.remove(subGroup.getName())) {
flagAsChanged();
if (GroupManager.isLoaded())
- if (GroupManager.BukkitPermissions.player_join = false)
+ if (!GroupManager.BukkitPermissions.isPlayer_join())
GroupManager.BukkitPermissions.updateAllPlayers();
GroupManagerEventHandler.callEvent(this, Action.USER_SUBGROUP_CHANGED);
return true;
@@ -229,7 +229,7 @@ public class User extends DataUnit implements Cloneable {
}
flagAsChanged();
if (GroupManager.isLoaded()) {
- if (GroupManager.BukkitPermissions.player_join = false)
+ if (!GroupManager.BukkitPermissions.isPlayer_join())
GroupManager.BukkitPermissions.updateAllPlayers();
GroupManagerEventHandler.callEvent(this, Action.USER_INFO_CHANGED);
}
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMGroupEvent.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMGroupEvent.java
index 9a44a21b8..4482f3d9e 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMGroupEvent.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMGroupEvent.java
@@ -1,6 +1,7 @@
package org.anjocaido.groupmanager.events;
import org.anjocaido.groupmanager.data.Group;
+import org.bukkit.event.HandlerList;
/**
@@ -13,6 +14,18 @@ public class GMGroupEvent extends GroupManagerEvent {
*
*/
private static final long serialVersionUID = -5294917600434510451L;
+ private static final HandlerList handlers = new HandlerList();
+
+ @Override
+ public HandlerList getHandlers() {
+ return handlers;
+ }
+
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
+
+ //////////////////////////////
protected Group group;
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMSystemEvent.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMSystemEvent.java
index f7ecf79de..eb4b95c03 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMSystemEvent.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMSystemEvent.java
@@ -1,5 +1,7 @@
package org.anjocaido.groupmanager.events;
+import org.bukkit.event.HandlerList;
+
/**
* @author ElgarL
@@ -11,6 +13,19 @@ public class GMSystemEvent extends GroupManagerEvent {
*
*/
private static final long serialVersionUID = -8786811924448821548L;
+ private static final HandlerList handlers = new HandlerList();
+
+ @Override
+ public HandlerList getHandlers() {
+ return handlers;
+ }
+
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
+
+ //////////////////////////////
+
protected Action action;
public GMSystemEvent(Action action) {
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMUserEvent.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMUserEvent.java
index 68483c036..efa591562 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMUserEvent.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMUserEvent.java
@@ -1,6 +1,7 @@
package org.anjocaido.groupmanager.events;
import org.anjocaido.groupmanager.data.User;
+import org.bukkit.event.HandlerList;
/**
@@ -13,6 +14,18 @@ public class GMUserEvent extends GroupManagerEvent {
*
*/
private static final long serialVersionUID = -5294917600434510451L;
+ private static final HandlerList handlers = new HandlerList();
+
+ @Override
+ public HandlerList getHandlers() {
+ return handlers;
+ }
+
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
+
+ //////////////////////////////
protected User user;
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMWorldListener.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMWorldListener.java
index 037971314..fd1a9d7ff 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMWorldListener.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMWorldListener.java
@@ -1,9 +1,10 @@
package org.anjocaido.groupmanager.events;
import org.anjocaido.groupmanager.GroupManager;
-import org.bukkit.event.Event;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.world.WorldInitEvent;
-import org.bukkit.event.world.WorldListener;
/**
@@ -12,7 +13,7 @@ import org.bukkit.event.world.WorldListener;
* Handle new world creation from other plugins
*
*/
-public class GMWorldListener extends WorldListener {
+public class GMWorldListener implements Listener {
private final GroupManager plugin;
@@ -22,10 +23,10 @@ public class GMWorldListener extends WorldListener {
}
private void registerEvents() {
- plugin.getServer().getPluginManager().registerEvent(Event.Type.WORLD_INIT, this, Event.Priority.Lowest, plugin);
+ plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onWorldInit(WorldInitEvent event) {
String worldName = event.getWorld().getName();
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java
index 167103796..51c6dded5 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java
@@ -5,9 +5,11 @@
package org.anjocaido.groupmanager.permissions;
import java.util.ArrayList;
+import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import org.anjocaido.groupmanager.GroupManager;
import org.anjocaido.groupmanager.data.Group;
@@ -97,81 +99,101 @@ public class AnjoPermissionsHandler extends PermissionsReaderInterface {
*/
@Override
public List<String> getAllPlayersPermissions(String userName) {
- return getAllPlayersPermissions(userName, true);
+ List<String> perms = new ArrayList<String>();
+
+ perms.addAll(getAllPlayersPermissions(userName, true));
+
+ return perms;
}
+
/**
* Returns All permissions (including inheritance and sub groups) for the
* player. With or without Bukkit child nodes.
*
* @param userName
- * @return List<String> of all players permissions.
+ * @return Set<String> of all players permissions.
*/
@Override
- public List<String> getAllPlayersPermissions(String userName, Boolean includeChildren) {
-
- List<String> playerPermArray = new ArrayList<String>();
+ public Set<String> getAllPlayersPermissions(String userName, Boolean includeChildren) {
- for (String perm : ph.getUser(userName).getPermissionList()) {
- if ((!playerPermArray.contains(perm)) && (!playerPermArray.contains("-" + perm))) {
- playerPermArray.add(perm);
+ Set<String> playerPermArray = new HashSet<String>();
- if (includeChildren) {
- Map<String, Boolean> children = GroupManager.BukkitPermissions.getAllChildren(perm, playerPermArray);
-
- if (children != null) {
- for (String child : children.keySet()) {
- if (children.get(child))
- if ((!playerPermArray.contains(child)) && (!playerPermArray.contains("-" + child))) {
- playerPermArray.add(child);
- }
- }
- }
- }
- }
- }
+ // Add the players own permissions.
+ playerPermArray.addAll(populatePerms(ph.getUser(userName).getPermissionList(), includeChildren));
+
+ // fetch all group permissions
for (String group : getGroups(userName)) {
+ Set<String> groupPermArray = new HashSet<String>();
+
if (group.startsWith("g:") && GroupManager.getGlobalGroups().hasGroup(group)) {
- for (String perm : GroupManager.getGlobalGroups().getGroupsPermissions(group)) {
- if ((!playerPermArray.contains(perm)) && (!playerPermArray.contains("-" + perm))) {
- playerPermArray.add(perm);
-
- if (includeChildren) {
- Map<String, Boolean> children = GroupManager.BukkitPermissions.getAllChildren(perm, playerPermArray);
- if (children != null) {
- for (String child : children.keySet()) {
- if (children.get(child))
- if ((!playerPermArray.contains(child)) && (!playerPermArray.contains("-" + child)))
- playerPermArray.add(child);
- }
- }
- }
- }
- }
+ // GlobalGroups
+ groupPermArray = populatePerms(GroupManager.getGlobalGroups().getGroupsPermissions(group), includeChildren);
+
} else {
- for (String perm : ph.getGroup(group).getPermissionList()) {
- if ((!playerPermArray.contains(perm)) && (!playerPermArray.contains("-" + perm))) {
- playerPermArray.add(perm);
-
- if (includeChildren) {
- Map<String, Boolean> children = GroupManager.BukkitPermissions.getAllChildren(perm, playerPermArray);
- if (children != null) {
- for (String child : children.keySet()) {
- if (children.get(child))
- if ((!playerPermArray.contains(child)) && (!playerPermArray.contains("-" + child))) {
- playerPermArray.add(child);
- }
- }
- }
- }
- }
- }
+ // World Groups
+ groupPermArray = populatePerms(ph.getGroup(group).getPermissionList(), includeChildren);
}
+
+ // Add all group permissions, unless negated by direct player perms.
+ for (String perm : groupPermArray)
+ if ((!playerPermArray.contains(perm)) && (!playerPermArray.contains("-" + perm)))
+ playerPermArray.add(perm);
+
}
// Collections.sort(playerPermArray,
// StringPermissionComparator.getInstance());
return playerPermArray;
}
+
+ private Set<String> populatePerms (List<String> perms, boolean includeChildren) {
+
+ Set<String> permArray = new HashSet<String>();
+
+ for (String perm : perms) {
+
+ // Allow * node to populate ALL perms in Bukkit.
+ if (perm.equalsIgnoreCase("*"))
+ permArray.addAll(GroupManager.BukkitPermissions.getAllRegisteredPermissions(includeChildren));
+
+ boolean negated = false;
+ if (perm.startsWith("-"))
+ negated = true;
+
+ if (!permArray.contains(perm)) {
+ permArray.add(perm);
+
+ if ((negated) && (permArray.contains(perm.substring(1))))
+ permArray.remove(perm.substring(1));
+
+ if (includeChildren) {
+
+ Map<String, Boolean> children = GroupManager.BukkitPermissions.getAllChildren((negated ? perm.substring(1) : perm), new HashSet<String>());
+
+ if (children != null) {
+ if (negated) {
+
+ // Remove children of negated nodes
+ for (String child : children.keySet())
+ if (children.get(child))
+ if (permArray.contains(child))
+ permArray.remove(child);
+
+ } else {
+
+ // Add child nodes
+ for (String child : children.keySet())
+ if (children.get(child))
+ if ((!permArray.contains(child)) && (!permArray.contains("-" + child)))
+ permArray.add(child);
+ }
+ }
+ }
+ }
+ }
+
+ return permArray;
+ }
/**
* Verify if player is in such group. It will check it's groups inheritance.
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java
index 91f9a9bd6..f9363e04d 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java
@@ -19,9 +19,11 @@ package org.anjocaido.groupmanager.permissions;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import org.anjocaido.groupmanager.GroupManager;
//import org.anjocaido.groupmanager.data.User;
@@ -30,17 +32,17 @@ import org.anjocaido.groupmanager.dataholder.OverloadedWorldHolder;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
-import org.bukkit.event.Event;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerKickEvent;
-import org.bukkit.event.player.PlayerListener;
import org.bukkit.event.player.PlayerPortalEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.event.player.PlayerTeleportEvent;
import org.bukkit.event.server.PluginDisableEvent;
import org.bukkit.event.server.PluginEnableEvent;
-import org.bukkit.event.server.ServerListener;
import org.bukkit.permissions.Permission;
import org.bukkit.permissions.PermissionAttachment;
import org.bukkit.permissions.PermissionAttachmentInfo;
@@ -61,8 +63,22 @@ public class BukkitPermissions {
protected GroupManager plugin;
protected boolean dumpAllPermissions = true;
protected boolean dumpMatchedPermissions = true;
- public boolean player_join = false;
+ private boolean player_join = false;
+ /**
+ * @return the player_join
+ */
+ public boolean isPlayer_join() {
+ return player_join;
+ }
+
+ /**
+ * @param player_join the player_join to set
+ */
+ public void setPlayer_join(boolean player_join) {
+ this.player_join = player_join;
+ }
+
private static Field permissions;
// Setup reflection (Thanks to Codename_B for the reflection source)
@@ -89,20 +105,8 @@ public class BukkitPermissions {
private void registerEvents() {
PluginManager manager = plugin.getServer().getPluginManager();
- PlayerEvents playerEventListener = new PlayerEvents();
-
- manager.registerEvent(Event.Type.PLAYER_JOIN, playerEventListener, Event.Priority.Lowest, plugin);
- manager.registerEvent(Event.Type.PLAYER_KICK, playerEventListener, Event.Priority.Lowest, plugin);
- manager.registerEvent(Event.Type.PLAYER_QUIT, playerEventListener, Event.Priority.Lowest, plugin);
-
- manager.registerEvent(Event.Type.PLAYER_RESPAWN, playerEventListener, Event.Priority.Lowest, plugin);
- manager.registerEvent(Event.Type.PLAYER_TELEPORT, playerEventListener, Event.Priority.Lowest, plugin);
- manager.registerEvent(Event.Type.PLAYER_PORTAL, playerEventListener, Event.Priority.Lowest, plugin);
-
- ServerListener serverListener = new BukkitEvents();
-
- manager.registerEvent(Event.Type.PLUGIN_ENABLE, serverListener, Event.Priority.Normal, plugin);
- manager.registerEvent(Event.Type.PLUGIN_DISABLE, serverListener, Event.Priority.Normal, plugin);
+ manager.registerEvents(new PlayerEvents(), plugin);
+ manager.registerEvents(new BukkitEvents(), plugin);
}
@@ -199,21 +203,22 @@ public class BukkitPermissions {
// Add all permissions for this player (GM only)
// child nodes will be calculated by Bukkit.
- List<String> playerPermArray = worldData.getPermissionsHandler().getAllPlayersPermissions(player.getName(), false);
+ Set<String> playerPermArray = worldData.getPermissionsHandler().getAllPlayersPermissions(player.getName(), false);
Map<String, Boolean> newPerms = new HashMap<String, Boolean>();
- for (String permission : playerPermArray) {
- value = true;
- if (permission.startsWith("-")) {
- permission = permission.substring(1); // cut off -
- value = false;
- }
+ //Set<String> hash = new HashSet<String>();
+ //for (String permission : playerPermArray)
+ // hash.add(permission);
+
+
+ for (String permission : playerPermArray) {
+ value = (!permission.startsWith("-"));
/*
if (!attachment.getPermissions().containsKey(permission)) {
attachment.setPermission(permission, value);
}
*/
- newPerms.put(permission, value);
+ newPerms.put((value? permission : permission.substring(1)), value);
}
//player.recalculatePermissions();
@@ -238,14 +243,46 @@ public class BukkitPermissions {
}
}
+
/**
- * Returns a map of the ALL child permissions as defined by the supplying plugin
+ * Fetch all permissions which are registered with superperms.
+ * {can include child nodes)
+ *
+ * @param includeChildren
+ * @return List of all permission nodes
+ */
+ public List<String> getAllRegisteredPermissions(boolean includeChildren) {
+
+ List<String> perms = new ArrayList<String>();
+
+ for (Permission permission : registeredPermissions) {
+ String name = permission.getName();
+ if (!perms.contains(name)) {
+ perms.add(name);
+
+ if (includeChildren) {
+ Map<String, Boolean> children = getAllChildren(name, new HashSet<String>());
+ if (children != null) {
+ for (String node : children.keySet())
+ if (!perms.contains(node))
+ perms.add(node);
+ }
+ }
+ }
+
+ }
+ return perms;
+ }
+
+ /**
+ * Returns a map of ALL child permissions registered with bukkit
* null is empty
*
* @param node
+ * @param playerPermArray current list of perms to check against for negations
* @return Map of child permissions
*/
- public Map<String, Boolean> getAllChildren(String node, List<String> playerPermArray) {
+ public Map<String, Boolean> getAllChildren(String node, Set<String> playerPermArray) {
LinkedList<String> stack = new LinkedList<String>();
Map<String, Boolean> alreadyVisited = new HashMap<String, Boolean>();
@@ -273,7 +310,7 @@ public class BukkitPermissions {
}
/**
- * Returns a map of the child permissions (1 node deep) as defined by the supplying plugin
+ * Returns a map of the child permissions (1 node deep) as registered with Bukkit.
* null is empty
*
* @param node
@@ -325,40 +362,40 @@ public class BukkitPermissions {
}
}
- protected class PlayerEvents extends PlayerListener {
+ protected class PlayerEvents implements Listener {
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onPlayerJoin(PlayerJoinEvent event) {
- player_join = true;
+ setPlayer_join(true);
Player player = event.getPlayer();
// force GM to create the player if they are not already listed.
if (plugin.getWorldsHolder().getWorldData(player.getWorld().getName()).getUser(player.getName()) != null) {
- player_join = false;
+ //setPlayer_join(false);
updatePermissions(event.getPlayer());
- } else
- player_join = false;
+ }
+ setPlayer_join(false);
}
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onPlayerPortal(PlayerPortalEvent event) { // will portal into another world
if (event.getTo() != null && !event.getFrom().getWorld().equals(event.getTo().getWorld())) { // only if world actually changed
updatePermissions(event.getPlayer(), event.getTo().getWorld().getName());
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onPlayerRespawn(PlayerRespawnEvent event) { // can be respawned in another world
updatePermissions(event.getPlayer(), event.getRespawnLocation().getWorld().getName());
}
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onPlayerTeleport(PlayerTeleportEvent event) { // can be teleported into another world
if (event.getTo() != null && !event.getFrom().getWorld().equals(event.getTo().getWorld())) { // only if world actually changed
updatePermissions(event.getPlayer(), event.getTo().getWorld().getName());
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onPlayerQuit(PlayerQuitEvent event) {
if (!GroupManager.isLoaded())
return;
@@ -366,15 +403,15 @@ public class BukkitPermissions {
attachments.remove(event.getPlayer());
}
- @Override
+ @EventHandler(priority = EventPriority.LOWEST)
public void onPlayerKick(PlayerKickEvent event) {
attachments.remove(event.getPlayer());
}
}
- protected class BukkitEvents extends ServerListener {
+ protected class BukkitEvents implements Listener {
- @Override
+ @EventHandler(priority = EventPriority.NORMAL)
public void onPluginEnable(PluginEnableEvent event) {
if (!GroupManager.isLoaded())
return;
@@ -383,7 +420,7 @@ public class BukkitPermissions {
updateAllPlayers();
}
- @Override
+ @EventHandler(priority = EventPriority.NORMAL)
public void onPluginDisable(PluginDisableEvent event) {
collectPermissions();
// updateAllPlayers();
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/PermissionsReaderInterface.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/PermissionsReaderInterface.java
index cf11bd37f..3f49757e2 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/PermissionsReaderInterface.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/PermissionsReaderInterface.java
@@ -4,6 +4,7 @@ package org.anjocaido.groupmanager.permissions;
//import java.util.Map;
//import java.util.Set;
import java.util.List;
+import java.util.Set;
import org.anjocaido.groupmanager.data.Group;
//import org.anjocaido.groupmanager.data.User;
@@ -235,5 +236,5 @@ public abstract class PermissionsReaderInterface {
public abstract List<String> getAllPlayersPermissions(String userName);
- public abstract List<String> getAllPlayersPermissions(String userName, Boolean includeChildren);
+ public abstract Set<String> getAllPlayersPermissions(String userName, Boolean includeChildren);
}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyBlockListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyBlockListener.java
deleted file mode 100644
index 479d2eda6..000000000
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyBlockListener.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.earth2me.essentials.protect;
-
-import org.bukkit.event.block.BlockBreakEvent;
-import org.bukkit.event.block.BlockBurnEvent;
-import org.bukkit.event.block.BlockFromToEvent;
-import org.bukkit.event.block.BlockIgniteEvent;
-import org.bukkit.event.block.BlockListener;
-
-
-public class EmergencyBlockListener extends BlockListener
-{
-
- @Override
- public void onBlockBurn(final BlockBurnEvent event)
- {
- event.setCancelled(true);
- }
-
- @Override
- public void onBlockIgnite(final BlockIgniteEvent event)
- {
- event.setCancelled(true);
- }
-
- @Override
- public void onBlockFromTo(final BlockFromToEvent event)
- {
- event.setCancelled(true);
- }
-
- @Override
- public void onBlockBreak(final BlockBreakEvent event)
- {
- event.setCancelled(true);
- }
-}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyEntityListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyEntityListener.java
deleted file mode 100644
index a220f07d5..000000000
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyEntityListener.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.earth2me.essentials.protect;
-
-import org.bukkit.event.entity.EntityDamageEvent;
-import org.bukkit.event.entity.EntityExplodeEvent;
-import org.bukkit.event.entity.EntityListener;
-
-
-public class EmergencyEntityListener extends EntityListener
-{
-
- @Override
- public void onEntityExplode(final EntityExplodeEvent event)
- {
- event.setCancelled(true);
- }
-
- @Override
- public void onEntityDamage(final EntityDamageEvent event)
- {
- event.setCancelled(true);
- }
-}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyListener.java
new file mode 100644
index 000000000..5f9253c55
--- /dev/null
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyListener.java
@@ -0,0 +1,58 @@
+package com.earth2me.essentials.protect;
+
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
+import org.bukkit.event.block.BlockBreakEvent;
+import org.bukkit.event.block.BlockBurnEvent;
+import org.bukkit.event.block.BlockFromToEvent;
+import org.bukkit.event.block.BlockIgniteEvent;
+import org.bukkit.event.entity.EntityDamageEvent;
+import org.bukkit.event.entity.EntityExplodeEvent;
+import org.bukkit.event.player.PlayerJoinEvent;
+
+
+public class EmergencyListener implements Listener
+{
+ @EventHandler(priority = EventPriority.LOW)
+ public void onBlockBurn(final BlockBurnEvent event)
+ {
+ event.setCancelled(true);
+ }
+
+ @EventHandler(priority = EventPriority.LOW)
+ public void onBlockIgnite(final BlockIgniteEvent event)
+ {
+ event.setCancelled(true);
+ }
+
+ @EventHandler(priority = EventPriority.LOW)
+ public void onBlockFromTo(final BlockFromToEvent event)
+ {
+ event.setCancelled(true);
+ }
+
+ @EventHandler(priority = EventPriority.LOW)
+ public void onBlockBreak(final BlockBreakEvent event)
+ {
+ event.setCancelled(true);
+ }
+
+ @EventHandler(priority = EventPriority.LOW)
+ public void onPlayerJoin(final PlayerJoinEvent event)
+ {
+ event.getPlayer().sendMessage("Essentials Protect is in emergency mode. Check your log for errors.");
+ }
+
+ @EventHandler(priority = EventPriority.LOW)
+ public void onEntityExplode(final EntityExplodeEvent event)
+ {
+ event.setCancelled(true);
+ }
+
+ @EventHandler(priority = EventPriority.LOW)
+ public void onEntityDamage(final EntityDamageEvent event)
+ {
+ event.setCancelled(true);
+ }
+}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyPlayerListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyPlayerListener.java
deleted file mode 100644
index e92325946..000000000
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyPlayerListener.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.earth2me.essentials.protect;
-
-import org.bukkit.event.player.PlayerJoinEvent;
-import org.bukkit.event.player.PlayerListener;
-
-
-public class EmergencyPlayerListener extends PlayerListener
-{
-
- @Override
- public void onPlayerJoin(PlayerJoinEvent event)
- {
- event.getPlayer().sendMessage("Essentials Protect is in emergency mode. Check your log for errors.");
- }
-
-}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java
index 38c6cc3f9..5988bd06f 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java
@@ -33,8 +33,6 @@ public class EssentialsConnect
ProtectReloader pr = new ProtectReloader();
pr.onReload();
ess.addReloadListener(pr);
- LOGGER.info(_("loadinfo", essProtect.getDescription().getName(), essProtect.getDescription().getVersion(), "essentials team"));
-
}
public void onDisable()
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtect.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtect.java
index 43975216e..75a462888 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtect.java
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtect.java
@@ -6,8 +6,6 @@ import java.util.logging.Level;
import java.util.logging.LogRecord;
import java.util.logging.Logger;
import org.bukkit.entity.Player;
-import org.bukkit.event.Event.Priority;
-import org.bukkit.event.Event.Type;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
@@ -49,43 +47,22 @@ public class EssentialsProtect extends JavaPlugin implements IProtect
ess = new EssentialsConnect(essPlugin, this);
final EssentialsProtectPlayerListener playerListener = new EssentialsProtectPlayerListener(this);
- pm.registerEvent(Type.PLAYER_INTERACT, playerListener, Priority.Low, this);
+ pm.registerEvents(playerListener, this);
final EssentialsProtectBlockListener blockListener = new EssentialsProtectBlockListener(this);
- pm.registerEvent(Type.BLOCK_PLACE, blockListener, Priority.Highest, this);
- pm.registerEvent(Type.BLOCK_FROMTO, blockListener, Priority.Highest, this);
- pm.registerEvent(Type.BLOCK_IGNITE, blockListener, Priority.Highest, this);
- pm.registerEvent(Type.BLOCK_BURN, blockListener, Priority.Highest, this);
- pm.registerEvent(Type.BLOCK_BREAK, blockListener, Priority.Highest, this);
- pm.registerEvent(Type.BLOCK_PISTON_EXTEND, blockListener, Priority.Highest, this);
- pm.registerEvent(Type.BLOCK_PISTON_RETRACT, blockListener, Priority.Highest, this);
+ pm.registerEvents(blockListener, this);
final EssentialsProtectEntityListener entityListener = new EssentialsProtectEntityListener(this);
- pm.registerEvent(Type.ENTITY_EXPLODE, entityListener, Priority.Highest, this);
- pm.registerEvent(Type.ENTITY_DAMAGE, entityListener, Priority.Highest, this);
- pm.registerEvent(Type.CREATURE_SPAWN, entityListener, Priority.Highest, this);
- pm.registerEvent(Type.ENTITY_TARGET, entityListener, Priority.Highest, this);
- pm.registerEvent(Type.EXPLOSION_PRIME, entityListener, Priority.Highest, this);
- pm.registerEvent(Type.ENDERMAN_PICKUP, entityListener, Priority.Highest, this);
+ pm.registerEvents(entityListener, this);
final EssentialsProtectWeatherListener weatherListener = new EssentialsProtectWeatherListener(this);
- pm.registerEvent(Type.LIGHTNING_STRIKE, weatherListener, Priority.Highest, this);
- pm.registerEvent(Type.THUNDER_CHANGE, weatherListener, Priority.Highest, this);
- pm.registerEvent(Type.WEATHER_CHANGE, weatherListener, Priority.Highest, this);
+ pm.registerEvents(weatherListener, this);
}
private void enableEmergencyMode(final PluginManager pm)
{
- final EmergencyBlockListener emBlockListener = new EmergencyBlockListener();
- final EmergencyEntityListener emEntityListener = new EmergencyEntityListener();
- final EmergencyPlayerListener emPlayerListener = new EmergencyPlayerListener();
- pm.registerEvent(Type.PLAYER_JOIN, emPlayerListener, Priority.Low, this);
- pm.registerEvent(Type.BLOCK_BURN, emBlockListener, Priority.Low, this);
- pm.registerEvent(Type.BLOCK_IGNITE, emBlockListener, Priority.Low, this);
- pm.registerEvent(Type.BLOCK_FROMTO, emBlockListener, Priority.Low, this);
- pm.registerEvent(Type.BLOCK_BREAK, emBlockListener, Priority.Low, this);
- pm.registerEvent(Type.ENTITY_DAMAGE, emEntityListener, Priority.Low, this);
- pm.registerEvent(Type.ENTITY_EXPLODE, emEntityListener, Priority.Low, this);
+ final EmergencyListener emListener = new EmergencyListener();
+ pm.registerEvents(emListener, this);
for (Player player : getServer().getOnlinePlayers())
{
player.sendMessage("Essentials Protect is in emergency mode. Check your log for errors.");
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java
index 0e3fb6a5e..cdd0c2543 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java
@@ -9,10 +9,13 @@ import java.util.List;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.block.*;
-public class EssentialsProtectBlockListener extends BlockListener
+public class EssentialsProtectBlockListener implements Listener
{
final private transient IProtect prot;
final private transient IEssentials ess;
@@ -23,7 +26,7 @@ public class EssentialsProtectBlockListener extends BlockListener
this.ess = prot.getEssentialsConnect().getEssentials();
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onBlockPlace(final BlockPlaceEvent event)
{
if (event.isCancelled())
@@ -102,7 +105,7 @@ public class EssentialsProtectBlockListener extends BlockListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onBlockIgnite(BlockIgniteEvent event)
{
if (event.isCancelled())
@@ -162,7 +165,7 @@ public class EssentialsProtectBlockListener extends BlockListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onBlockFromTo(final BlockFromToEvent event)
{
if (event.isCancelled())
@@ -211,7 +214,7 @@ public class EssentialsProtectBlockListener extends BlockListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onBlockBurn(final BlockBurnEvent event)
{
if (event.isCancelled())
@@ -257,7 +260,7 @@ public class EssentialsProtectBlockListener extends BlockListener
BlockFace.SELF
};
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onBlockBreak(final BlockBreakEvent event)
{
if (event.isCancelled())
@@ -363,8 +366,8 @@ public class EssentialsProtectBlockListener extends BlockListener
}
}
- @Override
- public void onBlockPistonExtend(BlockPistonExtendEvent event)
+ @EventHandler(priority = EventPriority.HIGHEST)
+ public void onBlockPistonExtend(final BlockPistonExtendEvent event)
{
if (event.isCancelled())
{
@@ -425,8 +428,8 @@ public class EssentialsProtectBlockListener extends BlockListener
}
}
- @Override
- public void onBlockPistonRetract(BlockPistonRetractEvent event)
+ @EventHandler(priority = EventPriority.HIGHEST)
+ public void onBlockPistonRetract(final BlockPistonRetractEvent event)
{
if (event.isCancelled() || !event.isSticky())
{
@@ -479,6 +482,7 @@ public class EssentialsProtectBlockListener extends BlockListener
}
}
}
+
finally
{
settings.unlock();
@@ -521,7 +525,8 @@ public class EssentialsProtectBlockListener extends BlockListener
}
}
- if (settings.getData().getSignsAndRails().isProtectRails()) {
+ if (settings.getData().getSignsAndRails().isProtectRails())
+ {
if (type == Material.RAILS || type == Material.POWERED_RAIL || type == Material.DETECTOR_RAIL)
{
return prot.getStorage().isProtected(block, user.getName());
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
index 99b0c72e7..bba267d41 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
@@ -7,12 +7,15 @@ import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.entity.*;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import org.bukkit.event.entity.EntityTargetEvent.TargetReason;
import org.bukkit.event.entity.*;
-public class EssentialsProtectEntityListener extends EntityListener
+public class EssentialsProtectEntityListener implements Listener
{
private final transient IProtect prot;
private final transient IEssentials ess;
@@ -24,7 +27,7 @@ public class EssentialsProtectEntityListener extends EntityListener
this.ess = prot.getEssentialsConnect().getEssentials();
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onEntityDamage(final EntityDamageEvent event)
{
if (event.isCancelled())
@@ -170,7 +173,7 @@ public class EssentialsProtectEntityListener extends EntityListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onEntityExplode(final EntityExplodeEvent event)
{
if (event.isCancelled())
@@ -247,7 +250,7 @@ public class EssentialsProtectEntityListener extends EntityListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onCreatureSpawn(final CreatureSpawnEvent event)
{
if (event.getEntity() instanceof Player)
@@ -279,7 +282,7 @@ public class EssentialsProtectEntityListener extends EntityListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onEntityTarget(final EntityTargetEvent event)
{
if (event.isCancelled() || !(event.getTarget() instanceof Player))
@@ -300,7 +303,7 @@ public class EssentialsProtectEntityListener extends EntityListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onExplosionPrime(final ExplosionPrimeEvent event)
{
final ProtectHolder settings = prot.getSettings();
@@ -319,7 +322,7 @@ public class EssentialsProtectEntityListener extends EntityListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onEndermanPickup(final EndermanPickupEvent event)
{
if (event.isCancelled())
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java
index b5c7980c2..7fe1ea33f 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectPlayerListener.java
@@ -5,13 +5,15 @@ import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IUser;
import org.bukkit.Material;
import org.bukkit.block.Block;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
-import org.bukkit.event.player.PlayerListener;
import org.bukkit.inventory.ItemStack;
-public class EssentialsProtectPlayerListener extends PlayerListener
+public class EssentialsProtectPlayerListener implements Listener
{
private final transient IProtect prot;
private final transient IEssentials ess;
@@ -22,7 +24,7 @@ public class EssentialsProtectPlayerListener extends PlayerListener
this.ess = prot.getEssentialsConnect().getEssentials();
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onPlayerInteract(final PlayerInteractEvent event)
{
// Do not return if cancelled, because the interact event has 2 cancelled states.
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java
index 4097275dd..babebac71 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java
@@ -1,12 +1,14 @@
package com.earth2me.essentials.protect;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.weather.LightningStrikeEvent;
import org.bukkit.event.weather.ThunderChangeEvent;
import org.bukkit.event.weather.WeatherChangeEvent;
-import org.bukkit.event.weather.WeatherListener;
-public class EssentialsProtectWeatherListener extends WeatherListener
+public class EssentialsProtectWeatherListener implements Listener
{
private final transient IProtect prot;
@@ -15,7 +17,7 @@ public class EssentialsProtectWeatherListener extends WeatherListener
this.prot = prot;
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onWeatherChange(final WeatherChangeEvent event)
{
final ProtectHolder settings = prot.getSettings();
@@ -35,7 +37,7 @@ public class EssentialsProtectWeatherListener extends WeatherListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onLightningStrike(final LightningStrikeEvent event)
{
final ProtectHolder settings = prot.getSettings();
@@ -54,7 +56,7 @@ public class EssentialsProtectWeatherListener extends WeatherListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onThunderChange(final ThunderChangeEvent event)
{
final ProtectHolder settings = prot.getSettings();
diff --git a/EssentialsSigns/src/com/earth2me/essentials/signs/EssentialsSignsPlugin.java b/EssentialsSigns/src/com/earth2me/essentials/signs/EssentialsSignsPlugin.java
index fd14eba0e..d57daf319 100644
--- a/EssentialsSigns/src/com/earth2me/essentials/signs/EssentialsSignsPlugin.java
+++ b/EssentialsSigns/src/com/earth2me/essentials/signs/EssentialsSignsPlugin.java
@@ -44,7 +44,14 @@ public class EssentialsSignsPlugin extends JavaPlugin
final SignEntityListener signEntityListener = new SignEntityListener(ess);
pluginManager.registerEvent(Event.Type.ENTITY_EXPLODE, signEntityListener, Event.Priority.Low, this);
pluginManager.registerEvent(Event.Type.ENDERMAN_PICKUP, signEntityListener, Event.Priority.Low, this);
+ //final SignBlockListener signBlockListener = new SignBlockListener(ess);
+ pluginManager.registerEvents(signBlockListener, this);
+ //final SignPlayerListener signPlayerListener = new SignPlayerListener(ess);
+ pluginManager.registerEvents(signPlayerListener, this);
+
+ //final SignEntityListener signEntityListener = new SignEntityListener(ess);
+ pluginManager.registerEvents(signEntityListener, this);
LOGGER.info(_("loadinfo", this.getDescription().getName(), this.getDescription().getVersion(), "essentials team"));
}
diff --git a/EssentialsSigns/src/com/earth2me/essentials/signs/SignBlockListener.java b/EssentialsSigns/src/com/earth2me/essentials/signs/SignBlockListener.java
index 7cc461782..a072cd038 100644
--- a/EssentialsSigns/src/com/earth2me/essentials/signs/SignBlockListener.java
+++ b/EssentialsSigns/src/com/earth2me/essentials/signs/SignBlockListener.java
@@ -8,10 +8,13 @@ import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.Sign;
import org.bukkit.entity.Player;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.block.*;
-public class SignBlockListener extends BlockListener
+public class SignBlockListener implements Listener
{
private final transient IEssentials ess;
private final static Logger LOGGER = Logger.getLogger("Minecraft");
@@ -21,7 +24,7 @@ public class SignBlockListener extends BlockListener
this.ess = ess;
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onBlockBreak(final BlockBreakEvent event)
{
if (event.isCancelled())
@@ -73,7 +76,7 @@ public class SignBlockListener extends BlockListener
return false;
}
- @Override
+ @EventHandler(priority = EventPriority.HIGHEST)
public void onSignChange(final SignChangeEvent event)
{
if (event.isCancelled())
@@ -105,7 +108,7 @@ public class SignBlockListener extends BlockListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onBlockPlace(final BlockPlaceEvent event)
{
if (event.isCancelled())
@@ -139,7 +142,7 @@ public class SignBlockListener extends BlockListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onBlockBurn(final BlockBurnEvent event)
{
if (event.isCancelled())
@@ -168,7 +171,7 @@ public class SignBlockListener extends BlockListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onBlockIgnite(final BlockIgniteEvent event)
{
if (event.isCancelled())
@@ -197,7 +200,7 @@ public class SignBlockListener extends BlockListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onBlockPistonExtend(final BlockPistonExtendEvent event)
{
for (Block block : event.getBlocks())
@@ -223,7 +226,7 @@ public class SignBlockListener extends BlockListener
}
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onBlockPistonRetract(final BlockPistonRetractEvent event)
{
if (event.isSticky())
diff --git a/EssentialsSigns/src/com/earth2me/essentials/signs/SignEntityListener.java b/EssentialsSigns/src/com/earth2me/essentials/signs/SignEntityListener.java
index 12a2fc2f8..2d3413559 100644
--- a/EssentialsSigns/src/com/earth2me/essentials/signs/SignEntityListener.java
+++ b/EssentialsSigns/src/com/earth2me/essentials/signs/SignEntityListener.java
@@ -3,12 +3,14 @@ package com.earth2me.essentials.signs;
import com.earth2me.essentials.api.IEssentials;
import org.bukkit.Material;
import org.bukkit.block.Block;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.entity.EndermanPickupEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
-import org.bukkit.event.entity.EntityListener;
-public class SignEntityListener extends EntityListener
+public class SignEntityListener implements Listener
{
private final transient IEssentials ess;
@@ -17,7 +19,7 @@ public class SignEntityListener extends EntityListener
this.ess = ess;
}
- @Override
+ @EventHandler(priority = EventPriority.LOW)
public void onEntityExplode(final EntityExplodeEvent event)
{
for (Block block : event.blockList())
@@ -42,8 +44,8 @@ public class SignEntityListener extends EntityListener
}
}
- @Override
- public void onEndermanPickup(EndermanPickupEvent event)
+ @EventHandler(priority = EventPriority.LOW)
+ public void onEndermanPickup(final EndermanPickupEvent event)
{
if (event.isCancelled())
{
diff --git a/EssentialsSigns/src/com/earth2me/essentials/signs/SignPlayerListener.java b/EssentialsSigns/src/com/earth2me/essentials/signs/SignPlayerListener.java
index 9f1a22896..dd2219ef8 100644
--- a/EssentialsSigns/src/com/earth2me/essentials/signs/SignPlayerListener.java
+++ b/EssentialsSigns/src/com/earth2me/essentials/signs/SignPlayerListener.java
@@ -4,22 +4,24 @@ import com.earth2me.essentials.api.IEssentials;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.Sign;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
-import org.bukkit.event.player.PlayerListener;
-public class SignPlayerListener extends PlayerListener
+public class SignPlayerListener implements Listener
{
private final transient IEssentials ess;
- public SignPlayerListener(IEssentials ess)
+ public SignPlayerListener(final IEssentials ess)
{
this.ess = ess;
}
- @Override
- public void onPlayerInteract(PlayerInteractEvent event)
+ @EventHandler(priority = EventPriority.LOW)
+ public void onPlayerInteract(final PlayerInteractEvent event)
{
if (event.isCancelled())
{
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawn.java b/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawn.java
index 2e4b5eaa6..1d73ee4c1 100644
--- a/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawn.java
+++ b/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawn.java
@@ -9,7 +9,12 @@ import java.util.logging.Logger;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
-import org.bukkit.event.Event.Type;
+import org.bukkit.event.Event;
+import org.bukkit.event.EventException;
+import org.bukkit.event.Listener;
+import org.bukkit.event.player.PlayerJoinEvent;
+import org.bukkit.event.player.PlayerRespawnEvent;
+import org.bukkit.plugin.EventExecutor;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
@@ -41,10 +46,22 @@ public class EssentialsSpawn extends JavaPlugin
commandHandler = new EssentialsCommandHandler(EssentialsSpawn.class.getClassLoader(), "com.earth2me.essentials.spawn.Command", "essentials.", spawns, ess);
final EssentialsSpawnPlayerListener playerListener = new EssentialsSpawnPlayerListener(ess, spawns);
- pluginManager.registerEvent(Type.PLAYER_RESPAWN, playerListener, spawns.getRespawnPriority(), this);
- pluginManager.registerEvent(Type.PLAYER_JOIN, playerListener, spawns.getRespawnPriority(), this);
-
- LOGGER.info(_("loadinfo", this.getDescription().getName(), this.getDescription().getVersion(), "essentials team"));
+ pluginManager.registerEvent(PlayerRespawnEvent.class, playerListener, spawns.getRespawnPriority(), new EventExecutor()
+ {
+ @Override
+ public void execute(final Listener ll, final Event event) throws EventException
+ {
+ ((EssentialsSpawnPlayerListener)ll).onPlayerRespawn((PlayerRespawnEvent)event);
+ }
+ }, this);
+ pluginManager.registerEvent(PlayerJoinEvent.class, playerListener, spawns.getRespawnPriority(), new EventExecutor()
+ {
+ @Override
+ public void execute(final Listener ll, final Event event) throws EventException
+ {
+ ((EssentialsSpawnPlayerListener)ll).onPlayerJoin((PlayerJoinEvent)event);
+ }
+ }, this);
}
public void onDisable()
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java b/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java
index 08bb4d739..21bd0d499 100644
--- a/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java
+++ b/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java
@@ -7,13 +7,13 @@ import com.earth2me.essentials.api.IUser;
import java.util.logging.Level;
import org.bukkit.Bukkit;
import org.bukkit.Location;
+import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
-import org.bukkit.event.player.PlayerListener;
import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
-public class EssentialsSpawnPlayerListener extends PlayerListener
+public class EssentialsSpawnPlayerListener implements Listener
{
private final transient IEssentials ess;
private final transient SpawnStorage spawns;
@@ -25,7 +25,6 @@ public class EssentialsSpawnPlayerListener extends PlayerListener
this.spawns = spawns;
}
- @Override
public void onPlayerRespawn(final PlayerRespawnEvent event)
{
final IUser user = ess.getUser(event.getPlayer());
@@ -61,7 +60,6 @@ public class EssentialsSpawnPlayerListener extends PlayerListener
}
}
- @Override
public void onPlayerJoin(final PlayerJoinEvent event)
{
final IUser user = ess.getUser(event.getPlayer());
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/SpawnStorage.java b/EssentialsSpawn/src/com/earth2me/essentials/spawn/SpawnStorage.java
index 0c351c753..13eb1f7df 100644
--- a/EssentialsSpawn/src/com/earth2me/essentials/spawn/SpawnStorage.java
+++ b/EssentialsSpawn/src/com/earth2me/essentials/spawn/SpawnStorage.java
@@ -12,6 +12,7 @@ import java.util.Map;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.event.Event.Priority;
+import org.bukkit.event.EventPriority;
public class SpawnStorage extends AsyncStorageObjectHolder<Spawns> implements IEssentialsModule
@@ -90,18 +91,18 @@ public class SpawnStorage extends AsyncStorageObjectHolder<Spawns> implements IE
return ess.getServer().getWorlds().get(0).getSpawnLocation();
}
- public Priority getRespawnPriority()
+ public EventPriority getRespawnPriority()
{
acquireReadLock();
try
{
- for (Priority priority : Priority.values())
+ for (EventPriority priority : EventPriority.values())
{
if (priority.toString().equalsIgnoreCase(getData().getRespawnPriority())) {
return priority;
}
}
- return Priority.Normal;
+ return EventPriority.NORMAL;
} finally {
unlock();
}
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPP.java b/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPP.java
index cf7fb1814..01e1ce131 100644
--- a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPP.java
+++ b/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPP.java
@@ -12,8 +12,6 @@ import java.util.logging.Logger;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
-import org.bukkit.event.Event.Priority;
-import org.bukkit.event.Event.Type;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
@@ -50,9 +48,7 @@ public class EssentialsXMPP extends JavaPlugin implements IEssentialsXMPP
}
final EssentialsXMPPPlayerListener playerListener = new EssentialsXMPPPlayerListener(ess);
- pluginManager.registerEvent(Type.PLAYER_JOIN, playerListener, Priority.Monitor, this);
- pluginManager.registerEvent(Type.PLAYER_CHAT, playerListener, Priority.Monitor, this);
- pluginManager.registerEvent(Type.PLAYER_QUIT, playerListener, Priority.Monitor, this);
+ pluginManager.registerEvents(playerListener, this);
users = new UserManager(this.getDataFolder());
xmpp = new XMPPManager(this);
@@ -61,8 +57,6 @@ public class EssentialsXMPP extends JavaPlugin implements IEssentialsXMPP
ess.addReloadListener(xmpp);
commandHandler = new EssentialsCommandHandler(EssentialsXMPP.class.getClassLoader(), "com.earth2me.essentials.xmpp.Command", "essentials.", ess);
-
- LOGGER.info(_("loadinfo", this.getDescription().getName(), this.getDescription().getVersion(), "essentials team"));
}
@Override
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java b/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java
index 1bf672515..b6daf8114 100644
--- a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java
+++ b/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java
@@ -2,13 +2,15 @@ package com.earth2me.essentials.xmpp;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IUser;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerChatEvent;
import org.bukkit.event.player.PlayerJoinEvent;
-import org.bukkit.event.player.PlayerListener;
import org.bukkit.event.player.PlayerQuitEvent;
-class EssentialsXMPPPlayerListener extends PlayerListener
+class EssentialsXMPPPlayerListener implements Listener
{
private final transient IEssentials ess;
@@ -18,21 +20,21 @@ class EssentialsXMPPPlayerListener extends PlayerListener
this.ess = ess;
}
- @Override
+ @EventHandler(priority= EventPriority.MONITOR)
public void onPlayerJoin(final PlayerJoinEvent event)
{
final IUser user = ess.getUser(event.getPlayer());
sendMessageToSpyUsers("Player " + user.getDisplayName() + " joined the game");
}
- @Override
+ @EventHandler(priority= EventPriority.MONITOR)
public void onPlayerChat(final PlayerChatEvent event)
{
final IUser user = ess.getUser(event.getPlayer());
sendMessageToSpyUsers(String.format(event.getFormat(), user.getDisplayName(), event.getMessage()));
}
- @Override
+ @EventHandler(priority= EventPriority.MONITOR)
public void onPlayerQuit(final PlayerQuitEvent event)
{
final IUser user = ess.getUser(event.getPlayer());
diff --git a/lib/bukkit.jar b/lib/bukkit.jar
index 0dbb054f0..14f2e6e0b 100644
--- a/lib/bukkit.jar
+++ b/lib/bukkit.jar
Binary files differ
diff --git a/lib/craftbukkit.jar b/lib/craftbukkit.jar
index 7aac44932..f22af8eca 100644
--- a/lib/craftbukkit.jar
+++ b/lib/craftbukkit.jar
Binary files differ
diff --git a/lib/lombok-0.10.1.jar b/lib/lombok-0.10.8.jar
index 993ebc3c2..3737eb096 100644
--- a/lib/lombok-0.10.1.jar
+++ b/lib/lombok-0.10.8.jar
Binary files differ