Skip to content

Fabrication Chamber (Calculator)

Description

Converts Stable and Analysed Circuits into output itemstacks.

Identifier

Refer to this via any of the following:

groovy
mods.calculator.fabrication_chamber/* Used as page default */
mods.calculator.fabricationchamber
mods.calculator.fabricationChamber
mods.calculator.FabricationChamber

Adding Recipes

Recipe Builder

Just like other recipe types, the Fabrication Chamber also uses a recipe builder.

Don't know what a builder is? Check the builder info page out.

mods.calculator.fabrication_chamber.recipeBuilder()
  • IngredientList<IIngredient>. Sets the item inputs of the recipe. Requires greater than or equal to 1 and less than or equal to Integer.MAX_VALUE.

    groovy
    input(IIngredient)
    input(IIngredient...)
    input(Collection<IIngredient>)
  • ItemStackList. Sets the item outputs of the recipe. Requires exactly 1.

    groovy
    output(ItemStack)
    output(ItemStack...)
    output(Collection<ItemStack>)
  • 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. (returns null or sonar.calculator.mod.common.recipes.FabricationSonarRecipe).

    groovy
    register()
Example
groovy
mods.calculator.fabrication_chamber.recipeBuilder()
    .input(item('calculator:circuitboard:8').withNbt([Stable: 0, Analysed: 1]))
    .output(item('minecraft:diamond'))
    .register()

mods.calculator.fabrication_chamber.recipeBuilder()
    .input(item('calculator:circuitboard:0').withNbt([Stable: 0, Analysed: true]), item('calculator:circuitboard:1').withNbt([Stable: 0, Analysed: true]), item('calculator:circuitboard:2').withNbt([Stable: 0, Analysed: true]), item('calculator:circuitboard:3').withNbt([Stable: 0, Analysed: true]), item('calculator:circuitboard:4').withNbt([Stable: 0, Analysed: true]))
    .input(item('calculator:circuitboard:0').withNbt([Stable: 1, Analysed: true]), item('calculator:circuitboard:1').withNbt([Stable: 1, Analysed: true]), item('calculator:circuitboard:2').withNbt([Stable: 1, Analysed: true]), item('calculator:circuitboard:3').withNbt([Stable: 1, Analysed: true]), item('calculator:circuitboard:4').withNbt([Stable: 1, Analysed: true]))
    .output(item('minecraft:clay'))
    .register()

Removing Recipes

  • Removes all recipes that match the given input:

    groovy
    mods.calculator.fabrication_chamber.removeByInput(IIngredient)
  • Removes all recipes that match the given output:

    groovy
    mods.calculator.fabrication_chamber.removeByOutput(IIngredient)
  • Removes all registered recipes:

    groovy
    mods.calculator.fabrication_chamber.removeAll()
Example
groovy
mods.calculator.fabrication_chamber.removeByInput(item('calculator:circuitboard:8').withNbt([Stable: 0, Analysed: 1]))
mods.calculator.fabrication_chamber.removeByOutput(item('calculator:calculatorassembly'))
mods.calculator.fabrication_chamber.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:

    groovy
    mods.calculator.fabrication_chamber.streamRecipes()

© 2024 CleanroomMC. All Rights Reserved.