コード例 #1
0
ファイル: FluidHelper.java プロジェクト: asiekierka/Railcraft
 public static FluidStack drainBlock(
     Block block, World world, int x, int y, int z, boolean doDrain) {
   if (block instanceof IFluidBlock) {
     IFluidBlock fluidBlock = (IFluidBlock) block;
     if (fluidBlock.canDrain(world, x, y, z)) return fluidBlock.drain(world, x, y, z, doDrain);
   } else if (block == Blocks.water || block == Blocks.flowing_water) {
     int meta = world.getBlockMetadata(x, y, z);
     if (meta != 0) return null;
     if (doDrain) world.setBlockToAir(x, y, z);
     return new FluidStack(FluidRegistry.WATER, FluidContainerRegistry.BUCKET_VOLUME);
   } else if (block == Blocks.lava || block == Blocks.flowing_lava) {
     int meta = world.getBlockMetadata(x, y, z);
     if (meta != 0) return null;
     if (doDrain) world.setBlockToAir(x, y, z);
     return new FluidStack(FluidRegistry.LAVA, FluidContainerRegistry.BUCKET_VOLUME);
   }
   return null;
 }