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
getRecipeMap

Returns a map of all known recipes.

Returns: A Map of recipe name to recipe of all known recipes.
Return Type: WrapperRecipe[MCResourceLocation]

ZenScript
Copy
// CraftingTableManager.getRecipeMap() as WrapperRecipe[MCResourceLocation]

craftingTable.getRecipeMap();
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 IIngredient) as void

craftingTable.removeRecipe(<tag:items:minecraft:wool>);
ParameterTypeDescription
outputIIngredientoutput of the recipe
removeRecipe

Removes 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
removeRecipeByInput

Removes all recipes who's input contains the given IItemStack.

Return Type: void

ZenScript
Copy
// CraftingTableManager.removeRecipeByInput(input as IItemStack) as void

craftingTable.removeRecipeByInput(<item:minecraft:iron_ingot>);
ParameterTypeDescription
inputIItemStackThe input IItemStack.

Properties

NameTypeHas GetterHas SetterDescription
allRecipesstdlib.List<WrapperRecipe>truefalseNo Description Provided
recipeMapWrapperRecipe[MCResourceLocation]truefalseReturns a map of all known recipes.