Phytogenic Insolator (Thermal Expansion)
Description
Converts two input itemstacks into an output itemstack and optional output itemstack with a chance, costing power and taking time based on the power cost.
Identifier
Refer to this via any of the following:
mods.thermal.insolator
mods.thermal.Insolator
mods.thermalexpansion.insolator/* Used as page default */
mods.thermalexpansion.Insolator
Adding Recipes
Adds recipes in the format
energy
,water
,primaryInput
,secondaryInput
,primaryOutput
,secondaryOutput
,secondaryChance
,type
:groovymods.thermalexpansion.insolator.add(int, int, IIngredient, IIngredient, ItemStack, ItemStack, int, InsolatorManager.Type)
Adds an item to the Fertilizer list, which filters the inputs for one of the Phytogenic Insolator slots when enabled:
groovymods.thermalexpansion.insolator.addFertilizer(ItemStack)
Example
mods.thermalexpansion.insolator.add(1000, 100, item('minecraft:obsidian'), item('minecraft:gold_ingot') * 2, item('minecraft:clay'), item('minecraft:diamond'), 5, InsolatorManager.Type.TREE)
Recipe Builder
Just like other recipe types, the Phytogenic Insolator also uses a recipe builder.
Don't know what a builder is? Check the builder info page out.
mods.thermalexpansion.insolator.recipeBuilder()
IngredientList<IIngredient>
. Sets the item inputs of the recipe. Requires exactly 2.groovyinput(IIngredient) input(IIngredient...) input(Collection<IIngredient>)
ItemStackList
. Sets the item outputs of the recipe. Requires greater than or equal to 1 and less than or equal to 2.groovyoutput(ItemStack) output(ItemStack...) output(Collection<ItemStack>)
InsolatorManager.Type
. Sets the type of the recipe, which controls if the recipe requires the Sapling Infuser augment installed. (DefaultInsolatorManager.Type.STANDARD
).groovytree() type(InsolatorManager.Type) standard()
int
. Sets the amount of water consumed by the recipe. Requires greater than or equal to 0. (Default0
).groovywater(int)
int
. Sets the chance a secondary output is created, typically the input seed or sapling. Requires greater than or equal to 0. (Default0
).groovychance(int)
int
. Sets the energy cost of the recipe. Requires greater than 0. (DefaultInsolatorManager.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.InsolatorManager$InsolatorRecipe
).groovyregister()
Example
mods.thermalexpansion.insolator.recipeBuilder()
.input(item('minecraft:clay'), item('minecraft:diamond'))
.output(item('minecraft:diamond') * 4)
.register()
mods.thermalexpansion.insolator.recipeBuilder()
.input(item('minecraft:clay'), item('minecraft:gold_ingot') * 2)
.output(item('minecraft:clay'), item('minecraft:diamond'))
.chance(5)
.water(100)
.tree()
.energy(1000)
.register()
Removing Recipes
Removes all recipes that match the given input:
groovymods.thermalexpansion.insolator.removeByInput(IIngredient)
Removes all recipes that match the given output:
groovymods.thermalexpansion.insolator.removeByOutput(IIngredient)
Removes an item from the Fertilizer list, which filters the inputs for one of the Phytogenic Insolator slots when enabled:
groovymods.thermalexpansion.insolator.removeFertilizer(ItemStack)
Removes all registered recipes:
groovymods.thermalexpansion.insolator.removeAll()
Example
mods.thermalexpansion.insolator.removeByInput(item('thermalfoundation:fertilizer'))
mods.thermalexpansion.insolator.removeByInput(item('minecraft:double_plant:4'))
mods.thermalexpansion.insolator.removeByOutput(item('minecraft:red_flower:6'))
mods.thermalexpansion.insolator.removeByOutput(item('minecraft:melon_seeds'))
mods.thermalexpansion.insolator.removeAll()
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.insolator.streamRecipes()