package gregtech.api.interfaces.tileentity; import gregtech.api.recipe.check.SingleRecipeCheck; /** * Machines implementing this interface can have logic to lock to a single recipe. */ public interface IRecipeLockable extends RecipeMapWorkable { /** * @return if this machine supports single recipe locking. */ boolean supportsSingleRecipeLocking(); /** * @return true if recipe locking is enabled, else false. This is getter is used for displaying the icon in the GUI */ boolean isRecipeLockingEnabled(); void setRecipeLocking(boolean enabled); default boolean getDefaultRecipeLockingMode() { return false; } default SingleRecipeCheck getSingleRecipeCheck() { return null; } default void setSingleRecipeCheck(SingleRecipeCheck recipeCheck) {} }