Redstone Furnace (Thermal Expansion)
Description
Converts an input itemstack into an output itemstack, costing power and taking time based on the power cost.
Identifier
Refer to this via any of the following:
mods.thermal.furnace
mods.thermal.Furnace
mods.thermalexpansion.furnace/* Used as page default */
mods.thermalexpansion.Furnace
Adding Recipes
Adds recipes in the format
energy
,input
,output
:groovymods.thermalexpansion.furnace.add(int, IIngredient, ItemStack)
Adds the given ItemStack to the food list, which allows it to have doubled output if the Trivection Chamber augment is installed:
groovymods.thermalexpansion.furnace.addFood(ItemStack)
Example
mods.thermalexpansion.furnace.add(1000, item('minecraft:obsidian') * 2, item('minecraft:clay'))
mods.thermalexpansion.furnace.addFood(item('minecraft:emerald_ore'))
Recipe Builder
Just like other recipe types, the Redstone Furnace also uses a recipe builder.
Don't know what a builder is? Check the builder info page out.
mods.thermalexpansion.furnace.recipeBuilder()
IngredientList<IIngredient>
. Sets the item inputs of the recipe. Requires exactly 1.groovyinput(IIngredient) input(IIngredient...) input(Collection<IIngredient>)
ItemStackList
. Sets the item outputs of the recipe. Requires exactly 1.groovyoutput(ItemStack) output(ItemStack...) output(Collection<ItemStack>)
int
. Sets the energy cost of the recipe. Requires greater than 0. (DefaultFurnaceManager.DEFAULT_ENERGY
).groovyenergy(int)
First validates the builder, returning
null
and outputting errors to the log file if the validation failed, then registers the builder and returns the registered object. (returnsnull
orcofh.thermalexpansion.util.managers.machine.FurnaceManager$FurnaceRecipe
).groovyregister()
Example
mods.thermalexpansion.furnace.recipeBuilder()
.input(item('minecraft:diamond'))
.output(item('minecraft:clay') * 2)
.register()
mods.thermalexpansion.furnace.recipeBuilder()
.input(item('minecraft:gold_ingot') * 2)
.output(item('minecraft:clay'))
.energy(1000)
.register()
Removing Recipes
Removes all recipes that match the given input:
groovymods.thermalexpansion.furnace.removeByInput(IIngredient)
Removes all recipes that match the given output:
groovymods.thermalexpansion.furnace.removeByOutput(IIngredient)
Removes the given ItemStack from the food list, which allows it to have doubled output if the Trivection Chamber augment is installed:
groovymods.thermalexpansion.furnace.removeFood(ItemStack)
Removes all registered recipes:
groovymods.thermalexpansion.furnace.removeAll()
Removes all entries from the food list:
groovymods.thermalexpansion.furnace.removeAllFood()
Example
mods.thermalexpansion.furnace.removeByInput(item('minecraft:cactus:*'))
mods.thermalexpansion.furnace.removeByOutput(item('minecraft:cooked_porkchop'))
mods.thermalexpansion.furnace.removeFood(item('minecraft:rabbit:*'))
mods.thermalexpansion.furnace.removeAll()
mods.thermalexpansion.furnace.removeAllFood()
Getting the value of recipes
Iterates through every entry in the registry, with the ability to call remove on any element to remove it:
groovymods.thermalexpansion.furnace.streamRecipes()