package net.minecraft.server; import java.util.List; import javax.annotation.Nullable; public class BlockWaterLily extends BlockPlant { protected static final AxisAlignedBB a = new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, 0.9375D, 0.09375D, 0.9375D); protected BlockWaterLily() { this.a(CreativeModeTab.c); } public void a(IBlockData iblockdata, World world, BlockPosition blockposition, AxisAlignedBB axisalignedbb, List<AxisAlignedBB> list, @Nullable Entity entity, boolean flag) { if (!(entity instanceof EntityBoat)) { a(blockposition, axisalignedbb, list, BlockWaterLily.a); } } public void a(World world, BlockPosition blockposition, IBlockData iblockdata, Entity entity) { super.a(world, blockposition, iblockdata, entity); if (entity instanceof EntityBoat && !org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(entity, blockposition, Blocks.AIR, 0).isCancelled()) { // CraftBukkit world.setAir(new BlockPosition(blockposition), true); } } public AxisAlignedBB b(IBlockData iblockdata, IBlockAccess iblockaccess, BlockPosition blockposition) { return BlockWaterLily.a; } protected boolean i(IBlockData iblockdata) { return iblockdata.getBlock() == Blocks.WATER || iblockdata.getMaterial() == Material.ICE; } public boolean f(World world, BlockPosition blockposition, IBlockData iblockdata) { if (blockposition.getY() >= 0 && blockposition.getY() < 256) { IBlockData iblockdata1 = world.getType(blockposition.down()); Material material = iblockdata1.getMaterial(); return material == Material.WATER && ((Integer) iblockdata1.get(BlockFluids.LEVEL)).intValue() == 0 || material == Material.ICE; } else { return false; } } public int toLegacyData(IBlockData iblockdata) { return 0; } }