diff options
Diffstat (limited to 'src/main/java/gregtech/api/interfaces/metatileentity')
-rw-r--r-- | src/main/java/gregtech/api/interfaces/metatileentity/IFluidLockable.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/interfaces/metatileentity/IFluidLockable.java b/src/main/java/gregtech/api/interfaces/metatileentity/IFluidLockable.java new file mode 100644 index 0000000000..688a85b521 --- /dev/null +++ b/src/main/java/gregtech/api/interfaces/metatileentity/IFluidLockable.java @@ -0,0 +1,29 @@ +package gregtech.api.interfaces.metatileentity; + +import net.minecraftforge.fluids.Fluid; + +/** + * Implement this interface if your MetaTileEntity supports fluid lock mechanism. + */ +@SuppressWarnings({"BooleanMethodIsAlwaysInverted", "unused"}) +public interface IFluidLockable { + + /** + * Use {@link Fluid#getName()} instead of {@link Fluid#getUnlocalizedName()} for fluid name + */ + void setLockedFluidName(String name); + + String getLockedFluidName(); + + /** + * Set fluid lock state. + * Would be useful when you don't necessarily want to change mode when locked fluid is changed. + */ + void lockFluid(boolean lock); + + boolean isFluidLocked(); + + boolean allowChangingLockedFluid(String name); + + default void onFluidLockPacketReceived(String name) {} +} |