import crafttweaker.item.IIngredient;
import mods.gregtech.recipe.RecipeMap;
import scripts.common.makeShaped as makeShaped;

bender.recipeBuilder()
    .inputs(<metaitem:foilCopper> * 2)
    .outputs(<contenttweaker:primercup> * 1)
    .circuit(1)
    .duration(10)
    .EUt(24)
    .buildAndRegister();

forming_press.recipeBuilder()
    .inputs([<contenttweaker:primercup>, <hbm:powder_steel_tiny>, <ore:dustTinyFlint>])
    .outputs(<hbm:primer_9>)
    .duration(30)
    .EUt(32)
    .buildAndRegister();

bender.recipeBuilder()
    .inputs(<metaitem:foilCopper> * 4)
    .outputs(<contenttweaker:casingcup> * 1)
    .circuit(2)
    .duration(15)
    .EUt(24)
    .buildAndRegister();
bender.recipeBuilder()
    .inputs(<contenttweaker:casingcup> * 1)
    .outputs(<contenttweaker:drawncasing> * 1)
    .circuit(2)
    .duration(20)
    .EUt(24)
    .buildAndRegister();
lathe.recipeBuilder()
    .inputs(<contenttweaker:drawncasing> * 1)
    .outputs(<contenttweaker:groovedcasing> * 1)
    .duration(35)
    .EUt(24)
    .buildAndRegister();
forming_press.recipeBuilder()
    .inputs(<contenttweaker:groovedcasing> * 1)
    .circuit(1)
    .outputs(<hbm:casing_9> * 1)
    .duration(10)
    .EUt(24)
    .buildAndRegister();

forming_press.recipeBuilder()
    .inputs(<ore:ingotCopper> * 1)
    .circuit(1)
    .outputs(<contenttweaker:bullet> * 1)
    .duration(35)
    .EUt(24)
    .buildAndRegister();
thermal_centrifuge.recipeBuilder()
    .inputs(<ore:dustWood> * 4)
    .outputs(<contenttweaker:cellulosecotton> * 1)
    .duration(50)
    .EUt(24)
    .buildAndRegister();
chemical_reactor.recipeBuilder()
    .inputs(<contenttweaker:cellulosecotton> * 1)
    .fluidInputs([<liquid:nitrogen_dioxide> * 500])
    .outputs(<contenttweaker:nitrocellulosecotton> * 1)
    .duration(60)
    .EUt(24)
    .buildAndRegister();

chemical_reactor.recipeBuilder()
    .fluidInputs(<liquid:glycerol> * 500, <liquid:nitrogen_dioxide> * 500)
    .fluidOutputs(<liquid:nitroglycerin> * 1000)
    .duration(60)
    .EUt(24)
    .buildAndRegister();

mixer.recipeBuilder()
    .inputs(<contenttweaker:nitrocellulosecotton>)
    .fluidInputs(<liquid:nitroglycerin> * 1000)
    .outputs(<contenttweaker:smokelesspowder> * 5)
    .duration(20)
    .EUt(24)
    .buildAndRegister();

forming_press.recipeBuilder()
    .inputs([<hbm:casing_9> * 1, <hbm:primer_9> * 1, <contenttweaker:smokelesspowder> * 1, <contenttweaker:bullet> * 1])
    .circuit(1)
    .outputs(<hbm:ammo_5mm>)
    .duration(10)
    .EUt(24)
    .buildAndRegister();

forming_press.recipeBuilder()
    .inputs([<hbm:casing_9> * 1, <hbm:primer_9> * 1, <contenttweaker:smokelesspowder> * 1, <contenttweaker:bullet> * 1])
    .circuit(2)
    .outputs(<hbm:ammo_12gauge>)
    .duration(10)
    .EUt(24)
    .buildAndRegister();


recipes.addShaped(<hbm:turret_friendly>, [[<ore:cicuitMv>, <gregtech:meta_item_1:187>, <ore:circuitMv>],[<gregtech:meta_plate_double:2>, <gregtech:meta_plate_double:2>, <gregtech:meta_plate_double:2>], [<gregtech:meta_plate_double:2>, <gregtech:meta_item_1:736>, <gregtech:meta_plate_double:2>]]);
forge_hammer.findRecipe(16, [<gregtech:ore_plutonium_0:0>], null).remove();
macerator.findRecipe(2, [<gregtech:ore_plutonium_0:0>], null).remove();
forge_hammer.findRecipe(16, [<gregtech:ore_plutonium_0:1>], null).remove();
macerator.findRecipe(2, [<gregtech:ore_plutonium_0:1>], null).remove();
forge_hammer.findRecipe(16, [<gregtech:ore_plutonium_0:2>], null).remove();
macerator.findRecipe(2, [<gregtech:ore_plutonium_0:2>], null).remove();

furnace.remove(<ore:ingotPlutonium>);

centrifuge.findRecipe(480, [null], [<liquid:uranium_hexafluoride> * 1000]).remove();
thermal_centrifuge.findRecipe(48, [<hbm:ingot_uranium>], null).remove();
thermal_centrifuge.findRecipe(48, [<hbm:powder_uranium>], null).remove();
thermal_centrifuge.findRecipe(48, [<hbm:ingot_u238>], null).remove();

centrifuge.recipeBuilder()
    .fluidInputs(<liquid:uranium_hexafluoride> * 1000)
    .fluidOutputs(<liquid:enriched_uranium_hexafluoride> * 100, <liquid:depleted_uranium_hexafluoride> * 900)
    .duration(80)
    .EUt(2048)
    .buildAndRegister();
