Home Commands Examples Getting Started With Scripts Global Keywords
Generic JSON Recipes

ArcFurnace

Allows you to add or remove arc furnace smelter recipes.

Arc Furnace recipes consist of one base ingredident, a list of additives, and a list of outputs. Optionally, they can also have an item as slag output.

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.

script.zs
import mods.immersiveengineering.ArcFurnace;

Implemented Interfaces

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

Methods

script.zs
ArcFurnace.addJsonRecipe(name as string, mapData as MapData)
ParameterType
Parameter
name
Type
string
Parameter
mapData
Type
MapData

Adds a recipe to the Arc Furnace

script.zs
// ArcFurnace.addRecipe(recipePath as string, mainIngredient as IIngredientWithAmount, additives as IIngredientWithAmount[], time as int, energy as int, outputs as IItemStack[], slag as IItemStack)
<recipetype:immersiveengineering:arc_furnace>.addRecipe("coal_to_bedrock", <item:minecraft:coal_block> * 2, [<item:minecraft:diamond> * 1, <tag:minecraft:wool>], 2000, 100000, [<item:minecraft:bedrock>], <item:minecraft:gold_nugget>);
ParameterTypeDescriptionOptionalDefault Value
Parameter
recipePath
Type
string
Description
The recipe name, without the resource location
Optional
false
Default Value
Parameter
mainIngredient
Type
IIngredientWithAmount
Description
The main ingredient
Optional
false
Default Value
Parameter
additives
Type
IIngredientWithAmount[]
Description
The additives
Optional
false
Default Value
Parameter
time
Type
int
Description
The time the recipe takes, in ticks
Optional
false
Default Value
Parameter
energy
Type
int
Description
The total energy the recipe requires
Optional
false
Default Value
Parameter
outputs
Type
IItemStack[]
Description
The recipe result(s)
Optional
false
Default Value
Parameter
slag
Type
IItemStack
Description
The item that should appear as slag
Optional
true
Default Value
item:minecraft:air

Return Type: stdlib.List<T>

script.zs
// ArcFurnace.getAllRecipes() as stdlib.List<T>
<recipetype:immersiveengineering:arc_furnace>.getAllRecipes();

Return Type: T

script.zs
ArcFurnace.getRecipeByName(name as string) as T
ParameterType
Parameter
name
Type
string

Return Type: T[ResourceLocation]

script.zs
// ArcFurnace.getRecipeMap() as T[ResourceLocation]
<recipetype:immersiveengineering:arc_furnace>.getRecipeMap();

Return Type: stdlib.List<T>

script.zs
ArcFurnace.getRecipesByOutput(output as IIngredient) as stdlib.List<T>
ParameterType
Parameter
output
Type
IIngredient

Removes a recipe based on its outputs. Removes the recipe as long as one of the recipe’s outputs matches the ingredient given.

script.zs
// ArcFurnace.remove(output as IIngredient, checkSlag as boolean)
<recipetype:immersiveengineering:arc_furnace>.remove(<item:minecraft:iron_ore>, true);
ParameterTypeDescription
Parameter
output
Type
IIngredient
Description
The recipe result
Parameter
checkSlag
Type
boolean
Description
If the slag output should be included in the check or not
script.zs
// ArcFurnace.removeAll()
<recipetype:immersiveengineering:arc_furnace>.removeAll();
script.zs
ArcFurnace.removeByInput(input as IItemStack)
ParameterType
Parameter
input
Type
IItemStack
script.zs
ArcFurnace.removeByModid(modid as string, exclude as Predicate<string>)
ParameterTypeOptionalDefault Value
Parameter
modid
Type
string
Optional
false
Default Value
Parameter
exclude
Type
Predicate<string>
Optional
true
Default Value
(name as string) as bool => false
script.zs
ArcFurnace.removeByName(names as string[])
ParameterType
Parameter
names
Type
string[]
script.zs
ArcFurnace.removeByRegex(regex as string, exclude as Predicate<string>)
ParameterTypeOptionalDefault Value
Parameter
regex
Type
string
Optional
false
Default Value
Parameter
exclude
Type
Predicate<string>
Optional
true
Default Value
(name as string) as bool => false

Properties

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