diff options
Diffstat (limited to 'src/main/java/me/shedaniel/rei/api/IRecipeHelper.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/api/IRecipeHelper.java | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/main/java/me/shedaniel/rei/api/IRecipeHelper.java b/src/main/java/me/shedaniel/rei/api/IRecipeHelper.java new file mode 100644 index 000000000..8d9651f32 --- /dev/null +++ b/src/main/java/me/shedaniel/rei/api/IRecipeHelper.java @@ -0,0 +1,44 @@ +package me.shedaniel.rei.api; + +import me.shedaniel.rei.RoughlyEnoughItemsCore; +import net.minecraft.item.ItemStack; +import net.minecraft.recipe.RecipeManager; +import net.minecraft.util.Identifier; + +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public interface IRecipeHelper { + + public static IRecipeHelper getInstance() { + return RoughlyEnoughItemsCore.getRecipeHelper(); + } + + public int getRecipeCount(); + + public List<ItemStack> findCraftableByItems(List<ItemStack> inventoryItems); + + public void registerCategory(IRecipeCategory category); + + public void registerDisplay(Identifier categoryIdentifier, IRecipeDisplay display); + + public Map<IRecipeCategory, List<IRecipeDisplay>> getRecipesFor(ItemStack stack); + + public RecipeManager getRecipeManager(); + + public List<IRecipeCategory> getAllCategories(); + + public Map<IRecipeCategory, List<IRecipeDisplay>> getUsagesFor(ItemStack stack); + + public Optional<SpeedCraftAreaSupplier> getSpeedCraftButtonArea(IRecipeCategory category); + + public void registerSpeedCraftButtonArea(Identifier category, SpeedCraftAreaSupplier rectangle); + + public List<SpeedCraftFunctional> getSpeedCraftFunctional(IRecipeCategory category); + + public void registerSpeedCraftFunctional(Identifier category, SpeedCraftFunctional functional); + + Map<IRecipeCategory, List<IRecipeDisplay>> getAllRecipes(); + +} |
