--- a/net/minecraft/server/BlockWaterLily.java
+++ b/net/minecraft/server/BlockWaterLily.java
@@ -20,7 +20,7 @@
 
     public void a(World world, BlockPosition blockposition, IBlockData iblockdata, Entity entity) {
         super.a(world, blockposition, iblockdata, entity);
-        if (entity instanceof EntityBoat) {
+        if (entity instanceof EntityBoat && !org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(entity, blockposition, Blocks.AIR, 0).isCancelled()) { // CraftBukkit
             world.setAir(new BlockPosition(blockposition), true);
         }