41 lines
914 B
Java
41 lines
914 B
Java
|
package buildcraft.api.tools;
|
||
|
|
||
|
import net.minecraft.item.ItemStack;
|
||
|
import net.minecraftforge.fluids.FluidStack;
|
||
|
|
||
|
public interface IToolPipette {
|
||
|
|
||
|
/**
|
||
|
* @param pipette
|
||
|
* ItemStack of the pipette.
|
||
|
* @return Capacity of the pipette.
|
||
|
*/
|
||
|
int getCapacity(ItemStack pipette);
|
||
|
|
||
|
/**
|
||
|
* @param pipette
|
||
|
* @return true if the pipette can pipette.
|
||
|
*/
|
||
|
boolean canPipette(ItemStack pipette);
|
||
|
|
||
|
/**
|
||
|
* Fills the pipette with the given liquid stack.
|
||
|
*
|
||
|
* @param pipette
|
||
|
* @param liquid
|
||
|
* @param doFill
|
||
|
* @return Amount of liquid used in filling the pipette.
|
||
|
*/
|
||
|
int fill(ItemStack pipette, FluidStack liquid, boolean doFill);
|
||
|
|
||
|
/**
|
||
|
* Drains liquid from the pipette
|
||
|
*
|
||
|
* @param pipette
|
||
|
* @param maxDrain
|
||
|
* @param doDrain
|
||
|
* @return Fluid stack representing the liquid and amount drained from the pipette.
|
||
|
*/
|
||
|
FluidStack drain(ItemStack pipette, int maxDrain, boolean doDrain);
|
||
|
}
|