--- a/net/minecraft/server/BlockCrops.java +++ b/net/minecraft/server/BlockCrops.java @@ -2,6 +2,8 @@ import java.util.Random; +import org.bukkit.craftbukkit.event.CraftEventFactory; // CraftBukkit + public class BlockCrops extends BlockPlant implements IBlockFragilePlantElement { public static final BlockStateInteger AGE = BlockProperties.ai; @@ -56,7 +58,7 @@ float f = a((Block) this, (IBlockAccess) worldserver, blockposition); if (random.nextInt((int) (25.0F / f) + 1) == 0) { - worldserver.setTypeAndData(blockposition, this.setAge(i + 1), 2); + CraftEventFactory.handleBlockGrowEvent(worldserver, blockposition, this.setAge(i + 1), 2); // CraftBukkit } } } @@ -71,7 +73,7 @@ i = j; } - world.setTypeAndData(blockposition, this.setAge(i), 2); + CraftEventFactory.handleBlockGrowEvent(world, blockposition, this.setAge(i), 2); // CraftBukkit } protected int a(World world) { @@ -129,7 +131,7 @@ @Override public void a(IBlockData iblockdata, World world, BlockPosition blockposition, Entity entity) { - if (entity instanceof EntityRavager && world.getGameRules().getBoolean(GameRules.MOB_GRIEFING)) { + if (entity instanceof EntityRavager && !CraftEventFactory.callEntityChangeBlockEvent(entity, blockposition, Blocks.AIR.getBlockData(), !world.getGameRules().getBoolean(GameRules.MOB_GRIEFING)).isCancelled()) { // CraftBukkit world.a(blockposition, true, entity); }