summaryrefslogtreecommitdiffstats
path: root/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
diff options
context:
space:
mode:
Diffstat (limited to 'EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java')
-rw-r--r--EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
index 5adb2b4a3..d2553b30f 100644
--- a/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
+++ b/EssentialsProtect/src/net/ess3/protect/EssentialsProtectEntityListener.java
@@ -89,6 +89,14 @@ public class EssentialsProtectEntityListener implements Listener
event.setCancelled(true);
return;
}
+
+ if ((event.getEntity() instanceof WitherSkull
+ && Permissions.PREVENTDAMAGE_WITHERSKULL.isAuthorized(user)
+ && !Permissions.PREVENTDAMAGE_NONE.isAuthorized(user)))
+ {
+ event.setCancelled(true);
+ return;
+ }
if (eAttack instanceof TNTPrimed
&& (Permissions.PREVENTDAMAGE_TNT.isAuthorized(user)
@@ -171,6 +179,12 @@ public class EssentialsProtectEntityListener implements Listener
event.setCancelled(true);
return;
}
+ else if (event.getEntity() instanceof Wither
+ && settings.getData().getPrevent().isWitherSpawnExplosion())
+ {
+ event.setCancelled(true);
+ return;
+ }
else if (event.getEntity() instanceof Creeper
&& (settings.getData().getPrevent().isCreeperExplosion()
|| settings.getData().getPrevent().isCreeperBlockdamage()
@@ -192,6 +206,12 @@ public class EssentialsProtectEntityListener implements Listener
event.setCancelled(true);
return;
}
+ else if ((event.getEntity() instanceof WitherSkull)
+ && settings.getData().getPrevent().isWitherSkullExplosion())
+ {
+ event.setCancelled(true);
+ return;
+ }
}
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
@@ -239,5 +259,10 @@ public class EssentialsProtectEntityListener implements Listener
{
event.setCancelled(true);
}
+ if (event.getEntityType() == EntityType.WITHER && settings.getData().getPrevent().isWitherBlockreplace())
+ {
+ event.setCancelled(true);
+ return;
+ }
}
}