ICookingRecipeManager
Link to icookingrecipemanager
Default interface for Registry based handlers as they can all remove recipes by ResourceLocation.
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.registries.ICookingRecipeManager;
Implemented Interfaces
Link to implemented-interfaces
ICookingRecipeManager implements the following interfaces. That means all methods defined in these interfaces are also available in ICookingRecipeManager
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// ICookingRecipeManager.addJSONRecipe(name as string, data as IData) as void
furnace.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: addRecipe
Adds a recipe based on given params.
Note: A cookTime
of 0
will cause the recipe to never complete, it will burn and use fuel, but no progress will be made on the recipe, it needs to be at-least 1
or more.
Saying that, if you would like to make a recipe that will never complete
(for example being able to give the player an infinitely burning furnace for whatever reason), you can
still use a cookTime
of 0
.
Return Type: void
ZenScript Copy// ICookingRecipeManager.addRecipe(name as string, output as IItemStack, input as IIngredient, xp as float, cookTime as int) as void
furnace.addRecipe("wool2diamond", <item:minecraft:diamond>, <tag:items:minecraft:wool>, 1.0, 30);
Parameter | Type | Description |
---|---|---|
Parameter name | Type string | Description Name of the new recipe |
Parameter output | Type IItemStack | Description IItemStack output of the recipe |
Parameter input | Type IIngredient | Description IIngredient input of the recipe |
Parameter xp | Type float | Description how much xp the player gets |
Parameter cookTime | Type int | Description how long it takes to cook |
Name: getAllRecipes
Return Type: stdlib.List<WrapperRecipe>
ZenScript Copy// ICookingRecipeManager.getAllRecipes() as stdlib.List<WrapperRecipe>
furnace.getAllRecipes();
Name: getRecipeByName
Return Type: WrapperRecipe
ZenScript CopyICookingRecipeManager.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// ICookingRecipeManager.getRecipeMap() as WrapperRecipe[MCResourceLocation]
furnace.getRecipeMap();
Name: getRecipesByOutput
Return Type: stdlib.List<WrapperRecipe>
ZenScript CopyICookingRecipeManager.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// ICookingRecipeManager.removeAll() as void
furnace.removeAll();
Name: removeByModid
Remove recipe based on Registry name modid
Return Type: void
ZenScript Copy// ICookingRecipeManager.removeByModid(modid as string) as void
furnace.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// ICookingRecipeManager.removeByModid(modid as string, exclude as RecipeFilter) as void
furnace.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// ICookingRecipeManager.removeByName(name as string) as void
furnace.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// ICookingRecipeManager.removeByRegex(regex as string) as void
furnace.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// ICookingRecipeManager.removeByRegex(regex as string, exclude as RecipeFilter) as void
furnace.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// ICookingRecipeManager.removeRecipe(output as IIngredient) as void
furnace.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// ICookingRecipeManager.removeRecipe(output as IItemStack) as void
furnace.removeRecipe(<item:minecraft:glass>);
Parameter | Type | Description |
---|---|---|
Parameter output | Type IItemStack | Description output of the recipe |
Name: removeRecipe
Removes a recipe based on it's output and input.
Return Type: void
ZenScript Copy// ICookingRecipeManager.removeRecipe(output as IItemStack, input as IIngredient) as void
furnace.removeRecipe(<item:minecraft:diamond>, <tag:items:minecraft:wool>);
Parameter | Type | Description |
---|---|---|
Parameter output | Type IItemStack | Description IItemStack output of the recipe. |
Parameter input | Type IIngredient | Description IIngredient of the recipe to remove. |
Name: removeRecipeByInput
Removes all recipes who's input contains the given IItemStack.
Return Type: void
ZenScript Copy// ICookingRecipeManager.removeRecipeByInput(input as IItemStack) as void
furnace.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. |