IRecipeManager

Default interface for Registry based handlers as they can all remove recipes by ResourceLocation.

Importing the class

It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.

import crafttweaker.api.registries.IRecipeManager;

Implemented Interfaces

IRecipeManager implements the following interfaces. That means all methods defined in these interfaces are also available in IRecipeManager

Methods

addJSONRecipe

Adds a recipe based on a provided IData. The provided IData should represent a DataPack JSON, this effectively allows you to register recipes for any DataPack supporting IRecipeType systems.

Return Type: void

IRecipeManager.addJSONRecipe(name as string, data as IData) as void
craftingTable.addJSONRecipe("recipe_name", {ingredient:{item:<item:minecraft:gold_ore>.registryName},result:<item:minecraft:cooked_porkchop>.registryName,experience:0.35 as float, cookingtime:100});
ParameterTypeDescription
namestringname of the recipe
dataIDatadata representing the json file
getAllRecipes

Return Type: stdlib.List<WrapperRecipe>

IRecipeManager.getAllRecipes() as stdlib.List<WrapperRecipe>
craftingTable.getAllRecipes();
getRecipeByName

Return Type: WrapperRecipe

IRecipeManager.getRecipeByName(name as string) as WrapperRecipe
ParameterTypeDescription
namestringNo Description Provided
getRecipesByOutput

Return Type: stdlib.List<WrapperRecipe>

IRecipeManager.getRecipesByOutput(output as IIngredient) as stdlib.List<WrapperRecipe>
ParameterTypeDescription
outputIIngredientNo Description Provided
removeAll

Remove all recipes in this registry

Return Type: void

IRecipeManager.removeAll() as void
craftingTable.removeAll();
removeByModid

Remove recipe based on Registry name modid

Return Type: void

IRecipeManager.removeByModid(modid as string) as void
craftingTable.removeByModid("minecraft");
ParameterTypeDescription
modidstringmodid of the recipes to remove
removeByModid

Remove recipe based on Registry name modid with an added exclusion check, so you can remove the whole mod besides a few specified.

Return Type: void

IRecipeManager.removeByModid(modid as string, exclude as RecipeFilter) as void
craftingTable.removeByModid("minecraft", (name as string) => {return name == "orange_wool";});
ParameterTypeDescription
modidstringmodid of the recipes to remove
excludeRecipeFilterrecipes to exlude from being removed.
removeByName

Remove recipe based on Registry name

Return Type: void

IRecipeManager.removeByName(name as string) as void
craftingTable.removeByName("minecraft:furnace");
ParameterTypeDescription
namestringregistry name of recipe to remove
removeByRegex

Remove recipe based on regex

Return Type: void

IRecipeManager.removeByRegex(regex as string) as void
craftingTable.removeByRegex("\\d_\\d");
ParameterTypeDescription
regexstringregex to match against
removeRecipe

Remove a recipe based on it's output.

Return Type: void

IRecipeManager.removeRecipe(output as IItemStack) as void
craftingTable.removeRecipe(<item:minecraft:glass>);
ParameterTypeDescription
outputIItemStackoutput of the recipe