Allows you to add or remove Crusher recipes.

Crusher Recipes consist of an input, an output and a list of possible secondary outputs.

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 mods.immersiveengineering.Crusher;

Implemented Interfaces

Link to implemented-interfaces

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

Name: addJsonRecipe

ZenScript
Copy
Crusher.addJsonRecipe(name as string, mapData as MapData)
ParameterType
Parameter
name
Type
string
Parameter
mapData
Type
MapData

Name: addRecipe

Adds a Crusher recipe.

ZenScript
Copy
// Crusher.addRecipe(recipePath as string, input as IIngredient, energy as int, mainOutput as IItemStack, additionalOutputs as Percentaged<IItemStack>[])

<recipetype:immersiveengineering:crusher>.addRecipe("tnt_discharge", <item:minecraft:tnt>, 500, <item:minecraft:gunpowder> * 4, <item:minecraft:coal> % 50, <item:minecraft:diamond> % 1);
ParameterTypeDescription
Parameter
recipePath
Type
string
Description
The recipe name, without the resource location
Parameter
input
Type
IIngredient
Description
The input ingredient
Parameter
energy
Type
int
Description
The total energy required
Parameter
mainOutput
Type
IItemStack
Description
The main item that this recipe will return
Parameter
additionalOutputs
Type
Percentaged<IItemStack>[]
Description
All secondary items that can be returned

Name: getAllRecipes

Return Type: stdlib.List<T>

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

<recipetype:immersiveengineering:crusher>.getAllRecipes();

Name: getRecipeByName

Return Type: T

ZenScript
Copy
Crusher.getRecipeByName(name as string) as T
ParameterType
Parameter
name
Type
string

Name: getRecipeMap

Return Type: T[ResourceLocation]

ZenScript
Copy
// Crusher.getRecipeMap() as T[ResourceLocation]

<recipetype:immersiveengineering:crusher>.getRecipeMap();

Link to getRecipesByOutput

Name: getRecipesByOutput

Return Type: stdlib.List<T>

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

Name: removeAll

ZenScript
Copy
// Crusher.removeAll()

<recipetype:immersiveengineering:crusher>.removeAll();

Name: removeByInput

ZenScript
Copy
Crusher.removeByInput(input as IItemStack)
ParameterType
Parameter
input
Type
IItemStack

Name: removeByModid

ZenScript
Copy
Crusher.removeByModid(modid as string, exclude as Predicate<string>)
ParameterTypeOptionalDefault Value
Parameter
modid
Type
string
Optional
false
Default Value
Parameter
exclure
Type
Predicate<string>
Optional
true
Default Value
(name as string) as bool => false

Name: removeByName

ZenScript
Copy
Crusher.removeByName(names as string[])
ParameterType
Parameter
names
Type
string[]

Name: removeByRegex

ZenScript
Copy
Crusher.removeByRegex(regex as string, exclude as Predicate<string>)
ParameterTypeOptionalDefault Value
Parameter
regex
Type
string
Optional
false
Default Value
Parameter
exclure
Type
Predicate<string>
Optional
true
Default Value
(name as string) as bool => false

Name: removeRecipe

Removes all recipes that output the given IIngredient. Removes the recipe as soon as any of the recipe's possible outputs matches the given IIngredient. Includes secondary outputs and chance-based outputs.

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

<recipetype:immersiveengineering:crusher>.removeRecipe(<item:immersiveengineering:dust_iron>);
<recipetype:immersiveengineering:crusher>.removeRecipe(<tag:forge:dusts>);
ParameterTypeDescription
Parameter
output
Type
IIngredient
Description
The output whose recipes should be removed
NameTypeHas GetterHas Setter
Name
allRecipes
Type
stdlib.List<T>
Has Getter
true
Has Setter
false
Name
recipeMap
Type
T[ResourceLocation]
Has Getter
true
Has Setter
false