From 1b48298d25b99010c8ddecb24f800e7346763dad Mon Sep 17 00:00:00 2001 From: bloodshot Date: Sat, 31 May 2014 18:19:44 -0400 Subject: Add special case for handling place event with lilies. Fixes BUKKIT-5641 --- src/main/java/net/minecraft/server/ItemWaterLily.java | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/main/java/net/minecraft/server/ItemWaterLily.java') diff --git a/src/main/java/net/minecraft/server/ItemWaterLily.java b/src/main/java/net/minecraft/server/ItemWaterLily.java index abf1b3f8..246090d6 100644 --- a/src/main/java/net/minecraft/server/ItemWaterLily.java +++ b/src/main/java/net/minecraft/server/ItemWaterLily.java @@ -26,7 +26,15 @@ public class ItemWaterLily extends ItemWithAuxData { } if (world.getType(i, j, k).getMaterial() == Material.WATER && world.getData(i, j, k) == 0 && world.isEmpty(i, j + 1, k)) { + // CraftBukkit start - special case for handling block placement with water lilies + org.bukkit.block.BlockState blockstate = org.bukkit.craftbukkit.block.CraftBlockState.getBlockState(world, i, j + 1, k); world.setTypeUpdate(i, j + 1, k, Blocks.WATER_LILY); + org.bukkit.event.block.BlockPlaceEvent placeEvent = org.bukkit.craftbukkit.event.CraftEventFactory.callBlockPlaceEvent(world, entityhuman, blockstate, i, j, k); + if (placeEvent != null && (placeEvent.isCancelled() || !placeEvent.canBuild())) { + blockstate.update(true, false); + return itemstack; + } + // CraftBukkit end if (!entityhuman.abilities.canInstantlyBuild) { --itemstack.count; -- cgit v1.2.3