diff options
Diffstat (limited to 'src/main/java/net/minecraft/server/ItemWaterLily.java')
-rw-r--r-- | src/main/java/net/minecraft/server/ItemWaterLily.java | 8 |
1 files changed, 8 insertions, 0 deletions
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; |