var mechanical_infuser_structure = [["       "," abcba "," b   b "," c   c "," b   b "," abcba ","       "],["  ddd  "," efffe ","dfgggfd","dfghgfd","dfgggfd"," efffe ","  ddd  "],["       "," i   i ","       ","   m   ","       "," i   i ","       "],["       "," j   j ","       ","       ","       "," j   j ","       "]]
var mechanical_infuser_structure_dictionary = {"a":"astralsorcery:starmetal","b":"astralsorcery:black_marble_raw","c":"extendedcrafting:black_iron_block","d":"astralsorcery:black_marble_runed","e":"astralsorcery:black_marble_chiseled","f":"astralsorcery:liquid_starlight[level=0]","g":"kubejs:mechanical_infuser_casing","h":"minecraft:diamond_block","i":"astralsorcery:black_marble_pillar[pillartype=middle,waterlogged=false]","j":"kubejs:briliant_gem_block"}

onEvent('recipes', event => {
    
    //Infused Nocturnal Powder
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:infused_nocturnal_powder", 1))
        .requireItem(Item.of("astralsorcery:nocturnal_powder", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Enhanced Starmetal Ingot
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:enhanced_starmetal_ingot", 1))
        .requireItem(Item.of("astralsorcery:starmetal_ingot", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Resonating Gem
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("astralsorcery:resonating_gem", 2))
        .requireItem(Item.of("kubejs:shining_gem", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Briliant Gem
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:briliant_gem", 1))
        .requireItem(Item.of("kubejs:inert_briliant_gem", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Blaze Powder
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:blaze_powder", 4))
        .requireItem(Item.of("minecraft:blaze_rod", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Bone Meal
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:bone_meal", 6))
        .requireItem(Item.of("minecraft:bone", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Golden Carrot
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:golden_carrot", 1))
        .requireItem(Item.of("minecraft:carrot", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Grass Block
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:grass_block", 1))
        .requireItem(Item.of("minecraft:dirt", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Ender Eye
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:ender_eye", 1))
        .requireItem(Item.of("minecraft:ender_pearl", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Glass Lens
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("astralsorcery:glass_lens", 1))
        .requireItem(Item.of("minecraft:glass_pane", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Glowstone
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:glowstone_dust", 1))
        .requireItem(Item.of("minecraft:gunpowder", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Vibrant Infused Wood
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("astralsorcery:infused_wood_infused", 1))
        .requireItem(Item.of("astralsorcery:infused_wood", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Glistering Melon Slice
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:glistering_melon_slice", 1))
        .requireItem(Item.of("minecraft:melon_slice", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Gunpowder
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:gunpowder", 1))
        .requireItem(Item.of("minecraft:redstone", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Ice
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:ice", 1))
        .requireItem(Item.of("minecraft:glass", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Clay
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:clay", 1))
        .requireItem(Item.of("minecraft:sand", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Magma Cream
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:magma_cream", 1))
        .requireItem(Item.of("minecraft:slime_ball", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Mystical Infusion Essence
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:mystical_infusion_essence", 2))
        .requireItem(Item.of("kubejs:inert_infusion_essence", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Infused Gilded Marble
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:infused_gilded_marble", 1))
        .requireItem(Item.of("kubejs:gilded_marble", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Infused Emerald Block
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:infused_emerald_block", 1))
        .requireItem(Item.of("minecraft:emerald_block", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Infused Glowstone Dust
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:infused_glowstone_dust", 1))
        .requireItem(Item.of("minecraft:glowstone_dust", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Basic Catalyst
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("extendedcrafting:basic_catalyst", 1))
        .requireItem(Item.of("kubejs:inert_basic_catalyst", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Advanced Catalyst
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("extendedcrafting:advanced_catalyst", 1))
        .requireItem(Item.of("kubejs:inert_advanced_catalyst", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Elite Catalyst
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("extendedcrafting:elite_catalyst", 1))
        .requireItem(Item.of("kubejs:inert_elite_catalyst", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Ultimate Catalyst
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("extendedcrafting:ultimate_catalyst", 1))
        .requireItem(Item.of("kubejs:inert_ultimate_catalyst", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //The Ultimate Catalyst
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("extendedcrafting:the_ultimate_catalyst", 1))
        .requireItem(Item.of("kubejs:the_inert_ultimate_catalyst", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Dark Matter
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("projecte:dark_matter", 4))
        .requireItem(Item.of("kubejs:prepared_dark_matter", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Magmatic Obsidian
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:magmatic_obsidian", 1))
        .requireItem(Item.of("minecraft:obsidian", 1))
        .requireFluid(Fluid.of("minecraft:lava", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Infused Illumination Powder
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("kubejs:infused_illumination_powder", 1))
        .requireItem(Item.of("kubejs:star_enriched_illumination_powder", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

    //Prismarine Shard
    event.recipes.custommachinery.custom_machine("modpack:mechanical_infuser", 20)
        .produceItem(Item.of("minecraft:prismarine_shard", 2))
        .requireItem(Item.of("kubejs:quartz_dust", 1))
        .requireFluid(Fluid.of("astralsorcery:liquid_starlight", 50))
        .requireEnergyPerTick(10)
        .requireStructure(mechanical_infuser_structure, mechanical_infuser_structure_dictionary)

})