--- a/net/minecraft/world/level/block/BlockWaterLily.java
+++ b/net/minecraft/world/level/block/BlockWaterLily.java
@@ -14,6 +14,10 @@
 import net.minecraft.world.phys.shapes.VoxelShape;
 import net.minecraft.world.phys.shapes.VoxelShapeCollision;
 
+// CraftBukkit start
+import org.bukkit.craftbukkit.event.CraftEventFactory;
+// CraftBukkit end
+
 public class BlockWaterLily extends BlockPlant {
 
     public static final MapCodec<BlockWaterLily> CODEC = simpleCodec(BlockWaterLily::new);
@@ -32,6 +36,11 @@
     protected void entityInside(IBlockData iblockdata, World world, BlockPosition blockposition, Entity entity) {
         super.entityInside(iblockdata, world, blockposition, entity);
         if (world instanceof WorldServer && entity instanceof AbstractBoat) {
+            // CraftBukkit start
+            if (!CraftEventFactory.callEntityChangeBlockEvent(entity, blockposition, Blocks.AIR.defaultBlockState())) {
+                return;
+            }
+            // CraftBukkit end
             world.destroyBlock(new BlockPosition(blockposition), true, entity);
         }
 
