CraftingTableManager
Link to craftingtablemanager
Importing the class
Link to 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 Copyimport crafttweaker.api.CraftingTableManager;
Implemented Interfaces
Link to implemented-interfaces
CraftingTableManager implements the following interfaces. That means all methods defined in these interfaces are also available in CraftingTableManager
Methods
Link to methods
Name: 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});
Parameter | Type | Description |
---|---|---|
Parameter name | Type string | Description name of the recipe |
Parameter data | Type IData | Description data representing the json file |
Name: 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");});
Parameter | Type | Description | Optional | DefaultValue |
---|---|---|---|---|
Parameter recipeName | Type string | Description name of the recipe to add. | Optional false | DefaultValue |
Parameter output | Type IItemStack | Description output IItemStack | Optional false | DefaultValue |
Parameter ingredients | Type IIngredient[][] | Description array of an array of IIngredient for inputs | Optional false | DefaultValue |
Parameter recipeFunction | Type RecipeFunctionMatrix | Description optional RecipeFunctionMatrix for more advanced conditions | Optional true | DefaultValue |
Name: 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");});
Parameter | Type | Description | Optional | DefaultValue |
---|---|---|---|---|
Parameter recipeName | Type string | Description name of the recipe to add. | Optional false | DefaultValue |
Parameter output | Type IItemStack | Description output IItemStack | Optional false | DefaultValue |
Parameter ingredients | Type IIngredient[][] | Description array of an array of IIngredient for inputs | Optional false | DefaultValue |
Parameter recipeFunction | Type RecipeFunctionMatrix | Description optional RecipeFunctionMatrix for more advanced conditions | Optional true | DefaultValue |
Name: addShapedMirrored
Adds a mirrored shaped recipe to the crafting table.
This method lets you provide a MirrorAxis, which can be used to set which axis the recipe is mirrored on. Use cases are making a recipe only be mirrored vertically or only horizontally.
Return Type: void
ZenScript Copy// CraftingTableManager.addShapedMirrored(recipeName as string, mirrorAxis as MirrorAxis, output as IItemStack, ingredients as IIngredient[][], recipeFunction as RecipeFunctionMatrix) as void
craftingTable.addShapedMirrored("recipe_name", MirrorAxis.DIAGONAL, <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");});
Parameter | Type | Description | Optional | DefaultValue |
---|---|---|---|---|
Parameter recipeName | Type string | Description name of the recipe to add. | Optional false | DefaultValue |
Parameter mirrorAxis | Type MirrorAxis | Description The axis that this recipe mirrored on. | Optional false | DefaultValue |
Parameter output | Type IItemStack | Description output IItemStack | Optional false | DefaultValue |
Parameter ingredients | Type IIngredient[][] | Description array of an array of IIngredient for inputs | Optional false | DefaultValue |
Parameter recipeFunction | Type RecipeFunctionMatrix | Description optional RecipeFunctionMatrix for more advanced conditions | Optional true | DefaultValue |
Name: 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");});
Parameter | Type | Description | Optional | DefaultValue |
---|---|---|---|---|
Parameter recipeName | Type string | Description name of the recipe to add. | Optional false | DefaultValue |
Parameter output | Type IItemStack | Description output IItemStack | Optional false | DefaultValue |
Parameter ingredients | Type IIngredient[] | Description array of IIngredient for inputs | Optional false | DefaultValue |
Parameter recipeFunction | Type RecipeFunctionArray | Description optional RecipeFunctionArray for more advanced conditions | Optional true | DefaultValue |
Name: getAllRecipes
Return Type: stdlib.List<WrapperRecipe>
ZenScript Copy// CraftingTableManager.getAllRecipes() as stdlib.List<WrapperRecipe>
craftingTable.getAllRecipes();
Name: getRecipeByName
Return Type: WrapperRecipe
ZenScript CopyCraftingTableManager.getRecipeByName(name as string) as WrapperRecipe
Parameter | Type | Description |
---|---|---|
Parameter name | Type string | Description No Description Provided |
Name: 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();
Name: getRecipesByOutput
Return Type: stdlib.List<WrapperRecipe>
ZenScript CopyCraftingTableManager.getRecipesByOutput(output as IIngredient) as stdlib.List<WrapperRecipe>
Parameter | Type | Description |
---|---|---|
Parameter output | Type IIngredient | Description No Description Provided |
Name: removeAll
Remove all recipes in this registry
Return Type: void
ZenScript Copy// CraftingTableManager.removeAll() as void
craftingTable.removeAll();
Name: removeByModid
Remove recipe based on Registry name modid
Return Type: void
ZenScript Copy// CraftingTableManager.removeByModid(modid as string) as void
craftingTable.removeByModid("minecraft");
Parameter | Type | Description |
---|---|---|
Parameter modid | Type string | Description modid of the recipes to remove |
Name: 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";});
Parameter | Type | Description |
---|---|---|
Parameter modid | Type string | Description modid of the recipes to remove |
Parameter exclude | Type RecipeFilter | Description recipes to exlude from being removed. |
Name: removeByName
Remove recipe based on Registry name
Return Type: void
ZenScript Copy// CraftingTableManager.removeByName(name as string) as void
craftingTable.removeByName("minecraft:furnace");
Parameter | Type | Description |
---|---|---|
Parameter name | Type string | Description registry name of recipe to remove |
Name: removeByRegex
Remove recipe based on regex.
Return Type: void
ZenScript Copy// CraftingTableManager.removeByRegex(regex as string) as void
craftingTable.removeByRegex("\\d_\\d");
Parameter | Type | Description |
---|---|---|
Parameter regex | Type string | Description regex to match against |
Name: removeByRegex
Remove recipe based on regex with an added exclusion check, so you can remove the whole mod besides a few specified.
Return Type: void
ZenScript Copy// CraftingTableManager.removeByRegex(regex as string, exclude as RecipeFilter) as void
craftingTable.removeByRegex("\\d_\\d", (name as string) => {return name == "orange_wool";});
Parameter | Type | Description |
---|---|---|
Parameter regex | Type string | Description regex to match against |
Parameter exclude | Type RecipeFilter | Description No Description Provided |
Name: 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>);
Parameter | Type | Description |
---|---|---|
Parameter output | Type IIngredient | Description output of the recipe |
Name: 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>);
Parameter | Type | Description |
---|---|---|
Parameter output | Type IItemStack | Description output of the recipe |
Name: 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>);
Parameter | Type | Description |
---|---|---|
Parameter input | Type IItemStack | Description The input IItemStack. |
Properties
Link to properties
Name | Type | Has Getter | Has Setter | Description |
---|---|---|---|---|
Name allRecipes | Type stdlib.List<WrapperRecipe> | Has Getter true | Has Setter false | Description No Description Provided |
Name recipeMap | Type WrapperRecipe[MCResourceLocation] | Has Getter true | Has Setter false | Description Returns a map of all known recipes. |