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;
}
}