summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIaccidentally <coryhuckaby@gmail.com>2013-02-25 22:01:49 -0500
committerIaccidentally <coryhuckaby@gmail.com>2013-02-25 22:01:49 -0500
commitde91073dda6ac07f06f2d378bec8b6c7f904a23c (patch)
tree4f8a1e8f1baad8f08f04f04527d950f5a9ef32aa
parenta11e8d42361c0e01d6dbefad7718723efd525fcf (diff)
parentbf8f0365d947ce09dcd7519d918c09cd87e215ee (diff)
downloadEssentials-de91073dda6ac07f06f2d378bec8b6c7f904a23c.tar
Essentials-de91073dda6ac07f06f2d378bec8b6c7f904a23c.tar.gz
Essentials-de91073dda6ac07f06f2d378bec8b6c7f904a23c.tar.lz
Essentials-de91073dda6ac07f06f2d378bec8b6c7f904a23c.tar.xz
Essentials-de91073dda6ac07f06f2d378bec8b6c7f904a23c.zip
Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
index d9102c023..4ba608d48 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
@@ -13,6 +13,8 @@ import org.bukkit.event.Listener;
import org.bukkit.event.entity.*;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import org.bukkit.event.entity.EntityTargetEvent.TargetReason;
+import org.bukkit.event.hanging.HangingBreakByEntityEvent;
+import org.bukkit.event.hanging.HangingBreakEvent;
public class EssentialsProtectEntityListener implements Listener
@@ -176,7 +178,7 @@ public class EssentialsProtectEntityListener implements Listener
private boolean shouldBeDamaged(final User user, final String type)
{
return (user.isAuthorized("essentials.protect.damage.".concat(type))
- && !user.isAuthorized("essentials.protect.damage.disable"));
+ && !user.isAuthorized("essentials.protect.damage.disable"));
}
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
@@ -232,7 +234,7 @@ public class EssentialsProtectEntityListener implements Listener
event.setCancelled(true);
return;
}
-
+
// This code will prevent explosions near protected rails, signs or protected chests
// TODO: Use protect db instead of this code
@@ -332,4 +334,15 @@ public class EssentialsProtectEntityListener implements Listener
event.setCancelled(true);
}
}
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onPaintingBreak(HangingBreakByEntityEvent event)
+ {
+ if (event.getCause() == HangingBreakEvent.RemoveCause.ENTITY
+ && event.getRemover() instanceof Creeper
+ && prot.getSettingBool(ProtectConfig.prevent_creeper_explosion))
+ {
+ event.setCancelled(true);
+ }
+ }
}