From 62b3c9098ce1ae833e24b28f7ac178f2d7ebdbbe Mon Sep 17 00:00:00 2001 From: ryanhamshire Date: Wed, 13 Apr 2016 20:14:11 -0700 Subject: [PATCH] Players with build permission can trample crops. Previously, no crop trampling - now it's possible if the player has build permission. Non-players (animals/monsters) still can't trample because it's possible they may be manipulated by griefers to do that. --- .../GriefPrevention/EntityEventHandler.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/me/ryanhamshire/GriefPrevention/EntityEventHandler.java b/src/me/ryanhamshire/GriefPrevention/EntityEventHandler.java index 56a75f0..46802c3 100644 --- a/src/me/ryanhamshire/GriefPrevention/EntityEventHandler.java +++ b/src/me/ryanhamshire/GriefPrevention/EntityEventHandler.java @@ -138,10 +138,22 @@ public class EntityEventHandler implements Listener event.setCancelled(true); } - //don't allow crops to be trampled + //don't allow crops to be trampled, except by a player with build permission else if(event.getTo() == Material.DIRT && event.getBlock().getType() == Material.SOIL) { - event.setCancelled(true); + if(event.getEntityType() != EntityType.PLAYER) + { + event.setCancelled(true); + } + else + { + Player player = (Player)event.getEntity(); + Block block = event.getBlock(); + if(GriefPrevention.instance.allowBreak(player, block, block.getLocation()) != null) + { + event.setCancelled(true); + } + } } //sand cannon fix - when the falling block doesn't fall straight down, take additional anti-grief steps