GenericRecipesManager

Link to genericrecipesmanager

This recipe manager allows you to perform removal actions over all recipe managers. You can access this manager by using the recipes global keyword.

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
Copy
import crafttweaker.api.GenericRecipesManager;

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

ZenScript
Copy
GenericRecipesManager.INSTANCE

Name: addJsonRecipe

Add a new recipe based on the given recipe in a valid DataPack JSON format.

Unlike the addJSONRecipe method in IRecipeManager<T> you must set the type of the recipe within the JSON yourself.

ZenScript
Copy
// GenericRecipesManager.addJsonRecipe(name as string, data as MapData)

recipes.addJsonRecipe("recipe_name", {
 type: "minecraft:smoking",
 ingredient: <item:minecraft:gold_ore>,
 result: <item:minecraft:cooked_porkchop>,
 experience: 0.35 as float,
 cookingtime: 100
 });
ParameterTypeDescription
Parameter
name
Type
string
Description
The recipe's resource path
Parameter
data
Type
MapData
Description
The recipe in JSON format

Name: getAllManagers

Returns a list of all known recipe managers. This includes managers added by mod integrations as well as wrapper managers added to provide simple support.

Return Type: stdlib.List<IRecipeManager>

ZenScript
Copy
// GenericRecipesManager.getAllManagers() as stdlib.List<IRecipeManager>

recipes.getAllManagers();

Name: getAllRecipes

Return Type: stdlib.List<Recipe>

ZenScript
Copy
// GenericRecipesManager.getAllRecipes() as stdlib.List<Recipe>

recipes.getAllRecipes();

Name: getRecipeByName

Return Type: Recipe

ZenScript
Copy
GenericRecipesManager.getRecipeByName(name as string) as Recipe
ParameterType
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: Recipe[ResourceLocation]

ZenScript
Copy
// GenericRecipesManager.getRecipeMap() as Recipe[ResourceLocation]

recipes.getRecipeMap();

Link to getRecipesByOutput

Name: getRecipesByOutput

Return Type: stdlib.List<Recipe>

ZenScript
Copy
GenericRecipesManager.getRecipesByOutput(output as IIngredient) as stdlib.List<Recipe>
ParameterType
Parameter
output
Type
IIngredient

Name: remove

Removes recipes by output

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

recipes.remove(<item:minecraft:iron_ingot>);
ParameterTypeDescription
Parameter
output
Type
IIngredient
Description
The recipe result

Name: removeAll

Removes all recipes from all managers.

ZenScript
Copy
// GenericRecipesManager.removeAll()

recipes.removeAll();

Name: removeByModid

Removes all recipes from the provided mod. Chooses the recipes based on their full recipe name, not based on output item!

ZenScript
Copy
// GenericRecipesManager.removeByModid(modId as string)

recipes.removeByModid("crafttweaker");
ParameterTypeDescription
Parameter
modId
Type
string
Description
The mod's modId

Name: removeByModid

Removes all recipes from the provided mod. Allows a function to exclude certain recipe names from being removed. In the example below, only the recipe for the white bed would remain. Since the recipe's namespace is already fixed based on the modId argument, the recipe filter will only check the resource path!

ZenScript
Copy
// GenericRecipesManager.removeByModid(modId as string, exclude as Predicate<string>)

recipes.removeByModid("minecraft", (recipeName as string) => recipeName == "white_bed");
ParameterTypeDescription
Parameter
modId
Type
string
Description
The mod's modid
Parameter
exclude
Type
Predicate<string>
Description
Function that returns true if the recipe should remain in the registry.

Name: removeByName

Remove recipes based on Registry names

ZenScript
Copy
GenericRecipesManager.removeByName(names as string[])
ParameterTypeDescription
Parameter
names
Type
string[]
Description
registry names of recipes to remove

Name: removeByRegex

Remove recipe based on regex

ZenScript
Copy
// GenericRecipesManager.removeByRegex(regex as string)

recipes.removeByRegex("\\d_\\d");
ParameterTypeDescription
Parameter
regex
Type
string
Description
regex to match against

Name: removeRecipe

Deprecated
use remove(IIngredient output)

Removes recipes by output

ZenScript
Copy
// GenericRecipesManager.removeRecipe(output as IIngredient)

recipes.removeRecipe(<item:minecraft:iron_ingot>);
ParameterTypeDescription
Parameter
output
Type
IIngredient
Description
The recipe result
NameTypeHas GetterHas SetterDescription
Name
allManagers
Type
stdlib.List<IRecipeManager>
Has Getter
true
Has Setter
false
Description
Returns a list of all known recipe managers.
This includes managers added by mod integrations as well as wrapper managers added to provide simple support.
Name
allRecipes
Type
stdlib.List<Recipe>
Has Getter
true
Has Setter
false
Description
Name
recipeMap
Type
Recipe[ResourceLocation]
Has Getter
true
Has Setter
false
Description
Returns a map of all known recipes.