summaryrefslogtreecommitdiffstats
path: root/EssentialsProtect/src/net
diff options
context:
space:
mode:
Diffstat (limited to 'EssentialsProtect/src/net')
-rw-r--r--EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java7
-rw-r--r--EssentialsProtect/src/net/ess3/protect/Permissions.java1
2 files changed, 8 insertions, 0 deletions
diff --git a/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
index 7b3b8dc9d..5adb2b4a3 100644
--- a/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
+++ b/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
@@ -149,6 +149,13 @@ public class EssentialsProtectEntityListener implements Listener
{
event.setCancelled(true);
}
+ if (cause == DamageCause.WITHER
+ && (Permissions.PREVENTDAMAGE_WITHER.isAuthorized(user))
+ && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user))
+ {
+ event.setCancelled(true);
+ return;
+ }
}
}
diff --git a/EssentialsProtect/src/net/ess3/protect/Permissions.java b/EssentialsProtect/src/net/ess3/protect/Permissions.java
index 6226fdf7f..9574ca886 100644
--- a/EssentialsProtect/src/net/ess3/protect/Permissions.java
+++ b/EssentialsProtect/src/net/ess3/protect/Permissions.java
@@ -22,6 +22,7 @@ public enum Permissions implements IPermission
PREVENTDAMAGE_FIRE(PermissionDefault.FALSE),
PREVENTDAMAGE_DROWNING(PermissionDefault.FALSE),
PREVENTDAMAGE_LIGHTNING(PermissionDefault.FALSE),
+ PREVENTDAMAGE_WITHER(PermissionDefault.FALSE),
PREVENTDAMAGE_NONE(PermissionDefault.FALSE),
USEFLINTSTEEL(PermissionDefault.TRUE);
private static final String base = "essentials.protect.";