--- ../work/decompile-8eb82bde//net/minecraft/server/PathfinderGoalSilverfishHideInBlock.java	2014-11-28 17:43:43.309707430 +0000
+++ src/main/java/net/minecraft/server/PathfinderGoalSilverfishHideInBlock.java	2014-11-28 17:38:23.000000000 +0000
@@ -51,6 +51,11 @@
             IBlockData iblockdata = world.getType(blockposition);
 
             if (BlockMonsterEggs.d(iblockdata)) {
+                // CraftBukkit start
+                if (org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(this.silverfish, blockposition.getX(), blockposition.getY(), blockposition.getZ(), Blocks.MONSTER_EGG, Block.getId(BlockMonsterEggs.getById(iblockdata.getBlock().toLegacyData(iblockdata)))).isCancelled()) {
+                    return;
+                }
+                // CraftBukkit end
                 world.setTypeAndData(blockposition, Blocks.MONSTER_EGG.getBlockData().set(BlockMonsterEggs.VARIANT, EnumMonsterEggVarient.a(iblockdata)), 3);
                 this.silverfish.y();
                 this.silverfish.die();