SmithingRecipeManager

Link to smithingrecipemanager

Importare la Classe

Link to importare-la-classe

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

Interfacce Implementate

Link to interfacce-implementate

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

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

ZenScript
Copy
SmithingRecipeManager.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
// SmithingRecipeManager.addJsonRecipe(name as string, mapData as MapData)

smithing.addJsonRecipe("recipe_name", {
 ingredient: <item:minecraft:gold_ore>,
 result: <item:minecraft:cooked_porkchop>.registryName,
 experience: 0.35 as float,
 cookingtime:100
 });
ParametroTipoDescrizione
Parametro
nome
Tipo
string
Descrizione
name of the recipe
Parametro
mapData
Tipo
MapData
Descrizione
data representing the json file

Name: addRecipe

Adds a recipe to the smithing table.

ZenScript
Copy
// SmithingRecipeManager.addRecipe(recipeName as string, result as IItemStack, base as IIngredient, addition as IIngredient)

smithing.addRecipe("recipe_name", <item:minecraft:golden_apple>, <item:minecraft:apple>, <tag:items:forge:ingots/gold>);
ParametroTipoDescrizione
Parametro
recipeName
Tipo
string
Descrizione
Name of the recipe.
Parametro
result
Tipo
IItemStack
Descrizione
The item created by the recipe.
Parametro
base
Tipo
IIngredient
Descrizione
The initial ingredient for the recipe.
Parametro
addition
Tipo
IIngredient
Descrizione
The item added to the base item.

Name: getAllRecipes

Return Type: stdlib.List<T>

ZenScript
Copy
// SmithingRecipeManager.getAllRecipes() as stdlib.List<T>

smithing.getAllRecipes();

Name: getRecipeByName

Return Type: @org.openzen.zencode.java.ZenCodeType.Nullable T

ZenScript
Copy
SmithingRecipeManager.getRecipeByName(name as string) as @org.openzen.zencode.java.ZenCodeType.Nullable T
ParametroTipo
Parametro
nome
Tipo
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
// SmithingRecipeManager.getRecipeMap() as T[ResourceLocation]

smithing.getRecipeMap();

Link to getRecipesByOutput

Name: getRecipesByOutput

Return Type: stdlib.List<T>

ZenScript
Copy
SmithingRecipeManager.getRecipesByOutput(output as IIngredient) as stdlib.List<T>
ParametroTipo
Parametro
output
Tipo
IIngredient

Name: remove

Remove a recipe based on it's output.

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

smithing.remove(<tag:items:minecraft:wool>);
ParametroTipoDescrizione
Parametro
output
Tipo
IIngredient
Descrizione
output of the recipe

Name: removeAll

Remove all recipes in this registry

ZenScript
Copy
// SmithingRecipeManager.removeAll()

smithing.removeAll();

Name: removeByInput

Removes all recipes where the input contains the given IItemStack.

ZenScript
Copy
// SmithingRecipeManager.removeByInput(input as IItemStack)

smithing.removeByInput(<item:minecraft:iron_ingot>);
ParametroTipoDescrizione
Parametro
input
Tipo
IItemStack
Descrizione
The input IItemStack.

Name: removeByModid

Remove recipe based on Registry name modid

ZenScript
Copy
SmithingRecipeManager.removeByModid(modid as string, exclude as Predicate<string>)
ParametroTipoDescrizioneOptionalDefault Value
Parametro
modid
Tipo
string
Descrizione
modid of the recipes to remove
Optional
no
Default Value
Parametro
esclude
Tipo
Predicate<string>
Descrizione
Optional
Default Value
(name as string) as bool => false

Name: removeByName

Remove recipes based on Registry names

ZenScript
Copy
SmithingRecipeManager.removeByName(names as string[])
ParametroTipoDescrizione
Parametro
names
Tipo
string[]
Descrizione
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
// SmithingRecipeManager.removeByRegex(regex as string, exclude as Predicate<string>)

smithing.removeByRegex("\\d_\\d", (name as string) => {return name == "orange_wool";});
ParametroTipoDescrizioneOptionalDefault Value
Parametro
regex
Tipo
string
Descrizione
regex to match against
Optional
no
Default Value
Parametro
esclude
Tipo
Predicate<string>
Descrizione
Optional
Default Value
(name as string) as bool => false
NomeTipoHa GetterHa SetterDescrizione
Nome
allRecipes
Tipo
stdlib.List<T>
Ha Getter
Ha Setter
no
Descrizione
Nome
recipeMap
Tipo
T[ResourceLocation]
Ha Getter
Ha Setter
no
Descrizione
Returns a map of all known recipes.