ICookingRecipeManager
Importing the class
If you need to reference this type directly, like when casting an Array, or as a parameter, you will need to import it. Simply add the import at the top of the file.
import crafttweaker.api.recipe.ICookingRecipeManager;Description
Default interface for Registry based handlers as they can all remove recipes by ResourceLocation.Implements
ICookingRecipeManager<AbstractCookingRecipe>
implements the following interfaces:
IRecipeManager<AbstractCookingRecipe>,CommandStringDisplayable
Undocumented Interfaces
Iterable<Recipe>
Members
addJsonRecipe(name as string, mapData as MapData)
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.script.zs     
// ICookingRecipeManager<T : AbstractCookingRecipe>.addJsonRecipe(name as string, mapData as MapData);myICookingRecipeManager.addJsonRecipe("recipe_name", {ingredient: <item:minecraft:gold_ore>,result: <item:minecraft:cooked_porkchop>.registryName,experience: 0.35 as float,cookingtime:100});addRecipe(name as string, output as IItemStack, input as IIngredient, xp as float, cookTime as int)
Adds a recipe based on given params.
Note: A
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 ascript.zs              
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.// ICookingRecipeManager<T : AbstractCookingRecipe>.addRecipe(name as string, output as IItemStack, input as IIngredient, xp as float, cookTime as int);myICookingRecipeManager.addRecipe("wool2diamond", <item:minecraft:diamond>, <tag:items:minecraft:wool>, 1.0, 30);Parameters:
name: string  Type: string 
- Name of the new recipe   xp: float  Type: float 
- how much xp the player gets   cookTime: int  Type: int 
- how long it takes to cook   addRecipe(name as string, category as CookingBookCategory, output as IItemStack, input as IIngredient, xp as float, cookTime as int)
Adds a recipe based on given params.
Note: A
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 ascript.zs               
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.// ICookingRecipeManager<T : AbstractCookingRecipe>.addRecipe(name as string, category as CookingBookCategory, output as IItemStack, input as IIngredient, xp as float, cookTime as int);myICookingRecipeManager.addRecipe("wool2diamond", <constant:minecraft:cookingbookcategory:misc>, <item:minecraft:diamond>, <tag:items:minecraft:wool>, 1.0, 30);Parameters:
name: string  Type: string 
- Name of the new recipe   category: CookingBookCategory  Type: CookingBookCategory 
- The category of the recipe in the recipe book   xp: float  Type: float 
- how much xp the player gets   cookTime: int  Type: int 
- how long it takes to cook   Getter
Returns the BEP to get this thingyscript.zs   
myICookingRecipeManager.commandString
Return Type:
string
commandString() as string
Returns the BEP to get this thingyscript.zs      
myICookingRecipeManager.commandString();
Return Type:
string
getRecipeByName(name as string) as Recipe?
myICookingRecipeManager.getRecipeByName(myString);Parameters:
name: string  Type: string   
Return Type:
Recipe?
getRecipesByOutput(output as IIngredient) as List<Recipe>
// ICookingRecipeManager<T : AbstractCookingRecipe>.getRecipesByOutput(output as IIngredient) as List<Recipe>;myICookingRecipeManager.getRecipesByOutput(myIIngredient);Parameters:
output: IIngredient  Type: IIngredient   
Return Type:
List<Recipe>
Getter
Returns a map of all known recipes.script.zs   
myICookingRecipeManager.recipeMap
Return Type:
Recipe[ResourceLocation]
recipeMap() as Recipe[ResourceLocation]
Returns a map of all known recipes.script.zs      
Returns: A Map of recipe name to recipe of all known recipes.
myICookingRecipeManager.recipeMap();
Return Type:
Recipe[ResourceLocation]
remove(output as IIngredient)
Remove a recipe based on it's output.script.zs           
myICookingRecipeManager.remove(<tag:items:minecraft:wool>);Parameters:
removeAll()
Remove all recipes in this registryscript.zs       
myICookingRecipeManager.removeAll();removeByInput(input as IItemStack)
Removes all recipes where the input contains the given IItemStack.script.zs           
myICookingRecipeManager.removeByInput(<item:minecraft:iron_ingot>);Parameters:
removeByModid(modid as string, exclude as function(t as string) as bool = (name as string) as bool => false)
Remove recipe based on Registry name modidscript.zs             
// ICookingRecipeManager<T : AbstractCookingRecipe>.removeByModid(modid as string, exclude as function(t as string) as bool = (name as string) as bool => false);myICookingRecipeManager.removeByModid("minecraft", myPredicate);Parameters:
modid: string  Type: string 
- modid of the recipes to remove   exclude: function(t as string) as bool (optional)  Type: function(t as string) as bool  
Default Value: (name as string) as bool => false 
removeByName(names as string[])
Remove recipes based on Registry namesscript.zs            
myICookingRecipeManager.removeByName(myString[]);Parameters:
names: string[]  Type: string[] 
- registry names of recipes to remove   removeByRegex(regex as string, exclude as function(t as string) as bool = (name as string) as bool => false)
Remove recipe based on regex with an added exclusion check, so you can remove the whole mod besides a few specified.script.zs             
// ICookingRecipeManager<T : AbstractCookingRecipe>.removeByRegex(regex as string, exclude as function(t as string) as bool = (name as string) as bool => false);myICookingRecipeManager.removeByRegex("\\d_\\d", (name as string) => {return name == "orange_wool";});Parameters:
regex: string  Type: string 
- regex to match against   exclude: function(t as string) as bool (optional)  Type: function(t as string) as bool  
Default Value: (name as string) as bool => false 
removeRecipe(output as IItemStack, input as IIngredient)
Removes a recipe based on it's output and input.script.zs           
// ICookingRecipeManager<T : AbstractCookingRecipe>.removeRecipe(output as IItemStack, input as IIngredient);myICookingRecipeManager.removeRecipe(<item:minecraft:diamond>, <tag:items:minecraft:wool>);Parameters: