CraftingTableManager

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.

ZenScript
Copy
import crafttweaker.api.CraftingTableManager;

Implemented Interfaces

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

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

ZenScript
Copy
CraftingTableManager.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
addShaped

Adds a shaped recipe to the crafting table

Return Type: void

ZenScript
Copy
CraftingTableManager.addShaped(recipeName as string, output as IItemStack, ingredients as IIngredient[][], recipeFunction as RecipeFunctionMatrix) as void
craftingTable.addShaped("recipe_name", <item:minecraft:dirt>, [[<item:minecraft:diamond>], [<tag:items:minecraft:wool>]], (usualOut as IItemStack, inputs as IItemStack[][]) => {if(inputs[0][0].displayName == "totally real diamond block" ){return usualOut;}return <item:minecraft:clay>.setDisplayName("Diamond");});
ParameterTypeDescriptionOptionalDefaultValue
recipeNamestringname of the recipe to add.false
outputIItemStackoutput IItemStackfalse
ingredientsIIngredient[][]array of an array of IIngredient for inputsfalse
recipeFunctionRecipeFunctionMatrixoptional RecipeFunctionMatrix for more advanced conditionstrue
addShapedMirrored

Adds a mirrored shaped recipe to the crafting table

Return Type: void

ZenScript
Copy
CraftingTableManager.addShapedMirrored(recipeName as string, output as IItemStack, ingredients as IIngredient[][], recipeFunction as RecipeFunctionMatrix) as void
craftingTable.addShapedMirrored("recipe_name", <item:minecraft:dirt>, [[<item:minecraft:diamond>], [<tag:items:minecraft:wool>]], (usualOut as IItemStack, inputs as IItemStack[][]) => {if(inputs[0][0].displayName == "totally real diamond block" ){return usualOut;}return <item:minecraft:clay>.setDisplayName("Diamond");});
ParameterTypeDescriptionOptionalDefaultValue
recipeNamestringname of the recipe to add.false
outputIItemStackoutput IItemStackfalse
ingredientsIIngredient[][]array of an array of IIngredient for inputsfalse
recipeFunctionRecipeFunctionMatrixoptional RecipeFunctionMatrix for more advanced conditionstrue
addShapeless

Adds a shapeless recipe to the crafting table

Return Type: void

ZenScript
Copy
CraftingTableManager.addShapeless(recipeName as string, output as IItemStack, ingredients as IIngredient[], recipeFunction as RecipeFunctionArray) as void
craftingTable.addShapeless("recipe_name", <item:minecraft:dirt>, [<item:minecraft:diamond>, <tag:items:minecraft:wool>], (usualOut as IItemStack, inputs as IItemStack[]) => {if(inputs[0].displayName == "totally real diamond block" ){return usualOut;}return <item:minecraft:clay>.setDisplayName("Diamond");});
ParameterTypeDescriptionOptionalDefaultValue
recipeNamestringname of the recipe to add.false
outputIItemStackoutput IItemStackfalse
ingredientsIIngredient[]array of IIngredient for inputsfalse
recipeFunctionRecipeFunctionArrayoptional RecipeFunctionArray for more advanced conditionstrue
getAllRecipes

Return Type: stdlib.List<WrapperRecipe>

ZenScript
Copy
CraftingTableManager.getAllRecipes() as stdlib.List<WrapperRecipe>
craftingTable.getAllRecipes();
getRecipeByName

Return Type: WrapperRecipe

ZenScript
Copy
CraftingTableManager.getRecipeByName(name as string) as WrapperRecipe
ParameterTypeDescription
namestringNo Description Provided
getRecipesByOutput

Return Type: stdlib.List<WrapperRecipe>

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

Remove all recipes in this registry

Return Type: void

ZenScript
Copy
CraftingTableManager.removeAll() as void
craftingTable.removeAll();
removeByModid

Remove recipe based on Registry name modid

Return Type: void

ZenScript
Copy
CraftingTableManager.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

ZenScript
Copy
CraftingTableManager.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

ZenScript
Copy
CraftingTableManager.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

ZenScript
Copy
CraftingTableManager.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

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