List of usage examples for net.minecraftforge.fluids.capability IFluidHandler IFluidHandler
IFluidHandler
From source file:de.ellpeck.actuallyadditions.mod.tile.TileEntityLaserRelayFluids.java
public TileEntityLaserRelayFluids() { super("laserRelayFluids", LaserType.FLUID); for (int i = 0; i < this.fluidHandlers.length; i++) { final EnumFacing facing = EnumFacing.values()[i]; this.fluidHandlers[i] = new IFluidHandler() { @Override/* www. ja v a2s.c o m*/ public IFluidTankProperties[] getTankProperties() { return new IFluidTankProperties[0]; } @Override public int fill(FluidStack resource, boolean doFill) { return TileEntityLaserRelayFluids.this.transmitFluid(facing, resource, doFill); } @Override public FluidStack drain(FluidStack resource, boolean doDrain) { return null; } @Override public FluidStack drain(int maxDrain, boolean doDrain) { return null; } }; } }
From source file:therogue.storehouse.multiblock.block.FluidCapabilityWrapper.java
License:Open Source License
@Override public IFluidHandler getWrappedCapability(IFluidHandler wrappable) { return new IFluidHandler() { @Override/*from w w w . j av a 2 s.c o m*/ public IFluidTankProperties[] getTankProperties() { IFluidTankProperties[] properties = wrappable.getTankProperties(); IFluidTankProperties[] newProperties = new IFluidTankProperties[properties.length]; for (int i = 0; i < properties.length; i++) { IFluidTankProperties element = properties[i]; newProperties[i] = new IFluidTankProperties() { @Override public FluidStack getContents() { return element.getContents(); } @Override public int getCapacity() { return element.getCapacity(); } @Override public boolean canFill() { return canFill ? element.canFill() : false; } @Override public boolean canDrain() { return canDrain ? element.canDrain() : false; } @Override public boolean canFillFluidType(FluidStack fluidStack) { return canFill ? element.canFillFluidType(fluidStack) : false; } @Override public boolean canDrainFluidType(FluidStack fluidStack) { return canDrain ? element.canDrainFluidType(fluidStack) : false; } }; } return newProperties; } @Override public int fill(FluidStack resource, boolean doFill) { return canFill ? wrappable.fill(resource, doFill) : 0; } @Override public FluidStack drain(FluidStack resource, boolean doDrain) { return canFill ? wrappable.drain(resource, doDrain) : null; } @Override public FluidStack drain(int maxDrain, boolean doDrain) { return canFill ? wrappable.drain(maxDrain, doDrain) : null; } }; }