CraftingTableRecipeManager
Link to craftingtablerecipemanager
Diese Klasse importieren
Link to diese-klasse-importieren
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.recipe.CraftingTableRecipeManager;
Implemented Interfaces
Link to implemented-interfaces
CraftingTableRecipeManager implements the following interfaces. That means all methods defined in these interfaces are also available in CraftingTableRecipeManager
Enum Constants
Link to enum-constants
CraftingTableRecipeManager is an enum. It has 1 enum constants. They are accessible using the code below.
ZenScript CopyCraftingTableRecipeManager.INSTANCE
Methoden
Link to methoden
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 RecipeType systems.
ZenScript Copy// CraftingTableRecipeManager.addJsonRecipe(name as string, mapData as MapData)
craftingTable.addJsonRecipe("recipe_name", {
ingredient: <item:minecraft:gold_ore>,
result: <item:minecraft:cooked_porkchop>.registryName,
experience: 0.35 as float,
cookingtime:100
});
Parameter | Type | Beschreibung |
---|---|---|
Parameter name | Type string | Beschreibung name of the recipe |
Parameter mapData | Type MapData | Beschreibung data representing the json file |
Name: addShaped
ZenScript CopyCraftingTableRecipeManager.addShaped(recipeName as string, output as IItemStack, ingredients as IIngredient[][], recipeFunction as RecipeFunction2D)
Parameter | Type | Optional |
---|---|---|
Parameter recipeName | Type string | Optional false |
Parameter output | Type IItemStack | Optional false |
Parameter ingredients | Type IIngredient[][] | Optional false |
Parameter recipeFunction | Type RecipeFunction2D | Optional true |
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.
ZenScript Copy// CraftingTableRecipeManager.addShapedMirrored(recipeName as string, mirrorAxis as MirrorAxis, output as IItemStack, ingredients as IIngredient[][], recipeFunction as RecipeFunction2D)
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 | Beschreibung | Optional |
---|---|---|---|
Parameter recipeName | Type string | Beschreibung name of the recipe to add. | Optional false |
Parameter mirrorAxis | Type MirrorAxis | Beschreibung The axis that this recipe mirrored on. | Optional false |
Parameter output | Type IItemStack | Beschreibung output IItemStack | Optional false |
Parameter ingredients | Type IIngredient[][] | Beschreibung array of an array of IIngredient for inputs | Optional false |
Parameter recipeFunction | Type RecipeFunction2D | Beschreibung optional RecipeFunction2D for more advanced conditions | Optional true |
Name: addShapedPattern
ZenScript CopyCraftingTableRecipeManager.addShapedPattern(recipeName as string, output as IItemStack, pattern as string[], keys as IIngredient[string], recipeFunction as RecipeFunction2D)
Parameter | Type | Optional |
---|---|---|
Parameter recipeName | Type string | Optional false |
Parameter output | Type IItemStack | Optional false |
Parameter pattern | Type string[] | Optional false |
Parameter keys | Type IIngredient[string] | Optional false |
Parameter recipeFunction | Type RecipeFunction2D | Optional true |
Name: addShapeless
ZenScript CopyCraftingTableRecipeManager.addShapeless(recipeName as string, output as IItemStack, ingredients as IIngredient[], recipeFunction as RecipeFunction1D)
Parameter | Type | Optional |
---|---|---|
Parameter recipeName | Type string | Optional false |
Parameter output | Type IItemStack | Optional false |
Parameter ingredients | Type IIngredient[] | Optional false |
Parameter recipeFunction | Type RecipeFunction1D | Optional true |
Name: getAllRecipes
Return Type: stdlib.List<T>
ZenScript Copy// CraftingTableRecipeManager.getAllRecipes() as stdlib.List<T>
craftingTable.getAllRecipes();
Name: getRecipeByName
Return Type: @org.openzen.zencode.java.ZenCodeType.Nullable T
ZenScript CopyCraftingTableRecipeManager.getRecipeByName(name as string) as @org.openzen.zencode.java.ZenCodeType.Nullable T
Parameter | Type |
---|---|
Parameter name | Type string |
Name: getRecipeMap
Returns a map of all known recipes.
Returns: A Map of recipe name to recipe of all known recipes.
Return Type: T[ResourceLocation]
ZenScript Copy// CraftingTableRecipeManager.getRecipeMap() as T[ResourceLocation]
craftingTable.getRecipeMap();
Name: getRecipesByOutput
Return Type: stdlib.List<T>
ZenScript CopyCraftingTableRecipeManager.getRecipesByOutput(output as IIngredient) as stdlib.List<T>
Parameter | Type |
---|---|
Parameter output | Type IIngredient |
Name: remove
Remove a recipe based on it's output.
ZenScript Copy// CraftingTableRecipeManager.remove(output as IIngredient)
craftingTable.remove(<tag:items:minecraft:wool>);
Parameter | Type | Beschreibung |
---|---|---|
Parameter output | Type IIngredient | Beschreibung output of the recipe |
Name: removeAll
Remove all recipes in this registry
ZenScript Copy// CraftingTableRecipeManager.removeAll()
craftingTable.removeAll();
Name: removeByInput
Removes all recipes where the input contains the given IItemStack.
ZenScript Copy// CraftingTableRecipeManager.removeByInput(input as IItemStack)
craftingTable.removeByInput(<item:minecraft:iron_ingot>);
Parameter | Type | Beschreibung |
---|---|---|
Parameter input | Type IItemStack | Beschreibung The input IItemStack. |
Name: removeByModid
Remove recipe based on Registry name modid
ZenScript CopyCraftingTableRecipeManager.removeByModid(modid as string, exclude as Predicate<string>)
Parameter | Type | Beschreibung | Optional | Standardwert |
---|---|---|---|---|
Parameter modid | Type string | Beschreibung modid of the recipes to remove | Optional false | Standardwert |
Parameter ausschließen | Type Predicate<string> | Beschreibung | Optional true | Standardwert (name as string) as bool => false |
Name: removeByName
Remove recipes based on Registry names
ZenScript CopyCraftingTableRecipeManager.removeByName(names as string[])
Parameter | Type | Beschreibung |
---|---|---|
Parameter names | Type string[] | Beschreibung registry names of recipes to remove |
Name: removeByRegex
Remove recipe based on regex with an added exclusion check, so you can remove the whole mod besides a few specified.
ZenScript Copy// CraftingTableRecipeManager.removeByRegex(regex as string, exclude as Predicate<string>)
craftingTable.removeByRegex("\\d_\\d", (name as string) => {return name == "orange_wool";});
Parameter | Type | Beschreibung | Optional | Standardwert |
---|---|---|---|---|
Parameter regex | Type string | Beschreibung regex to match against | Optional false | Standardwert |
Parameter ausschließen | Type Predicate<string> | Beschreibung | Optional true | Standardwert (name as string) as bool => false |
Properties
Link to properties
Name | Type | Has Getter | Has Setter | Beschreibung |
---|---|---|---|---|
Name allRecipes | Type stdlib.List<T> | Has Getter true | Has Setter false | Beschreibung |
Name recipeMap | Type T[ResourceLocation] | Has Getter true | Has Setter false | Beschreibung Returns a map of all known recipes. |