Compare commits

..
4 Commits
6 changed files with 33 additions and 10 deletions

No files matched your search

+6
View File
@@ -1,3 +1,9 @@
2.3.1:
- Fixed various cast exceptions with the blacklist loggers.
- Added checks for unchecked exceptions when resolving permissions.
- Fixed the item durability disable setting changing the damage value on
an empty hand.
2.3:
- /god now works very well.
- Item (TNT, flint and steel, etc.) blocking should now work.
@@ -56,8 +56,8 @@ public class ConsoleLoggerHandler implements BlacklistLoggerHandler {
+ (comment != null ? " (" + comment + ")" : ""));
// Block interact
} else if (event instanceof BlockPlaceBlacklistEvent) {
BlockPlaceBlacklistEvent evt = (BlockPlaceBlacklistEvent)event;
} else if (event instanceof BlockInteractBlacklistEvent) {
BlockInteractBlacklistEvent evt = (BlockInteractBlacklistEvent)event;
logger.log(Level.INFO, "WorldGuard: " + event.getPlayer().getName()
+ " tried to interact with " + getFriendlyItemName(evt.getType())
+ (comment != null ? " (" + comment + ")" : ""));
@@ -172,7 +172,7 @@ public class DatabaseLoggerHandler implements BlacklistLoggerHandler {
// Use
} else if (event instanceof ItemUseBlacklistEvent) {
ItemDropBlacklistEvent evt = (ItemDropBlacklistEvent)event;
ItemUseBlacklistEvent evt = (ItemUseBlacklistEvent)event;
logEvent("USE", evt.getPlayer(), evt.getPlayer().getPosition(),
evt.getType(), comment);
@@ -255,12 +255,12 @@ public class FileLoggerHandler implements BlacklistLoggerHandler {
// Drop
} else if (event instanceof ItemDropBlacklistEvent) {
ItemAcquireBlacklistEvent evt = (ItemAcquireBlacklistEvent)event;
ItemDropBlacklistEvent evt = (ItemDropBlacklistEvent)event;
logEvent(event, "drop", evt.getType(), evt.getPosition(), comment);
// Use
} else if (event instanceof ItemUseBlacklistEvent) {
ItemDropBlacklistEvent evt = (ItemDropBlacklistEvent)event;
ItemUseBlacklistEvent evt = (ItemUseBlacklistEvent)event;
logEvent(event, "use", evt.getType(), evt.getPosition(), comment);
// Unknown
@@ -63,8 +63,10 @@ public class WorldGuardBlockListener extends BlockListener {
if (!plugin.itemDurability && event.getDamageLevel() == BlockDamageLevel.BROKEN) {
ItemStack held = player.getItemInHand();
held.setDamage((byte)-1);
player.setItemInHand(held);
if (held.getTypeId() > 0) {
held.setDamage((byte)-1);
player.setItemInHand(held);
}
}
if (plugin.useRegions && event.getDamageLevel() == BlockDamageLevel.BROKEN) {
@@ -1207,15 +1207,30 @@ public class WorldGuardPlugin extends JavaPlugin {
}
boolean inGroup(Player player, String group) {
return perms.inGroup(player.getName(), group);
try {
return perms.inGroup(player.getName(), group);
} catch (Throwable t) {
t.printStackTrace();
return false;
}
}
boolean hasPermission(Player player, String perm) {
return player.isOp() || perms.hasPermission(player.getName(), perm);
try {
return player.isOp() || perms.hasPermission(player.getName(), perm);
} catch (Throwable t) {
t.printStackTrace();
return false;
}
}
String[] getGroups(Player player) {
return perms.getGroups(player.getName());
try {
return perms.getGroups(player.getName());
} catch (Throwable t) {
t.printStackTrace();
return new String[0];
}
}
BukkitPlayer wrapPlayer(Player player) {