aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/multitileentity/interfaces/IMultiBlockFluidHandler.java
blob: e5d2e4f6913792ddd32637a3ff0bc876304330e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package gregtech.api.multitileentity.interfaces;

import gregtech.api.multitileentity.multiblock.base.MultiBlockPart;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidTankInfo;

public interface IMultiBlockFluidHandler {
    int fill(MultiBlockPart aPart, ForgeDirection aDirection, FluidStack aFluid, boolean aDoFill);

    FluidStack drain(MultiBlockPart aPart, ForgeDirection aDirection, FluidStack aFluid, boolean aDoDrain);

    FluidStack drain(MultiBlockPart aPart, ForgeDirection aDirection, int aAmountToDrain, boolean aDoDrain);

    boolean canFill(MultiBlockPart aPart, ForgeDirection aDirection, Fluid aFluid);

    boolean canDrain(MultiBlockPart aPart, ForgeDirection aDirection, Fluid aFluid);

    FluidTankInfo[] getTankInfo(MultiBlockPart aPart, ForgeDirection aDirection);
}