CraftingTableRecipeManager

Link to craftingtablerecipemanager

Импорт класса

Link to импорт-класса

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.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

CraftingTableRecipeManager is an enum. It has 1 enum constants. They are accessible using the code below.

ZenScript
Copy
CraftingTableRecipeManager.INSTANCE

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
 });
ПараметрТипОписание
Параметр
name
Тип
string
Описание
name of the recipe
Параметр
mapData
Тип
MapData
Описание
data representing the json file

Name: addShaped

ZenScript
Copy
CraftingTableRecipeManager.addShaped(recipeName as string, output as IItemStack, ingredients as IIngredient[][], recipeFunction as RecipeFunctionMatrix)
ПараметрТипOptional
Параметр
recipeName
Тип
string
Optional
false
Параметр
output
Тип
IItemStack
Optional
false
Параметр
ingredients
Тип
IIngredient[][]
Optional
false
Параметр
recipeFunction
Тип
RecipeFunctionMatrix
Optional
true

Link to addShapedMirrored

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 RecipeFunctionMatrix)

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");});
ПараметрТипОписаниеOptional
Параметр
recipeName
Тип
string
Описание
name of the recipe to add.
Optional
false
Параметр
mirrorAxis
Тип
MirrorAxis
Описание
The axis that this recipe mirrored on.
Optional
false
Параметр
output
Тип
IItemStack
Описание
output IItemStack
Optional
false
Параметр
ingredients
Тип
IIngredient[][]
Описание
array of an array of IIngredient for inputs
Optional
false
Параметр
recipeFunction
Тип
RecipeFunctionMatrix
Описание
optional RecipeFunctionMatrix for more advanced conditions
Optional
true

Link to addShapedPattern

Name: addShapedPattern

ZenScript
Copy
CraftingTableRecipeManager.addShapedPattern(recipeName as string, output as IItemStack, pattern as string[], keys as IIngredient[string], recipeFunction as RecipeFunctionMatrix)
ПараметрТипOptional
Параметр
recipeName
Тип
string
Optional
false
Параметр
output
Тип
IItemStack
Optional
false
Параметр
pattern
Тип
string[]
Optional
false
Параметр
keys
Тип
IIngredient[string]
Optional
false
Параметр
recipeFunction
Тип
RecipeFunctionMatrix
Optional
true

Name: addShapeless

ZenScript
Copy
CraftingTableRecipeManager.addShapeless(recipeName as string, output as IItemStack, ingredients as IIngredient[], recipeFunction as RecipeFunctionArray)
ПараметрТипOptional
Параметр
recipeName
Тип
string
Optional
false
Параметр
output
Тип
IItemStack
Optional
false
Параметр
ingredients
Тип
IIngredient[]
Optional
false
Параметр
recipeFunction
Тип
RecipeFunctionArray
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
Copy
CraftingTableRecipeManager.getRecipeByName(name as string) as @org.openzen.zencode.java.ZenCodeType.Nullable T
ПараметрТип
Параметр
name
Тип
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();

Link to getRecipesByOutput

Name: getRecipesByOutput

Return Type: stdlib.List<T>

ZenScript
Copy
CraftingTableRecipeManager.getRecipesByOutput(output as IIngredient) as stdlib.List<T>
ПараметрТип
Параметр
output
Тип
IIngredient

Name: remove

Remove a recipe based on it's output.

ZenScript
Copy
// CraftingTableRecipeManager.remove(output as IIngredient)

craftingTable.remove(<tag:items:minecraft:wool>);
ПараметрТипОписание
Параметр
output
Тип
IIngredient
Описание
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>);
ПараметрТипОписание
Параметр
input
Тип
IItemStack
Описание
The input IItemStack.

Name: removeByModid

Remove recipe based on Registry name modid

ZenScript
Copy
CraftingTableRecipeManager.removeByModid(modid as string, exclude as Predicate<string>)
ПараметрТипОписаниеOptionalDefault Value
Параметр
modid
Тип
string
Описание
modid of the recipes to remove
Optional
false
Default Value
Параметр
исключить
Тип
Predicate<string>
Описание
Optional
true
Default Value
(name as string) as bool => false

Name: removeByName

Remove recipes based on Registry names

ZenScript
Copy
CraftingTableRecipeManager.removeByName(names as string[])
ПараметрТипОписание
Параметр
names
Тип
string[]
Описание
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";});
ПараметрТипОписаниеOptionalDefault Value
Параметр
regex
Тип
string
Описание
regex to match against
Optional
false
Default Value
Параметр
исключить
Тип
Predicate<string>
Описание
Optional
true
Default Value
(name as string) as bool => false

Свойства

Link to свойства

НазваниеТипИмеет GetterИмеет SetterОписание
Название
allRecipes
Тип
stdlib.List<T>
Имеет Getter
true
Имеет Setter
false
Описание
Название
recipeMap
Тип
T[ResourceLocation]
Имеет Getter
true
Имеет Setter
false
Описание
Returns a map of all known recipes.