From a4f8dedf74919808f8628dd2a665900dbf681d88 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Fri, 19 Feb 2021 20:56:08 -0600 Subject: [PATCH 01/17] Some changes, start refactor --- .../api/unification/material/Materials.java | 889 ++++++------ .../loaders/recipe/ChemistryRecipes.java | 1232 +++++++++++++---- .../loaders/recipe/MachineRecipeLoader.java | 56 +- 3 files changed, 1413 insertions(+), 764 deletions(-) diff --git a/src/main/java/gregtech/api/unification/material/Materials.java b/src/main/java/gregtech/api/unification/material/Materials.java index f7b6104fa8..a38cba58dc 100644 --- a/src/main/java/gregtech/api/unification/material/Materials.java +++ b/src/main/java/gregtech/api/unification/material/Materials.java @@ -14,6 +14,7 @@ import static gregtech.api.unification.material.type.IngotMaterial.MatFlags.*; import static gregtech.api.unification.material.type.Material.MatFlags.*; import static gregtech.api.unification.material.type.SolidMaterial.MatFlags.*; +import static gregtech.api.unification.material.MaterialIconSet.*; @SuppressWarnings("WeakerAccess") public class Materials { @@ -33,481 +34,481 @@ public static void register() { /** * Direct Elements */ - public static IngotMaterial Aluminium = new IngotMaterial(1, "aluminium", 0x80C8F0, MaterialIconSet.DULL, 2, of(), EXT2_METAL | GENERATE_SMALL_GEAR | GENERATE_ORE | GENERATE_RING | GENERATE_FRAME, Element.Al, 10.0F, 2.0f, 128, 1700); - public static IngotMaterial Americium = new IngotMaterial(2, "americium", 0xC8C8C8, MaterialIconSet.METALLIC, 3, of(), STD_METAL | GENERATE_ROD | GENERATE_LONG_ROD, Element.Am); - public static IngotMaterial Antimony = new IngotMaterial(3, "antimony", 0xDCDCC8, MaterialIconSet.SHINY, 2, of(), EXT_METAL | MORTAR_GRINDABLE, Element.Sb); - public static FluidMaterial Argon = new FluidMaterial(4, "argon", 0xBBBB00, MaterialIconSet.FLUID, of(), STATE_GAS | GENERATE_PLASMA, Element.Ar); - public static DustMaterial Arsenic = new DustMaterial(5, "arsenic", 0xDDDDDD, MaterialIconSet.SAND, 2, of(), 0, Element.As); - public static IngotMaterial Barium = new IngotMaterial(6, "barium", 0xFFFFFF, MaterialIconSet.SHINY, 2, of(), 0, Element.Ba); - public static IngotMaterial Beryllium = new IngotMaterial(7, "beryllium", 0x64B464, MaterialIconSet.METALLIC, 2, of(), STD_METAL | GENERATE_ORE, Element.Be); - public static IngotMaterial Bismuth = new IngotMaterial(8, "bismuth", 0x64A0A0, MaterialIconSet.METALLIC, 1, of(), GENERATE_ORE, Element.Bi); - public static DustMaterial Boron = new DustMaterial(9, "boron", 0xD2F0D2, MaterialIconSet.SAND, 2, of(), 0, Element.B); - public static IngotMaterial Caesium = new IngotMaterial(10, "caesium", 0xFFFFFC, MaterialIconSet.DULL, 2, of(), 0, Element.Cs); - public static IngotMaterial Calcium = new IngotMaterial(11, "calcium", 0xDDDDAA, MaterialIconSet.METALLIC, 2, of(), 0, Element.Ca); - public static IngotMaterial Carbon = new IngotMaterial(12, "carbon", 0x333333, MaterialIconSet.DULL, 2, of(), 0, Element.C); - public static IngotMaterial Cadmium = new IngotMaterial(13, "cadmium", 0x505060, MaterialIconSet.SHINY, 2, of(), 0, Element.Cd); - public static IngotMaterial Cerium = new IngotMaterial(14, "cerium", 0xEEEEEE, MaterialIconSet.METALLIC, 2, of(), 0, Element.Ce, 1068); - public static FluidMaterial Chlorine = new FluidMaterial(15, "chlorine", 0xEEEECC, MaterialIconSet.GAS, of(), STATE_GAS, Element.Cl); - public static IngotMaterial Chrome = new IngotMaterial(16, "chrome", 0xFFAAAB, MaterialIconSet.SHINY, 3, of(), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR, Element.Cr, 12.0f, 3.0f, 512, 1700); - public static IngotMaterial Cobalt = new IngotMaterial(17, "cobalt", 0x2929BC, MaterialIconSet.METALLIC, 2, of(), GENERATE_ORE | STD_METAL, Element.Co, 10.0F, 3.0f, 256); - public static IngotMaterial Copper = new IngotMaterial(18, "copper", 0xFF8000, MaterialIconSet.SHINY, 1, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_DENSE, Element.Cu); - public static FluidMaterial Deuterium = new FluidMaterial(19, "deuterium", 0xEEEE00, MaterialIconSet.FLUID, of(), STATE_GAS, Element.D); - public static IngotMaterial Dysprosium = new IngotMaterial(20, "dysprosium", 0xFFFFEE, MaterialIconSet.SHINY, 2, of(), 0, Element.Dy, 1680); - public static IngotMaterial Erbium = new IngotMaterial(21, "erbium", 0xEEEEEE, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Er, 1802); - public static IngotMaterial Europium = new IngotMaterial(22, "europium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL | GENERATE_ROD, Element.Eu, 1099); - public static FluidMaterial Fluorine = new FluidMaterial(23, "fluorine", 0xFFFFAA, MaterialIconSet.GAS, of(), STATE_GAS, Element.F).setFluidTemperature(253); - public static IngotMaterial Gadolinium = new IngotMaterial(24, "gadolinium", 0xDDDDFF, MaterialIconSet.METALLIC, 2, of(), 0, Element.Gd, 1585); - public static IngotMaterial Gallium = new IngotMaterial(25, "gallium", 0xEEEEFF, MaterialIconSet.SHINY, 2, of(), GENERATE_PLATE, Element.Ga); - public static IngotMaterial Gold = new IngotMaterial(26, "gold", 0xFFFF00, MaterialIconSet.SHINY, 2, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, Element.Au); - public static IngotMaterial Holmium = new IngotMaterial(27, "holmium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), 0, Element.Ho, 1734); - public static FluidMaterial Hydrogen = new FluidMaterial(28, "hydrogen", 0x00FFAA, MaterialIconSet.GAS, of(), STATE_GAS, Element.H); - public static FluidMaterial Helium = new FluidMaterial(29, "helium", 0xDDDD00, MaterialIconSet.GAS, of(), STATE_GAS | GENERATE_PLASMA, Element.He); - public static FluidMaterial Helium3 = new FluidMaterial(30, "helium3", 0xDDDD00, MaterialIconSet.GAS, of(), STATE_GAS, Element.He_3); - public static IngotMaterial Indium = new IngotMaterial(31, "indium", 0x6600BB, MaterialIconSet.METALLIC, 2, of(), 0, Element.In); - public static IngotMaterial Iridium = new IngotMaterial(32, "iridium", 0xFFFFFF, MaterialIconSet.DULL, 3, of(), GENERATE_ORE | EXT2_METAL | GENERATE_ORE | GENERATE_RING | GENERATE_ROTOR, Element.Ir, 7.0F, 3.0f, 2560, 2719); - public static IngotMaterial Iron = new IngotMaterial(33, "iron", 0xAAAAAA, MaterialIconSet.METALLIC, 2, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_DENSE | GENERATE_FRAME | GENERATE_LONG_ROD | GENERATE_PLASMA | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, Element.Fe, 7.0F, 2.5f, 256); - public static IngotMaterial Lanthanum = new IngotMaterial(34, "lanthanum", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), 0, Element.La, 1193); - public static IngotMaterial Lead = new IngotMaterial(35, "lead", 0x8C648C, MaterialIconSet.DULL, 1, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_DENSE, Element.Pb); - public static IngotMaterial Lithium = new IngotMaterial(36, "lithium", 0xCBCBCB, MaterialIconSet.DULL, 2, of(), STD_METAL | GENERATE_ORE, Element.Li); - public static IngotMaterial Lutetium = new IngotMaterial(37, "lutetium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), 0, Element.Lu, 1925); - public static IngotMaterial Magnesium = new IngotMaterial(38, "magnesium", 0xFFBBBB, MaterialIconSet.METALLIC, 2, of(), 0, Element.Mg); - public static IngotMaterial Manganese = new IngotMaterial(39, "manganese", 0xEEEEEE, MaterialIconSet.DULL, 2, of(), GENERATE_FOIL, Element.Mn, 7.0F, 2.0f, 512); - public static FluidMaterial Mercury = new FluidMaterial(40, "mercury", 0xFFDDDD, MaterialIconSet.FLUID, of(), SMELT_INTO_FLUID, Element.Hg); - public static IngotMaterial Molybdenum = new IngotMaterial(41, "molybdenum", 0xAAAADD, MaterialIconSet.DULL, 2, of(), GENERATE_ORE, Element.Mo, 7.0F, 2.0f, 512); - public static IngotMaterial Neodymium = new IngotMaterial(42, "neodymium", 0x777777, MaterialIconSet.METALLIC, 2, of(), STD_METAL | GENERATE_ROD | GENERATE_ORE, Element.Nd, 7.0F, 2.0f, 512, 1297); - public static IngotMaterial Darmstadtium = new IngotMaterial(43, "darmstadtium", 0xAAAAAA, MaterialIconSet.METALLIC, 6, of(), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, Element.Ds, 24.0F, 6.0f, 155360); - public static IngotMaterial Nickel = new IngotMaterial(44, "nickel", 0xAAAAFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_PLASMA, Element.Ni); - public static IngotMaterial Niobium = new IngotMaterial(45, "niobium", 0x9486AA, MaterialIconSet.METALLIC, 2, of(), STD_METAL | GENERATE_ORE, Element.Nb, 2750); - public static FluidMaterial Nitrogen = new FluidMaterial(46, "nitrogen", 0x7090AF, MaterialIconSet.FLUID, of(), STATE_GAS | GENERATE_PLASMA, Element.N); - public static IngotMaterial Osmium = new IngotMaterial(47, "osmium", 0x5050FF, MaterialIconSet.METALLIC, 4, of(), GENERATE_ORE | EXT2_METAL | GENERATE_RING | GENERATE_ROTOR, Element.Os, 16.0F, 4.0f, 1280, 3306); - public static FluidMaterial Oxygen = new FluidMaterial(48, "oxygen", 0x90AAEE, MaterialIconSet.FLUID, of(), STATE_GAS | GENERATE_PLASMA, Element.O); - public static IngotMaterial Palladium = new IngotMaterial(49, "palladium", 0xCED0DD, MaterialIconSet.METALLIC, 2, of(), EXT2_METAL | GENERATE_ORE | GENERATE_FLUID_BLOCK, Element.Pd, 8.0f, 2.0f, 512, 1228); - public static DustMaterial Phosphorus = new DustMaterial(50, "phosphorus", 0xC8C800, MaterialIconSet.SAND, 2, of(), 0, Element.P); - public static IngotMaterial Platinum = new IngotMaterial(51, "platinum", 0xFFFF99, MaterialIconSet.SHINY, 2, of(), EXT2_METAL | GENERATE_ORE | GENERATE_FLUID_BLOCK, Element.Pt); - public static IngotMaterial Plutonium = new IngotMaterial(52, "plutonium", 0xF03232, MaterialIconSet.METALLIC, 3, of(), EXT_METAL, Element.Pu); - public static IngotMaterial Plutonium241 = new IngotMaterial(53, "plutonium241", 0xFA4646, MaterialIconSet.SHINY, 3, of(), EXT_METAL, Element.Pu_241); - public static IngotMaterial Potassium = new IngotMaterial(54, "potassium", 0xCECECE, MaterialIconSet.METALLIC, 1, of(), EXT_METAL, Element.K); - public static IngotMaterial Praseodymium = new IngotMaterial(55, "praseodymium", 0xCECECE, MaterialIconSet.METALLIC, 2, of(), EXT_METAL, Element.Pr, 1208); - public static IngotMaterial Promethium = new IngotMaterial(56, "promethium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), EXT_METAL, Element.Pm, 1315); - public static FluidMaterial Radon = new FluidMaterial(57, "radon", 0xFF00FF, MaterialIconSet.FLUID, of(), STATE_GAS, Element.Rn); - public static IngotMaterial Rubidium = new IngotMaterial(58, "rubidium", 0xF01E1E, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Rb); - public static IngotMaterial Samarium = new IngotMaterial(59, "samarium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Sm, 1345); - public static IngotMaterial Scandium = new IngotMaterial(60, "scandium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Sc, 1814); - public static IngotMaterial Silicon = new IngotMaterial(61, "silicon", 0x3C3C50, MaterialIconSet.METALLIC, 2, of(), STD_METAL | GENERATE_FOIL, Element.Si, 1687); - public static IngotMaterial Silver = new IngotMaterial(62, "silver", 0xDCDCFF, MaterialIconSet.SHINY, 2, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE, Element.Ag); - public static IngotMaterial Sodium = new IngotMaterial(63, "sodium", 0x000096, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Na); - public static IngotMaterial Strontium = new IngotMaterial(64, "strontium", 0xC8C896, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Sr); - public static DustMaterial Sulfur = new DustMaterial(65, "sulfur", 0xC8C800, MaterialIconSet.SAND, 2, of(), NO_SMASHING | NO_SMELTING | FLAMMABLE | GENERATE_ORE, Element.S); - public static IngotMaterial Tantalum = new IngotMaterial(66, "tantalum", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Ta); - public static IngotMaterial Tellurium = new IngotMaterial(67, "tellurium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Te); - public static IngotMaterial Terbium = new IngotMaterial(68, "terbium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Tb, 1629); - public static IngotMaterial Thorium = new IngotMaterial(69, "thorium", 0x001E00, MaterialIconSet.SHINY, 2, of(), STD_METAL | GENERATE_ORE, Element.Th, 6.0F, 2.0f, 512); - public static IngotMaterial Thulium = new IngotMaterial(70, "thulium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Tm, 1818); - public static IngotMaterial Tin = new IngotMaterial(71, "tin", 0xDCDCDC, MaterialIconSet.DULL, 1, of(), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_ROTOR | GENERATE_ORE, Element.Sn); - public static IngotMaterial Titanium = new IngotMaterial(72, "titanium", 0xDCA0F0, MaterialIconSet.METALLIC, 3, of(), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_SPRING | GENERATE_FRAME | GENERATE_DENSE, Element.Ti, 7.0F, 3.0f, 1600, 1941); - public static FluidMaterial Tritium = new FluidMaterial(73, "tritium", 0xFF0000, MaterialIconSet.METALLIC, of(), STATE_GAS, Element.T); - public static IngotMaterial Tungsten = new IngotMaterial(74, "tungsten", 0x323232, MaterialIconSet.METALLIC, 3, of(), EXT2_METAL, Element.W, 7.0F, 3.0f, 2560, 3000); - public static IngotMaterial Uranium = new IngotMaterial(75, "uranium", 0x32F032, MaterialIconSet.METALLIC, 3, of(), STD_METAL | GENERATE_ORE, Element.U, 6.0F, 3.0f, 512); - public static IngotMaterial Uranium235 = new IngotMaterial(76, "uranium235", 0x46FA46, MaterialIconSet.SHINY, 3, of(), STD_METAL | GENERATE_ORE | GENERATE_ROD, Element.U_235, 6.0F, 3.0f, 512); - public static IngotMaterial Vanadium = new IngotMaterial(77, "vanadium", 0x323232, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.V, 2183); - public static IngotMaterial Ytterbium = new IngotMaterial(353, "ytterbium", 0xFFFFFF, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Yb, 1097); - public static IngotMaterial Yttrium = new IngotMaterial(78, "yttrium", 0xDCFADC, MaterialIconSet.METALLIC, 2, of(), STD_METAL, Element.Y, 1799); - public static IngotMaterial Zinc = new IngotMaterial(79, "zinc", 0xFAF0F0, MaterialIconSet.METALLIC, 1, of(), STD_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_FOIL, Element.Zn); + public static IngotMaterial Aluminium = new IngotMaterial(1, "aluminium", 0x80C8F0, DULL, 2, of(), EXT2_METAL | GENERATE_SMALL_GEAR | GENERATE_ORE | GENERATE_RING | GENERATE_FRAME, Element.Al, 10.0F, 2.0f, 128, 1700); + public static IngotMaterial Americium = new IngotMaterial(2, "americium", 0xC8C8C8, METALLIC, 3, of(), STD_METAL | GENERATE_ROD | GENERATE_LONG_ROD, Element.Am); + public static IngotMaterial Antimony = new IngotMaterial(3, "antimony", 0xDCDCC8, SHINY, 2, of(), EXT_METAL | MORTAR_GRINDABLE, Element.Sb); + public static FluidMaterial Argon = new FluidMaterial(4, "argon", 0xBBBB00, FLUID, of(), STATE_GAS | GENERATE_PLASMA, Element.Ar); + public static DustMaterial Arsenic = new DustMaterial(5, "arsenic", 0xDDDDDD, SAND, 2, of(), 0, Element.As); + public static IngotMaterial Barium = new IngotMaterial(6, "barium", 0xFFFFFF, SHINY, 2, of(), 0, Element.Ba); + public static IngotMaterial Beryllium = new IngotMaterial(7, "beryllium", 0x64B464, METALLIC, 2, of(), STD_METAL | GENERATE_ORE, Element.Be); + public static IngotMaterial Bismuth = new IngotMaterial(8, "bismuth", 0x64A0A0, METALLIC, 1, of(), GENERATE_ORE, Element.Bi); + public static DustMaterial Boron = new DustMaterial(9, "boron", 0xD2F0D2, SAND, 2, of(), 0, Element.B); + public static IngotMaterial Caesium = new IngotMaterial(10, "caesium", 0xFFFFFC, DULL, 2, of(), 0, Element.Cs); + public static IngotMaterial Calcium = new IngotMaterial(11, "calcium", 0xDDDDAA, METALLIC, 2, of(), 0, Element.Ca); + public static IngotMaterial Carbon = new IngotMaterial(12, "carbon", 0x333333, DULL, 2, of(), 0, Element.C); + public static IngotMaterial Cadmium = new IngotMaterial(13, "cadmium", 0x505060, SHINY, 2, of(), 0, Element.Cd); + public static IngotMaterial Cerium = new IngotMaterial(14, "cerium", 0xEEEEEE, METALLIC, 2, of(), 0, Element.Ce, 1068); + public static FluidMaterial Chlorine = new FluidMaterial(15, "chlorine", 0xEEEECC, GAS, of(), STATE_GAS, Element.Cl); + public static IngotMaterial Chrome = new IngotMaterial(16, "chrome", 0xFFAAAB, SHINY, 3, of(), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR, Element.Cr, 12.0f, 3.0f, 512, 1700); + public static IngotMaterial Cobalt = new IngotMaterial(17, "cobalt", 0x2929BC, METALLIC, 2, of(), GENERATE_ORE | STD_METAL, Element.Co, 10.0F, 3.0f, 256); + public static IngotMaterial Copper = new IngotMaterial(18, "copper", 0xFF8000, SHINY, 1, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_DENSE, Element.Cu); + public static FluidMaterial Deuterium = new FluidMaterial(19, "deuterium", 0xEEEE00, FLUID, of(), STATE_GAS, Element.D); + public static IngotMaterial Dysprosium = new IngotMaterial(20, "dysprosium", 0xFFFFEE, SHINY, 2, of(), 0, Element.Dy, 1680); + public static IngotMaterial Erbium = new IngotMaterial(21, "erbium", 0xEEEEEE, METALLIC, 2, of(), STD_METAL, Element.Er, 1802); + public static IngotMaterial Europium = new IngotMaterial(22, "europium", 0xFFFFFF, METALLIC, 2, of(), STD_METAL | GENERATE_ROD, Element.Eu, 1099); + public static FluidMaterial Fluorine = new FluidMaterial(23, "fluorine", 0xFFFFAA, GAS, of(), STATE_GAS, Element.F).setFluidTemperature(253); + public static IngotMaterial Gadolinium = new IngotMaterial(24, "gadolinium", 0xDDDDFF, METALLIC, 2, of(), 0, Element.Gd, 1585); + public static IngotMaterial Gallium = new IngotMaterial(25, "gallium", 0xEEEEFF, SHINY, 2, of(), GENERATE_PLATE, Element.Ga); + public static IngotMaterial Gold = new IngotMaterial(26, "gold", 0xFFFF00, SHINY, 2, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, Element.Au); + public static IngotMaterial Holmium = new IngotMaterial(27, "holmium", 0xFFFFFF, METALLIC, 2, of(), 0, Element.Ho, 1734); + public static FluidMaterial Hydrogen = new FluidMaterial(28, "hydrogen", 0x00FFAA, GAS, of(), STATE_GAS, Element.H); + public static FluidMaterial Helium = new FluidMaterial(29, "helium", 0xDDDD00, GAS, of(), STATE_GAS | GENERATE_PLASMA, Element.He); + public static FluidMaterial Helium3 = new FluidMaterial(30, "helium3", 0xDDDD00, GAS, of(), STATE_GAS, Element.He_3); + public static IngotMaterial Indium = new IngotMaterial(31, "indium", 0x6600BB, METALLIC, 2, of(), 0, Element.In); + public static IngotMaterial Iridium = new IngotMaterial(32, "iridium", 0xFFFFFF, DULL, 3, of(), GENERATE_ORE | EXT2_METAL | GENERATE_ORE | GENERATE_RING | GENERATE_ROTOR, Element.Ir, 7.0F, 3.0f, 2560, 2719); + public static IngotMaterial Iron = new IngotMaterial(33, "iron", 0xAAAAAA, METALLIC, 2, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_DENSE | GENERATE_FRAME | GENERATE_LONG_ROD | GENERATE_PLASMA | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, Element.Fe, 7.0F, 2.5f, 256); + public static IngotMaterial Lanthanum = new IngotMaterial(34, "lanthanum", 0xFFFFFF, METALLIC, 2, of(), 0, Element.La, 1193); + public static IngotMaterial Lead = new IngotMaterial(35, "lead", 0x8C648C, DULL, 1, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_DENSE, Element.Pb); + public static IngotMaterial Lithium = new IngotMaterial(36, "lithium", 0xCBCBCB, DULL, 2, of(), STD_METAL | GENERATE_ORE, Element.Li); + public static IngotMaterial Lutetium = new IngotMaterial(37, "lutetium", 0xFFFFFF, METALLIC, 2, of(), 0, Element.Lu, 1925); + public static IngotMaterial Magnesium = new IngotMaterial(38, "magnesium", 0xFFBBBB, METALLIC, 2, of(), 0, Element.Mg); + public static IngotMaterial Manganese = new IngotMaterial(39, "manganese", 0xEEEEEE, DULL, 2, of(), GENERATE_FOIL, Element.Mn, 7.0F, 2.0f, 512); + public static FluidMaterial Mercury = new FluidMaterial(40, "mercury", 0xFFDDDD, FLUID, of(), SMELT_INTO_FLUID, Element.Hg); + public static IngotMaterial Molybdenum = new IngotMaterial(41, "molybdenum", 0xAAAADD, DULL, 2, of(), GENERATE_ORE, Element.Mo, 7.0F, 2.0f, 512); + public static IngotMaterial Neodymium = new IngotMaterial(42, "neodymium", 0x777777, METALLIC, 2, of(), STD_METAL | GENERATE_ROD | GENERATE_ORE, Element.Nd, 7.0F, 2.0f, 512, 1297); + public static IngotMaterial Darmstadtium = new IngotMaterial(43, "darmstadtium", 0xAAAAAA, METALLIC, 6, of(), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, Element.Ds, 24.0F, 6.0f, 155360); + public static IngotMaterial Nickel = new IngotMaterial(44, "nickel", 0xAAAAFF, METALLIC, 2, of(), STD_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_PLASMA, Element.Ni); + public static IngotMaterial Niobium = new IngotMaterial(45, "niobium", 0x9486AA, METALLIC, 2, of(), STD_METAL | GENERATE_ORE, Element.Nb, 2750); + public static FluidMaterial Nitrogen = new FluidMaterial(46, "nitrogen", 0x7090AF, FLUID, of(), STATE_GAS | GENERATE_PLASMA, Element.N); + public static IngotMaterial Osmium = new IngotMaterial(47, "osmium", 0x5050FF, METALLIC, 4, of(), GENERATE_ORE | EXT2_METAL | GENERATE_RING | GENERATE_ROTOR, Element.Os, 16.0F, 4.0f, 1280, 3306); + public static FluidMaterial Oxygen = new FluidMaterial(48, "oxygen", 0x90AAEE, FLUID, of(), STATE_GAS | GENERATE_PLASMA, Element.O); + public static IngotMaterial Palladium = new IngotMaterial(49, "palladium", 0xCED0DD, METALLIC, 2, of(), EXT2_METAL | GENERATE_ORE | GENERATE_FLUID_BLOCK, Element.Pd, 8.0f, 2.0f, 512, 1228); + public static DustMaterial Phosphorus = new DustMaterial(50, "phosphorus", 0xC8C800, SAND, 2, of(), 0, Element.P); + public static IngotMaterial Platinum = new IngotMaterial(51, "platinum", 0xFFFF99, SHINY, 2, of(), EXT2_METAL | GENERATE_ORE | GENERATE_FLUID_BLOCK, Element.Pt); + public static IngotMaterial Plutonium = new IngotMaterial(52, "plutonium", 0xF03232, METALLIC, 3, of(), EXT_METAL, Element.Pu); + public static IngotMaterial Plutonium241 = new IngotMaterial(53, "plutonium241", 0xFA4646, SHINY, 3, of(), EXT_METAL, Element.Pu_241); + public static IngotMaterial Potassium = new IngotMaterial(54, "potassium", 0xCECECE, METALLIC, 1, of(), EXT_METAL, Element.K); + public static IngotMaterial Praseodymium = new IngotMaterial(55, "praseodymium", 0xCECECE, METALLIC, 2, of(), EXT_METAL, Element.Pr, 1208); + public static IngotMaterial Promethium = new IngotMaterial(56, "promethium", 0xFFFFFF, METALLIC, 2, of(), EXT_METAL, Element.Pm, 1315); + public static FluidMaterial Radon = new FluidMaterial(57, "radon", 0xFF00FF, FLUID, of(), STATE_GAS, Element.Rn); + public static IngotMaterial Rubidium = new IngotMaterial(58, "rubidium", 0xF01E1E, METALLIC, 2, of(), STD_METAL, Element.Rb); + public static IngotMaterial Samarium = new IngotMaterial(59, "samarium", 0xFFFFFF, METALLIC, 2, of(), STD_METAL, Element.Sm, 1345); + public static IngotMaterial Scandium = new IngotMaterial(60, "scandium", 0xFFFFFF, METALLIC, 2, of(), STD_METAL, Element.Sc, 1814); + public static IngotMaterial Silicon = new IngotMaterial(61, "silicon", 0x3C3C50, METALLIC, 2, of(), STD_METAL | GENERATE_FOIL, Element.Si, 1687); + public static IngotMaterial Silver = new IngotMaterial(62, "silver", 0xDCDCFF, SHINY, 2, of(), EXT2_METAL | GENERATE_ORE | MORTAR_GRINDABLE, Element.Ag); + public static IngotMaterial Sodium = new IngotMaterial(63, "sodium", 0x000096, METALLIC, 2, of(), STD_METAL, Element.Na); + public static IngotMaterial Strontium = new IngotMaterial(64, "strontium", 0xC8C896, METALLIC, 2, of(), STD_METAL, Element.Sr); + public static DustMaterial Sulfur = new DustMaterial(65, "sulfur", 0xC8C800, SAND, 2, of(), NO_SMASHING | NO_SMELTING | FLAMMABLE | GENERATE_ORE, Element.S); + public static IngotMaterial Tantalum = new IngotMaterial(66, "tantalum", 0xFFFFFF, METALLIC, 2, of(), STD_METAL, Element.Ta); + public static IngotMaterial Tellurium = new IngotMaterial(67, "tellurium", 0xFFFFFF, METALLIC, 2, of(), STD_METAL, Element.Te); + public static IngotMaterial Terbium = new IngotMaterial(68, "terbium", 0xFFFFFF, METALLIC, 2, of(), STD_METAL, Element.Tb, 1629); + public static IngotMaterial Thorium = new IngotMaterial(69, "thorium", 0x001E00, SHINY, 2, of(), STD_METAL | GENERATE_ORE, Element.Th, 6.0F, 2.0f, 512); + public static IngotMaterial Thulium = new IngotMaterial(70, "thulium", 0xFFFFFF, METALLIC, 2, of(), STD_METAL, Element.Tm, 1818); + public static IngotMaterial Tin = new IngotMaterial(71, "tin", 0xDCDCDC, DULL, 1, of(), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_ROTOR | GENERATE_ORE, Element.Sn); + public static IngotMaterial Titanium = new IngotMaterial(72, "titanium", 0xDCA0F0, METALLIC, 3, of(), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_SPRING | GENERATE_FRAME | GENERATE_DENSE, Element.Ti, 7.0F, 3.0f, 1600, 1941); + public static FluidMaterial Tritium = new FluidMaterial(73, "tritium", 0xFF0000, METALLIC, of(), STATE_GAS, Element.T); + public static IngotMaterial Tungsten = new IngotMaterial(74, "tungsten", 0x323232, METALLIC, 3, of(), EXT2_METAL, Element.W, 7.0F, 3.0f, 2560, 3000); + public static IngotMaterial Uranium = new IngotMaterial(75, "uranium", 0x32F032, METALLIC, 3, of(), STD_METAL | GENERATE_ORE, Element.U, 6.0F, 3.0f, 512); + public static IngotMaterial Uranium235 = new IngotMaterial(76, "uranium235", 0x46FA46, SHINY, 3, of(), STD_METAL | GENERATE_ORE | GENERATE_ROD, Element.U_235, 6.0F, 3.0f, 512); + public static IngotMaterial Vanadium = new IngotMaterial(77, "vanadium", 0x323232, METALLIC, 2, of(), STD_METAL, Element.V, 2183); + public static IngotMaterial Ytterbium = new IngotMaterial(353, "ytterbium", 0xFFFFFF, METALLIC, 2, of(), STD_METAL, Element.Yb, 1097); + public static IngotMaterial Yttrium = new IngotMaterial(78, "yttrium", 0xDCFADC, METALLIC, 2, of(), STD_METAL, Element.Y, 1799); + public static IngotMaterial Zinc = new IngotMaterial(79, "zinc", 0xFAF0F0, METALLIC, 1, of(), STD_METAL | GENERATE_ORE | MORTAR_GRINDABLE | GENERATE_FOIL, Element.Zn); /** * First Degree Compounds */ - public static FluidMaterial Methane = new FluidMaterial(80, "methane", 0xFFFFFF, MaterialIconSet.FLUID, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 4)), 0); - public static FluidMaterial CarbonDioxide = new FluidMaterial(81, "carbon_dioxide", 0xA9D0F5, MaterialIconSet.FLUID, of(new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 2)), 0); - public static FluidMaterial NobleGases = new FluidMaterial(82, "noble_gases", 0xA9D0F5, MaterialIconSet.FLUID, of(new MaterialStack(CarbonDioxide, 25), new MaterialStack(Helium, 11), new MaterialStack(Methane, 4), new MaterialStack(Deuterium, 2), new MaterialStack(Radon, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial Air = new FluidMaterial(83, "air", 0xA9D0F5, MaterialIconSet.FLUID, of(new MaterialStack(Nitrogen, 40), new MaterialStack(Oxygen, 11), new MaterialStack(Argon, 1), new MaterialStack(NobleGases, 1)), STATE_GAS | DISABLE_DECOMPOSITION); - public static FluidMaterial LiquidAir = new FluidMaterial(84, "liquid_air", 0xA9D0F5, MaterialIconSet.FLUID, of(new MaterialStack(Nitrogen, 40), new MaterialStack(Oxygen, 11), new MaterialStack(Argon, 1), new MaterialStack(NobleGases, 1)), STATE_GAS | DISABLE_DECOMPOSITION); - public static GemMaterial Almandine = new GemMaterial(85, "almandine", 0xFF0000, MaterialIconSet.GEM_VERTICAL, 1, of(new MaterialStack(Aluminium, 2), new MaterialStack(Iron, 3), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), STD_GEM); - public static DustMaterial Andradite = new DustMaterial(86, "andradite", 0x967800, MaterialIconSet.GEM_VERTICAL, 1, of(new MaterialStack(Calcium, 3), new MaterialStack(Iron, 2), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), 0); - public static IngotMaterial AnnealedCopper = new IngotMaterial(87, "annealed_copper", 0xFF7814, MaterialIconSet.SHINY, 2, of(new MaterialStack(Copper, 1)), EXT2_METAL | MORTAR_GRINDABLE); - public static DustMaterial Asbestos = new DustMaterial(88, "asbestos", 0xE6E6E6, MaterialIconSet.SAND, 1, of(new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 9)), 0); - public static DustMaterial Ash = new DustMaterial(89, "ash", 0x969696, MaterialIconSet.SAND, 1, of(new MaterialStack(Carbon, 1)), DISABLE_DECOMPOSITION); - public static DustMaterial BandedIron = new DustMaterial(90, "banded_iron", 0x915A5A, MaterialIconSet.DULL, 2, of(new MaterialStack(Iron, 2), new MaterialStack(Oxygen, 3)), GENERATE_ORE); - public static IngotMaterial BatteryAlloy = new IngotMaterial(91, "battery_alloy", 0x9C7CA0, MaterialIconSet.DULL, 1, of(new MaterialStack(Lead, 4), new MaterialStack(Antimony, 1)), EXT_METAL); - public static GemMaterial BlueTopaz = new GemMaterial(92, "blue_topaz", 0x0000FF, MaterialIconSet.GEM_HORIZONTAL, 3, of(new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 1), new MaterialStack(Fluorine, 2), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 6)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 7.0F, 3.0f, 256); - public static DustMaterial Bone = new DustMaterial(93, "bone", 0xFFFFFF, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Calcium, 1)), MORTAR_GRINDABLE | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); - public static IngotMaterial Brass = new IngotMaterial(94, "brass", 0xFFB400, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Zinc, 1), new MaterialStack(Copper, 3)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING, 8.0F, 3.0f, 152); - public static IngotMaterial Bronze = new IngotMaterial(95, "bronze", 0xFF8000, MaterialIconSet.DULL, 2, of(new MaterialStack(Tin, 1), new MaterialStack(Copper, 3)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_ROTOR | GENERATE_FRAME | GENERATE_LONG_ROD, 6.0F, 2.5f, 192); - public static DustMaterial BrownLimonite = new DustMaterial(96, "brown_limonite", 0xC86400, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Iron, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE); - public static DustMaterial Calcite = new DustMaterial(97, "calcite", 0xFAE6DC, MaterialIconSet.DULL, 1, of(new MaterialStack(Calcium, 1), new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE); - public static DustMaterial Cassiterite = new DustMaterial(98, "cassiterite", 0xDCDCDC, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Tin, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE); - public static DustMaterial CassiteriteSand = new DustMaterial(99, "cassiterite_sand", 0xDCDCDC, MaterialIconSet.SAND, 1, of(new MaterialStack(Tin, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE); - public static DustMaterial Chalcopyrite = new DustMaterial(100, "chalcopyrite", 0xA07828, MaterialIconSet.DULL, 1, of(new MaterialStack(Copper, 1), new MaterialStack(Iron, 1), new MaterialStack(Sulfur, 2)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); - public static GemMaterial Charcoal = new GemMaterial(101, "charcoal", 0x644646, MaterialIconSet.LIGNITE, 1, of(new MaterialStack(Carbon, 1)), FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE); - public static DustMaterial Chromite = new DustMaterial(102, "chromite", 0x23140F, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Iron, 1), new MaterialStack(Chrome, 2), new MaterialStack(Oxygen, 4)), GENERATE_ORE, null); - public static GemMaterial Cinnabar = new GemMaterial(103, "cinnabar", 0x960000, MaterialIconSet.EMERALD, 1, of(new MaterialStack(Mercury, 1), new MaterialStack(Sulfur, 1)), GENERATE_ORE | CRYSTALLISABLE); - public static FluidMaterial Water = new FluidMaterial(104, "water", 0x0000FF, MaterialIconSet.FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), NO_RECYCLING | DISABLE_DECOMPOSITION); - public static DustMaterial Clay = new DustMaterial(105, "clay", 0xC8C8DC, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Sodium, 2), new MaterialStack(Lithium, 1), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 2), new MaterialStack(Water, 6)), MORTAR_GRINDABLE); - public static GemMaterial Coal = new GemMaterial(106, "coal", 0x464646, MaterialIconSet.LIGNITE, 1, of(new MaterialStack(Carbon, 1)), GENERATE_ORE | FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); - public static DustMaterial Cobaltite = new DustMaterial(107, "cobaltite", 0x5050FA, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Cobalt, 1), new MaterialStack(Arsenic, 1), new MaterialStack(Sulfur, 1)), GENERATE_ORE); - public static DustMaterial Cooperite = new DustMaterial(108, "cooperite", 0xFFFFC8, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Platinum, 3), new MaterialStack(Nickel, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Palladium, 1)), GENERATE_ORE); - public static IngotMaterial Cupronickel = new IngotMaterial(109, "cupronickel", 0xE39680, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Copper, 1), new MaterialStack(Nickel, 1)), EXT_METAL); - public static DustMaterial DarkAsh = new DustMaterial(110, "dark_ash", 0x323232, MaterialIconSet.SAND, 1, of(new MaterialStack(Carbon, 1)), DISABLE_DECOMPOSITION); - public static GemMaterial Diamond = new GemMaterial(111, "diamond", 0xC8FFFF, MaterialIconSet.DIAMOND, 3, of(new MaterialStack(Carbon, 1)), GENERATE_ROD | GENERATE_BOLT_SCREW | GENERATE_LENSE | GENERATE_GEAR | NO_SMASHING | NO_SMELTING | FLAMMABLE | HIGH_SIFTER_OUTPUT | GENERATE_ORE | DISABLE_DECOMPOSITION | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, 8.0F, 3.0f, 1280); - public static IngotMaterial Electrum = new IngotMaterial(112, "electrum", 0xFFFF64, MaterialIconSet.SHINY, 2, of(new MaterialStack(Silver, 1), new MaterialStack(Gold, 1)), EXT2_METAL | MORTAR_GRINDABLE); - public static GemMaterial Emerald = new GemMaterial(113, "emerald", 0x50FF50, MaterialIconSet.EMERALD, 2, of(new MaterialStack(Beryllium, 3), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 6), new MaterialStack(Oxygen, 18)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, 10.0F, 2.0f, 368); - public static DustMaterial Galena = new DustMaterial(114, "galena", 0x643C64, MaterialIconSet.ROUGH, 3, of(new MaterialStack(Lead, 3), new MaterialStack(Silver, 3), new MaterialStack(Sulfur, 2)), GENERATE_ORE | NO_SMELTING); - public static DustMaterial Garnierite = new DustMaterial(115, "garnierite", 0x32C846, MaterialIconSet.ROUGH, 3, of(new MaterialStack(Nickel, 1), new MaterialStack(Oxygen, 1)), GENERATE_ORE); - public static FluidMaterial Glyceryl = new FluidMaterial(116, "glyceryl", 0x009696, MaterialIconSet.FLUID, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 5), new MaterialStack(Nitrogen, 3), new MaterialStack(Oxygen, 9)), FLAMMABLE | EXPLOSIVE | NO_SMELTING | NO_SMASHING); - public static GemMaterial GreenSapphire = new GemMaterial(117, "green_sapphire", 0x64C882, MaterialIconSet.GEM_HORIZONTAL, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Oxygen, 3)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT | GENERATE_LENSE, 8.0F, 3.0f, 368); - public static DustMaterial Grossular = new DustMaterial(118, "grossular", 0xC86400, MaterialIconSet.GEM_VERTICAL, 1, of(new MaterialStack(Calcium, 3), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), GENERATE_ORE); - public static FluidMaterial DistilledWater = new FluidMaterial(119, "distilled_water", 0x0000FF, MaterialIconSet.FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), NO_RECYCLING | DISABLE_DECOMPOSITION); - public static DustMaterial Ice = new DustMaterial(120, "ice", 0xC8C8FF, MaterialIconSet.ROUGH, 0, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), NO_SMASHING | NO_RECYCLING | SMELT_INTO_FLUID | EXCLUDE_BLOCK_CRAFTING_RECIPES | DISABLE_DECOMPOSITION); - public static DustMaterial Ilmenite = new DustMaterial(121, "ilmenite", 0x463732, MaterialIconSet.ROUGH, 3, of(new MaterialStack(Iron, 1), new MaterialStack(Titanium, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE | DISABLE_DECOMPOSITION); - public static GemMaterial Rutile = new GemMaterial(122, "rutile", 0xD40D5C, MaterialIconSet.GEM_HORIZONTAL, 2, of(new MaterialStack(Titanium, 1), new MaterialStack(Oxygen, 2)), STD_GEM | DISABLE_DECOMPOSITION); - public static DustMaterial Bauxite = new DustMaterial(123, "bauxite", 0xC86400, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Rutile, 2), new MaterialStack(Aluminium, 16), new MaterialStack(Hydrogen, 10), new MaterialStack(Oxygen, 11)), GENERATE_ORE | DISABLE_DECOMPOSITION); - public static FluidMaterial TitaniumTetrachloride = new FluidMaterial(124, "titanium_tetrachloride", 0xD40D5C, MaterialIconSet.FLUID, of(new MaterialStack(Titanium, 1), new MaterialStack(Carbon, 2), new MaterialStack(Chlorine, 2)), DISABLE_DECOMPOSITION).setFluidTemperature(2200); - public static DustMaterial MagnesiumChloride = new DustMaterial(125, "magnesium_chloride", 0xD40D5C, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Chlorine, 2)), 0); - public static IngotMaterial Invar = new IngotMaterial(126, "invar", 0xB4B478, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Iron, 2), new MaterialStack(Nickel, 1)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_FRAME, 7.0F, 3.0f, 512); - public static IngotMaterial Kanthal = new IngotMaterial(127, "kanthal", 0xC2D2DF, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Iron, 1), new MaterialStack(Aluminium, 1), new MaterialStack(Chrome, 1)), EXT_METAL, null, 1800); - public static GemMaterial Lazurite = new GemMaterial(128, "lazurite", 0x6478FF, MaterialIconSet.LAPIS, 1, of(new MaterialStack(Aluminium, 6), new MaterialStack(Silicon, 6), new MaterialStack(Calcium, 8), new MaterialStack(Sodium, 8)), GENERATE_PLATE | GENERATE_ORE | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE | GENERATE_ROD | DECOMPOSITION_BY_ELECTROLYZING); - public static IngotMaterial Magnalium = new IngotMaterial(129, "magnalium", 0xC8BEFF, MaterialIconSet.DULL, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Aluminium, 2)), EXT2_METAL | GENERATE_LONG_ROD, 6.0F, 2.0f, 256); - public static DustMaterial Magnesite = new DustMaterial(130, "magnesite", 0xFAFAB4, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE); - public static DustMaterial Magnetite = new DustMaterial(131, "magnetite", 0x1E1E1E, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Iron, 3), new MaterialStack(Oxygen, 4)), GENERATE_ORE); - public static DustMaterial Molybdenite = new DustMaterial(132, "molybdenite", 0x191919, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Molybdenum, 1), new MaterialStack(Sulfur, 2)), GENERATE_ORE); - public static IngotMaterial Nichrome = new IngotMaterial(133, "nichrome", 0xCDCEF6, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Nickel, 4), new MaterialStack(Chrome, 1)), EXT_METAL, null, 2700); - public static IngotMaterial NiobiumNitride = new IngotMaterial(134, "niobium_nitride", 0x1D291D, MaterialIconSet.DULL, 2, of(new MaterialStack(Niobium, 1), new MaterialStack(Nitrogen, 1)), EXT_METAL, null, 2573); - public static IngotMaterial NiobiumTitanium = new IngotMaterial(135, "niobium_titanium", 0x1D1D29, MaterialIconSet.DULL, 2, of(new MaterialStack(Niobium, 1), new MaterialStack(Titanium, 1)), EXT2_METAL, null, 4500); - public static FluidMaterial NitrogenDioxide = new FluidMaterial(137, "nitrogen_dioxide", 0x64AFFF, MaterialIconSet.FLUID, of(new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 2)), 0); - public static DustMaterial Obsidian = new DustMaterial(138, "obsidian", 0x503264, MaterialIconSet.DULL, 3, of(new MaterialStack(Magnesium, 1), new MaterialStack(Iron, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 8)), NO_SMASHING | EXCLUDE_BLOCK_CRAFTING_RECIPES); - public static DustMaterial Phosphate = new DustMaterial(139, "phosphate", 0xFFFF00, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Phosphorus, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | FLAMMABLE | EXPLOSIVE); - public static IngotMaterial PigIron = new IngotMaterial(140, "pig_iron", 0xC8B4B4, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Iron, 1)), EXT_METAL | GENERATE_RING, 6.0F, 4.0f, 384); - public static IngotMaterial Plastic = new IngotMaterial(141, "plastic", 0xC8C8C8, MaterialIconSet.DULL, 1, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 2)), GENERATE_PLATE | FLAMMABLE | NO_SMASHING | SMELT_INTO_FLUID); - public static IngotMaterial Epoxid = new IngotMaterial(142, "epoxid", 0xC88C14, MaterialIconSet.DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)), EXT2_METAL); - public static DustMaterial Silicone = new DustMaterial(143, "silicone", 0xDCDCDC, MaterialIconSet.DULL, 1, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 1)), GENERATE_PLATE | FLAMMABLE | NO_SMASHING | SMELT_INTO_FLUID); - public static IngotMaterial Polycaprolactam = new IngotMaterial(144, "polycaprolactam", 0x323232, MaterialIconSet.DULL, 1, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 11), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 1)), GENERATE_PLATE); - public static IngotMaterial Polytetrafluoroethylene = new IngotMaterial(145, "polytetrafluoroethylene", 0x646464, MaterialIconSet.DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Fluorine, 4)), GENERATE_PLATE | SMELT_INTO_FLUID | NO_WORKING); - public static DustMaterial Powellite = new DustMaterial(146, "powellite", 0xFFFF00, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Calcium, 1), new MaterialStack(Molybdenum, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE); - public static DustMaterial Pyrite = new DustMaterial(148, "pyrite", 0x967828, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Iron, 1), new MaterialStack(Sulfur, 2)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); - public static DustMaterial Pyrolusite = new DustMaterial(149, "pyrolusite", 0x9696AA, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Manganese, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE); - public static DustMaterial Pyrope = new DustMaterial(150, "pyrope", 0x783264, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), GENERATE_ORE); - public static DustMaterial RockSalt = new DustMaterial(151, "rock_salt", 0xF0C8C8, MaterialIconSet.FINE, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Chlorine, 1)), GENERATE_ORE | NO_SMASHING); - public static IngotMaterial Rubber = new IngotMaterial(152, "rubber", 0x151515, MaterialIconSet.ROUGH, 0, of(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)), GENERATE_PLATE | GENERATE_GEAR | GENERATE_RING | FLAMMABLE | NO_SMASHING | GENERATE_RING | NO_WORKING | DISABLE_DECOMPOSITION); - public static DustMaterial RawRubber = new DustMaterial(153, "raw_rubber", 0xCCC789, MaterialIconSet.SAND, 0, of(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)), DISABLE_DECOMPOSITION); - public static GemMaterial Ruby = new GemMaterial(154, "ruby", 0xBD4949, MaterialIconSet.RUBY, 2, of(new MaterialStack(Chrome, 1), new MaterialStack(Aluminium, 2), new MaterialStack(Oxygen, 3)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 8.5F, 3.0f, 256); - public static DustMaterial Salt = new DustMaterial(155, "salt", 0xFFFFFF, MaterialIconSet.SAND, 1, of(new MaterialStack(Sodium, 1), new MaterialStack(Chlorine, 1)), GENERATE_ORE | NO_SMASHING); - public static DustMaterial Saltpeter = new DustMaterial(156, "saltpeter", 0xE6E6E6, MaterialIconSet.FINE, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | FLAMMABLE); - public static GemMaterial Sapphire = new GemMaterial(157, "sapphire", 0x6464C8, MaterialIconSet.GEM_VERTICAL, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Oxygen, 3)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, null, 7.5F, 4.0f, 256); - public static DustMaterial Scheelite = new DustMaterial(158, "scheelite", 0xC88C14, MaterialIconSet.DULL, 3, of(new MaterialStack(Tungsten, 1), new MaterialStack(Calcium, 2), new MaterialStack(Oxygen, 4)), GENERATE_ORE | DECOMPOSITION_REQUIRES_HYDROGEN); - public static DustMaterial SiliconDioxide = new DustMaterial(159, "silicon_dioxide", 0xC8C8C8, MaterialIconSet.QUARTZ, 1, of(new MaterialStack(Silicon, 1), new MaterialStack(Oxygen, 2)), NO_SMASHING | NO_SMELTING | CRYSTALLISABLE); - public static GemMaterial Sodalite = new GemMaterial(161, "sodalite", 0x1414FF, MaterialIconSet.LAPIS, 1, of(new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Sodium, 4), new MaterialStack(Chlorine, 1)), GENERATE_ORE | GENERATE_PLATE | GENERATE_ROD | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE | GENERATE_ROD | DECOMPOSITION_BY_ELECTROLYZING); - public static FluidMaterial SodiumPersulfate = new FluidMaterial(162, "sodium_persulfate", 0xFFFFFF, MaterialIconSet.FLUID, of(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 2), new MaterialStack(Oxygen, 8)), 0); - public static DustMaterial SodiumSulfide = new DustMaterial(163, "sodium_sulfide", 0xAAAA00, MaterialIconSet.DULL, 1, of(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 1)), 0); - public static FluidMaterial HydrogenSulfide = new FluidMaterial(164, "hydrogen_sulfide", 0xFFFFFF, MaterialIconSet.FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Sulfur, 1)), 0); - public static FluidMaterial Steam = new FluidMaterial(346, "steam", 0xFFFFFF, MaterialIconSet.GAS, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), NO_RECYCLING | GENERATE_FLUID_BLOCK | DISABLE_DECOMPOSITION).setFluidTemperature(380); - public static FluidMaterial Epichlorhydrin = new FluidMaterial(349, "epichlorhydrin", 0xFFFFFF, MaterialIconSet.FLUID, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 5), new MaterialStack(Chlorine, 1), new MaterialStack(Oxygen, 1)), 0); - public static FluidMaterial NitricAcid = new FluidMaterial(351, "nitric_acid", 0xCCCC00, MaterialIconSet.FLUID, of(new MaterialStack(Hydrogen, 1), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 3)), 0); - public static DustMaterial Brick = new DustMaterial(355, "brick", 0xB75A40, MaterialIconSet.FINE, 1, of(new MaterialStack(Clay, 1)), EXCLUDE_BLOCK_CRAFTING_RECIPES | DECOMPOSITION_BY_CENTRIFUGING); - public static DustMaterial Fireclay = new DustMaterial(356, "fireclay", 0x928073, MaterialIconSet.FINE, 2, of(new MaterialStack(Clay, 1), new MaterialStack(Brick, 1)), DECOMPOSITION_BY_CENTRIFUGING); - public static GemMaterial Coke = new GemMaterial(357, "coke", 0x666666, MaterialIconSet.LIGNITE, 1, of(new MaterialStack(Carbon, 1)), FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE); - - - public static IngotMaterial SolderingAlloy = new IngotMaterial(180, "soldering_alloy", 0xDCDCE6, MaterialIconSet.DULL, 1, of(new MaterialStack(Tin, 9), new MaterialStack(Antimony, 1)), EXT_METAL | GENERATE_FINE_WIRE, null); - public static DustMaterial Spessartine = new DustMaterial(181, "spessartine", 0xFF6464, MaterialIconSet.GEM_VERTICAL, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Manganese, 3), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), GENERATE_ORE); - public static DustMaterial Sphalerite = new DustMaterial(182, "sphalerite", 0xFFFFFF, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Zinc, 1), new MaterialStack(Sulfur, 1)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT | DISABLE_DECOMPOSITION); - public static IngotMaterial StainlessSteel = new IngotMaterial(183, "stainless_steel", 0xC8C8DC, MaterialIconSet.SHINY, 2, of(new MaterialStack(Iron, 6), new MaterialStack(Chrome, 1), new MaterialStack(Manganese, 1), new MaterialStack(Nickel, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_FRAME | GENERATE_LONG_ROD, null, 7.0F, 4.0f, 480, 1700); - public static IngotMaterial Steel = new IngotMaterial(184, "steel", 0x505050, MaterialIconSet.DULL, 2, of(new MaterialStack(Iron, 1)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_DENSE | DISABLE_DECOMPOSITION | GENERATE_FRAME | GENERATE_LONG_ROD, null, 6.0F, 3.0f, 512, 1000); - public static DustMaterial Stibnite = new DustMaterial(185, "stibnite", 0x464646, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Antimony, 2), new MaterialStack(Sulfur, 3)), GENERATE_ORE); - public static FluidMaterial SulfuricAcid = new FluidMaterial(186, "sulfuric_acid", 0xFF8000, MaterialIconSet.FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4)), 0); - public static GemMaterial Tanzanite = new GemMaterial(187, "tanzanite", 0x4000C8, MaterialIconSet.GEM_VERTICAL, 2, of(new MaterialStack(Calcium, 2), new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Hydrogen, 1), new MaterialStack(Oxygen, 13)), EXT_METAL | GENERATE_ORE | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, null, 7.0F, 2.0f, 256); - public static DustMaterial Tetrahedrite = new DustMaterial(188, "tetrahedrite", 0xC82000, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Copper, 3), new MaterialStack(Antimony, 1), new MaterialStack(Sulfur, 3), new MaterialStack(Iron, 1)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); - public static IngotMaterial TinAlloy = new IngotMaterial(189, "tin_alloy", 0xC8C8C8, MaterialIconSet.DULL, 2, of(new MaterialStack(Tin, 1), new MaterialStack(Iron, 1)), EXT2_METAL, null); - public static GemMaterial Topaz = new GemMaterial(190, "topaz", 0xFF8000, MaterialIconSet.GEM_HORIZONTAL, 3, of(new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 1), new MaterialStack(Fluorine, 2), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 6)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, null, 7.0F, 2.0f, 256); - public static DustMaterial Tungstate = new DustMaterial(191, "tungstate", 0x373223, MaterialIconSet.DULL, 3, of(new MaterialStack(Tungsten, 1), new MaterialStack(Lithium, 2), new MaterialStack(Oxygen, 4)), GENERATE_ORE | DECOMPOSITION_REQUIRES_HYDROGEN, null); - public static IngotMaterial Ultimet = new IngotMaterial(192, "ultimet", 0xB4B4E6, MaterialIconSet.SHINY, 4, of(new MaterialStack(Cobalt, 5), new MaterialStack(Chrome, 2), new MaterialStack(Nickel, 1), new MaterialStack(Molybdenum, 1)), EXT2_METAL, null, 9.0F, 4.0f, 2048, 2700); - public static DustMaterial Uraninite = new DustMaterial(193, "uraninite", 0x232323, MaterialIconSet.ROUGH, 3, of(new MaterialStack(Uranium, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE | DISABLE_DECOMPOSITION); - public static DustMaterial Uvarovite = new DustMaterial(194, "uvarovite", 0xB4FFB4, MaterialIconSet.GEM_VERTICAL, 2, of(new MaterialStack(Calcium, 3), new MaterialStack(Chrome, 2), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), 0); - public static IngotMaterial VanadiumGallium = new IngotMaterial(195, "vanadium_gallium", 0x80808C, MaterialIconSet.SHINY, 2, of(new MaterialStack(Vanadium, 3), new MaterialStack(Gallium, 1)), STD_METAL | GENERATE_FOIL | GENERATE_ROD, null, 4500); - public static IngotMaterial WroughtIron = new IngotMaterial(197, "wrought_iron", 0xC8B4B4, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Iron, 1)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_LONG_ROD | DISABLE_DECOMPOSITION, null, 6.0F, 3.5f, 384); - public static DustMaterial Wulfenite = new DustMaterial(198, "wulfenite", 0xFF8000, MaterialIconSet.DULL, 3, of(new MaterialStack(Lead, 1), new MaterialStack(Molybdenum, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE); - public static DustMaterial YellowLimonite = new DustMaterial(199, "yellow_limonite", 0xC8C800, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Iron, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); - public static IngotMaterial YttriumBariumCuprate = new IngotMaterial(200, "yttrium_barium_cuprate", 0x504046, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Yttrium, 1), new MaterialStack(Barium, 2), new MaterialStack(Copper, 3), new MaterialStack(Oxygen, 7)), EXT_METAL | GENERATE_FOIL | GENERATE_FINE_WIRE, null, 4500); - public static GemMaterial NetherQuartz = new GemMaterial(201, "nether_quartz", 0xE6D2D2, MaterialIconSet.QUARTZ, 1, of(), STD_SOLID | NO_SMELTING | CRYSTALLISABLE | GENERATE_ORE | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); - public static GemMaterial CertusQuartz = new GemMaterial(202, "certus_quartz", 0xD2D2E6, MaterialIconSet.QUARTZ, 1, of(), STD_SOLID | NO_SMELTING | CRYSTALLISABLE | GENERATE_ORE); - public static GemMaterial Quartzite = new GemMaterial(203, "quartzite", 0xD2E6D2, MaterialIconSet.QUARTZ, 1, of(), NO_SMELTING | CRYSTALLISABLE | GENERATE_ORE); - public static IngotMaterial Graphite = new IngotMaterial(204, "graphite", 0x808080, MaterialIconSet.DULL, 2, of(), GENERATE_PLATE | GENERATE_ORE | NO_SMELTING | FLAMMABLE); - public static IngotMaterial Graphene = new IngotMaterial(205, "graphene", 0x808080, MaterialIconSet.SHINY, 2, of(), GENERATE_PLATE); - public static GemMaterial Jasper = new GemMaterial(206, "jasper", 0xC85050, MaterialIconSet.EMERALD, 2, of(), STD_GEM | NO_SMELTING | HIGH_SIFTER_OUTPUT); - public static IngotMaterial Osmiridium = new IngotMaterial(207, "osmiridium", 0x6464FF, MaterialIconSet.METALLIC, 3, of(new MaterialStack(Iridium, 3), new MaterialStack(Osmium, 1)), EXT2_METAL, null, 9.0F, 3.0f, 3152, 2500); - public static FluidMaterial NitrationMixture = new FluidMaterial(352, "nitration_mixture", 0xEEEEAA, MaterialIconSet.FLUID, of(new MaterialStack(NitricAcid, 1), new MaterialStack(SulfuricAcid, 1)), 0); - public static DustMaterial Tenorite = new DustMaterial(358, "tenorite", 0x606060, MaterialIconSet.FINE, 1, of(new MaterialStack(Copper, 1), new MaterialStack(Oxygen, 1)), GENERATE_ORE); - public static DustMaterial Cuprite = new DustMaterial(359, "cuprite", 0x770000, MaterialIconSet.RUBY, 2, of(new MaterialStack(Copper, 2), new MaterialStack(Oxygen, 1)), GENERATE_ORE); - public static DustMaterial Bornite = new DustMaterial(360, "bornite", 0xC11800, MaterialIconSet.DULL, 1, of(new MaterialStack(Copper, 5), new MaterialStack(Iron, 1), new MaterialStack(Sulfur, 4)), GENERATE_ORE); - public static DustMaterial Chalcocite = new DustMaterial(361, "chalcocite", 0x353535, MaterialIconSet.GEM_VERTICAL, 2, of(new MaterialStack(Copper, 2), new MaterialStack(Sulfur, 1)), GENERATE_ORE); - public static DustMaterial Enargite = new DustMaterial(362, "enargite", 0xBBBBBB, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Copper, 3), new MaterialStack(Arsenic, 1), new MaterialStack(Sulfur, 4)), GENERATE_ORE); - public static DustMaterial Tennantite = new DustMaterial(363, "tennantite", 0x909090, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Copper, 12), new MaterialStack(Arsenic, 4), new MaterialStack(Sulfur, 13)), GENERATE_ORE); - - public static DustMaterial PhosphorousPentoxide = new DustMaterial(466, "phosphorous_pentoxide", 8158464, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Phosphorus, 4), new MaterialStack(Materials.Oxygen, 10)), 0); - public static FluidMaterial PhosphoricAcid = new FluidMaterial(467, "phosphoric_acid", 11447824, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Hydrogen, 3), new MaterialStack(Materials.Phosphorus, 1), new MaterialStack(Materials.Oxygen, 4)), 0); - public static DustMaterial SodiumHydroxide = new DustMaterial(373, "sodium_hydroxide", 6466, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Sodium, 1), new MaterialStack(Materials.Oxygen, 1), new MaterialStack(Materials.Hydrogen, 1)), DISABLE_DECOMPOSITION); - public static DustMaterial Quicklime = new DustMaterial(374, "quicklime", 8421504, MaterialIconSet.SAND, 1, of(new MaterialStack(Materials.Calcium, 1), new MaterialStack(Materials.Oxygen, 1)), 0); - public static FluidMaterial SulfurTrioxide = new FluidMaterial(376, "sulfur_trioxide", 8618781, MaterialIconSet.GAS, of(new MaterialStack(Materials.Sulfur, 1), new MaterialStack(Materials.Oxygen, 3)), STATE_GAS); - public static FluidMaterial SulfurDioxide = new FluidMaterial(377, "sulfur_dioxide", 10263584, MaterialIconSet.GAS, of(new MaterialStack(Materials.Sulfur, 1), new MaterialStack(Materials.Oxygen, 2)), STATE_GAS); - public static FluidMaterial CarbonMonoxde = new FluidMaterial(380, "carbon_monoxide", 1655660, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 1), new MaterialStack(Materials.Oxygen, 1)), STATE_GAS); - public static FluidMaterial DilutedSulfuricAcid = new FluidMaterial(381, "diluted_sulfuric_acid", 9987366, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Hydrogen, 2), new MaterialStack(Materials.Sulfur, 1), new MaterialStack(Materials.Oxygen, 4)), DISABLE_DECOMPOSITION); - public static DustMaterial SodiumBisulfate = new DustMaterial(382, "sodium_bisulfate", 10291, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Sodium, 1), new MaterialStack(Materials.Hydrogen, 1), new MaterialStack(Materials.Sulfur, 1), new MaterialStack(Materials.Oxygen, 4)), DISABLE_DECOMPOSITION); - public static FluidMaterial DilutedHydrochloricAcid = new FluidMaterial(384, "diluted_hydrochloric_acid", 8160900, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Hydrogen, 1), new MaterialStack(Materials.Chlorine, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial HypochlorousAcid = new FluidMaterial(385, "hypochlorous_acid", 6123637, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Hydrogen, 1), new MaterialStack(Materials.Chlorine, 1), new MaterialStack(Materials.Oxygen, 1)), 0); - public static FluidMaterial Ammonia = new FluidMaterial(386, "ammonia", 4011371, MaterialIconSet.GAS, of(new MaterialStack(Materials.Nitrogen, 1), new MaterialStack(Materials.Hydrogen, 3)), STATE_GAS | DISABLE_DECOMPOSITION); - public static FluidMaterial Chloramine = new FluidMaterial(387, "chloramine", 4031340, MaterialIconSet.GAS, of(new MaterialStack(Materials.Nitrogen, 1), new MaterialStack(Materials.Hydrogen, 2), new MaterialStack(Materials.Chlorine, 1)), STATE_GAS); - public static IngotMaterial GalliumArsenide = new IngotMaterial(410, "gallium_arsenide", 7500402, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Arsenic, 1), new MaterialStack(Materials.Gallium, 1)), DECOMPOSITION_BY_CENTRIFUGING | GENERATE_PLATE, null, 1200); - public static DustMaterial Potash = new DustMaterial(402, "potash", 5057059, MaterialIconSet.SAND, 1, of(new MaterialStack(Materials.Potassium, 2), new MaterialStack(Materials.Oxygen, 1)), 0); - public static DustMaterial SodaAsh = new DustMaterial(403, "soda_ash", 7697800, MaterialIconSet.SAND, 1, of(new MaterialStack(Materials.Sodium, 2), new MaterialStack(Materials.Carbon, 1), new MaterialStack(Materials.Oxygen, 3)), 0); - public static FluidMaterial NickelSulfateSolution = new FluidMaterial(412, "nickel_sulfate_water_solution", 4109888, MaterialIconSet.FLUID, of(new MaterialStack(Nickel, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4), new MaterialStack(Water, 6)), 0); - public static FluidMaterial CopperSulfateSolution = new FluidMaterial(413, "blue_vitriol_water_solution", 4761024, MaterialIconSet.FLUID, of(new MaterialStack(Copper, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4), new MaterialStack(Water, 5)), 0); - public static IngotMaterial IndiumGalliumPhosphide = new IngotMaterial(421, "indium_gallium_phosphide", 8220052, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Indium, 1), new MaterialStack(Materials.Gallium, 1), new MaterialStack(Materials.Phosphorus, 1)), DECOMPOSITION_BY_CENTRIFUGING | GENERATE_PLATE); - public static DustMaterial FerriteMixture = new DustMaterial(423, "ferrite_mixture", 9803157, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Materials.Nickel, 1), new MaterialStack(Materials.Zinc, 1), new MaterialStack(Materials.Iron, 4)), DISABLE_DECOMPOSITION); - public static IngotMaterial NickelZincFerrite = new IngotMaterial(424, "nickel_zinc_ferrite", 3092271, MaterialIconSet.METALLIC, 0, of(new MaterialStack(Materials.Nickel, 1), new MaterialStack(Materials.Zinc, 1), new MaterialStack(Materials.Iron, 4), new MaterialStack(Materials.Oxygen, 8)), EXT_METAL, null, 1500); - public static FluidMaterial LeadZincSolution = new FluidMaterial(426, "lead_zinc_solution", 3213570, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Lead, 1), new MaterialStack(Materials.Silver, 1), new MaterialStack(Materials.Zinc, 1), new MaterialStack(Materials.Sulfur, 3), new MaterialStack(Materials.Water, 1)), DECOMPOSITION_BY_CENTRIFUGING); - public static DustMaterial Magnesia = new DustMaterial(460, "magnesia", 8943736, MaterialIconSet.SAND, 1, of(new MaterialStack(Materials.Magnesium, 1), new MaterialStack(Materials.Oxygen, 1)), 0); - public static FluidMaterial HydrofluoricAcid = new FluidMaterial(404, "hydrofluoric_acid", 946055, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Hydrogen, 1), new MaterialStack(Materials.Fluorine, 1)), 0); - public static FluidMaterial NitricOxide = new FluidMaterial(405, "nitric_oxide", 6790328, MaterialIconSet.GAS, of(new MaterialStack(Materials.Nitrogen, 1), new MaterialStack(Materials.Oxygen, 1)), STATE_GAS); + public static FluidMaterial Methane = new FluidMaterial(80, "methane", 0xFFFFFF, FLUID, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 4)), 0); + public static FluidMaterial CarbonDioxide = new FluidMaterial(81, "carbon_dioxide", 0xA9D0F5, FLUID, of(new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 2)), 0); + public static FluidMaterial NobleGases = new FluidMaterial(82, "noble_gases", 0xA9D0F5, FLUID, of(new MaterialStack(CarbonDioxide, 25), new MaterialStack(Helium, 11), new MaterialStack(Methane, 4), new MaterialStack(Deuterium, 2), new MaterialStack(Radon, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial Air = new FluidMaterial(83, "air", 0xA9D0F5, FLUID, of(new MaterialStack(Nitrogen, 40), new MaterialStack(Oxygen, 11), new MaterialStack(Argon, 1), new MaterialStack(NobleGases, 1)), STATE_GAS | DISABLE_DECOMPOSITION); + public static FluidMaterial LiquidAir = new FluidMaterial(84, "liquid_air", 0xA9D0F5, FLUID, of(new MaterialStack(Nitrogen, 40), new MaterialStack(Oxygen, 11), new MaterialStack(Argon, 1), new MaterialStack(NobleGases, 1)), STATE_GAS | DISABLE_DECOMPOSITION); + public static GemMaterial Almandine = new GemMaterial(85, "almandine", 0xFF0000, GEM_VERTICAL, 1, of(new MaterialStack(Aluminium, 2), new MaterialStack(Iron, 3), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), STD_GEM); + public static DustMaterial Andradite = new DustMaterial(86, "andradite", 0x967800, GEM_VERTICAL, 1, of(new MaterialStack(Calcium, 3), new MaterialStack(Iron, 2), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), 0); + public static IngotMaterial AnnealedCopper = new IngotMaterial(87, "annealed_copper", 0xFF7814, SHINY, 2, of(new MaterialStack(Copper, 1)), EXT2_METAL | MORTAR_GRINDABLE); + public static DustMaterial Asbestos = new DustMaterial(88, "asbestos", 0xE6E6E6, SAND, 1, of(new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 9)), 0); + public static DustMaterial Ash = new DustMaterial(89, "ash", 0x969696, SAND, 1, of(new MaterialStack(Carbon, 1)), DISABLE_DECOMPOSITION); + public static DustMaterial BandedIron = new DustMaterial(90, "banded_iron", 0x915A5A, DULL, 2, of(new MaterialStack(Iron, 2), new MaterialStack(Oxygen, 3)), GENERATE_ORE); + public static IngotMaterial BatteryAlloy = new IngotMaterial(91, "battery_alloy", 0x9C7CA0, DULL, 1, of(new MaterialStack(Lead, 4), new MaterialStack(Antimony, 1)), EXT_METAL); + public static GemMaterial BlueTopaz = new GemMaterial(92, "blue_topaz", 0x0000FF, GEM_HORIZONTAL, 3, of(new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 1), new MaterialStack(Fluorine, 2), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 6)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 7.0F, 3.0f, 256); + public static DustMaterial Bone = new DustMaterial(93, "bone", 0xFFFFFF, ROUGH, 1, of(new MaterialStack(Calcium, 1)), MORTAR_GRINDABLE | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); + public static IngotMaterial Brass = new IngotMaterial(94, "brass", 0xFFB400, METALLIC, 1, of(new MaterialStack(Zinc, 1), new MaterialStack(Copper, 3)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING, 8.0F, 3.0f, 152); + public static IngotMaterial Bronze = new IngotMaterial(95, "bronze", 0xFF8000, DULL, 2, of(new MaterialStack(Tin, 1), new MaterialStack(Copper, 3)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_ROTOR | GENERATE_FRAME | GENERATE_LONG_ROD, 6.0F, 2.5f, 192); + public static DustMaterial BrownLimonite = new DustMaterial(96, "brown_limonite", 0xC86400, METALLIC, 1, of(new MaterialStack(Iron, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE); + public static DustMaterial Calcite = new DustMaterial(97, "calcite", 0xFAE6DC, DULL, 1, of(new MaterialStack(Calcium, 1), new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE); + public static DustMaterial Cassiterite = new DustMaterial(98, "cassiterite", 0xDCDCDC, METALLIC, 1, of(new MaterialStack(Tin, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE); + public static DustMaterial CassiteriteSand = new DustMaterial(99, "cassiterite_sand", 0xDCDCDC, SAND, 1, of(new MaterialStack(Tin, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE); + public static DustMaterial Chalcopyrite = new DustMaterial(100, "chalcopyrite", 0xA07828, DULL, 1, of(new MaterialStack(Copper, 1), new MaterialStack(Iron, 1), new MaterialStack(Sulfur, 2)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); + public static GemMaterial Charcoal = new GemMaterial(101, "charcoal", 0x644646, LIGNITE, 1, of(new MaterialStack(Carbon, 1)), FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE); + public static DustMaterial Chromite = new DustMaterial(102, "chromite", 0x23140F, METALLIC, 1, of(new MaterialStack(Iron, 1), new MaterialStack(Chrome, 2), new MaterialStack(Oxygen, 4)), GENERATE_ORE, null); + public static GemMaterial Cinnabar = new GemMaterial(103, "cinnabar", 0x960000, EMERALD, 1, of(new MaterialStack(Mercury, 1), new MaterialStack(Sulfur, 1)), GENERATE_ORE | CRYSTALLISABLE); + public static FluidMaterial Water = new FluidMaterial(104, "water", 0x0000FF, FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), NO_RECYCLING | DISABLE_DECOMPOSITION); + public static DustMaterial Clay = new DustMaterial(105, "clay", 0xC8C8DC, ROUGH, 1, of(new MaterialStack(Sodium, 2), new MaterialStack(Lithium, 1), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 2), new MaterialStack(Water, 6)), MORTAR_GRINDABLE); + public static GemMaterial Coal = new GemMaterial(106, "coal", 0x464646, LIGNITE, 1, of(new MaterialStack(Carbon, 1)), GENERATE_ORE | FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); + public static DustMaterial Cobaltite = new DustMaterial(107, "cobaltite", 0x5050FA, ROUGH, 1, of(new MaterialStack(Cobalt, 1), new MaterialStack(Arsenic, 1), new MaterialStack(Sulfur, 1)), GENERATE_ORE); + public static DustMaterial Cooperite = new DustMaterial(108, "cooperite", 0xFFFFC8, METALLIC, 1, of(new MaterialStack(Platinum, 3), new MaterialStack(Nickel, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Palladium, 1)), GENERATE_ORE); + public static IngotMaterial Cupronickel = new IngotMaterial(109, "cupronickel", 0xE39680, METALLIC, 1, of(new MaterialStack(Copper, 1), new MaterialStack(Nickel, 1)), EXT_METAL); + public static DustMaterial DarkAsh = new DustMaterial(110, "dark_ash", 0x323232, SAND, 1, of(new MaterialStack(Carbon, 1)), DISABLE_DECOMPOSITION); + public static GemMaterial Diamond = new GemMaterial(111, "diamond", 0xC8FFFF, DIAMOND, 3, of(new MaterialStack(Carbon, 1)), GENERATE_ROD | GENERATE_BOLT_SCREW | GENERATE_LENSE | GENERATE_GEAR | NO_SMASHING | NO_SMELTING | FLAMMABLE | HIGH_SIFTER_OUTPUT | GENERATE_ORE | DISABLE_DECOMPOSITION | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, 8.0F, 3.0f, 1280); + public static IngotMaterial Electrum = new IngotMaterial(112, "electrum", 0xFFFF64, SHINY, 2, of(new MaterialStack(Silver, 1), new MaterialStack(Gold, 1)), EXT2_METAL | MORTAR_GRINDABLE); + public static GemMaterial Emerald = new GemMaterial(113, "emerald", 0x50FF50, EMERALD, 2, of(new MaterialStack(Beryllium, 3), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 6), new MaterialStack(Oxygen, 18)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES, 10.0F, 2.0f, 368); + public static DustMaterial Galena = new DustMaterial(114, "galena", 0x643C64, ROUGH, 3, of(new MaterialStack(Lead, 3), new MaterialStack(Silver, 3), new MaterialStack(Sulfur, 2)), GENERATE_ORE | NO_SMELTING); + public static DustMaterial Garnierite = new DustMaterial(115, "garnierite", 0x32C846, ROUGH, 3, of(new MaterialStack(Nickel, 1), new MaterialStack(Oxygen, 1)), GENERATE_ORE); + public static FluidMaterial Glyceryl = new FluidMaterial(116, "glyceryl", 0x009696, FLUID, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 5), new MaterialStack(Nitrogen, 3), new MaterialStack(Oxygen, 9)), FLAMMABLE | EXPLOSIVE | NO_SMELTING | NO_SMASHING); + public static GemMaterial GreenSapphire = new GemMaterial(117, "green_sapphire", 0x64C882, GEM_HORIZONTAL, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Oxygen, 3)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT | GENERATE_LENSE, 8.0F, 3.0f, 368); + public static DustMaterial Grossular = new DustMaterial(118, "grossular", 0xC86400, GEM_VERTICAL, 1, of(new MaterialStack(Calcium, 3), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), GENERATE_ORE); + public static FluidMaterial DistilledWater = new FluidMaterial(119, "distilled_water", 0x0000FF, FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), NO_RECYCLING | DISABLE_DECOMPOSITION); + public static DustMaterial Ice = new DustMaterial(120, "ice", 0xC8C8FF, ROUGH, 0, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), NO_SMASHING | NO_RECYCLING | SMELT_INTO_FLUID | EXCLUDE_BLOCK_CRAFTING_RECIPES | DISABLE_DECOMPOSITION); + public static DustMaterial Ilmenite = new DustMaterial(121, "ilmenite", 0x463732, ROUGH, 3, of(new MaterialStack(Iron, 1), new MaterialStack(Titanium, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE | DISABLE_DECOMPOSITION); + public static GemMaterial Rutile = new GemMaterial(122, "rutile", 0xD40D5C, GEM_HORIZONTAL, 2, of(new MaterialStack(Titanium, 1), new MaterialStack(Oxygen, 2)), STD_GEM | DISABLE_DECOMPOSITION); + public static DustMaterial Bauxite = new DustMaterial(123, "bauxite", 0xC86400, ROUGH, 1, of(new MaterialStack(Rutile, 2), new MaterialStack(Aluminium, 16), new MaterialStack(Hydrogen, 10), new MaterialStack(Oxygen, 11)), GENERATE_ORE | DISABLE_DECOMPOSITION); + public static FluidMaterial TitaniumTetrachloride = new FluidMaterial(124, "titanium_tetrachloride", 0xD40D5C, FLUID, of(new MaterialStack(Titanium, 1), new MaterialStack(Carbon, 2), new MaterialStack(Chlorine, 2)), DISABLE_DECOMPOSITION).setFluidTemperature(2200); + public static DustMaterial MagnesiumChloride = new DustMaterial(125, "magnesium_chloride", 0xD40D5C, ROUGH, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Chlorine, 2)), 0); + public static IngotMaterial Invar = new IngotMaterial(126, "invar", 0xB4B478, METALLIC, 2, of(new MaterialStack(Iron, 2), new MaterialStack(Nickel, 1)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_FRAME, 7.0F, 3.0f, 512); + public static IngotMaterial Kanthal = new IngotMaterial(127, "kanthal", 0xC2D2DF, METALLIC, 2, of(new MaterialStack(Iron, 1), new MaterialStack(Aluminium, 1), new MaterialStack(Chrome, 1)), EXT_METAL, null, 1800); + public static GemMaterial Lazurite = new GemMaterial(128, "lazurite", 0x6478FF, LAPIS, 1, of(new MaterialStack(Aluminium, 6), new MaterialStack(Silicon, 6), new MaterialStack(Calcium, 8), new MaterialStack(Sodium, 8)), GENERATE_PLATE | GENERATE_ORE | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE | GENERATE_ROD | DECOMPOSITION_BY_ELECTROLYZING); + public static IngotMaterial Magnalium = new IngotMaterial(129, "magnalium", 0xC8BEFF, DULL, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Aluminium, 2)), EXT2_METAL | GENERATE_LONG_ROD, 6.0F, 2.0f, 256); + public static DustMaterial Magnesite = new DustMaterial(130, "magnesite", 0xFAFAB4, METALLIC, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE); + public static DustMaterial Magnetite = new DustMaterial(131, "magnetite", 0x1E1E1E, METALLIC, 2, of(new MaterialStack(Iron, 3), new MaterialStack(Oxygen, 4)), GENERATE_ORE); + public static DustMaterial Molybdenite = new DustMaterial(132, "molybdenite", 0x191919, METALLIC, 2, of(new MaterialStack(Molybdenum, 1), new MaterialStack(Sulfur, 2)), GENERATE_ORE); + public static IngotMaterial Nichrome = new IngotMaterial(133, "nichrome", 0xCDCEF6, METALLIC, 2, of(new MaterialStack(Nickel, 4), new MaterialStack(Chrome, 1)), EXT_METAL, null, 2700); + public static IngotMaterial NiobiumNitride = new IngotMaterial(134, "niobium_nitride", 0x1D291D, DULL, 2, of(new MaterialStack(Niobium, 1), new MaterialStack(Nitrogen, 1)), EXT_METAL, null, 2573); + public static IngotMaterial NiobiumTitanium = new IngotMaterial(135, "niobium_titanium", 0x1D1D29, DULL, 2, of(new MaterialStack(Niobium, 1), new MaterialStack(Titanium, 1)), EXT2_METAL, null, 4500); + public static FluidMaterial NitrogenDioxide = new FluidMaterial(137, "nitrogen_dioxide", 0x64AFFF, FLUID, of(new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 2)), 0); + public static DustMaterial Obsidian = new DustMaterial(138, "obsidian", 0x503264, DULL, 3, of(new MaterialStack(Magnesium, 1), new MaterialStack(Iron, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 8)), NO_SMASHING | EXCLUDE_BLOCK_CRAFTING_RECIPES); + public static DustMaterial Phosphate = new DustMaterial(139, "phosphate", 0xFFFF00, ROUGH, 1, of(new MaterialStack(Phosphorus, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | FLAMMABLE | EXPLOSIVE); + public static IngotMaterial PigIron = new IngotMaterial(140, "pig_iron", 0xC8B4B4, METALLIC, 2, of(new MaterialStack(Iron, 1)), EXT_METAL | GENERATE_RING, 6.0F, 4.0f, 384); + public static IngotMaterial Plastic = new IngotMaterial(141, "plastic", 0xC8C8C8, DULL, 1, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 2)), GENERATE_PLATE | FLAMMABLE | NO_SMASHING | SMELT_INTO_FLUID); + public static IngotMaterial Epoxid = new IngotMaterial(142, "epoxid", 0xC88C14, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)), EXT2_METAL); + public static DustMaterial Silicone = new DustMaterial(143, "silicone", 0xDCDCDC, DULL, 1, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 1)), GENERATE_PLATE | FLAMMABLE | NO_SMASHING | SMELT_INTO_FLUID); + public static IngotMaterial Polycaprolactam = new IngotMaterial(144, "polycaprolactam", 0x323232, DULL, 1, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 11), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 1)), GENERATE_PLATE); + public static IngotMaterial Polytetrafluoroethylene = new IngotMaterial(145, "polytetrafluoroethylene", 0x646464, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Fluorine, 4)), GENERATE_PLATE | SMELT_INTO_FLUID | NO_WORKING); + public static DustMaterial Powellite = new DustMaterial(146, "powellite", 0xFFFF00, ROUGH, 2, of(new MaterialStack(Calcium, 1), new MaterialStack(Molybdenum, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE); + public static DustMaterial Pyrite = new DustMaterial(148, "pyrite", 0x967828, ROUGH, 1, of(new MaterialStack(Iron, 1), new MaterialStack(Sulfur, 2)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); + public static DustMaterial Pyrolusite = new DustMaterial(149, "pyrolusite", 0x9696AA, ROUGH, 2, of(new MaterialStack(Manganese, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE); + public static DustMaterial Pyrope = new DustMaterial(150, "pyrope", 0x783264, ROUGH, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), GENERATE_ORE); + public static DustMaterial RockSalt = new DustMaterial(151, "rock_salt", 0xF0C8C8, FINE, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Chlorine, 1)), GENERATE_ORE | NO_SMASHING); + public static IngotMaterial Rubber = new IngotMaterial(152, "rubber", 0x151515, ROUGH, 0, of(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)), GENERATE_PLATE | GENERATE_GEAR | GENERATE_RING | FLAMMABLE | NO_SMASHING | GENERATE_RING | NO_WORKING | DISABLE_DECOMPOSITION); + public static DustMaterial RawRubber = new DustMaterial(153, "raw_rubber", 0xCCC789, SAND, 0, of(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)), DISABLE_DECOMPOSITION); + public static GemMaterial Ruby = new GemMaterial(154, "ruby", 0xBD4949, RUBY, 2, of(new MaterialStack(Chrome, 1), new MaterialStack(Aluminium, 2), new MaterialStack(Oxygen, 3)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 8.5F, 3.0f, 256); + public static DustMaterial Salt = new DustMaterial(155, "salt", 0xFFFFFF, SAND, 1, of(new MaterialStack(Sodium, 1), new MaterialStack(Chlorine, 1)), GENERATE_ORE | NO_SMASHING); + public static DustMaterial Saltpeter = new DustMaterial(156, "saltpeter", 0xE6E6E6, FINE, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | FLAMMABLE); + public static GemMaterial Sapphire = new GemMaterial(157, "sapphire", 0x6464C8, GEM_VERTICAL, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Oxygen, 3)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, null, 7.5F, 4.0f, 256); + public static DustMaterial Scheelite = new DustMaterial(158, "scheelite", 0xC88C14, DULL, 3, of(new MaterialStack(Tungsten, 1), new MaterialStack(Calcium, 2), new MaterialStack(Oxygen, 4)), GENERATE_ORE | DECOMPOSITION_REQUIRES_HYDROGEN); + public static DustMaterial SiliconDioxide = new DustMaterial(159, "silicon_dioxide", 0xC8C8C8, QUARTZ, 1, of(new MaterialStack(Silicon, 1), new MaterialStack(Oxygen, 2)), NO_SMASHING | NO_SMELTING | CRYSTALLISABLE); + public static GemMaterial Sodalite = new GemMaterial(161, "sodalite", 0x1414FF, LAPIS, 1, of(new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Sodium, 4), new MaterialStack(Chlorine, 1)), GENERATE_ORE | GENERATE_PLATE | GENERATE_ROD | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE | GENERATE_ROD | DECOMPOSITION_BY_ELECTROLYZING); + public static FluidMaterial SodiumPersulfate = new FluidMaterial(162, "sodium_persulfate", 0xFFFFFF, FLUID, of(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 2), new MaterialStack(Oxygen, 8)), 0); + public static DustMaterial SodiumSulfide = new DustMaterial(163, "sodium_sulfide", 0xAAAA00, DULL, 1, of(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 1)), 0); + public static FluidMaterial HydrogenSulfide = new FluidMaterial(164, "hydrogen_sulfide", 0xFFFFFF, FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Sulfur, 1)), 0); + public static FluidMaterial Steam = new FluidMaterial(346, "steam", 0xFFFFFF, GAS, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), NO_RECYCLING | GENERATE_FLUID_BLOCK | DISABLE_DECOMPOSITION).setFluidTemperature(380); + public static FluidMaterial Epichlorhydrin = new FluidMaterial(349, "epichlorhydrin", 0xFFFFFF, FLUID, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 5), new MaterialStack(Chlorine, 1), new MaterialStack(Oxygen, 1)), 0); + public static FluidMaterial NitricAcid = new FluidMaterial(351, "nitric_acid", 0xCCCC00, FLUID, of(new MaterialStack(Hydrogen, 1), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 3)), 0); + public static DustMaterial Brick = new DustMaterial(355, "brick", 0xB75A40, FINE, 1, of(new MaterialStack(Clay, 1)), EXCLUDE_BLOCK_CRAFTING_RECIPES | DECOMPOSITION_BY_CENTRIFUGING); + public static DustMaterial Fireclay = new DustMaterial(356, "fireclay", 0x928073, FINE, 2, of(new MaterialStack(Clay, 1), new MaterialStack(Brick, 1)), DECOMPOSITION_BY_CENTRIFUGING); + public static GemMaterial Coke = new GemMaterial(357, "coke", 0x666666, LIGNITE, 1, of(new MaterialStack(Carbon, 1)), FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE); + + + public static IngotMaterial SolderingAlloy = new IngotMaterial(180, "soldering_alloy", 0xDCDCE6, DULL, 1, of(new MaterialStack(Tin, 9), new MaterialStack(Antimony, 1)), EXT_METAL | GENERATE_FINE_WIRE, null); + public static DustMaterial Spessartine = new DustMaterial(181, "spessartine", 0xFF6464, GEM_VERTICAL, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Manganese, 3), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), GENERATE_ORE); + public static DustMaterial Sphalerite = new DustMaterial(182, "sphalerite", 0xFFFFFF, ROUGH, 1, of(new MaterialStack(Zinc, 1), new MaterialStack(Sulfur, 1)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT | DISABLE_DECOMPOSITION); + public static IngotMaterial StainlessSteel = new IngotMaterial(183, "stainless_steel", 0xC8C8DC, SHINY, 2, of(new MaterialStack(Iron, 6), new MaterialStack(Chrome, 1), new MaterialStack(Manganese, 1), new MaterialStack(Nickel, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_FRAME | GENERATE_LONG_ROD, null, 7.0F, 4.0f, 480, 1700); + public static IngotMaterial Steel = new IngotMaterial(184, "steel", 0x505050, DULL, 2, of(new MaterialStack(Iron, 1)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_DENSE | DISABLE_DECOMPOSITION | GENERATE_FRAME | GENERATE_LONG_ROD, null, 6.0F, 3.0f, 512, 1000); + public static DustMaterial Stibnite = new DustMaterial(185, "stibnite", 0x464646, ROUGH, 2, of(new MaterialStack(Antimony, 2), new MaterialStack(Sulfur, 3)), GENERATE_ORE); + public static FluidMaterial SulfuricAcid = new FluidMaterial(186, "sulfuric_acid", 0xFF8000, FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4)), 0); + public static GemMaterial Tanzanite = new GemMaterial(187, "tanzanite", 0x4000C8, GEM_VERTICAL, 2, of(new MaterialStack(Calcium, 2), new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Hydrogen, 1), new MaterialStack(Oxygen, 13)), EXT_METAL | GENERATE_ORE | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, null, 7.0F, 2.0f, 256); + public static DustMaterial Tetrahedrite = new DustMaterial(188, "tetrahedrite", 0xC82000, ROUGH, 2, of(new MaterialStack(Copper, 3), new MaterialStack(Antimony, 1), new MaterialStack(Sulfur, 3), new MaterialStack(Iron, 1)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); + public static IngotMaterial TinAlloy = new IngotMaterial(189, "tin_alloy", 0xC8C8C8, DULL, 2, of(new MaterialStack(Tin, 1), new MaterialStack(Iron, 1)), EXT2_METAL, null); + public static GemMaterial Topaz = new GemMaterial(190, "topaz", 0xFF8000, GEM_HORIZONTAL, 3, of(new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 1), new MaterialStack(Fluorine, 2), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 6)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, null, 7.0F, 2.0f, 256); + public static DustMaterial Tungstate = new DustMaterial(191, "tungstate", 0x373223, DULL, 3, of(new MaterialStack(Tungsten, 1), new MaterialStack(Lithium, 2), new MaterialStack(Oxygen, 4)), GENERATE_ORE | DECOMPOSITION_REQUIRES_HYDROGEN, null); + public static IngotMaterial Ultimet = new IngotMaterial(192, "ultimet", 0xB4B4E6, SHINY, 4, of(new MaterialStack(Cobalt, 5), new MaterialStack(Chrome, 2), new MaterialStack(Nickel, 1), new MaterialStack(Molybdenum, 1)), EXT2_METAL, null, 9.0F, 4.0f, 2048, 2700); + public static DustMaterial Uraninite = new DustMaterial(193, "uraninite", 0x232323, ROUGH, 3, of(new MaterialStack(Uranium, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE | DISABLE_DECOMPOSITION); + public static DustMaterial Uvarovite = new DustMaterial(194, "uvarovite", 0xB4FFB4, GEM_VERTICAL, 2, of(new MaterialStack(Calcium, 3), new MaterialStack(Chrome, 2), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)), 0); + public static IngotMaterial VanadiumGallium = new IngotMaterial(195, "vanadium_gallium", 0x80808C, SHINY, 2, of(new MaterialStack(Vanadium, 3), new MaterialStack(Gallium, 1)), STD_METAL | GENERATE_FOIL | GENERATE_ROD, null, 4500); + public static IngotMaterial WroughtIron = new IngotMaterial(197, "wrought_iron", 0xC8B4B4, METALLIC, 2, of(new MaterialStack(Iron, 1)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_LONG_ROD | DISABLE_DECOMPOSITION, null, 6.0F, 3.5f, 384); + public static DustMaterial Wulfenite = new DustMaterial(198, "wulfenite", 0xFF8000, DULL, 3, of(new MaterialStack(Lead, 1), new MaterialStack(Molybdenum, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE); + public static DustMaterial YellowLimonite = new DustMaterial(199, "yellow_limonite", 0xC8C800, METALLIC, 2, of(new MaterialStack(Iron, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); + public static IngotMaterial YttriumBariumCuprate = new IngotMaterial(200, "yttrium_barium_cuprate", 0x504046, METALLIC, 2, of(new MaterialStack(Yttrium, 1), new MaterialStack(Barium, 2), new MaterialStack(Copper, 3), new MaterialStack(Oxygen, 7)), EXT_METAL | GENERATE_FOIL | GENERATE_FINE_WIRE, null, 4500); + public static GemMaterial NetherQuartz = new GemMaterial(201, "nether_quartz", 0xE6D2D2, QUARTZ, 1, of(), STD_SOLID | NO_SMELTING | CRYSTALLISABLE | GENERATE_ORE | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); + public static GemMaterial CertusQuartz = new GemMaterial(202, "certus_quartz", 0xD2D2E6, QUARTZ, 1, of(), STD_SOLID | NO_SMELTING | CRYSTALLISABLE | GENERATE_ORE); + public static GemMaterial Quartzite = new GemMaterial(203, "quartzite", 0xD2E6D2, QUARTZ, 1, of(), NO_SMELTING | CRYSTALLISABLE | GENERATE_ORE); + public static IngotMaterial Graphite = new IngotMaterial(204, "graphite", 0x808080, DULL, 2, of(), GENERATE_PLATE | GENERATE_ORE | NO_SMELTING | FLAMMABLE); + public static IngotMaterial Graphene = new IngotMaterial(205, "graphene", 0x808080, SHINY, 2, of(), GENERATE_PLATE); + public static GemMaterial Jasper = new GemMaterial(206, "jasper", 0xC85050, EMERALD, 2, of(), STD_GEM | NO_SMELTING | HIGH_SIFTER_OUTPUT); + public static IngotMaterial Osmiridium = new IngotMaterial(207, "osmiridium", 0x6464FF, METALLIC, 3, of(new MaterialStack(Iridium, 3), new MaterialStack(Osmium, 1)), EXT2_METAL, null, 9.0F, 3.0f, 3152, 2500); + public static FluidMaterial NitrationMixture = new FluidMaterial(352, "nitration_mixture", 0xEEEEAA, FLUID, of(new MaterialStack(NitricAcid, 1), new MaterialStack(SulfuricAcid, 1)), 0); + public static DustMaterial Tenorite = new DustMaterial(358, "tenorite", 0x606060, FINE, 1, of(new MaterialStack(Copper, 1), new MaterialStack(Oxygen, 1)), GENERATE_ORE); + public static DustMaterial Cuprite = new DustMaterial(359, "cuprite", 0x770000, RUBY, 2, of(new MaterialStack(Copper, 2), new MaterialStack(Oxygen, 1)), GENERATE_ORE); + public static DustMaterial Bornite = new DustMaterial(360, "bornite", 0xC11800, DULL, 1, of(new MaterialStack(Copper, 5), new MaterialStack(Iron, 1), new MaterialStack(Sulfur, 4)), GENERATE_ORE); + public static DustMaterial Chalcocite = new DustMaterial(361, "chalcocite", 0x353535, GEM_VERTICAL, 2, of(new MaterialStack(Copper, 2), new MaterialStack(Sulfur, 1)), GENERATE_ORE); + public static DustMaterial Enargite = new DustMaterial(362, "enargite", 0xBBBBBB, METALLIC, 2, of(new MaterialStack(Copper, 3), new MaterialStack(Arsenic, 1), new MaterialStack(Sulfur, 4)), GENERATE_ORE); + public static DustMaterial Tennantite = new DustMaterial(363, "tennantite", 0x909090, METALLIC, 2, of(new MaterialStack(Copper, 12), new MaterialStack(Arsenic, 4), new MaterialStack(Sulfur, 13)), GENERATE_ORE); + + public static DustMaterial PhosphorousPentoxide = new DustMaterial(466, "phosphorous_pentoxide", 8158464, DULL, 1, of(new MaterialStack(Phosphorus, 4), new MaterialStack(Oxygen, 10)), 0); + public static FluidMaterial PhosphoricAcid = new FluidMaterial(467, "phosphoric_acid", 11447824, FLUID, of(new MaterialStack(Hydrogen, 3), new MaterialStack(Phosphorus, 1), new MaterialStack(Oxygen, 4)), 0); + public static DustMaterial SodiumHydroxide = new DustMaterial(373, "sodium_hydroxide", 6466, DULL, 1, of(new MaterialStack(Sodium, 1), new MaterialStack(Oxygen, 1), new MaterialStack(Hydrogen, 1)), 0); + public static DustMaterial Quicklime = new DustMaterial(374, "quicklime", 8421504, SAND, 1, of(new MaterialStack(Calcium, 1), new MaterialStack(Oxygen, 1)), 0); + public static FluidMaterial SulfurTrioxide = new FluidMaterial(376, "sulfur_trioxide", 8618781, GAS, of(new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 3)), STATE_GAS); + public static FluidMaterial SulfurDioxide = new FluidMaterial(377, "sulfur_dioxide", 10263584, GAS, of(new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 2)), STATE_GAS); + public static FluidMaterial CarbonMonoxde = new FluidMaterial(380, "carbon_monoxide", 1655660, GAS, of(new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 1)), STATE_GAS); + public static FluidMaterial DilutedSulfuricAcid = new FluidMaterial(381, "diluted_sulfuric_acid", 9987366, FLUID, of(new MaterialStack(Hydrogen, 2), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4)), DISABLE_DECOMPOSITION); + public static DustMaterial SodiumBisulfate = new DustMaterial(382, "sodium_bisulfate", 10291, DULL, 1, of(new MaterialStack(Sodium, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4)), DISABLE_DECOMPOSITION); + public static FluidMaterial HydrochloricAcid = new FluidMaterial(400, "hydrochloric_acid", 9477273, FLUID, of(new MaterialStack(Hydrogen, 1), new MaterialStack(Chlorine, 1)), 0); + public static FluidMaterial DilutedHydrochloricAcid = new FluidMaterial(384, "diluted_hydrochloric_acid", 8160900, FLUID, of(new MaterialStack(Hydrogen, 1), new MaterialStack(Chlorine, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial HypochlorousAcid = new FluidMaterial(385, "hypochlorous_acid", 6123637, FLUID, of(new MaterialStack(Hydrogen, 1), new MaterialStack(Chlorine, 1), new MaterialStack(Oxygen, 1)), 0); + public static FluidMaterial Ammonia = new FluidMaterial(386, "ammonia", 4011371, GAS, of(new MaterialStack(Nitrogen, 1), new MaterialStack(Hydrogen, 3)), STATE_GAS); + public static FluidMaterial Chloramine = new FluidMaterial(387, "chloramine", 4031340, GAS, of(new MaterialStack(Nitrogen, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(HydrochloricAcid, 1)), STATE_GAS); + public static IngotMaterial GalliumArsenide = new IngotMaterial(410, "gallium_arsenide", 7500402, DULL, 1, of(new MaterialStack(Arsenic, 1), new MaterialStack(Gallium, 1)), DECOMPOSITION_BY_CENTRIFUGING | GENERATE_PLATE, null, 1200); + public static DustMaterial Potash = new DustMaterial(402, "potash", 5057059, SAND, 1, of(new MaterialStack(Potassium, 2), new MaterialStack(Oxygen, 1)), 0); + public static DustMaterial SodaAsh = new DustMaterial(403, "soda_ash", 7697800, SAND, 1, of(new MaterialStack(Sodium, 2), new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 3)), 0); + public static FluidMaterial NickelSulfateSolution = new FluidMaterial(412, "nickel_sulfate_water_solution", 4109888, FLUID, of(new MaterialStack(Nickel, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4), new MaterialStack(Water, 6)), 0); + public static FluidMaterial CopperSulfateSolution = new FluidMaterial(413, "blue_vitriol_water_solution", 4761024, FLUID, of(new MaterialStack(Copper, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4), new MaterialStack(Water, 5)), 0); + public static IngotMaterial IndiumGalliumPhosphide = new IngotMaterial(421, "indium_gallium_phosphide", 8220052, DULL, 1, of(new MaterialStack(Indium, 1), new MaterialStack(Gallium, 1), new MaterialStack(Phosphorus, 1)), DECOMPOSITION_BY_CENTRIFUGING | GENERATE_PLATE); + public static DustMaterial FerriteMixture = new DustMaterial(423, "ferrite_mixture", 9803157, METALLIC, 1, of(new MaterialStack(Nickel, 1), new MaterialStack(Zinc, 1), new MaterialStack(Iron, 4)), DECOMPOSITION_BY_CENTRIFUGING); + public static IngotMaterial NickelZincFerrite = new IngotMaterial(424, "nickel_zinc_ferrite", 3092271, METALLIC, 0, of(new MaterialStack(Nickel, 1), new MaterialStack(Zinc, 1), new MaterialStack(Iron, 4), new MaterialStack(Oxygen, 8)), EXT_METAL, null, 1500); + public static FluidMaterial LeadZincSolution = new FluidMaterial(426, "lead_zinc_solution", 3213570, FLUID, of(new MaterialStack(Lead, 1), new MaterialStack(Silver, 1), new MaterialStack(Zinc, 1), new MaterialStack(Sulfur, 3), new MaterialStack(Water, 1)), DECOMPOSITION_BY_CENTRIFUGING); + public static DustMaterial Magnesia = new DustMaterial(460, "magnesia", 8943736, SAND, 1, of(new MaterialStack(Magnesium, 1), new MaterialStack(Oxygen, 1)), 0); + public static FluidMaterial HydrofluoricAcid = new FluidMaterial(404, "hydrofluoric_acid", 946055, FLUID, of(new MaterialStack(Hydrogen, 1), new MaterialStack(Fluorine, 1)), 0); + public static FluidMaterial NitricOxide = new FluidMaterial(405, "nitric_oxide", 6790328, GAS, of(new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 1)), STATE_GAS); /** * Organic chemistry */ - public static FluidMaterial Chloroform = new FluidMaterial(383, "chloroform", 7351936, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 1), new MaterialStack(Materials.Hydrogen, 1), new MaterialStack(Materials.Chlorine, 3)), 0); - public static FluidMaterial Cumene = new FluidMaterial(420, "cumene", 4924684, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 9), new MaterialStack(Materials.Hydrogen, 12)), DISABLE_DECOMPOSITION); - public static FluidMaterial Tetrafluoroethylene = new FluidMaterial(427, "tetrafluoroethylene", 6776679, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Fluorine, 4)), STATE_GAS | DISABLE_DECOMPOSITION); - public static FluidMaterial Chloromethane = new FluidMaterial(450, "chloromethane", 10301057, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 1), new MaterialStack(Materials.Hydrogen, 3), new MaterialStack(Materials.Chlorine, 1)), STATE_GAS | DISABLE_DECOMPOSITION); - public static FluidMaterial AllylChloride = new FluidMaterial(451, "allyl_chloride", 7450250, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 3), new MaterialStack(Materials.Hydrogen, 5), new MaterialStack(Materials.Chlorine, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial Isoprene = new FluidMaterial(452, "isoprene", 1907997, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 5), new MaterialStack(Materials.Hydrogen, 8)), DISABLE_DECOMPOSITION); - public static FluidMaterial Propane = new FluidMaterial(414, "propane", 12890952, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 3), new MaterialStack(Materials.Hydrogen, 8)), STATE_GAS); - public static FluidMaterial Propene = new FluidMaterial(415, "propene", 12954956, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 3), new MaterialStack(Materials.Hydrogen, 6)), STATE_GAS); - public static FluidMaterial Ethane = new FluidMaterial(416, "ethane", 10329540, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 6)), STATE_GAS); - public static FluidMaterial Butene = new FluidMaterial(417, "butene", 10700561, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 4), new MaterialStack(Materials.Hydrogen, 8)), STATE_GAS); - public static FluidMaterial Butane = new FluidMaterial(418, "butane", 9385508, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 4), new MaterialStack(Materials.Hydrogen, 10)), STATE_GAS); - public static FluidMaterial CalciumAcetate = new FluidMaterial(419, "calcium_acetate", 11444113, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Calcium, 1), new MaterialStack(Materials.Carbon, 4), new MaterialStack(Materials.Oxygen, 4), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Water, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial VinylAcetate = new FluidMaterial(409, "vinyl_acetate", 13144428, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 4), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Oxygen, 2)), DISABLE_DECOMPOSITION); - public static IngotMaterial PolyphenyleneSulfide = new IngotMaterial(411, "polyphenylene_sulfide", 8743424, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Carbon, 6), new MaterialStack(Materials.Hydrogen, 4), new MaterialStack(Materials.Sulfur, 1)), DISABLE_DECOMPOSITION | EXT_METAL | GENERATE_FOIL); - public static FluidMaterial MethylAcetate = new FluidMaterial(406, "methyl_acetate", 12427150, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 3), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Oxygen, 2)), DISABLE_DECOMPOSITION); - public static FluidMaterial Ethenone = new FluidMaterial(407, "ethenone", 1776449, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 2), new MaterialStack(Materials.Oxygen, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial Tetranitromethane = new FluidMaterial(408, "tetranitromethane", 1715244, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 1), new MaterialStack(Materials.Nitrogen, 4), new MaterialStack(Materials.Oxygen, 8)), DISABLE_DECOMPOSITION); - public static FluidMaterial Dimethylamine = new FluidMaterial(388, "dimethylamine", 4931417, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 7), new MaterialStack(Materials.Nitrogen, 1)), STATE_GAS | DISABLE_DECOMPOSITION); - public static FluidMaterial Dimethylhydrazine = new FluidMaterial(389, "dimethylhidrazine", 1052748, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 8), new MaterialStack(Materials.Nitrogen, 2)), DISABLE_DECOMPOSITION); - public static FluidMaterial DinitrogenTetroxide = new FluidMaterial(390, "dinitrogen_tetroxide", 998766, MaterialIconSet.GAS, of(new MaterialStack(Materials.Nitrogen, 2), new MaterialStack(Materials.Oxygen, 4)), STATE_GAS); - public static IngotMaterial SiliconeRubber = new IngotMaterial(391, "silicon_rubber", 11316396, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Oxygen, 1), new MaterialStack(Materials.Silicon, 1)), GENERATE_PLATE | GENERATE_GEAR | GENERATE_RING | FLAMMABLE | NO_SMASHING | GENERATE_FOIL | DISABLE_DECOMPOSITION); - public static DustMaterial Polydimethylsiloxane = new DustMaterial(392, "polydimethylsiloxane", 9211020, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Oxygen, 1), new MaterialStack(Materials.Silicon, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial Dimethyldichlorosilane = new FluidMaterial(393, "dimethyldichlorosilane", 4070471, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Chlorine, 2), new MaterialStack(Materials.Silicon, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial Styrene = new FluidMaterial(394, "styrene", 10722453, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 8), new MaterialStack(Materials.Hydrogen, 8)), DISABLE_DECOMPOSITION); - public static IngotMaterial Polystyrene = new IngotMaterial(395, "polystyrene", 8945785, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Carbon, 8), new MaterialStack(Materials.Hydrogen, 8)), DISABLE_DECOMPOSITION | GENERATE_FOIL); - public static FluidMaterial Butadiene = new FluidMaterial(396, "butadiene", 11885072, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 4), new MaterialStack(Materials.Hydrogen, 6)), DISABLE_DECOMPOSITION); - public static DustMaterial RawStyreneButadieneRubber = new DustMaterial(397, "raw_styrene_butadiene_rubber", 5192762, MaterialIconSet.SAND, 1, of(new MaterialStack(Materials.Carbon, 8), new MaterialStack(Materials.Hydrogen, 8), new MaterialStack(Butadiene, 3)), DISABLE_DECOMPOSITION); - public static IngotMaterial StyreneButadieneRubber = new IngotMaterial(398, "styrene_butadiene_rubber", 1906453, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Materials.Carbon, 8), new MaterialStack(Materials.Hydrogen, 8), new MaterialStack(Butadiene, 3)), GENERATE_PLATE | GENERATE_GEAR | GENERATE_RING | FLAMMABLE | NO_SMASHING | DISABLE_DECOMPOSITION); - public static FluidMaterial Dichlorobenzene = new FluidMaterial(399, "dichlorobenzene", 868171, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 6), new MaterialStack(Materials.Hydrogen, 4), new MaterialStack(Materials.Chlorine, 2)), DISABLE_DECOMPOSITION); - public static FluidMaterial HydrochloricAcid = new FluidMaterial(400, "hydrochloric_acid", 9477273, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Hydrogen, 1), new MaterialStack(Materials.Chlorine, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial AceticAcid = new FluidMaterial(401, "acetic_acid", 10260096, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 4), new MaterialStack(Materials.Oxygen, 2)), DISABLE_DECOMPOSITION); - public static FluidMaterial PolyvinylAcetate = new FluidMaterial(471, "polyvinyl_acetate", 13139532, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 4), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Oxygen, 2)), DISABLE_DECOMPOSITION); - public static FluidMaterial Phenol = new FluidMaterial(468, "phenol", 6635559, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 6), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Oxygen, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial BisphenolA = new FluidMaterial(469, "bisphenol_a", 10848014, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 15), new MaterialStack(Materials.Hydrogen, 16), new MaterialStack(Materials.Oxygen, 2)), DISABLE_DECOMPOSITION); - public static IngotMaterial ReinforcedEpoxyResin = new IngotMaterial(470, "reinforced_epoxy_resin", 7491595, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Carbon, 6), new MaterialStack(Materials.Hydrogen, 4), new MaterialStack(Materials.Oxygen, 1)), GENERATE_PLATE | DISABLE_DECOMPOSITION); - public static IngotMaterial BorosilicateGlass = new IngotMaterial(364, "borosilicate_glass", 13424588, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Materials.Boron, 1), new MaterialStack(Materials.SiliconDioxide, 7)), DISABLE_DECOMPOSITION); - public static IngotMaterial PolyvinylChloride = new IngotMaterial(965, "polyvinyl_chloride", 10069156, MaterialIconSet.DULL, 1, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 3), new MaterialStack(Materials.Chlorine, 1)), EXT_METAL | GENERATE_FOIL | DISABLE_DECOMPOSITION); - public static FluidMaterial VinylChloride = new FluidMaterial(366, "vinyl_chloride", 11582395, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 3), new MaterialStack(Materials.Chlorine, 1)), STATE_GAS | DISABLE_DECOMPOSITION); - public static FluidMaterial Ethylene = new FluidMaterial(367, "ethylene", 11382189, MaterialIconSet.GAS, of(new MaterialStack(Materials.Carbon, 2), new MaterialStack(Materials.Hydrogen, 4)), STATE_GAS); - public static FluidMaterial Benzene = new FluidMaterial(368, "benzene", 2039583, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 6), new MaterialStack(Materials.Hydrogen, 6)), 0); - public static FluidMaterial Acetone = new FluidMaterial(375, "acetone", 9342606, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 3), new MaterialStack(Materials.Hydrogen, 6), new MaterialStack(Materials.Oxygen, 1)), DISABLE_DECOMPOSITION); - public static FluidMaterial Glycerol = new FluidMaterial(378, "glycerol", 7384944, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 3), new MaterialStack(Materials.Hydrogen, 8), new MaterialStack(Materials.Oxygen, 3)), DISABLE_DECOMPOSITION); - public static FluidMaterial Methanol = new FluidMaterial(379, "methanol", 8941584, MaterialIconSet.FLUID, of(new MaterialStack(Materials.Carbon, 1), new MaterialStack(Materials.Hydrogen, 4), new MaterialStack(Materials.Oxygen, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial Chloroform = new FluidMaterial(383, "chloroform", 7351936, FLUID, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Chlorine, 3)), 0); + public static FluidMaterial Cumene = new FluidMaterial(420, "cumene", 4924684, FLUID, of(new MaterialStack(Carbon, 9), new MaterialStack(Hydrogen, 12)), DISABLE_DECOMPOSITION); + public static FluidMaterial Tetrafluoroethylene = new FluidMaterial(427, "tetrafluoroethylene", 6776679, GAS, of(new MaterialStack(Carbon, 2), new MaterialStack(Fluorine, 4)), STATE_GAS | DISABLE_DECOMPOSITION); + public static FluidMaterial Chloromethane = new FluidMaterial(450, "chloromethane", 10301057, GAS, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 3), new MaterialStack(Chlorine, 1)), STATE_GAS | DISABLE_DECOMPOSITION); + public static FluidMaterial AllylChloride = new FluidMaterial(451, "allyl_chloride", 7450250, FLUID, of(new MaterialStack(Carbon, 2), new MaterialStack(Methane, 1), new MaterialStack(HydrochloricAcid, 1)), 0); + public static FluidMaterial Isoprene = new FluidMaterial(452, "isoprene", 1907997, FLUID, of(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)), 0); + public static FluidMaterial Propane = new FluidMaterial(414, "propane", 12890952, GAS, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 8)), STATE_GAS); + public static FluidMaterial Propene = new FluidMaterial(415, "propene", 12954956, GAS, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 6)), STATE_GAS); + public static FluidMaterial Ethane = new FluidMaterial(416, "ethane", 10329540, GAS, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6)), STATE_GAS); + public static FluidMaterial Butene = new FluidMaterial(417, "butene", 10700561, GAS, of(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 8)), STATE_GAS); + public static FluidMaterial Butane = new FluidMaterial(418, "butane", 9385508, GAS, of(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 10)), STATE_GAS); + public static FluidMaterial CalciumAcetate = new FluidMaterial(419, "calcium_acetate", 11444113, FLUID, of(new MaterialStack(Calcium, 1), new MaterialStack(Carbon, 4), new MaterialStack(Oxygen, 4), new MaterialStack(Hydrogen, 6), new MaterialStack(Water, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial VinylAcetate = new FluidMaterial(409, "vinyl_acetate", 13144428, FLUID, of(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 2)), DISABLE_DECOMPOSITION); + public static IngotMaterial PolyphenyleneSulfide = new IngotMaterial(411, "polyphenylene_sulfide", 8743424, DULL, 1, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 4), new MaterialStack(Sulfur, 1)), DISABLE_DECOMPOSITION | EXT_METAL | GENERATE_FOIL); + public static FluidMaterial MethylAcetate = new FluidMaterial(406, "methyl_acetate", 12427150, FLUID, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 2)), DISABLE_DECOMPOSITION); + public static FluidMaterial Ethenone = new FluidMaterial(407, "ethenone", 1776449, FLUID, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial Tetranitromethane = new FluidMaterial(408, "tetranitromethane", 1715244, FLUID, of(new MaterialStack(Carbon, 1), new MaterialStack(Nitrogen, 4), new MaterialStack(Oxygen, 8)), DISABLE_DECOMPOSITION); + public static FluidMaterial Dimethylamine = new FluidMaterial(388, "dimethylamine", 4931417, GAS, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 7), new MaterialStack(Nitrogen, 1)), STATE_GAS | DISABLE_DECOMPOSITION); + public static FluidMaterial Dimethylhydrazine = new FluidMaterial(389, "dimethylhidrazine", 1052748, FLUID, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 8), new MaterialStack(Nitrogen, 2)), DISABLE_DECOMPOSITION); + public static FluidMaterial DinitrogenTetroxide = new FluidMaterial(390, "dinitrogen_tetroxide", 998766, GAS, of(new MaterialStack(Nitrogen, 2), new MaterialStack(Oxygen, 4)), STATE_GAS); + public static IngotMaterial SiliconeRubber = new IngotMaterial(391, "silicon_rubber", 11316396, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1), new MaterialStack(Silicon, 1)), GENERATE_PLATE | GENERATE_GEAR | GENERATE_RING | FLAMMABLE | NO_SMASHING | GENERATE_FOIL | DISABLE_DECOMPOSITION); + public static DustMaterial Polydimethylsiloxane = new DustMaterial(392, "polydimethylsiloxane", 9211020, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1), new MaterialStack(Silicon, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial Dimethyldichlorosilane = new FluidMaterial(393, "dimethyldichlorosilane", 4070471, FLUID, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Chlorine, 2), new MaterialStack(Silicon, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial Styrene = new FluidMaterial(394, "styrene", 10722453, FLUID, of(new MaterialStack(Carbon, 8), new MaterialStack(Hydrogen, 8)), DISABLE_DECOMPOSITION); + public static IngotMaterial Polystyrene = new IngotMaterial(395, "polystyrene", 8945785, DULL, 1, of(new MaterialStack(Carbon, 8), new MaterialStack(Hydrogen, 8)), DISABLE_DECOMPOSITION | GENERATE_FOIL); + public static FluidMaterial Butadiene = new FluidMaterial(396, "butadiene", 11885072, GAS, of(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 6)), DISABLE_DECOMPOSITION); + public static DustMaterial RawStyreneButadieneRubber = new DustMaterial(397, "raw_styrene_butadiene_rubber", 5192762, SAND, 1, of(new MaterialStack(Carbon, 8), new MaterialStack(Hydrogen, 8), new MaterialStack(Butadiene, 3)), DISABLE_DECOMPOSITION); + public static IngotMaterial StyreneButadieneRubber = new IngotMaterial(398, "styrene_butadiene_rubber", 1906453, ROUGH, 1, of(new MaterialStack(Carbon, 8), new MaterialStack(Hydrogen, 8), new MaterialStack(Butadiene, 3)), GENERATE_PLATE | GENERATE_GEAR | GENERATE_RING | FLAMMABLE | NO_SMASHING | DISABLE_DECOMPOSITION); + public static FluidMaterial Dichlorobenzene = new FluidMaterial(399, "dichlorobenzene", 868171, FLUID, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 4), new MaterialStack(Chlorine, 2)), DISABLE_DECOMPOSITION); + public static FluidMaterial AceticAcid = new FluidMaterial(401, "acetic_acid", 10260096, FLUID, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 2)), DISABLE_DECOMPOSITION); + public static FluidMaterial PolyvinylAcetate = new FluidMaterial(471, "polyvinyl_acetate", 13139532, FLUID, of(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 2)), DISABLE_DECOMPOSITION); + public static FluidMaterial Phenol = new FluidMaterial(468, "phenol", 6635559, FLUID, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial BisphenolA = new FluidMaterial(469, "bisphenol_a", 10848014, FLUID, of(new MaterialStack(Carbon, 15), new MaterialStack(Hydrogen, 16), new MaterialStack(Oxygen, 2)), DISABLE_DECOMPOSITION); + public static IngotMaterial ReinforcedEpoxyResin = new IngotMaterial(470, "reinforced_epoxy_resin", 7491595, DULL, 1, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)), GENERATE_PLATE | DISABLE_DECOMPOSITION); + public static IngotMaterial BorosilicateGlass = new IngotMaterial(364, "borosilicate_glass", 13424588, METALLIC, 1, of(new MaterialStack(Boron, 1), new MaterialStack(SiliconDioxide, 7)), DISABLE_DECOMPOSITION); + public static IngotMaterial PolyvinylChloride = new IngotMaterial(965, "polyvinyl_chloride", 10069156, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 3), new MaterialStack(Chlorine, 1)), EXT_METAL | GENERATE_FOIL | DISABLE_DECOMPOSITION); + public static FluidMaterial VinylChloride = new FluidMaterial(366, "vinyl_chloride", 11582395, GAS, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 3), new MaterialStack(Chlorine, 1)), STATE_GAS | DISABLE_DECOMPOSITION); + public static FluidMaterial Ethylene = new FluidMaterial(367, "ethylene", 11382189, GAS, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4)), STATE_GAS); + public static FluidMaterial Benzene = new FluidMaterial(368, "benzene", 2039583, FLUID, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 6)), DISABLE_DECOMPOSITION); + public static FluidMaterial Acetone = new FluidMaterial(375, "acetone", 9342606, FLUID, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1)), DISABLE_DECOMPOSITION); + public static FluidMaterial Glycerol = new FluidMaterial(378, "glycerol", 7384944, FLUID, of(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 8), new MaterialStack(Oxygen, 3)), 0); + public static FluidMaterial Methanol = new FluidMaterial(379, "methanol", 8941584, FLUID, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)), 0); /** * Not possible to determine exact Components */ - public static FluidMaterial SaltWater = new FluidMaterial(428, "salt_water", 255, MaterialIconSet.FLUID, of(), 0); - public static RoughSolidMaterial Wood = new RoughSolidMaterial(196, "wood", 0x896727, MaterialIconSet.WOOD, 0, of(), STD_SOLID | FLAMMABLE | NO_SMELTING | GENERATE_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, () -> OrePrefix.plank); - public static FluidMaterial WoodGas = new FluidMaterial(370, "wood_gas", 0xB1A571, MaterialIconSet.GAS, of(), STATE_GAS | DISABLE_DECOMPOSITION); - public static FluidMaterial WoodVinegar = new FluidMaterial(371, "wood_vinegar", 0xA54B0F, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial WoodTar = new FluidMaterial(372, "wood_tar", 0x2D2118, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial CharcoalByproducts = new FluidMaterial(461, "charcoal_byproducts", 0x664027, MaterialIconSet.FLUID, of(), 0); - - public static FluidMaterial Biomass = new FluidMaterial(315, "biomass", 0x00FF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial BioDiesel = new FluidMaterial(314, "bio_diesel", 0xC3690F, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial FermentedBiomass = new FluidMaterial(472, "fermented_biomass", 0x3F4B0D, MaterialIconSet.FLUID, of(), 0); - - public static FluidMaterial Creosote = new FluidMaterial(316, "creosote", 0x804000, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial Ethanol = new FluidMaterial(317, "ethanol", 0xFF8000, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial Fuel = new FluidMaterial(318, "fuel", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial RocketFuel = new FluidMaterial(474, "rocket_fuel", 0xBDB78C, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial Glue = new FluidMaterial(319, "glue", 0xC8C400, MaterialIconSet.FLUID, of(), 0); - public static DustMaterial Gunpowder = new DustMaterial(320, "gunpowder", 0x808080, MaterialIconSet.SAND, 0, of(), FLAMMABLE | EXPLOSIVE | NO_SMELTING | NO_SMASHING); - public static FluidMaterial Lubricant = new FluidMaterial(321, "lubricant", 0xFFC400, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial McGuffium239 = new FluidMaterial(322, "mc_guffium239", 0xC83296, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial Oil = new FluidMaterial(323, "oil", 0x666666, MaterialIconSet.FLUID, of(), 0); - public static DustMaterial Oilsands = new DustMaterial(324, "oilsands", 0x0A0A0A, MaterialIconSet.SAND, 1, of(new MaterialStack(Oil, 1L)), GENERATE_ORE); - public static RoughSolidMaterial Paper = new RoughSolidMaterial(325, "paper", 0xFFFFFF, MaterialIconSet.PAPER, 0, of(), GENERATE_PLATE | FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE | GENERATE_RING | EXCLUDE_PLATE_COMPRESSOR_RECIPE, () -> OrePrefix.plate); - public static DustMaterial RareEarth = new DustMaterial(326, "rare_earth", 0x808064, MaterialIconSet.ROUGH, 0, of(), 0); - public static DustMaterial PlatinumGroupSludge = new DustMaterial(422, "platinum_group_sludge", 4864, MaterialIconSet.ROUGH, 1, of(), DISABLE_DECOMPOSITION); - public static FluidMaterial IndiumConcentrate = new FluidMaterial(425, "indium_concentrate", 205130, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SeedOil = new FluidMaterial(327, "seed_oil", 0xC4FF00, MaterialIconSet.FLUID, of(), 0); - public static DustMaterial Stone = new DustMaterial(328, "stone", 0xCDCDCD, MaterialIconSet.ROUGH, 1, of(), MORTAR_GRINDABLE | GENERATE_GEAR | GENERATE_PLATE | NO_SMASHING | NO_RECYCLING); - public static FluidMaterial Lava = new FluidMaterial(329, "lava", 0xFF4000, MaterialIconSet.FLUID, of(), 0); - public static DustMaterial Glowstone = new DustMaterial(330, "glowstone", 0xFFFF00, MaterialIconSet.SHINY, 1, of(), NO_SMASHING | SMELT_INTO_FLUID | GENERATE_PLATE | EXCLUDE_PLATE_COMPRESSOR_RECIPE); - public static GemMaterial NetherStar = new GemMaterial(331, "nether_star", 0xFFFFFF, MaterialIconSet.NETHERSTAR, 4, of(), STD_SOLID | GENERATE_LENSE | NO_SMASHING | NO_SMELTING); - public static DustMaterial Endstone = new DustMaterial(332, "endstone", 0xFFFFFF, MaterialIconSet.DULL, 1, of(), NO_SMASHING); - public static DustMaterial Netherrack = new DustMaterial(333, "netherrack", 0xC80000, MaterialIconSet.ROUGH, 1, of(), NO_SMASHING | FLAMMABLE); - public static FluidMaterial DrillingFluid = new FluidMaterial(348, "drilling_fluid", 0xFFFFAA, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial ConstructionFoam = new FluidMaterial(347, "construction_foam", 0x333333, MaterialIconSet.FLUID, of(), 0); + public static FluidMaterial SaltWater = new FluidMaterial(428, "salt_water", 255, FLUID, of(), 0); + public static RoughSolidMaterial Wood = new RoughSolidMaterial(196, "wood", 0x896727, WOOD, 0, of(), STD_SOLID | FLAMMABLE | NO_SMELTING | GENERATE_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, () -> OrePrefix.plank); + public static FluidMaterial WoodGas = new FluidMaterial(370, "wood_gas", 0xB1A571, GAS, of(), STATE_GAS | DISABLE_DECOMPOSITION); + public static FluidMaterial WoodVinegar = new FluidMaterial(371, "wood_vinegar", 0xA54B0F, FLUID, of(), 0); + public static FluidMaterial WoodTar = new FluidMaterial(372, "wood_tar", 0x2D2118, FLUID, of(), 0); + public static FluidMaterial CharcoalByproducts = new FluidMaterial(461, "charcoal_byproducts", 0x664027, FLUID, of(), 0); + + public static FluidMaterial Biomass = new FluidMaterial(315, "biomass", 0x00FF00, FLUID, of(), 0); + public static FluidMaterial BioDiesel = new FluidMaterial(314, "bio_diesel", 0xC3690F, FLUID, of(), 0); + public static FluidMaterial FermentedBiomass = new FluidMaterial(472, "fermented_biomass", 0x3F4B0D, FLUID, of(), 0); + + public static FluidMaterial Creosote = new FluidMaterial(316, "creosote", 0x804000, FLUID, of(), 0); + public static FluidMaterial Ethanol = new FluidMaterial(317, "ethanol", 0xFF8000, FLUID, of(), 0); + public static FluidMaterial Fuel = new FluidMaterial(318, "fuel", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial RocketFuel = new FluidMaterial(474, "rocket_fuel", 0xBDB78C, FLUID, of(), 0); + public static FluidMaterial Glue = new FluidMaterial(319, "glue", 0xC8C400, FLUID, of(), 0); + public static DustMaterial Gunpowder = new DustMaterial(320, "gunpowder", 0x808080, SAND, 0, of(), FLAMMABLE | EXPLOSIVE | NO_SMELTING | NO_SMASHING); + public static FluidMaterial Lubricant = new FluidMaterial(321, "lubricant", 0xFFC400, FLUID, of(), 0); + public static FluidMaterial McGuffium239 = new FluidMaterial(322, "mc_guffium239", 0xC83296, FLUID, of(), 0); + public static FluidMaterial Oil = new FluidMaterial(323, "oil", 0x666666, FLUID, of(), 0); + public static DustMaterial Oilsands = new DustMaterial(324, "oilsands", 0x0A0A0A, SAND, 1, of(new MaterialStack(Oil, 1L)), GENERATE_ORE); + public static RoughSolidMaterial Paper = new RoughSolidMaterial(325, "paper", 0xFFFFFF, PAPER, 0, of(), GENERATE_PLATE | FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE | GENERATE_RING | EXCLUDE_PLATE_COMPRESSOR_RECIPE, () -> OrePrefix.plate); + public static DustMaterial RareEarth = new DustMaterial(326, "rare_earth", 0x808064, ROUGH, 0, of(), 0); + public static DustMaterial PlatinumGroupSludge = new DustMaterial(422, "platinum_group_sludge", 4864, ROUGH, 1, of(), DISABLE_DECOMPOSITION); + public static FluidMaterial IndiumConcentrate = new FluidMaterial(425, "indium_concentrate", 205130, FLUID, of(), 0); + public static FluidMaterial SeedOil = new FluidMaterial(327, "seed_oil", 0xC4FF00, FLUID, of(), 0); + public static DustMaterial Stone = new DustMaterial(328, "stone", 0xCDCDCD, ROUGH, 1, of(), MORTAR_GRINDABLE | GENERATE_GEAR | GENERATE_PLATE | NO_SMASHING | NO_RECYCLING); + public static FluidMaterial Lava = new FluidMaterial(329, "lava", 0xFF4000, FLUID, of(), 0); + public static DustMaterial Glowstone = new DustMaterial(330, "glowstone", 0xFFFF00, SHINY, 1, of(), NO_SMASHING | SMELT_INTO_FLUID | GENERATE_PLATE | EXCLUDE_PLATE_COMPRESSOR_RECIPE); + public static GemMaterial NetherStar = new GemMaterial(331, "nether_star", 0xFFFFFF, NETHERSTAR, 4, of(), STD_SOLID | GENERATE_LENSE | NO_SMASHING | NO_SMELTING); + public static DustMaterial Endstone = new DustMaterial(332, "endstone", 0xFFFFFF, DULL, 1, of(), NO_SMASHING); + public static DustMaterial Netherrack = new DustMaterial(333, "netherrack", 0xC80000, ROUGH, 1, of(), NO_SMASHING | FLAMMABLE); + public static FluidMaterial DrillingFluid = new FluidMaterial(348, "drilling_fluid", 0xFFFFAA, FLUID, of(), 0); + public static FluidMaterial ConstructionFoam = new FluidMaterial(347, "construction_foam", 0x333333, FLUID, of(), 0); /** * Oil refining sources & products */ - public static FluidMaterial HydroCrackedEthane = new FluidMaterial(429, "hydrocracked_ethane", 9868988, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedEthylene = new FluidMaterial(430, "hydrocracked_ethylene", 10724256, MaterialIconSet.GAS, of(), STATE_GAS); - public static FluidMaterial HydroCrackedPropene = new FluidMaterial(431, "hydrocracked_propene", 12494144, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedPropane = new FluidMaterial(432, "hydrocracked_propane", 12494144, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedLightFuel = new FluidMaterial(433, "hydrocracked_light_fuel", 12037896, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedButane = new FluidMaterial(434, "hydrocracked_butane", 8727576, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedNaphtha = new FluidMaterial(435, "hydrocracked_naphtha", 12563976, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedHeavyFuel = new FluidMaterial(436, "hydrocracked_heavy_fuel", 16776960, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedGas = new FluidMaterial(437, "hydrocracked_gas", 11842740, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedButene = new FluidMaterial(438, "hydrocracked_butene", 10042885, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HydroCrackedButadiene = new FluidMaterial(439, "hydrocracked_butadiene", 11358723, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SteamCrackedEthane = new FluidMaterial(440, "steamcracked_ethane", 9868988, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SteamCrackedEthylene = new FluidMaterial(441, "steamcracked_ethylene", 10724256, MaterialIconSet.GAS, of(), 0); - public static FluidMaterial SteamCrackedPropene = new FluidMaterial(442, "steamcracked_propene", 12494144, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SteamCrackedPropane = new FluidMaterial(443, "steamcracked_propane", 12494144, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SteamCrackedButane = new FluidMaterial(444, "steamcracked_butane", 8727576, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SteamCrackedNaphtha = new FluidMaterial(445, "steamcracked_naphtha", 12563976, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SteamCrackedGas = new FluidMaterial(446, "steamcracked_gas", 11842740, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SteamCrackedButene = new FluidMaterial(447, "steamcracked_butene", 10042885, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SteamCrackedButadiene = new FluidMaterial(448, "steamcracked_butadiene", 11358723, MaterialIconSet.FLUID, of(), 0); - - public static FluidMaterial OilHeavy = new FluidMaterial(165, "oil_heavy", 0x666666, MaterialIconSet.FLUID, of(), GENERATE_FLUID_BLOCK); - public static FluidMaterial OilMedium = new FluidMaterial(166, "oil_medium", 0x666666, MaterialIconSet.FLUID, of(), GENERATE_FLUID_BLOCK); - public static FluidMaterial OilLight = new FluidMaterial(167, "oil_light", 0x666666, MaterialIconSet.FLUID, of(), GENERATE_FLUID_BLOCK); - public static FluidMaterial NaturalGas = new FluidMaterial(168, "natural_gas", 0xFFFFFF, MaterialIconSet.FLUID, of(), STATE_GAS | GENERATE_FLUID_BLOCK); - public static FluidMaterial SulfuricGas = new FluidMaterial(169, "sulfuric_gas", 0xFFFFFF, MaterialIconSet.FLUID, of(), STATE_GAS); - public static FluidMaterial Gas = new FluidMaterial(170, "gas", 0xFFFFFF, MaterialIconSet.FLUID, of(), STATE_GAS); - public static FluidMaterial SulfuricNaphtha = new FluidMaterial(171, "sulfuric_naphtha", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SulfuricLightFuel = new FluidMaterial(172, "sulfuric_light_fuel", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial SulfuricHeavyFuel = new FluidMaterial(173, "sulfuric_heavy_fuel", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial Naphtha = new FluidMaterial(174, "naphtha", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial LightFuel = new FluidMaterial(175, "light_fuel", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial HeavyFuel = new FluidMaterial(176, "heavy_fuel", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial LPG = new FluidMaterial(177, "lpg", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial CrackedLightFuel = new FluidMaterial(464, "cracked_light_fuel", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial CrackedHeavyFuel = new FluidMaterial(465, "cracked_heavy_fuel", 0xFFFF00, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial Toluene = new FluidMaterial(350, "toluene", 0xFFFFFF, MaterialIconSet.FLUID, of(), 0); + public static FluidMaterial HydroCrackedEthane = new FluidMaterial(429, "hydrocracked_ethane", 9868988, FLUID, of(), 0); + public static FluidMaterial HydroCrackedEthylene = new FluidMaterial(430, "hydrocracked_ethylene", 10724256, GAS, of(), STATE_GAS); + public static FluidMaterial HydroCrackedPropene = new FluidMaterial(431, "hydrocracked_propene", 12494144, FLUID, of(), 0); + public static FluidMaterial HydroCrackedPropane = new FluidMaterial(432, "hydrocracked_propane", 12494144, FLUID, of(), 0); + public static FluidMaterial HydroCrackedLightFuel = new FluidMaterial(433, "hydrocracked_light_fuel", 12037896, FLUID, of(), 0); + public static FluidMaterial HydroCrackedButane = new FluidMaterial(434, "hydrocracked_butane", 8727576, FLUID, of(), 0); + public static FluidMaterial HydroCrackedNaphtha = new FluidMaterial(435, "hydrocracked_naphtha", 12563976, FLUID, of(), 0); + public static FluidMaterial HydroCrackedHeavyFuel = new FluidMaterial(436, "hydrocracked_heavy_fuel", 16776960, FLUID, of(), 0); + public static FluidMaterial HydroCrackedGas = new FluidMaterial(437, "hydrocracked_gas", 11842740, FLUID, of(), 0); + public static FluidMaterial HydroCrackedButene = new FluidMaterial(438, "hydrocracked_butene", 10042885, FLUID, of(), 0); + public static FluidMaterial HydroCrackedButadiene = new FluidMaterial(439, "hydrocracked_butadiene", 11358723, FLUID, of(), 0); + public static FluidMaterial SteamCrackedEthane = new FluidMaterial(440, "steamcracked_ethane", 9868988, FLUID, of(), 0); + public static FluidMaterial SteamCrackedEthylene = new FluidMaterial(441, "steamcracked_ethylene", 10724256, GAS, of(), 0); + public static FluidMaterial SteamCrackedPropene = new FluidMaterial(442, "steamcracked_propene", 12494144, FLUID, of(), 0); + public static FluidMaterial SteamCrackedPropane = new FluidMaterial(443, "steamcracked_propane", 12494144, FLUID, of(), 0); + public static FluidMaterial SteamCrackedButane = new FluidMaterial(444, "steamcracked_butane", 8727576, FLUID, of(), 0); + public static FluidMaterial SteamCrackedNaphtha = new FluidMaterial(445, "steamcracked_naphtha", 12563976, FLUID, of(), 0); + public static FluidMaterial SteamCrackedGas = new FluidMaterial(446, "steamcracked_gas", 11842740, FLUID, of(), 0); + public static FluidMaterial SteamCrackedButene = new FluidMaterial(447, "steamcracked_butene", 10042885, FLUID, of(), 0); + public static FluidMaterial SteamCrackedButadiene = new FluidMaterial(448, "steamcracked_butadiene", 11358723, FLUID, of(), 0); + + public static FluidMaterial OilHeavy = new FluidMaterial(165, "oil_heavy", 0x666666, FLUID, of(), GENERATE_FLUID_BLOCK); + public static FluidMaterial OilMedium = new FluidMaterial(166, "oil_medium", 0x666666, FLUID, of(), GENERATE_FLUID_BLOCK); + public static FluidMaterial OilLight = new FluidMaterial(167, "oil_light", 0x666666, FLUID, of(), GENERATE_FLUID_BLOCK); + public static FluidMaterial NaturalGas = new FluidMaterial(168, "natural_gas", 0xFFFFFF, FLUID, of(), STATE_GAS | GENERATE_FLUID_BLOCK); + public static FluidMaterial SulfuricGas = new FluidMaterial(169, "sulfuric_gas", 0xFFFFFF, FLUID, of(), STATE_GAS); + public static FluidMaterial Gas = new FluidMaterial(170, "gas", 0xFFFFFF, FLUID, of(), STATE_GAS); + public static FluidMaterial SulfuricNaphtha = new FluidMaterial(171, "sulfuric_naphtha", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial SulfuricLightFuel = new FluidMaterial(172, "sulfuric_light_fuel", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial SulfuricHeavyFuel = new FluidMaterial(173, "sulfuric_heavy_fuel", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial Naphtha = new FluidMaterial(174, "naphtha", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial LightFuel = new FluidMaterial(175, "light_fuel", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial HeavyFuel = new FluidMaterial(176, "heavy_fuel", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial LPG = new FluidMaterial(177, "lpg", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial CrackedLightFuel = new FluidMaterial(464, "cracked_light_fuel", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial CrackedHeavyFuel = new FluidMaterial(465, "cracked_heavy_fuel", 0xFFFF00, FLUID, of(), 0); + public static FluidMaterial Toluene = new FluidMaterial(350, "toluene", 0xFFFFFF, FLUID, of(), 0); /** * Second Degree Compounds */ - public static GemMaterial Glass = new GemMaterial(209, "glass", 0xFFFFFF, MaterialIconSet.GLASS, 0, of(new MaterialStack(SiliconDioxide, 1)), GENERATE_PLATE | GENERATE_LENSE | NO_SMASHING | NO_RECYCLING | SMELT_INTO_FLUID | EXCLUDE_BLOCK_CRAFTING_RECIPES); - public static DustMaterial Perlite = new DustMaterial(210, "perlite", 0x1E141E, MaterialIconSet.DULL, 1, of(new MaterialStack(Obsidian, 2), new MaterialStack(Water, 1)), 0); - public static DustMaterial Borax = new DustMaterial(313, "borax", 0xFFFFFF, MaterialIconSet.SAND, 1, of(new MaterialStack(Sodium, 2), new MaterialStack(Boron, 4), new MaterialStack(Water, 10), new MaterialStack(Oxygen, 7)), 0); - public static GemMaterial Lignite = new GemMaterial(211, "lignite", 0x644646, MaterialIconSet.LIGNITE, 0, of(new MaterialStack(Carbon, 2), new MaterialStack(Water, 4), new MaterialStack(DarkAsh, 1)), GENERATE_ORE | FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE); - public static GemMaterial Olivine = new GemMaterial(212, "olivine", 0x66FF66, MaterialIconSet.RUBY, 2, of(new MaterialStack(Magnesium, 2), new MaterialStack(Iron, 1), new MaterialStack(SiliconDioxide, 2)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 7.5F, 3.0f, 312); - public static GemMaterial Opal = new GemMaterial(213, "opal", 0x0000FF, MaterialIconSet.OPAL, 2, of(new MaterialStack(SiliconDioxide, 1)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 7.5F, 3.0f, 312); - public static GemMaterial Amethyst = new GemMaterial(214, "amethyst", 0xD232D2, MaterialIconSet.RUBY, 3, of(new MaterialStack(SiliconDioxide, 4), new MaterialStack(Iron, 1)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 7.5F, 3.0f, 312); - public static DustMaterial Redstone = new DustMaterial(215, "redstone", 0xC80000, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Silicon, 1), new MaterialStack(Pyrite, 5), new MaterialStack(Ruby, 1), new MaterialStack(Mercury, 3)), GENERATE_PLATE | GENERATE_ORE | NO_SMASHING | SMELT_INTO_FLUID | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); - public static GemMaterial Lapis = new GemMaterial(216, "lapis", 0x4646DC, MaterialIconSet.LAPIS, 1, of(new MaterialStack(Lazurite, 12), new MaterialStack(Sodalite, 2), new MaterialStack(Pyrite, 1), new MaterialStack(Calcite, 1)), STD_GEM | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE | NO_WORKING | DECOMPOSITION_BY_ELECTROLYZING | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); - public static DustMaterial Blaze = new DustMaterial(217, "blaze", 0xFFC800, MaterialIconSet.DULL, 1, of(new MaterialStack(DarkAsh, 1), new MaterialStack(Sulfur, 1)), NO_SMELTING | SMELT_INTO_FLUID | MORTAR_GRINDABLE | BURNING); - public static GemMaterial EnderPearl = new GemMaterial(218, "ender_pearl", 0x6CDCC8, MaterialIconSet.GEM_VERTICAL, 1, of(new MaterialStack(Beryllium, 1), new MaterialStack(Potassium, 4), new MaterialStack(Nitrogen, 5)), GENERATE_PLATE | GENERATE_LENSE | NO_SMASHING | NO_SMELTING); - public static GemMaterial EnderEye = new GemMaterial(219, "ender_eye", 0x66FF66, MaterialIconSet.GEM_VERTICAL, 1, of(new MaterialStack(EnderPearl, 1), new MaterialStack(Blaze, 1)), GENERATE_PLATE | GENERATE_LENSE | NO_SMASHING | NO_SMELTING); - public static RoughSolidMaterial Flint = new RoughSolidMaterial(220, "flint", 0x002040, MaterialIconSet.FLINT, 1, of(new MaterialStack(SiliconDioxide, 1)), NO_SMASHING | MORTAR_GRINDABLE, () -> OrePrefix.gem); - public static DustMaterial Diatomite = new DustMaterial(221, "diatomite", 0xE1E1E1, MaterialIconSet.DULL, 1, of(new MaterialStack(Flint, 8), new MaterialStack(BandedIron, 1), new MaterialStack(Sapphire, 1)), 0); - public static DustMaterial Niter = new DustMaterial(223, "niter", 0xFFC8C8, MaterialIconSet.FLINT, 1, of(new MaterialStack(Saltpeter, 1)), NO_SMASHING | NO_SMELTING); - public static DustMaterial Tantalite = new DustMaterial(224, "tantalite", 0x915028, MaterialIconSet.METALLIC, 3, of(new MaterialStack(Manganese, 1), new MaterialStack(Tantalum, 2), new MaterialStack(Oxygen, 6)), GENERATE_ORE); - public static DustMaterial HydratedCoal = new DustMaterial(225, "hydrated_coal", 0x464664, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Coal, 8), new MaterialStack(Water, 1)), 0); - public static GemMaterial Apatite = new GemMaterial(226, "apatite", 0xC8C8FF, MaterialIconSet.EMERALD, 1, of(new MaterialStack(Calcium, 5), new MaterialStack(Phosphate, 3), new MaterialStack(Chlorine, 1)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE); - public static IngotMaterial SterlingSilver = new IngotMaterial(227, "sterling_silver", 0xFADCE1, MaterialIconSet.SHINY, 2, of(new MaterialStack(Copper, 1), new MaterialStack(Silver, 4)), EXT2_METAL, null, 13.0F, 2.0f, 196, 1700); - public static IngotMaterial RoseGold = new IngotMaterial(228, "rose_gold", 0xFFE61E, MaterialIconSet.SHINY, 2, of(new MaterialStack(Copper, 1), new MaterialStack(Gold, 4)), EXT2_METAL, null, 14.0F, 2.0f, 152, 1600); - public static IngotMaterial BlackBronze = new IngotMaterial(229, "black_bronze", 0x64327D, MaterialIconSet.DULL, 2, of(new MaterialStack(Gold, 1), new MaterialStack(Silver, 1), new MaterialStack(Copper, 3)), EXT2_METAL, null, 12.0F, 2.0f, 256, 2000); - public static IngotMaterial BismuthBronze = new IngotMaterial(230, "bismuth_bronze", 0x647D7D, MaterialIconSet.DULL, 2, of(new MaterialStack(Bismuth, 1), new MaterialStack(Zinc, 1), new MaterialStack(Copper, 3)), EXT2_METAL, null, 8.0F, 3.0f, 256, 1100); - public static IngotMaterial BlackSteel = new IngotMaterial(231, "black_steel", 0x646464, MaterialIconSet.DULL, 2, of(new MaterialStack(Nickel, 1), new MaterialStack(BlackBronze, 1), new MaterialStack(Steel, 3)), EXT_METAL, null, 6.5F, 6.5f, 768, 1200); - public static IngotMaterial RedSteel = new IngotMaterial(232, "red_steel", 0x8C6464, MaterialIconSet.DULL, 2, of(new MaterialStack(SterlingSilver, 1), new MaterialStack(BismuthBronze, 1), new MaterialStack(Steel, 2), new MaterialStack(BlackSteel, 4)), EXT_METAL, null, 7.0F, 4.5f, 896, 1300); - public static IngotMaterial BlueSteel = new IngotMaterial(233, "blue_steel", 0x64648C, MaterialIconSet.DULL, 2, of(new MaterialStack(RoseGold, 1), new MaterialStack(Brass, 1), new MaterialStack(Steel, 2), new MaterialStack(BlackSteel, 4)), EXT_METAL | GENERATE_FRAME, null, 7.5F, 5.0f, 1024, 1400); - public static IngotMaterial DamascusSteel = new IngotMaterial(234, "damascus_steel", 0x6E6E6E, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Steel, 1)), EXT_METAL, null, 8.0F, 5.0f, 1280, 1500); - public static IngotMaterial TungstenSteel = new IngotMaterial(235, "tungsten_steel", 0x6464A0, MaterialIconSet.METALLIC, 4, of(new MaterialStack(Steel, 1), new MaterialStack(Tungsten, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_DENSE | GENERATE_FRAME, null, 8.0F, 4.0f, 2560, 3000); - public static FluidMaterial NitroFuel = new FluidMaterial(236, "nitro_fuel", 0xC8FF00, MaterialIconSet.FLUID, of(), FLAMMABLE | EXPLOSIVE | NO_SMELTING | NO_SMASHING); - public static IngotMaterial RedAlloy = new IngotMaterial(237, "red_alloy", 0xC80000, MaterialIconSet.DULL, 0, of(new MaterialStack(Copper, 1), new MaterialStack(Redstone, 4)), GENERATE_PLATE | GENERATE_FINE_WIRE); - public static IngotMaterial CobaltBrass = new IngotMaterial(238, "cobalt_brass", 0xB4B4A0, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Brass, 7), new MaterialStack(Aluminium, 1), new MaterialStack(Cobalt, 1)), EXT2_METAL, null, 8.0F, 2.0f, 256); - public static DustMaterial Phosphor = new DustMaterial(239, "phosphor", 0xFFFF00, MaterialIconSet.FLINT, 2, of(new MaterialStack(Calcium, 3), new MaterialStack(Phosphate, 2)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | FLAMMABLE | EXPLOSIVE); - public static DustMaterial Basalt = new DustMaterial(240, "basalt", 0x1E1414, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Olivine, 1), new MaterialStack(Calcite, 3), new MaterialStack(Flint, 8), new MaterialStack(DarkAsh, 4)), NO_SMASHING); - public static DustMaterial Andesite = new DustMaterial(241, "andesite", 0xBEBEBE, MaterialIconSet.ROUGH, 2, of(), NO_SMASHING); - public static DustMaterial Diorite = new DustMaterial(242, "diorite", 0xFFFFFF, MaterialIconSet.ROUGH, 2, of(), NO_SMASHING); - public static DustMaterial Granite = new DustMaterial(449, "granite", 0xCFA18C, MaterialIconSet.ROUGH, 2, of(), NO_SMASHING); - public static GemMaterial GarnetRed = new GemMaterial(243, "garnet_red", 0xC85050, MaterialIconSet.RUBY, 2, of(new MaterialStack(Pyrope, 3), new MaterialStack(Almandine, 5), new MaterialStack(Spessartine, 8)), STD_SOLID | GENERATE_LENSE | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT | GENERATE_ORE, null, 7.5F, 3.0f, 156); - public static GemMaterial GarnetYellow = new GemMaterial(244, "garnet_yellow", 0xC8C850, MaterialIconSet.RUBY, 2, of(new MaterialStack(Andradite, 5), new MaterialStack(Grossular, 8), new MaterialStack(Uvarovite, 3)), STD_SOLID | GENERATE_LENSE | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT | GENERATE_ORE, null, 7.5F, 3.0f, 156); - public static DustMaterial Marble = new DustMaterial(245, "marble", 0xC8C8C8, MaterialIconSet.FINE, 1, of(new MaterialStack(Magnesium, 1), new MaterialStack(Calcite, 7)), NO_SMASHING); - public static DustMaterial Sugar = new DustMaterial(246, "sugar", 0xFAFAFA, MaterialIconSet.SAND, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Water, 5), new MaterialStack(Oxygen, 25)), 0); - public static GemMaterial Vinteum = new GemMaterial(247, "vinteum", 0x64C8FF, MaterialIconSet.EMERALD, 3, of(), STD_GEM | NO_SMASHING | NO_SMELTING, 12.0F, 3.0f, 128); - public static DustMaterial Redrock = new DustMaterial(248, "redrock", 0xFF5032, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Calcite, 2), new MaterialStack(Flint, 1), new MaterialStack(Clay, 1)), NO_SMASHING); - public static DustMaterial PotassiumFeldspar = new DustMaterial(249, "potassium_feldspar", 0x782828, MaterialIconSet.FINE, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Aluminium, 1), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 8)), 0); - public static DustMaterial Biotite = new DustMaterial(250, "biotite", 0x141E14, MaterialIconSet.METALLIC, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Magnesium, 3), new MaterialStack(Aluminium, 3), new MaterialStack(Fluorine, 2), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 10)), 0); - public static DustMaterial GraniteBlack = new DustMaterial(251, "granite_black", 0x0A0A0A, MaterialIconSet.ROUGH, 3, of(new MaterialStack(SiliconDioxide, 4), new MaterialStack(Biotite, 1)), NO_SMASHING); - public static DustMaterial GraniteRed = new DustMaterial(252, "granite_red", 0xFF0080, MaterialIconSet.ROUGH, 3, of(new MaterialStack(Aluminium, 2), new MaterialStack(PotassiumFeldspar, 1), new MaterialStack(Oxygen, 3)), NO_SMASHING); - public static DustMaterial Chrysotile = new DustMaterial(253, "chrysotile", 0x6E8C6E, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Asbestos, 1)), 0); - public static DustMaterial Realgar = new DustMaterial(254, "realgar", 0x8C6464, MaterialIconSet.DULL, 2, of(new MaterialStack(Arsenic, 4), new MaterialStack(Sulfur, 4)), 0); - public static DustMaterial VanadiumMagnetite = new DustMaterial(255, "vanadium_magnetite", 0x23233C, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Magnetite, 1), new MaterialStack(Vanadium, 1)), GENERATE_ORE); - public static DustMaterial BasalticMineralSand = new DustMaterial(266, "basaltic_mineral_sand", 0x283228, MaterialIconSet.SAND, 1, of(new MaterialStack(Magnetite, 1), new MaterialStack(Basalt, 1)), INDUCTION_SMELTING_LOW_OUTPUT); - public static DustMaterial GraniticMineralSand = new DustMaterial(267, "granitic_mineral_sand", 0x283C3C, MaterialIconSet.SAND, 1, of(new MaterialStack(Magnetite, 1), new MaterialStack(GraniteBlack, 1)), INDUCTION_SMELTING_LOW_OUTPUT); - public static DustMaterial GarnetSand = new DustMaterial(268, "garnet_sand", 0xC86400, MaterialIconSet.SAND, 1, of(new MaterialStack(GarnetRed, 1), new MaterialStack(GarnetYellow, 1)), 0); - public static DustMaterial QuartzSand = new DustMaterial(269, "quartz_sand", 0xC8C8C8, MaterialIconSet.SAND, 1, of(new MaterialStack(CertusQuartz, 1), new MaterialStack(Quartzite, 1)), 0); - public static DustMaterial Bastnasite = new DustMaterial(270, "bastnasite", 0xC86E2D, MaterialIconSet.FINE, 2, of(new MaterialStack(Cerium, 1), new MaterialStack(Carbon, 1), new MaterialStack(Fluorine, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE); - public static DustMaterial Pentlandite = new DustMaterial(271, "pentlandite", 0xA59605, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Nickel, 9), new MaterialStack(Sulfur, 8)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); - public static DustMaterial Spodumene = new DustMaterial(272, "spodumene", 0xBEAAAA, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Lithium, 1), new MaterialStack(Aluminium, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 6)), GENERATE_ORE); - public static DustMaterial Pollucite = new DustMaterial(273, "pollucite", 0xF0D2D2, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Caesium, 2), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 4), new MaterialStack(Water, 2), new MaterialStack(Oxygen, 12)), 0); - public static DustMaterial Lepidolite = new DustMaterial(274, "lepidolite", 0xF0328C, MaterialIconSet.FINE, 2, of(new MaterialStack(Potassium, 1), new MaterialStack(Lithium, 3), new MaterialStack(Aluminium, 4), new MaterialStack(Fluorine, 2), new MaterialStack(Oxygen, 10)), GENERATE_ORE); - public static DustMaterial Glauconite = new DustMaterial(275, "glauconite", 0x82B43C, MaterialIconSet.DULL, 2, of(new MaterialStack(Potassium, 1), new MaterialStack(Magnesium, 2), new MaterialStack(Aluminium, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 12)), GENERATE_ORE); - public static DustMaterial GlauconiteSand = new DustMaterial(276, "glauconite_sand", 0x82B43C, MaterialIconSet.SAND, 2, of(new MaterialStack(Potassium, 1), new MaterialStack(Magnesium, 2), new MaterialStack(Aluminium, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 12)), 0); - public static DustMaterial Vermiculite = new DustMaterial(277, "vermiculite", 0xC8B40F, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Iron, 3), new MaterialStack(Aluminium, 4), new MaterialStack(Silicon, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Water, 4), new MaterialStack(Oxygen, 12)), 0); - public static DustMaterial Bentonite = new DustMaterial(278, "bentonite", 0xF5D7D2, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Sodium, 1), new MaterialStack(Magnesium, 6), new MaterialStack(Silicon, 12), new MaterialStack(Hydrogen, 4), new MaterialStack(Water, 5), new MaterialStack(Oxygen, 36)), GENERATE_ORE); - public static DustMaterial FullersEarth = new DustMaterial(279, "fullers_earth", 0xA0A078, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Silicon, 4), new MaterialStack(Hydrogen, 1), new MaterialStack(Water, 4), new MaterialStack(Oxygen, 11)), 0); - public static DustMaterial Pitchblende = new DustMaterial(280, "pitchblende", 0xC8D200, MaterialIconSet.ROUGH, 3, of(new MaterialStack(Uraninite, 3), new MaterialStack(Thorium, 1), new MaterialStack(Lead, 1)), GENERATE_ORE); - public static GemMaterial Monazite = new GemMaterial(281, "monazite", 0x324632, MaterialIconSet.GEM_VERTICAL, 1, of(new MaterialStack(RareEarth, 1), new MaterialStack(Phosphate, 1)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE); - public static DustMaterial Malachite = new DustMaterial(282, "malachite", 0x055F05, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Copper, 2), new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 5)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); - public static DustMaterial Mirabilite = new DustMaterial(283, "mirabilite", 0xF0FAD2, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 1), new MaterialStack(Water, 10), new MaterialStack(Oxygen, 4)), 0); - public static DustMaterial Mica = new DustMaterial(284, "mica", 0xC3C3CD, MaterialIconSet.FINE, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Fluorine, 2), new MaterialStack(Oxygen, 10)), 0); - public static DustMaterial Trona = new DustMaterial(285, "trona", 0x87875F, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Sodium, 3), new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 1), new MaterialStack(Water, 2), new MaterialStack(Oxygen, 6)), 0); - public static DustMaterial Barite = new DustMaterial(286, "barite", 0xE6EBFF, MaterialIconSet.DULL, 2, of(new MaterialStack(Barium, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE); - public static DustMaterial Gypsum = new DustMaterial(287, "gypsum", 0xE6E6FA, MaterialIconSet.FINE, 1, of(new MaterialStack(Calcium, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Water, 2), new MaterialStack(Oxygen, 4)), 0); - public static DustMaterial Alunite = new DustMaterial(288, "alunite", 0xE1B441, MaterialIconSet.METALLIC, 2, of(new MaterialStack(Potassium, 1), new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 14)), 0); - public static DustMaterial Dolomite = new DustMaterial(289, "dolomite", 0xE1CDCD, MaterialIconSet.FLINT, 1, of(new MaterialStack(Calcium, 1), new MaterialStack(Magnesium, 1), new MaterialStack(Carbon, 2), new MaterialStack(Oxygen, 6)), 0); - public static DustMaterial Wollastonite = new DustMaterial(290, "wollastonite", 0xF0F0F0, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Calcium, 1), new MaterialStack(Silicon, 1), new MaterialStack(Oxygen, 3)), 0); - public static DustMaterial Zeolite = new DustMaterial(291, "zeolite", 0xF0E6E6, MaterialIconSet.ROUGH, 2, of(new MaterialStack(Sodium, 1), new MaterialStack(Calcium, 4), new MaterialStack(Silicon, 27), new MaterialStack(Aluminium, 9), new MaterialStack(Water, 28), new MaterialStack(Oxygen, 72)), 0); - public static DustMaterial Kyanite = new DustMaterial(292, "kyanite", 0x6E6EFA, MaterialIconSet.FLINT, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 1), new MaterialStack(Oxygen, 5)), 0); - public static DustMaterial Kaolinite = new DustMaterial(293, "kaolinite", 0xF5EBEB, MaterialIconSet.DULL, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 9)), 0); - public static DustMaterial Talc = new DustMaterial(294, "talc", 0x5AB45A, MaterialIconSet.FINE, 2, of(new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 12)), GENERATE_ORE); - public static DustMaterial Soapstone = new DustMaterial(295, "soapstone", 0x5F915F, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 12)), GENERATE_ORE); - public static DustMaterial Concrete = new DustMaterial(296, "concrete", 0x646464, MaterialIconSet.ROUGH, 1, of(new MaterialStack(Stone, 1)), NO_SMASHING | SMELT_INTO_FLUID); - public static IngotMaterial IronMagnetic = new IngotMaterial(297, "iron_magnetic", 0xC8C8C8, MaterialIconSet.MAGNETIC, 2, of(new MaterialStack(Iron, 1)), EXT2_METAL | MORTAR_GRINDABLE); - public static IngotMaterial SteelMagnetic = new IngotMaterial(298, "steel_magnetic", 0x808080, MaterialIconSet.MAGNETIC, 2, of(new MaterialStack(Steel, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | MORTAR_GRINDABLE, null, 1000); - public static IngotMaterial NeodymiumMagnetic = new IngotMaterial(299, "neodymium_magnetic", 0x646464, MaterialIconSet.MAGNETIC, 2, of(new MaterialStack(Neodymium, 1)), EXT2_METAL | GENERATE_LONG_ROD, null, 1297); - public static IngotMaterial TungstenCarbide = new IngotMaterial(300, "tungsten_carbide", 0x330066, MaterialIconSet.METALLIC, 4, of(new MaterialStack(Tungsten, 1), new MaterialStack(Carbon, 1)), EXT2_METAL, null, 12.0F, 4.0f, 1280, 2460); - public static IngotMaterial VanadiumSteel = new IngotMaterial(301, "vanadium_steel", 0xC0C0C0, MaterialIconSet.METALLIC, 3, of(new MaterialStack(Vanadium, 1), new MaterialStack(Chrome, 1), new MaterialStack(Steel, 7)), EXT2_METAL, null, 7.0F, 3.0f, 1920, 1453); - public static IngotMaterial HSSG = new IngotMaterial(302, "hssg", 0x999900, MaterialIconSet.METALLIC, 3, of(new MaterialStack(TungstenSteel, 5), new MaterialStack(Chrome, 1), new MaterialStack(Molybdenum, 2), new MaterialStack(Vanadium, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, null, 10.0F, 5.5f, 4000, 4500); - public static IngotMaterial HSSE = new IngotMaterial(303, "hsse", 0x336600, MaterialIconSet.METALLIC, 4, of(new MaterialStack(HSSG, 6), new MaterialStack(Cobalt, 1), new MaterialStack(Manganese, 1), new MaterialStack(Silicon, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, null, 10.0F, 8.0f, 5120, 5400); - public static IngotMaterial HSSS = new IngotMaterial(304, "hsss", 0x660033, MaterialIconSet.METALLIC, 4, of(new MaterialStack(HSSG, 6), new MaterialStack(Iridium, 2), new MaterialStack(Osmium, 1)), EXT2_METAL | GENERATE_GEAR, null, 15.0F, 7.0f, 3000, 5400); + public static GemMaterial Glass = new GemMaterial(209, "glass", 0xFFFFFF, GLASS, 0, of(new MaterialStack(SiliconDioxide, 1)), GENERATE_PLATE | GENERATE_LENSE | NO_SMASHING | NO_RECYCLING | SMELT_INTO_FLUID | EXCLUDE_BLOCK_CRAFTING_RECIPES); + public static DustMaterial Perlite = new DustMaterial(210, "perlite", 0x1E141E, DULL, 1, of(new MaterialStack(Obsidian, 2), new MaterialStack(Water, 1)), 0); + public static DustMaterial Borax = new DustMaterial(313, "borax", 0xFFFFFF, SAND, 1, of(new MaterialStack(Sodium, 2), new MaterialStack(Boron, 4), new MaterialStack(Water, 10), new MaterialStack(Oxygen, 7)), 0); + public static GemMaterial Lignite = new GemMaterial(211, "lignite", 0x644646, LIGNITE, 0, of(new MaterialStack(Carbon, 2), new MaterialStack(Water, 4), new MaterialStack(DarkAsh, 1)), GENERATE_ORE | FLAMMABLE | NO_SMELTING | NO_SMASHING | MORTAR_GRINDABLE); + public static GemMaterial Olivine = new GemMaterial(212, "olivine", 0x66FF66, RUBY, 2, of(new MaterialStack(Magnesium, 2), new MaterialStack(Iron, 1), new MaterialStack(SiliconDioxide, 2)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 7.5F, 3.0f, 312); + public static GemMaterial Opal = new GemMaterial(213, "opal", 0x0000FF, OPAL, 2, of(new MaterialStack(SiliconDioxide, 1)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 7.5F, 3.0f, 312); + public static GemMaterial Amethyst = new GemMaterial(214, "amethyst", 0xD232D2, RUBY, 3, of(new MaterialStack(SiliconDioxide, 4), new MaterialStack(Iron, 1)), STD_GEM | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT, 7.5F, 3.0f, 312); + public static DustMaterial Redstone = new DustMaterial(215, "redstone", 0xC80000, ROUGH, 2, of(new MaterialStack(Silicon, 1), new MaterialStack(Pyrite, 5), new MaterialStack(Ruby, 1), new MaterialStack(Mercury, 3)), GENERATE_PLATE | GENERATE_ORE | NO_SMASHING | SMELT_INTO_FLUID | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); + public static GemMaterial Lapis = new GemMaterial(216, "lapis", 0x4646DC, LAPIS, 1, of(new MaterialStack(Lazurite, 12), new MaterialStack(Sodalite, 2), new MaterialStack(Pyrite, 1), new MaterialStack(Calcite, 1)), STD_GEM | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE | NO_WORKING | DECOMPOSITION_BY_ELECTROLYZING | EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES); + public static DustMaterial Blaze = new DustMaterial(217, "blaze", 0xFFC800, DULL, 1, of(new MaterialStack(DarkAsh, 1), new MaterialStack(Sulfur, 1)), NO_SMELTING | SMELT_INTO_FLUID | MORTAR_GRINDABLE | BURNING); + public static GemMaterial EnderPearl = new GemMaterial(218, "ender_pearl", 0x6CDCC8, GEM_VERTICAL, 1, of(new MaterialStack(Beryllium, 1), new MaterialStack(Potassium, 4), new MaterialStack(Nitrogen, 5)), GENERATE_PLATE | GENERATE_LENSE | NO_SMASHING | NO_SMELTING); + public static GemMaterial EnderEye = new GemMaterial(219, "ender_eye", 0x66FF66, GEM_VERTICAL, 1, of(new MaterialStack(EnderPearl, 1), new MaterialStack(Blaze, 1)), GENERATE_PLATE | GENERATE_LENSE | NO_SMASHING | NO_SMELTING); + public static RoughSolidMaterial Flint = new RoughSolidMaterial(220, "flint", 0x002040, FLINT, 1, of(new MaterialStack(SiliconDioxide, 1)), NO_SMASHING | MORTAR_GRINDABLE, () -> OrePrefix.gem); + public static DustMaterial Diatomite = new DustMaterial(221, "diatomite", 0xE1E1E1, DULL, 1, of(new MaterialStack(Flint, 8), new MaterialStack(BandedIron, 1), new MaterialStack(Sapphire, 1)), 0); + public static DustMaterial Niter = new DustMaterial(223, "niter", 0xFFC8C8, FLINT, 1, of(new MaterialStack(Saltpeter, 1)), NO_SMASHING | NO_SMELTING); + public static DustMaterial Tantalite = new DustMaterial(224, "tantalite", 0x915028, METALLIC, 3, of(new MaterialStack(Manganese, 1), new MaterialStack(Tantalum, 2), new MaterialStack(Oxygen, 6)), GENERATE_ORE); + public static DustMaterial HydratedCoal = new DustMaterial(225, "hydrated_coal", 0x464664, ROUGH, 1, of(new MaterialStack(Coal, 8), new MaterialStack(Water, 1)), 0); + public static GemMaterial Apatite = new GemMaterial(226, "apatite", 0xC8C8FF, EMERALD, 1, of(new MaterialStack(Calcium, 5), new MaterialStack(Phosphate, 3), new MaterialStack(Chlorine, 1)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE); + public static IngotMaterial SterlingSilver = new IngotMaterial(227, "sterling_silver", 0xFADCE1, SHINY, 2, of(new MaterialStack(Copper, 1), new MaterialStack(Silver, 4)), EXT2_METAL, null, 13.0F, 2.0f, 196, 1700); + public static IngotMaterial RoseGold = new IngotMaterial(228, "rose_gold", 0xFFE61E, SHINY, 2, of(new MaterialStack(Copper, 1), new MaterialStack(Gold, 4)), EXT2_METAL, null, 14.0F, 2.0f, 152, 1600); + public static IngotMaterial BlackBronze = new IngotMaterial(229, "black_bronze", 0x64327D, DULL, 2, of(new MaterialStack(Gold, 1), new MaterialStack(Silver, 1), new MaterialStack(Copper, 3)), EXT2_METAL, null, 12.0F, 2.0f, 256, 2000); + public static IngotMaterial BismuthBronze = new IngotMaterial(230, "bismuth_bronze", 0x647D7D, DULL, 2, of(new MaterialStack(Bismuth, 1), new MaterialStack(Zinc, 1), new MaterialStack(Copper, 3)), EXT2_METAL, null, 8.0F, 3.0f, 256, 1100); + public static IngotMaterial BlackSteel = new IngotMaterial(231, "black_steel", 0x646464, DULL, 2, of(new MaterialStack(Nickel, 1), new MaterialStack(BlackBronze, 1), new MaterialStack(Steel, 3)), EXT_METAL, null, 6.5F, 6.5f, 768, 1200); + public static IngotMaterial RedSteel = new IngotMaterial(232, "red_steel", 0x8C6464, DULL, 2, of(new MaterialStack(SterlingSilver, 1), new MaterialStack(BismuthBronze, 1), new MaterialStack(Steel, 2), new MaterialStack(BlackSteel, 4)), EXT_METAL, null, 7.0F, 4.5f, 896, 1300); + public static IngotMaterial BlueSteel = new IngotMaterial(233, "blue_steel", 0x64648C, DULL, 2, of(new MaterialStack(RoseGold, 1), new MaterialStack(Brass, 1), new MaterialStack(Steel, 2), new MaterialStack(BlackSteel, 4)), EXT_METAL | GENERATE_FRAME, null, 7.5F, 5.0f, 1024, 1400); + public static IngotMaterial DamascusSteel = new IngotMaterial(234, "damascus_steel", 0x6E6E6E, METALLIC, 2, of(new MaterialStack(Steel, 1)), EXT_METAL, null, 8.0F, 5.0f, 1280, 1500); + public static IngotMaterial TungstenSteel = new IngotMaterial(235, "tungsten_steel", 0x6464A0, METALLIC, 4, of(new MaterialStack(Steel, 1), new MaterialStack(Tungsten, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_DENSE | GENERATE_FRAME, null, 8.0F, 4.0f, 2560, 3000); + public static FluidMaterial NitroFuel = new FluidMaterial(236, "nitro_fuel", 0xC8FF00, FLUID, of(), FLAMMABLE | EXPLOSIVE | NO_SMELTING | NO_SMASHING); + public static IngotMaterial RedAlloy = new IngotMaterial(237, "red_alloy", 0xC80000, DULL, 0, of(new MaterialStack(Copper, 1), new MaterialStack(Redstone, 4)), GENERATE_PLATE | GENERATE_FINE_WIRE); + public static IngotMaterial CobaltBrass = new IngotMaterial(238, "cobalt_brass", 0xB4B4A0, METALLIC, 2, of(new MaterialStack(Brass, 7), new MaterialStack(Aluminium, 1), new MaterialStack(Cobalt, 1)), EXT2_METAL, null, 8.0F, 2.0f, 256); + public static DustMaterial Phosphor = new DustMaterial(239, "phosphor", 0xFFFF00, FLINT, 2, of(new MaterialStack(Calcium, 3), new MaterialStack(Phosphate, 2)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | FLAMMABLE | EXPLOSIVE); + public static DustMaterial Basalt = new DustMaterial(240, "basalt", 0x1E1414, ROUGH, 1, of(new MaterialStack(Olivine, 1), new MaterialStack(Calcite, 3), new MaterialStack(Flint, 8), new MaterialStack(DarkAsh, 4)), NO_SMASHING); + public static DustMaterial Andesite = new DustMaterial(241, "andesite", 0xBEBEBE, ROUGH, 2, of(), NO_SMASHING); + public static DustMaterial Diorite = new DustMaterial(242, "diorite", 0xFFFFFF, ROUGH, 2, of(), NO_SMASHING); + public static DustMaterial Granite = new DustMaterial(449, "granite", 0xCFA18C, ROUGH, 2, of(), NO_SMASHING); + public static GemMaterial GarnetRed = new GemMaterial(243, "garnet_red", 0xC85050, RUBY, 2, of(new MaterialStack(Pyrope, 3), new MaterialStack(Almandine, 5), new MaterialStack(Spessartine, 8)), STD_SOLID | GENERATE_LENSE | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT | GENERATE_ORE, null, 7.5F, 3.0f, 156); + public static GemMaterial GarnetYellow = new GemMaterial(244, "garnet_yellow", 0xC8C850, RUBY, 2, of(new MaterialStack(Andradite, 5), new MaterialStack(Grossular, 8), new MaterialStack(Uvarovite, 3)), STD_SOLID | GENERATE_LENSE | NO_SMASHING | NO_SMELTING | HIGH_SIFTER_OUTPUT | GENERATE_ORE, null, 7.5F, 3.0f, 156); + public static DustMaterial Marble = new DustMaterial(245, "marble", 0xC8C8C8, FINE, 1, of(new MaterialStack(Magnesium, 1), new MaterialStack(Calcite, 7)), NO_SMASHING); + public static DustMaterial Sugar = new DustMaterial(246, "sugar", 0xFAFAFA, SAND, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Water, 5), new MaterialStack(Oxygen, 25)), 0); + public static GemMaterial Vinteum = new GemMaterial(247, "vinteum", 0x64C8FF, EMERALD, 3, of(), STD_GEM | NO_SMASHING | NO_SMELTING, 12.0F, 3.0f, 128); + public static DustMaterial Redrock = new DustMaterial(248, "redrock", 0xFF5032, ROUGH, 1, of(new MaterialStack(Calcite, 2), new MaterialStack(Flint, 1), new MaterialStack(Clay, 1)), NO_SMASHING); + public static DustMaterial PotassiumFeldspar = new DustMaterial(249, "potassium_feldspar", 0x782828, FINE, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Aluminium, 1), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 8)), 0); + public static DustMaterial Biotite = new DustMaterial(250, "biotite", 0x141E14, METALLIC, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Magnesium, 3), new MaterialStack(Aluminium, 3), new MaterialStack(Fluorine, 2), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 10)), 0); + public static DustMaterial GraniteBlack = new DustMaterial(251, "granite_black", 0x0A0A0A, ROUGH, 3, of(new MaterialStack(SiliconDioxide, 4), new MaterialStack(Biotite, 1)), NO_SMASHING); + public static DustMaterial GraniteRed = new DustMaterial(252, "granite_red", 0xFF0080, ROUGH, 3, of(new MaterialStack(Aluminium, 2), new MaterialStack(PotassiumFeldspar, 1), new MaterialStack(Oxygen, 3)), NO_SMASHING); + public static DustMaterial Chrysotile = new DustMaterial(253, "chrysotile", 0x6E8C6E, ROUGH, 2, of(new MaterialStack(Asbestos, 1)), 0); + public static DustMaterial Realgar = new DustMaterial(254, "realgar", 0x8C6464, DULL, 2, of(new MaterialStack(Arsenic, 4), new MaterialStack(Sulfur, 4)), 0); + public static DustMaterial VanadiumMagnetite = new DustMaterial(255, "vanadium_magnetite", 0x23233C, METALLIC, 2, of(new MaterialStack(Magnetite, 1), new MaterialStack(Vanadium, 1)), GENERATE_ORE); + public static DustMaterial BasalticMineralSand = new DustMaterial(266, "basaltic_mineral_sand", 0x283228, SAND, 1, of(new MaterialStack(Magnetite, 1), new MaterialStack(Basalt, 1)), INDUCTION_SMELTING_LOW_OUTPUT); + public static DustMaterial GraniticMineralSand = new DustMaterial(267, "granitic_mineral_sand", 0x283C3C, SAND, 1, of(new MaterialStack(Magnetite, 1), new MaterialStack(GraniteBlack, 1)), INDUCTION_SMELTING_LOW_OUTPUT); + public static DustMaterial GarnetSand = new DustMaterial(268, "garnet_sand", 0xC86400, SAND, 1, of(new MaterialStack(GarnetRed, 1), new MaterialStack(GarnetYellow, 1)), 0); + public static DustMaterial QuartzSand = new DustMaterial(269, "quartz_sand", 0xC8C8C8, SAND, 1, of(new MaterialStack(CertusQuartz, 1), new MaterialStack(Quartzite, 1)), 0); + public static DustMaterial Bastnasite = new DustMaterial(270, "bastnasite", 0xC86E2D, FINE, 2, of(new MaterialStack(Cerium, 1), new MaterialStack(Carbon, 1), new MaterialStack(Fluorine, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE); + public static DustMaterial Pentlandite = new DustMaterial(271, "pentlandite", 0xA59605, ROUGH, 2, of(new MaterialStack(Nickel, 9), new MaterialStack(Sulfur, 8)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); + public static DustMaterial Spodumene = new DustMaterial(272, "spodumene", 0xBEAAAA, ROUGH, 2, of(new MaterialStack(Lithium, 1), new MaterialStack(Aluminium, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 6)), GENERATE_ORE); + public static DustMaterial Pollucite = new DustMaterial(273, "pollucite", 0xF0D2D2, ROUGH, 2, of(new MaterialStack(Caesium, 2), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 4), new MaterialStack(Water, 2), new MaterialStack(Oxygen, 12)), 0); + public static DustMaterial Lepidolite = new DustMaterial(274, "lepidolite", 0xF0328C, FINE, 2, of(new MaterialStack(Potassium, 1), new MaterialStack(Lithium, 3), new MaterialStack(Aluminium, 4), new MaterialStack(Fluorine, 2), new MaterialStack(Oxygen, 10)), GENERATE_ORE); + public static DustMaterial Glauconite = new DustMaterial(275, "glauconite", 0x82B43C, DULL, 2, of(new MaterialStack(Potassium, 1), new MaterialStack(Magnesium, 2), new MaterialStack(Aluminium, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 12)), GENERATE_ORE); + public static DustMaterial GlauconiteSand = new DustMaterial(276, "glauconite_sand", 0x82B43C, SAND, 2, of(new MaterialStack(Potassium, 1), new MaterialStack(Magnesium, 2), new MaterialStack(Aluminium, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 12)), 0); + public static DustMaterial Vermiculite = new DustMaterial(277, "vermiculite", 0xC8B40F, ROUGH, 2, of(new MaterialStack(Iron, 3), new MaterialStack(Aluminium, 4), new MaterialStack(Silicon, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Water, 4), new MaterialStack(Oxygen, 12)), 0); + public static DustMaterial Bentonite = new DustMaterial(278, "bentonite", 0xF5D7D2, ROUGH, 2, of(new MaterialStack(Sodium, 1), new MaterialStack(Magnesium, 6), new MaterialStack(Silicon, 12), new MaterialStack(Hydrogen, 4), new MaterialStack(Water, 5), new MaterialStack(Oxygen, 36)), GENERATE_ORE); + public static DustMaterial FullersEarth = new DustMaterial(279, "fullers_earth", 0xA0A078, ROUGH, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Silicon, 4), new MaterialStack(Hydrogen, 1), new MaterialStack(Water, 4), new MaterialStack(Oxygen, 11)), 0); + public static DustMaterial Pitchblende = new DustMaterial(280, "pitchblende", 0xC8D200, ROUGH, 3, of(new MaterialStack(Uraninite, 3), new MaterialStack(Thorium, 1), new MaterialStack(Lead, 1)), GENERATE_ORE); + public static GemMaterial Monazite = new GemMaterial(281, "monazite", 0x324632, GEM_VERTICAL, 1, of(new MaterialStack(RareEarth, 1), new MaterialStack(Phosphate, 1)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | CRYSTALLISABLE); + public static DustMaterial Malachite = new DustMaterial(282, "malachite", 0x055F05, ROUGH, 2, of(new MaterialStack(Copper, 2), new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 5)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); + public static DustMaterial Mirabilite = new DustMaterial(283, "mirabilite", 0xF0FAD2, ROUGH, 2, of(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 1), new MaterialStack(Water, 10), new MaterialStack(Oxygen, 4)), 0); + public static DustMaterial Mica = new DustMaterial(284, "mica", 0xC3C3CD, FINE, 1, of(new MaterialStack(Potassium, 1), new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Fluorine, 2), new MaterialStack(Oxygen, 10)), 0); + public static DustMaterial Trona = new DustMaterial(285, "trona", 0x87875F, ROUGH, 1, of(new MaterialStack(Sodium, 3), new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 1), new MaterialStack(Water, 2), new MaterialStack(Oxygen, 6)), 0); + public static DustMaterial Barite = new DustMaterial(286, "barite", 0xE6EBFF, DULL, 2, of(new MaterialStack(Barium, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE); + public static DustMaterial Gypsum = new DustMaterial(287, "gypsum", 0xE6E6FA, FINE, 1, of(new MaterialStack(Calcium, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Water, 2), new MaterialStack(Oxygen, 4)), 0); + public static DustMaterial Alunite = new DustMaterial(288, "alunite", 0xE1B441, METALLIC, 2, of(new MaterialStack(Potassium, 1), new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 14)), 0); + public static DustMaterial Dolomite = new DustMaterial(289, "dolomite", 0xE1CDCD, FLINT, 1, of(new MaterialStack(Calcium, 1), new MaterialStack(Magnesium, 1), new MaterialStack(Carbon, 2), new MaterialStack(Oxygen, 6)), 0); + public static DustMaterial Wollastonite = new DustMaterial(290, "wollastonite", 0xF0F0F0, ROUGH, 2, of(new MaterialStack(Calcium, 1), new MaterialStack(Silicon, 1), new MaterialStack(Oxygen, 3)), 0); + public static DustMaterial Zeolite = new DustMaterial(291, "zeolite", 0xF0E6E6, ROUGH, 2, of(new MaterialStack(Sodium, 1), new MaterialStack(Calcium, 4), new MaterialStack(Silicon, 27), new MaterialStack(Aluminium, 9), new MaterialStack(Water, 28), new MaterialStack(Oxygen, 72)), DISABLE_DECOMPOSITION); + public static DustMaterial Kyanite = new DustMaterial(292, "kyanite", 0x6E6EFA, FLINT, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 1), new MaterialStack(Oxygen, 5)), 0); + public static DustMaterial Kaolinite = new DustMaterial(293, "kaolinite", 0xF5EBEB, DULL, 2, of(new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 9)), 0); + public static DustMaterial Talc = new DustMaterial(294, "talc", 0x5AB45A, FINE, 2, of(new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 12)), GENERATE_ORE); + public static DustMaterial Soapstone = new DustMaterial(295, "soapstone", 0x5F915F, ROUGH, 1, of(new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 4), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 12)), GENERATE_ORE); + public static DustMaterial Concrete = new DustMaterial(296, "concrete", 0x646464, ROUGH, 1, of(new MaterialStack(Stone, 1)), NO_SMASHING | SMELT_INTO_FLUID); + public static IngotMaterial IronMagnetic = new IngotMaterial(297, "iron_magnetic", 0xC8C8C8, MAGNETIC, 2, of(new MaterialStack(Iron, 1)), EXT2_METAL | MORTAR_GRINDABLE); + public static IngotMaterial SteelMagnetic = new IngotMaterial(298, "steel_magnetic", 0x808080, MAGNETIC, 2, of(new MaterialStack(Steel, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | MORTAR_GRINDABLE, null, 1000); + public static IngotMaterial NeodymiumMagnetic = new IngotMaterial(299, "neodymium_magnetic", 0x646464, MAGNETIC, 2, of(new MaterialStack(Neodymium, 1)), EXT2_METAL | GENERATE_LONG_ROD, null, 1297); + public static IngotMaterial TungstenCarbide = new IngotMaterial(300, "tungsten_carbide", 0x330066, METALLIC, 4, of(new MaterialStack(Tungsten, 1), new MaterialStack(Carbon, 1)), EXT2_METAL, null, 12.0F, 4.0f, 1280, 2460); + public static IngotMaterial VanadiumSteel = new IngotMaterial(301, "vanadium_steel", 0xC0C0C0, METALLIC, 3, of(new MaterialStack(Vanadium, 1), new MaterialStack(Chrome, 1), new MaterialStack(Steel, 7)), EXT2_METAL, null, 7.0F, 3.0f, 1920, 1453); + public static IngotMaterial HSSG = new IngotMaterial(302, "hssg", 0x999900, METALLIC, 3, of(new MaterialStack(TungstenSteel, 5), new MaterialStack(Chrome, 1), new MaterialStack(Molybdenum, 2), new MaterialStack(Vanadium, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, null, 10.0F, 5.5f, 4000, 4500); + public static IngotMaterial HSSE = new IngotMaterial(303, "hsse", 0x336600, METALLIC, 4, of(new MaterialStack(HSSG, 6), new MaterialStack(Cobalt, 1), new MaterialStack(Manganese, 1), new MaterialStack(Silicon, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, null, 10.0F, 8.0f, 5120, 5400); + public static IngotMaterial HSSS = new IngotMaterial(304, "hsss", 0x660033, METALLIC, 4, of(new MaterialStack(HSSG, 6), new MaterialStack(Iridium, 2), new MaterialStack(Osmium, 1)), EXT2_METAL | GENERATE_GEAR, null, 15.0F, 7.0f, 3000, 5400); /** * Clear matter materials */ - public static FluidMaterial UUAmplifier = new FluidMaterial(305, "uuamplifier", 0xAA00AA, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial UUMatter = new FluidMaterial(306, "uumatter", 0x770077, MaterialIconSet.FLUID, of(), 0); + public static FluidMaterial UUAmplifier = new FluidMaterial(305, "uuamplifier", 0xAA00AA, FLUID, of(), 0); + public static FluidMaterial UUMatter = new FluidMaterial(306, "uumatter", 0x770077, FLUID, of(), 0); /** * Stargate materials */ - public static IngotMaterial Naquadah = new IngotMaterial(307, "naquadah", 0x323232, MaterialIconSet.METALLIC, 4, of(), EXT_METAL | GENERATE_ORE, Element.Nq, 6.0F, 4.0f, 1280, 5400); - public static IngotMaterial NaquadahAlloy = new IngotMaterial(308, "naquadah_alloy", 0x282828, MaterialIconSet.METALLIC, 5, of(new MaterialStack(Naquadah, 1), new MaterialStack(Osmiridium, 1)), EXT2_METAL, null, 8.0F, 5.0f, 5120, 7200); - public static IngotMaterial NaquadahEnriched = new IngotMaterial(309, "naquadah_enriched", 0x282828, MaterialIconSet.METALLIC, 4, of(), EXT_METAL | GENERATE_ORE, null, 6.0F, 4.0f, 1280, 4500); - public static IngotMaterial Naquadria = new IngotMaterial(310, "naquadria", 0x1E1E1E, MaterialIconSet.SHINY, 3, of(), EXT_METAL, Element.Nq, 9000); - public static IngotMaterial Tritanium = new IngotMaterial(311, "tritanium", 0xFFFFFF, MaterialIconSet.METALLIC, 6, of(), EXT_METAL, Element.Tr, 20.0F, 6.0f, 10240); - public static IngotMaterial Duranium = new IngotMaterial(312, "duranium", 0xFFFFFF, MaterialIconSet.METALLIC, 5, of(), EXT_METAL, Element.Dr, 16.0F, 5.0f, 5120); + public static IngotMaterial Naquadah = new IngotMaterial(307, "naquadah", 0x323232, METALLIC, 4, of(), EXT_METAL | GENERATE_ORE, Element.Nq, 6.0F, 4.0f, 1280, 5400); + public static IngotMaterial NaquadahAlloy = new IngotMaterial(308, "naquadah_alloy", 0x282828, METALLIC, 5, of(new MaterialStack(Naquadah, 1), new MaterialStack(Osmiridium, 1)), EXT2_METAL, null, 8.0F, 5.0f, 5120, 7200); + public static IngotMaterial NaquadahEnriched = new IngotMaterial(309, "naquadah_enriched", 0x282828, METALLIC, 4, of(), EXT_METAL | GENERATE_ORE, null, 6.0F, 4.0f, 1280, 4500); + public static IngotMaterial Naquadria = new IngotMaterial(310, "naquadria", 0x1E1E1E, SHINY, 3, of(), EXT_METAL, Element.Nq, 9000); + public static IngotMaterial Tritanium = new IngotMaterial(311, "tritanium", 0xFFFFFF, METALLIC, 6, of(), EXT_METAL, Element.Tr, 20.0F, 6.0f, 10240); + public static IngotMaterial Duranium = new IngotMaterial(312, "duranium", 0xFFFFFF, METALLIC, 5, of(), EXT_METAL, Element.Dr, 16.0F, 5.0f, 5120); /** * Actual food */ - public static FluidMaterial Milk = new FluidMaterial(339, "milk", 0xFEFEFE, MaterialIconSet.FINE, of(), 0); - public static FluidMaterial Honey = new FluidMaterial(341, "honey", 0xD2C800, MaterialIconSet.FLUID, of(), 0); - public static FluidMaterial Juice = new FluidMaterial(473, "juice", 0xA8C972, MaterialIconSet.FLUID, of(), 0); - public static DustMaterial Cocoa = new DustMaterial(343, "cocoa", 0xBE5F00, MaterialIconSet.ROUGH, 0, of(), 0); - public static DustMaterial Wheat = new DustMaterial(345, "wheat", 0xFFFFC4, MaterialIconSet.FINE, 0, of(), 0); + public static FluidMaterial Milk = new FluidMaterial(339, "milk", 0xFEFEFE, FINE, of(), 0); + public static FluidMaterial Honey = new FluidMaterial(341, "honey", 0xD2C800, FLUID, of(), 0); + public static FluidMaterial Juice = new FluidMaterial(473, "juice", 0xA8C972, FLUID, of(), 0); + public static DustMaterial Cocoa = new DustMaterial(343, "cocoa", 0xBE5F00, ROUGH, 0, of(), 0); + public static DustMaterial Wheat = new DustMaterial(345, "wheat", 0xFFFFC4, FINE, 0, of(), 0); static { for (DustMaterial dustMaterial : new DustMaterial[]{Bastnasite, Monazite}) { diff --git a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java b/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java index d486aa93d4..a29c8a51c2 100644 --- a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java @@ -1,298 +1,976 @@ package gregtech.loaders.recipe; -import gregtech.api.recipes.RecipeMaps; import gregtech.api.recipes.ingredients.IntCircuitIngredient; import gregtech.api.unification.OreDictUnifier; -import gregtech.api.unification.material.Materials; import gregtech.api.unification.material.type.DustMaterial; -import gregtech.api.unification.ore.OrePrefix; -import gregtech.api.util.GTUtility; import gregtech.common.items.MetaItems; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import net.minecraft.util.Tuple; +import net.minecraftforge.oredict.OreDictionary; -import java.util.List; +import static gregtech.api.GTValues.L; +import static gregtech.api.unification.ore.OrePrefix.*; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.recipes.RecipeMaps.*; +// TODO Fit in Ruler public class ChemistryRecipes { public static void init() { - //Rubber recipes - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.Isoprene.getFluid(144), Materials.Air.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.RawRubber)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.Isoprene.getFluid(144), Materials.Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.RawRubber, 3)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(240).fluidInputs(Materials.Butadiene.getFluid(108), Materials.Styrene.getFluid(36), Materials.Air.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.RawStyreneButadieneRubber)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(240).fluidInputs(Materials.Butadiene.getFluid(108), Materials.Styrene.getFluid(36), Materials.Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.RawStyreneButadieneRubber, 3)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Propene.getFluid(2000)).fluidOutputs(Materials.Methane.getFluid(1000), Materials.Isoprene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(3500).EUt(30).input(OrePrefix.dust, Materials.Carbon).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Hydrogen.getFluid(4000)).fluidOutputs(Materials.Methane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Materials.Ethylene.getFluid(1000), Materials.Propene.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getFluid(2000), Materials.Isoprene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(OrePrefix.dust, Materials.RawStyreneButadieneRubber, 9).input(OrePrefix.dust, Materials.Sulfur).fluidOutputs(Materials.StyreneButadieneRubber.getFluid(1296)).buildAndRegister(); - - //Polyphenylene Process - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(60).EUt(30).input(OrePrefix.dust, Materials.Sodium, 2).input(OrePrefix.dust, Materials.Sulfur).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.SodiumSulfide, 3)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(360).input(OrePrefix.dust, Materials.SodiumSulfide, 3).fluidInputs(Materials.Dichlorobenzene.getFluid(1000), Materials.Air.getFluid(16000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Salt, 2)).fluidOutputs(Materials.PolyphenyleneSulfide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(360).input(OrePrefix.dust, Materials.SodiumSulfide, 3).fluidInputs(Materials.Dichlorobenzene.getFluid(1000), Materials.Oxygen.getFluid(8000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Salt, 2)).fluidOutputs(Materials.PolyphenyleneSulfide.getFluid(1500)).buildAndRegister(); - - //Cracking recipes - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Ethane.getFluid(1000)).fluidOutputs(Materials.HydroCrackedEthane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Ethylene.getFluid(1000)).fluidOutputs(Materials.HydroCrackedEthylene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Propene.getFluid(1000)).fluidOutputs(Materials.HydroCrackedPropene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Propane.getFluid(1000)).fluidOutputs(Materials.HydroCrackedPropane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.LightFuel.getFluid(1000)).fluidOutputs(Materials.HydroCrackedLightFuel.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Butane.getFluid(1000)).fluidOutputs(Materials.HydroCrackedButane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Naphtha.getFluid(1000)).fluidOutputs(Materials.HydroCrackedNaphtha.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.HeavyFuel.getFluid(1000)).fluidOutputs(Materials.HydroCrackedHeavyFuel.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Gas.getFluid(1000)).fluidOutputs(Materials.HydroCrackedGas.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Butene.getFluid(1000)).fluidOutputs(Materials.HydroCrackedButene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Hydrogen.getFluid(2000), Materials.Butadiene.getFluid(1000)).fluidOutputs(Materials.HydroCrackedButadiene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Ethane.getFluid(1000)).fluidOutputs(Materials.SteamCrackedEthane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Ethylene.getFluid(1000)).fluidOutputs(Materials.SteamCrackedEthylene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Propene.getFluid(1000)).fluidOutputs(Materials.SteamCrackedPropene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Propane.getFluid(1000)).fluidOutputs(Materials.SteamCrackedPropane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.LightFuel.getFluid(1000)).fluidOutputs(Materials.CrackedLightFuel.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Butane.getFluid(1000)).fluidOutputs(Materials.SteamCrackedButane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Naphtha.getFluid(1000)).fluidOutputs(Materials.SteamCrackedNaphtha.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.HeavyFuel.getFluid(1000)).fluidOutputs(Materials.CrackedHeavyFuel.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Gas.getFluid(1000)).fluidOutputs(Materials.SteamCrackedGas.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Butene.getFluid(1000)).fluidOutputs(Materials.SteamCrackedButene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CRACKING_RECIPES.recipeBuilder().duration(40).EUt(120).fluidInputs(Materials.Steam.getFluid(2000), Materials.Butadiene.getFluid(1000)).fluidOutputs(Materials.SteamCrackedButadiene.getFluid(1000)).buildAndRegister(); - - //Distillation Recipes - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(16).EUt(96).fluidInputs(Materials.Creosote.getFluid(24)).fluidOutputs(Materials.Lubricant.getFluid(12)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.HydroCrackedEthane.getFluid(1000)).fluidOutputs(Materials.Methane.getFluid(2000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.SteamCrackedEthane.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Carbon, 2)).fluidOutputs(Materials.Methane.getFluid(1500)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.HydroCrackedEthylene.getFluid(1000)).fluidOutputs(Materials.Ethane.getFluid(1000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.SteamCrackedEthylene.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Carbon)).fluidOutputs(Materials.Methane.getFluid(1000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.HydroCrackedPropene.getFluid(1000)).fluidOutputs(Materials.Propane.getFluid(500), Materials.Ethylene.getFluid(500), Materials.Methane.getFluid(500)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(180).EUt(120).fluidInputs(Materials.SteamCrackedPropene.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Carbon, 6)).fluidOutputs(Materials.Methane.getFluid(1500)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.HydroCrackedPropane.getFluid(1000)).fluidOutputs(Materials.Ethane.getFluid(1000), Materials.Methane.getFluid(1000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(240).EUt(120).fluidInputs(Materials.SteamCrackedPropane.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Carbon, 3)).fluidOutputs(Materials.Ethylene.getFluid(500), Materials.Methane.getFluid(3500)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.HydroCrackedLightFuel.getFluid(1000)).fluidOutputs(Materials.Naphtha.getFluid(800), Materials.Butane.getFluid(150), Materials.Propane.getFluid(200), Materials.Ethane.getFluid(125), Materials.Methane.getFluid(125)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.CrackedLightFuel.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Carbon)).fluidOutputs(Materials.HeavyFuel.getFluid(50), Materials.Naphtha.getFluid(100), Materials.Toluene.getFluid(30), Materials.Benzene.getFluid(150), Materials.Butene.getFluid(65), Materials.Butadiene.getFluid(50), Materials.Propane.getFluid(50), Materials.Propene.getFluid(250), Materials.Ethane.getFluid(50), Materials.Ethylene.getFluid(250), Materials.Methane.getFluid(250)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(90).EUt(120).fluidInputs(Materials.HydroCrackedButane.getFluid(750)).fluidOutputs(Materials.Propane.getFluid(500), Materials.Ethane.getFluid(500), Materials.Methane.getFluid(500)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(240).EUt(120).fluidInputs(Materials.SteamCrackedButane.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Carbon, 9)).fluidOutputs(Materials.Propane.getFluid(250), Materials.Ethane.getFluid(250), Materials.Ethylene.getFluid(250), Materials.Methane.getFluid(4000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.HydroCrackedNaphtha.getFluid(1000)).fluidOutputs(Materials.Butane.getFluid(800), Materials.Propane.getFluid(300), Materials.Ethane.getFluid(250), Materials.Methane.getFluid(250)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.SteamCrackedNaphtha.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Carbon, 3)).fluidOutputs(Materials.HeavyFuel.getFluid(25), Materials.LightFuel.getFluid(50), Materials.Toluene.getFluid(20), Materials.Benzene.getFluid(100), Materials.Butene.getFluid(50), Materials.Butadiene.getFluid(50), Materials.Propane.getFluid(15), Materials.Propene.getFluid(300), Materials.Ethane.getFluid(65), Materials.Ethylene.getFluid(500), Materials.Methane.getFluid(500)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.HydroCrackedHeavyFuel.getFluid(1000)).fluidOutputs(Materials.LightFuel.getFluid(600), Materials.Naphtha.getFluid(100), Materials.Butane.getFluid(100), Materials.Propane.getFluid(100), Materials.Ethane.getFluid(75), Materials.Methane.getFluid(75)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.CrackedHeavyFuel.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Carbon, 3)).fluidOutputs(Materials.LightFuel.getFluid(100), Materials.Naphtha.getFluid(125), Materials.Toluene.getFluid(80), Materials.Benzene.getFluid(400), Materials.Butene.getFluid(80), Materials.Butadiene.getFluid(50), Materials.Propane.getFluid(10), Materials.Propene.getFluid(100), Materials.Ethane.getFluid(15), Materials.Ethylene.getFluid(150), Materials.Methane.getFluid(150)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(120).EUt(120).fluidInputs(Materials.HydroCrackedGas.getFluid(1000)).fluidOutputs(Materials.Methane.getFluid(1400), Materials.Hydrogen.getFluid(1340), Materials.Helium.getFluid(20)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(96).EUt(120).fluidInputs(Materials.SteamCrackedGas.getFluid(800)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Carbon)).fluidOutputs(Materials.Propene.getFluid(6), Materials.Ethane.getFluid(6), Materials.Ethylene.getFluid(20), Materials.Methane.getFluid(914), Materials.Helium.getFluid(16)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(90).EUt(120).fluidInputs(Materials.HydroCrackedButene.getFluid(750)).fluidOutputs(Materials.Butane.getFluid(250), Materials.Propene.getFluid(250), Materials.Ethane.getFluid(250), Materials.Methane.getFluid(250)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(240).EUt(120).fluidInputs(Materials.SteamCrackedButene.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Carbon, 3)).fluidOutputs(Materials.Propene.getFluid(250), Materials.Ethylene.getFluid(625), Materials.Methane.getFluid(3000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(90).EUt(120).fluidInputs(Materials.HydroCrackedButadiene.getFluid(750)).fluidOutputs(Materials.Butene.getFluid(500), Materials.Ethylene.getFluid(500)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(240).EUt(120).fluidInputs(Materials.SteamCrackedButadiene.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Carbon, 2)).fluidOutputs(Materials.Propene.getFluid(250), Materials.Ethylene.getFluid(375), Materials.Methane.getFluid(2250)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(20).EUt(96).fluidInputs(Materials.OilLight.getFluid(150)).fluidOutputs(Materials.SulfuricHeavyFuel.getFluid(10), Materials.SulfuricLightFuel.getFluid(20), Materials.SulfuricNaphtha.getFluid(30), Materials.SulfuricGas.getFluid(240)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(20).EUt(96).fluidInputs(Materials.OilMedium.getFluid(100)).fluidOutputs(Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getFluid(60)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(20).EUt(288).fluidInputs(Materials.OilHeavy.getFluid(150)).fluidOutputs(Materials.SulfuricHeavyFuel.getFluid(250), Materials.SulfuricLightFuel.getFluid(45), Materials.SulfuricNaphtha.getFluid(15), Materials.SulfuricGas.getFluid(600)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(20).EUt(96).fluidInputs(Materials.Oil.getFluid(50)).fluidOutputs(Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getFluid(60)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(600).EUt(64).fluidInputs(Materials.DilutedHydrochloricAcid.getFluid(2000)).fluidOutputs(Materials.Water.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(600).EUt(120).fluidInputs(Materials.DilutedSulfuricAcid.getFluid(3000)).fluidOutputs(Materials.SulfuricAcid.getFluid(2000), Materials.Water.getFluid(1000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(40).EUt(256).fluidInputs(Materials.CharcoalByproducts.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Charcoal)).fluidOutputs(Materials.WoodTar.getFluid(250), Materials.WoodVinegar.getFluid(500), Materials.WoodGas.getFluid(250)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(40).EUt(256).fluidInputs(Materials.WoodTar.getFluid(1000)).fluidOutputs(Materials.Creosote.getFluid(500), Materials.Phenol.getFluid(75), Materials.Benzene.getFluid(350), Materials.Toluene.getFluid(75)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(40).EUt(256).fluidInputs(Materials.WoodGas.getFluid(1000)).fluidOutputs(Materials.CarbonDioxide.getFluid(490), Materials.Ethylene.getFluid(20), Materials.Methane.getFluid(130), Materials.CarbonMonoxde.getFluid(340), Materials.Hydrogen.getFluid(20)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(160).EUt(120).fluidInputs(Materials.Water.getFluid(576)).fluidOutputs(Materials.DistilledWater.getFluid(520)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(80).EUt(640).fluidInputs(Materials.Acetone.getFluid(1000)).fluidOutputs(Materials.Ethenone.getFluid(1000), Materials.Methane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CENTRIFUGE_RECIPES.recipeBuilder().duration(200).EUt(5).fluidInputs(Materials.Gas.getFluid(8000)).fluidOutputs(Materials.Methane.getFluid(4000), Materials.LPG.getFluid(4000)).buildAndRegister(); - - RecipeMaps.DISTILLERY_RECIPES.recipeBuilder().duration(160).EUt(24).circuitMeta(1).fluidInputs(Materials.Toluene.getFluid(30)).fluidOutputs(Materials.LightFuel.getFluid(30)).buildAndRegister(); - RecipeMaps.DISTILLERY_RECIPES.recipeBuilder().duration(16).EUt(24).circuitMeta(1).fluidInputs(Materials.HeavyFuel.getFluid(10)).fluidOutputs(Materials.Toluene.getFluid(4)).buildAndRegister(); - RecipeMaps.DISTILLERY_RECIPES.recipeBuilder().duration(16).EUt(24).circuitMeta(2).fluidInputs(Materials.HeavyFuel.getFluid(10)).fluidOutputs(Materials.Benzene.getFluid(4)).buildAndRegister(); - RecipeMaps.DISTILLERY_RECIPES.recipeBuilder().duration(32).EUt(24).circuitMeta(3).fluidInputs(Materials.HeavyFuel.getFluid(20)).fluidOutputs(Materials.Phenol.getFluid(5)).buildAndRegister(); - - RecipeMaps.DISTILLERY_RECIPES.recipeBuilder().duration(16).EUt(24).fluidInputs(Materials.OilLight.getFluid(300)).circuitMeta(4).fluidOutputs(Materials.Oil.getFluid(100)).buildAndRegister(); - RecipeMaps.DISTILLERY_RECIPES.recipeBuilder().duration(16).EUt(24).fluidInputs(Materials.OilMedium.getFluid(200)).circuitMeta(4).fluidOutputs(Materials.Oil.getFluid(100)).buildAndRegister(); - RecipeMaps.DISTILLERY_RECIPES.recipeBuilder().duration(16).EUt(24).fluidInputs(Materials.OilHeavy.getFluid(100)).circuitMeta(4).fluidOutputs(Materials.Oil.getFluid(100)).buildAndRegister(); - - RecipeMaps.FLUID_HEATER_RECIPES.recipeBuilder().duration(16).EUt(30).circuitMeta(1).fluidInputs(Materials.Acetone.getFluid(100)).fluidOutputs(Materials.Ethenone.getFluid(100)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Air.getFluid(1000), Materials.Ethylene.getFluid(144)).fluidOutputs(Materials.Plastic.getFluid(144)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Oxygen.getFluid(1000), Materials.Ethylene.getFluid(144)).fluidOutputs(Materials.Plastic.getFluid(216)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Air.getFluid(7500), Materials.Ethylene.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.Plastic.getFluid(3240)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(7500), Materials.Ethylene.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.Plastic.getFluid(4320)).buildAndRegister(); - RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(600).EUt(120).input(OrePrefix.dust, Materials.FerriteMixture).fluidInputs(Materials.Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.ingot, Materials.NickelZincFerrite)).blastFurnaceTemp(1500).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Air.getFluid(1000), Materials.VinylChloride.getFluid(144)).fluidOutputs(Materials.PolyvinylChloride.getFluid(144)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Oxygen.getFluid(1000), Materials.VinylChloride.getFluid(144)).fluidOutputs(Materials.PolyvinylChloride.getFluid(216)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Air.getFluid(7500), Materials.VinylChloride.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.PolyvinylChloride.getFluid(3240)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(7500), Materials.VinylChloride.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.PolyvinylChloride.getFluid(4320)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(OrePrefix.dust, Materials.Polydimethylsiloxane, 9).input(OrePrefix.dust, Materials.Sulfur).fluidOutputs(Materials.SiliconeRubber.getFluid(1296)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(50).EUt(8).fluidInputs(Materials.PolyvinylAcetate.getFluid(1000), Materials.Acetone.getFluid(1500)).fluidOutputs(Materials.Glue.getFluid(2500)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(50).EUt(8).fluidInputs(Materials.PolyvinylAcetate.getFluid(1000), Materials.MethylAcetate.getFluid(1500)).fluidOutputs(Materials.Glue.getFluid(2500)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.HydrochloricAcid.getFluid(1000), Materials.Acetone.getFluid(1000), Materials.Phenol.getFluid(2000)).fluidOutputs(Materials.BisphenolA.getFluid(1000), Materials.DilutedHydrochloricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(8).fluidInputs(Materials.SulfurTrioxide.getFluid(1000), Materials.Water.getFluid(1000)).fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Air.getFluid(1000), Materials.Tetrafluoroethylene.getFluid(144)).fluidOutputs(Materials.Polytetrafluoroethylene.getFluid(144)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Oxygen.getFluid(1000), Materials.Tetrafluoroethylene.getFluid(144)).fluidOutputs(Materials.Polytetrafluoroethylene.getFluid(216)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Air.getFluid(7500), Materials.Tetrafluoroethylene.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.Polytetrafluoroethylene.getFluid(3240)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(7500), Materials.Tetrafluoroethylene.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.Polytetrafluoroethylene.getFluid(4320)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(30).input(OrePrefix.dust, Materials.SodiumHydroxide, 3).fluidInputs(Materials.Epichlorhydrin.getFluid(1000), Materials.BisphenolA.getFluid(1000)).fluidOutputs(Materials.Epoxid.getFluid(1000), Materials.SaltWater.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(500).EUt(480).input(OrePrefix.dust, Materials.Carbon, 2).input(OrePrefix.dust, Materials.Rutile, 3).fluidInputs(Materials.Chlorine.getFluid(4000)).fluidOutputs(Materials.CarbonMonoxde.getFluid(2000), Materials.TitaniumTetrachloride.getFluid(1000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(96).fluidInputs(Materials.Dimethyldichlorosilane.getFluid(1000), Materials.Water.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Polydimethylsiloxane, 3)).fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(96).input(OrePrefix.dust, Materials.Silicon).fluidInputs(Materials.HydrochloricAcid.getFluid(2000), Materials.Methanol.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Polydimethylsiloxane, 3)).fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(96).input(OrePrefix.dust, Materials.Silicon).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Water.getFluid(1000), Materials.Chlorine.getFluid(4000), Materials.Methane.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Polydimethylsiloxane, 3)).fluidOutputs(Materials.HydrochloricAcid.getFluid(2000), Materials.DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).fluidInputs(Materials.Chlorine.getFluid(1000), Materials.Hydrogen.getFluid(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(30).input(OrePrefix.dust, Materials.Salt, 2).fluidInputs(Materials.SulfuricAcid.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.SodiumBisulfate, 7)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().duration(448).EUt(60).input(OrePrefix.dust, Materials.SodiumBisulfate, 14).fluidOutputs(Materials.SodiumPersulfate.getFluid(1000), Materials.Hydrogen.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Chlorine.getFluid(6000), Materials.Methane.getFluid(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(3000), Materials.Chloroform.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Materials.Chlorine.getFluid(2000), Materials.Methane.getFluid(1000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000), Materials.Chloromethane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Materials.Chlorine.getFluid(2000), Materials.Benzene.getFluid(500)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000), Materials.Dichlorobenzene.getFluid(500)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.Propene.getFluid(1000), Materials.Chlorine.getFluid(2000)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000), Materials.AllylChloride.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.Chlorine.getFluid(2000), Materials.Ethylene.getFluid(1000)).fluidOutputs(Materials.VinylChloride.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).input(OrePrefix.dust, Materials.Apatite, 9).fluidInputs(Materials.SulfuricAcid.getFluid(5000), Materials.Water.getFluid(10000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Gypsum, 40)).fluidOutputs(Materials.HydrochloricAcid.getFluid(1000), Materials.PhosphoricAcid.getFluid(3000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(30).fluidInputs(Materials.SulfurDioxide.getFluid(1000), Materials.Oxygen.getFluid(1000)).fluidOutputs(Materials.SulfurTrioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(280).EUt(30).input(OrePrefix.dust, Materials.Sulfur).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Materials.Oxygen.getFluid(3000)).fluidOutputs(Materials.SulfurTrioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(256).fluidInputs(Materials.Chloroform.getFluid(1000), Materials.HydrofluoricAcid.getFluid(2000)).fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(3000), Materials.Tetrafluoroethylene.getFluid(500)).buildAndRegister(); - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().duration(720).EUt(30).fluidInputs(Materials.SaltWater.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.SodiumHydroxide, 3)).fluidOutputs(Materials.Chlorine.getFluid(1000), Materials.Hydrogen.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(OrePrefix.dust, Materials.Sodium, 1).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Water.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.SodiumHydroxide, 3)).fluidOutputs(Materials.Hydrogen.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Air.getFluid(1000), Materials.Styrene.getFluid(144)).fluidOutputs(Materials.Polystyrene.getFluid(144)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Oxygen.getFluid(1000), Materials.Styrene.getFluid(144)).fluidOutputs(Materials.Polystyrene.getFluid(216)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Air.getFluid(7500), Materials.Styrene.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.Polystyrene.getFluid(3240)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(7500), Materials.Styrene.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.Polystyrene.getFluid(4320)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Materials.Oxygen.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000), Materials.Ethylene.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(1000), Materials.VinylChloride.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.Oxygen.getFluid(2000), Materials.Cumene.getFluid(1000)).fluidOutputs(Materials.Phenol.getFluid(1000), Materials.Acetone.getFluid(1000)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(1200).EUt(2).input(OrePrefix.dust, Materials.Wood, 4).fluidInputs(Materials.SulfuricAcid.getFluid(1000)).outputs(new ItemStack(Items.COAL, 1, 1)).fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(1200).EUt(2).inputs(new ItemStack(Items.SUGAR, 4)).fluidInputs(Materials.SulfuricAcid.getFluid(1000)).outputs(new ItemStack(Items.COAL, 1, 1)).fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(180).EUt(30).fluidInputs(Materials.NitrationMixture.getFluid(3000), Materials.Glycerol.getFluid(1000)).fluidOutputs(Materials.Glyceryl.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(3000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(120).fluidInputs(Materials.SulfuricAcid.getFluid(1000), Materials.AceticAcid.getFluid(1000)).fluidOutputs(Materials.Ethenone.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(1000)).buildAndRegister(); - - // Calcium Acetate / Acetone - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(120).input(OrePrefix.dust, Materials.Calcite, 5).fluidInputs(Materials.AceticAcid.getFluid(2000)).fluidOutputs(Materials.CalciumAcetate.getFluid(1000), Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(400).EUt(380).input(OrePrefix.dust, Materials.Quicklime, 2).fluidInputs(Materials.AceticAcid.getFluid(2000)).fluidOutputs(Materials.CalciumAcetate.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(400).EUt(380).input(OrePrefix.dust, Materials.Calcium).fluidInputs(Materials.AceticAcid.getFluid(2000), Materials.Oxygen.getFluid(1000)).fluidOutputs(Materials.CalciumAcetate.getFluid(1000)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(80).EUt(120).fluidInputs(Materials.CalciumAcetate.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Quicklime, 2)).fluidOutputs(Materials.Acetone.getFluid(1000), Materials.CarbonDioxide.getFluid(1000), Materials.Water.getFluid(1000)).buildAndRegister(); - RecipeMaps.FLUID_HEATER_RECIPES.recipeBuilder().duration(16).EUt(30).circuitMeta(1).fluidInputs(Materials.CalciumAcetate.getFluid(200)).fluidOutputs(Materials.Acetone.getFluid(200)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).fluidInputs(Materials.Methanol.getFluid(1000), Materials.AceticAcid.getFluid(1000)).fluidOutputs(Materials.MethylAcetate.getFluid(1000), Materials.Water.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).fluidInputs(Materials.Glycerol.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(2000), Materials.Epichlorhydrin.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).input(OrePrefix.dust, Materials.SodiumHydroxide, 3).fluidInputs(Materials.AllylChloride.getFluid(1000), Materials.HypochlorousAcid.getFluid(1000)).fluidOutputs(Materials.SaltWater.getFluid(1000), Materials.Epichlorhydrin.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).input(OrePrefix.dust, Materials.Sulfur).fluidInputs(Materials.Hydrogen.getFluid(2000)).fluidOutputs(Materials.HydrogenSulfide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.SulfuricLightFuel.getFluid(12000), Materials.Hydrogen.getFluid(2000)).fluidOutputs(Materials.HydrogenSulfide.getFluid(1000), Materials.LightFuel.getFluid(12000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.SulfuricHeavyFuel.getFluid(8000), Materials.Hydrogen.getFluid(2000)).fluidOutputs(Materials.HydrogenSulfide.getFluid(1000), Materials.HeavyFuel.getFluid(8000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.SulfuricNaphtha.getFluid(12000), Materials.Hydrogen.getFluid(2000)).fluidOutputs(Materials.HydrogenSulfide.getFluid(1000), Materials.Naphtha.getFluid(12000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.SulfuricGas.getFluid(16000), Materials.Hydrogen.getFluid(2000)).fluidOutputs(Materials.HydrogenSulfide.getFluid(1000), Materials.Gas.getFluid(16000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.NaturalGas.getFluid(16000), Materials.Hydrogen.getFluid(2000)).fluidOutputs(Materials.HydrogenSulfide.getFluid(1000), Materials.Gas.getFluid(16000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(1250).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Nitrogen.getFluid(1000), Materials.Oxygen.getFluid(2000)).fluidOutputs(Materials.NitrogenDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Air.getFluid(1000), Materials.VinylAcetate.getFluid(144)).fluidOutputs(Materials.PolyvinylAcetate.getFluid(144)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Oxygen.getFluid(1000), Materials.VinylAcetate.getFluid(144)).fluidOutputs(Materials.PolyvinylAcetate.getFluid(216)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Air.getFluid(7500), Materials.VinylAcetate.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.PolyvinylAcetate.getFluid(3240)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(7500), Materials.VinylAcetate.getFluid(2160), Materials.TitaniumTetrachloride.getFluid(100)).fluidOutputs(Materials.PolyvinylAcetate.getFluid(4320)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(300).EUt(30).input(OrePrefix.dust, Materials.Gallium).input(OrePrefix.dust, Materials.Arsenic).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.GalliumArsenide, 2)).buildAndRegister(); - - RecipeMaps.CENTRIFUGE_RECIPES.recipeBuilder().duration(1484).EUt(5).fluidInputs(Materials.LiquidAir.getFluid(53000)).fluidOutputs(Materials.Nitrogen.getFluid(32000), Materials.Nitrogen.getFluid(8000), Materials.Oxygen.getFluid(11000), Materials.Argon.getFluid(1000), Materials.NobleGases.getFluid(1000)).buildAndRegister(); - RecipeMaps.CENTRIFUGE_RECIPES.recipeBuilder().duration(680).EUt(5).fluidInputs(Materials.NobleGases.getFluid(34000)).fluidOutputs(Materials.CarbonDioxide.getFluid(21000), Materials.Helium.getFluid(9000), Materials.Methane.getFluid(3000), Materials.Deuterium.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(96).fluidInputs(Materials.Hydrogen.getFluid(6000), Materials.CarbonDioxide.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(1000), Materials.Methanol.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(96).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Materials.Hydrogen.getFluid(4000), Materials.CarbonMonoxde.getFluid(1000)).fluidOutputs(Materials.Methanol.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(96).input(OrePrefix.dust, Materials.Carbon).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Materials.Hydrogen.getFluid(4000), Materials.Oxygen.getFluid(1000)).fluidOutputs(Materials.Methanol.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(8).fluidInputs(Materials.Mercury.getFluid(1000), Materials.Water.getFluid(10000), Materials.Chlorine.getFluid(10000)).fluidOutputs(Materials.HypochlorousAcid.getFluid(10000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Water.getFluid(1000), Materials.Chlorine.getFluid(2000)).fluidOutputs(Materials.DilutedHydrochloricAcid.getFluid(1000), Materials.HypochlorousAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(960).EUt(480).fluidInputs(Materials.Dimethylamine.getFluid(1000), Materials.Chloramine.getFluid(1000)).fluidOutputs(Materials.Dimethylhydrazine.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(1040).EUt(480).fluidInputs(Materials.Methanol.getFluid(2000), Materials.Ammonia.getFluid(2000), Materials.HypochlorousAcid.getFluid(1000)).fluidOutputs(Materials.Dimethylhydrazine.getFluid(1000), Materials.DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).input(OrePrefix.dust, Materials.Sulfur).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Oxygen.getFluid(2000)).fluidOutputs(Materials.SulfurDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Materials.Oxygen.getFluid(3000), Materials.HydrogenSulfide.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(1000), Materials.SulfurDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).fluidInputs(Materials.Hydrogen.getFluid(1000), Materials.Fluorine.getFluid(1000)).fluidOutputs(Materials.HydrofluoricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(40).EUt(8).input(OrePrefix.dust, Materials.Salt, 2).fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(Materials.SaltWater.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Materials.Ethylene.getFluid(1000), Materials.Benzene.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getFluid(2000), Materials.Styrene.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(1920).EUt(30).fluidInputs(Materials.PhosphoricAcid.getFluid(1000), Materials.Benzene.getFluid(8000), Materials.Propene.getFluid(8000)).fluidOutputs(Materials.Cumene.getFluid(8000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(96).input(OrePrefix.dust, Materials.Silicon).fluidInputs(Materials.Chloromethane.getFluid(2000)).fluidOutputs(Materials.Dimethyldichlorosilane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(100).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Oxygen.getFluid(2000), Materials.Ethylene.getFluid(1000)).fluidOutputs(Materials.AceticAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(300).EUt(30).fluidInputs(Materials.CarbonMonoxde.getFluid(1000), Materials.Methanol.getFluid(1000)).fluidOutputs(Materials.AceticAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Hydrogen.getFluid(4000), Materials.CarbonMonoxde.getFluid(2000)).fluidOutputs(Materials.AceticAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).input(OrePrefix.dust, Materials.Carbon, 2).notConsumable(new IntCircuitIngredient(4)).fluidInputs(Materials.Oxygen.getFluid(2000), Materials.Hydrogen.getFluid(4000)).fluidOutputs(Materials.AceticAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(600).input(OrePrefix.dust, Materials.Aluminium, 4).fluidInputs(Materials.IndiumConcentrate.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Indium)).fluidOutputs(Materials.LeadZincSolution.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(30).EUt(240).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Materials.NitrogenDioxide.getFluid(3000), Materials.Water.getFluid(1000)).fluidOutputs(Materials.NitricOxide.getFluid(1000), Materials.NitricAcid.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(10000), Materials.Ammonia.getFluid(4000)).fluidOutputs(Materials.NitricOxide.getFluid(4000), Materials.Water.getFluid(6000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(180).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Materials.Oxygen.getFluid(1000), Materials.AceticAcid.getFluid(1000), Materials.Ethylene.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(1000), Materials.VinylAcetate.getFluid(1000)).buildAndRegister(); - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().duration(200).EUt(30).input(OrePrefix.dust, Materials.Sphalerite, 2).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Zinc), OreDictUnifier.get(OrePrefix.dust, Materials.Sulfur)).chancedOutput(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Gallium), 2500, 1000).buildAndRegister(); - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().duration(2496).EUt(60).input(OrePrefix.dust, Materials.Bauxite, 39).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Rutile, 6), OreDictUnifier.get(OrePrefix.dust, Materials.Aluminium, 16)).fluidOutputs(Materials.Hydrogen.getFluid(10000), Materials.Oxygen.getFluid(11000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(OrePrefix.dust, Materials.Carbon).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(1000)).fluidOutputs(Materials.CarbonMonoxde.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(OrePrefix.gem, Materials.Charcoal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Ash)).fluidOutputs(Materials.CarbonMonoxde.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(OrePrefix.gem, Materials.Coal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Ash)).fluidOutputs(Materials.CarbonMonoxde.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(OrePrefix.dust, Materials.Charcoal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Ash)).fluidOutputs(Materials.CarbonMonoxde.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(OrePrefix.dust, Materials.Coal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Ash)).fluidOutputs(Materials.CarbonMonoxde.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(8).input(OrePrefix.dust, Materials.Carbon).fluidInputs(Materials.CarbonDioxide.getFluid(1000)).fluidOutputs(Materials.CarbonMonoxde.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(384).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Hydrogen.getFluid(3000), Materials.Nitrogen.getFluid(1000)).fluidOutputs(Materials.Ammonia.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Materials.HypochlorousAcid.getFluid(1000), Materials.Ammonia.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(1000), Materials.Chloramine.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(120).fluidInputs(Materials.Ammonia.getFluid(1000), Materials.Methanol.getFluid(2000)).fluidOutputs(Materials.Water.getFluid(2000), Materials.Dimethylamine.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(30).input(OrePrefix.dust, Materials.PhosphorousPentoxide, 14).fluidInputs(Materials.Water.getFluid(6000)).fluidOutputs(Materials.PhosphoricAcid.getFluid(4000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).input(OrePrefix.dust, Materials.Phosphorus).fluidInputs(Materials.Water.getFluid(1500), Materials.Oxygen.getFluid(2500)).fluidOutputs(Materials.PhosphoricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000), Materials.Methanol.getFluid(1000)).fluidOutputs(Materials.Water.getFluid(1000), Materials.Chloromethane.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(150).input(OrePrefix.crushedPurified, Materials.Sphalerite).input(OrePrefix.crushedPurified, Materials.Galena).fluidInputs(Materials.SulfuricAcid.getFluid(4000)).fluidOutputs(Materials.IndiumConcentrate.getFluid(1000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(30).input(OrePrefix.dust, Materials.Phosphorus, 4).fluidInputs(Materials.Oxygen.getFluid(10000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.PhosphorousPentoxide, 14)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(OrePrefix.dust, Materials.Carbon).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Oxygen.getFluid(2000)).fluidOutputs(Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(OrePrefix.gem, Materials.Charcoal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Ash)).fluidOutputs(Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(OrePrefix.gem, Materials.Coal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Ash)).fluidOutputs(Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(OrePrefix.dust, Materials.Charcoal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Ash)).fluidOutputs(Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(OrePrefix.dust, Materials.Coal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Ash)).fluidOutputs(Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(150).EUt(480).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Materials.Water.getFluid(2000), Materials.Methane.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getFluid(8000), Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(20).EUt(480).fluidInputs(Materials.BioDiesel.getFluid(1000), Materials.Tetranitromethane.getFluid(40)).fluidOutputs(Materials.NitroFuel.getFluid(750)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(20).EUt(480).fluidInputs(Materials.Fuel.getFluid(1000), Materials.Tetranitromethane.getFluid(20)).fluidOutputs(Materials.NitroFuel.getFluid(1000)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(60).EUt(16).fluidInputs(Materials.Oxygen.getFluid(1000), Materials.Dimethylhydrazine.getFluid(1000)).fluidOutputs(Materials.RocketFuel.getFluid(3000)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(60).EUt(16).fluidInputs(Materials.DinitrogenTetroxide.getFluid(1000), Materials.Dimethylhydrazine.getFluid(1000)).fluidOutputs(Materials.RocketFuel.getFluid(6000)).buildAndRegister(); - RecipeMaps.CENTRIFUGE_RECIPES.recipeBuilder().duration(20).EUt(5).fluidInputs(Materials.Butane.getFluid(320)).fluidOutputs(Materials.LPG.getFluid(370)).buildAndRegister(); - RecipeMaps.CENTRIFUGE_RECIPES.recipeBuilder().duration(20).EUt(5).fluidInputs(Materials.Propane.getFluid(320)).fluidOutputs(Materials.LPG.getFluid(290)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(16).EUt(120).fluidInputs(Materials.LightFuel.getFluid(5000), Materials.HeavyFuel.getFluid(1000)).fluidOutputs(Materials.Fuel.getFluid(6000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(120).fluidInputs(Materials.AceticAcid.getFluid(4000), Materials.Ethenone.getFluid(4000), Materials.NitricAcid.getFluid(4000)).fluidOutputs(Materials.Tetranitromethane.getFluid(1000), Materials.AceticAcid.getFluid(7000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Materials.Oxygen.getFluid(7000), Materials.Ammonia.getFluid(2000)).fluidOutputs(Materials.DinitrogenTetroxide.getFluid(1000), Materials.Water.getFluid(3000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(640).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.NitrogenDioxide.getFluid(2000)).fluidOutputs(Materials.DinitrogenTetroxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(1100).EUt(480).notConsumable(new IntCircuitIngredient(23)).fluidInputs(Materials.Oxygen.getFluid(7000), Materials.Nitrogen.getFluid(2000), Materials.Hydrogen.getFluid(6000)).fluidOutputs(Materials.DinitrogenTetroxide.getFluid(1000), Materials.Water.getFluid(3000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Materials.Oxygen.getFluid(4000), Materials.Ammonia.getFluid(1000)).fluidOutputs(Materials.NitricAcid.getFluid(1000), Materials.Water.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).notConsumable(new IntCircuitIngredient(4)).fluidInputs(Materials.Water.getFluid(1000), Materials.Oxygen.getFluid(1000), Materials.NitrogenDioxide.getFluid(2000)).fluidOutputs(Materials.NitricAcid.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(480).notConsumable(new IntCircuitIngredient(24)).fluidInputs(Materials.Oxygen.getFluid(4000), Materials.Nitrogen.getFluid(1000), Materials.Hydrogen.getFluid(3000)).fluidOutputs(Materials.NitricAcid.getFluid(1000), Materials.Water.getFluid(1000)).buildAndRegister(); - - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(16).EUt(96).fluidInputs(Materials.SeedOil.getFluid(24)).fluidOutputs(Materials.Lubricant.getFluid(12)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(40).EUt(256).fluidInputs(Materials.WoodVinegar.getFluid(1000)).fluidOutputs(Materials.AceticAcid.getFluid(100), Materials.Water.getFluid(500), Materials.Ethanol.getFluid(10), Materials.Methanol.getFluid(300), Materials.Acetone.getFluid(50), Materials.MethylAcetate.getFluid(10)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(75).EUt(180).fluidInputs(Materials.FermentedBiomass.getFluid(1000)).fluidOutputs(Materials.AceticAcid.getFluid(25), Materials.Water.getFluid(375), Materials.Ethanol.getFluid(150), Materials.Methanol.getFluid(150), Materials.Ammonia.getFluid(100), Materials.CarbonDioxide.getFluid(400), Materials.Methane.getFluid(600)).buildAndRegister(); - RecipeMaps.DISTILLATION_RECIPES.recipeBuilder().duration(32).EUt(400).fluidInputs(Materials.Biomass.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Wood, 2)).fluidOutputs(Materials.Ethanol.getFluid(600), Materials.Water.getFluid(300)).buildAndRegister(); - - List> seedEntries = GTUtility.getGrassSeedEntries(); - for (Tuple seedEntry : seedEntries) { - RecipeMaps.FLUID_EXTRACTION_RECIPES.recipeBuilder() - .duration(32).EUt(2) - .inputs(seedEntry.getFirst()) - .fluidOutputs(Materials.SeedOil.getFluid(10)) - .buildAndRegister(); - } - RecipeMaps.FLUID_EXTRACTION_RECIPES.recipeBuilder().duration(32).EUt(2).inputs(new ItemStack(Items.BEETROOT_SEEDS)).fluidOutputs(Materials.SeedOil.getFluid(10)).buildAndRegister(); + //Cracking Unit + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Ethane.getFluid(1000)) + .fluidOutputs(HydroCrackedEthane.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Ethylene.getFluid(1000)) + .fluidOutputs(HydroCrackedEthylene.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Propene.getFluid(1000)) + .fluidOutputs(HydroCrackedPropene.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Propane.getFluid(1000)) + .fluidOutputs(HydroCrackedPropane.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), LightFuel.getFluid(1000)) + .fluidOutputs(HydroCrackedLightFuel.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Butane.getFluid(1000)) + .fluidOutputs(HydroCrackedButane.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Naphtha.getFluid(1000)) + .fluidOutputs(HydroCrackedNaphtha.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), HeavyFuel.getFluid(1000)) + .fluidOutputs(HydroCrackedHeavyFuel.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Gas.getFluid(1000)) + .fluidOutputs(HydroCrackedGas.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Butene.getFluid(1000)) + .fluidOutputs(HydroCrackedButene.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Hydrogen.getFluid(2000), Butadiene.getFluid(1000)) + .fluidOutputs(HydroCrackedButadiene.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Ethane.getFluid(1000)) + .fluidOutputs(SteamCrackedEthane.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Ethylene.getFluid(1000)) + .fluidOutputs(SteamCrackedEthylene.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Propene.getFluid(1000)) + .fluidOutputs(SteamCrackedPropene.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Propane.getFluid(1000)) + .fluidOutputs(SteamCrackedPropane.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), LightFuel.getFluid(1000)) + .fluidOutputs(CrackedLightFuel.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Butane.getFluid(1000)) + .fluidOutputs(SteamCrackedButane.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Naphtha.getFluid(1000)) + .fluidOutputs(SteamCrackedNaphtha.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), HeavyFuel.getFluid(1000)) + .fluidOutputs(CrackedHeavyFuel.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Gas.getFluid(1000)) + .fluidOutputs(SteamCrackedGas.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Butene.getFluid(1000)) + .fluidOutputs(SteamCrackedButene.getFluid(1000)) + .buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .duration(40).EUt(120) + .fluidInputs(Steam.getFluid(2000), Butadiene.getFluid(1000)) + .fluidOutputs(SteamCrackedButadiene.getFluid(1000)) + .buildAndRegister(); + + + //Distillation Tower / Distillery + DISTILLATION_RECIPES.recipeBuilder() + .duration(16).EUt(96) + .fluidInputs(Creosote.getFluid(24)) + .fluidOutputs(Lubricant.getFluid(12)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(HydroCrackedEthane.getFluid(1000)) + .fluidOutputs(Methane.getFluid(2000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(SteamCrackedEthane.getFluid(1000)) + .outputs(OreDictUnifier.get(dustSmall, Carbon, 2)) + .fluidOutputs(Methane.getFluid(1500)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(HydroCrackedEthylene.getFluid(1000)) + .fluidOutputs(Ethane.getFluid(1000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(SteamCrackedEthylene.getFluid(1000)) + .outputs(OreDictUnifier.get(dust, Carbon)) + .fluidOutputs(Methane.getFluid(1000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(HydroCrackedPropene.getFluid(1000)) + .fluidOutputs(Propane.getFluid(500), Ethylene.getFluid(500), Methane.getFluid(500)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(180).EUt(120) + .fluidInputs(SteamCrackedPropene.getFluid(1000)) + .outputs(OreDictUnifier.get(dustSmall, Carbon, 6)) + .fluidOutputs(Methane.getFluid(1500)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(HydroCrackedPropane.getFluid(1000)) + .fluidOutputs(Ethane.getFluid(1000), Methane.getFluid(1000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(240).EUt(120) + .fluidInputs(SteamCrackedPropane.getFluid(2000)) + .outputs(OreDictUnifier.get(dustSmall, Carbon, 3)) + .fluidOutputs(Ethylene.getFluid(500), Methane.getFluid(3500)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(HydroCrackedLightFuel.getFluid(1000)) + .fluidOutputs(Naphtha.getFluid(800), Butane.getFluid(150), Propane.getFluid(200), Ethane.getFluid(125), Methane.getFluid(125)) + .buildAndRegister(); + + // TODO Make cleaner + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(CrackedLightFuel.getFluid(1000)) + .outputs(OreDictUnifier.get(dustTiny, Carbon)) + .fluidOutputs(HeavyFuel.getFluid(50), Naphtha.getFluid(100), Toluene.getFluid(30), Benzene.getFluid(150), Butene.getFluid(65), Butadiene.getFluid(50), Propane.getFluid(50), Propene.getFluid(250), Ethane.getFluid(50), Ethylene.getFluid(250), Methane.getFluid(250)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(90).EUt(120) + .fluidInputs(HydroCrackedButane.getFluid(750)) + .fluidOutputs(Propane.getFluid(500), Ethane.getFluid(500), Methane.getFluid(500)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(240).EUt(120) + .fluidInputs(SteamCrackedButane.getFluid(2000)) + .outputs(OreDictUnifier.get(dustSmall, Carbon, 9)) + .fluidOutputs(Propane.getFluid(250), Ethane.getFluid(250), Ethylene.getFluid(250), Methane.getFluid(4000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(HydroCrackedNaphtha.getFluid(1000)) + .fluidOutputs(Butane.getFluid(800), Propane.getFluid(300), Ethane.getFluid(250), Methane.getFluid(250)) + .buildAndRegister(); + + // TODO Make cleaner + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(SteamCrackedNaphtha.getFluid(1000)) + .outputs(OreDictUnifier.get(dustTiny, Carbon, 3)) + .fluidOutputs(HeavyFuel.getFluid(25), LightFuel.getFluid(50), Toluene.getFluid(20), Benzene.getFluid(100), Butene.getFluid(50), Butadiene.getFluid(50), Propane.getFluid(15), Propene.getFluid(300), Ethane.getFluid(65), Ethylene.getFluid(500), Methane.getFluid(500)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(HydroCrackedHeavyFuel.getFluid(1000)) + .fluidOutputs(LightFuel.getFluid(600), Naphtha.getFluid(100), Butane.getFluid(100), Propane.getFluid(100), Ethane.getFluid(75), Methane.getFluid(75)) + .buildAndRegister(); + + // TODO make cleaner + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(CrackedHeavyFuel.getFluid(1000)) + .outputs(OreDictUnifier.get(dustTiny, Carbon, 3)) + .fluidOutputs(LightFuel.getFluid(100), Naphtha.getFluid(125), Toluene.getFluid(80), Benzene.getFluid(400), Butene.getFluid(80), Butadiene.getFluid(50), Propane.getFluid(10), Propene.getFluid(100), Ethane.getFluid(15), Ethylene.getFluid(150), Methane.getFluid(150)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(120).EUt(120) + .fluidInputs(HydroCrackedGas.getFluid(1000)) + .fluidOutputs(Methane.getFluid(1400), Hydrogen.getFluid(1340), Helium.getFluid(20)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(96).EUt(120) + .fluidInputs(SteamCrackedGas.getFluid(800)) + .outputs(OreDictUnifier.get(dustTiny, Carbon)) + .fluidOutputs(Propene.getFluid(6), Ethane.getFluid(6), Ethylene.getFluid(20), Methane.getFluid(914), Helium.getFluid(16)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(90).EUt(120) + .fluidInputs(HydroCrackedButene.getFluid(750)) + .fluidOutputs(Butane.getFluid(250), Propene.getFluid(250), Ethane.getFluid(250), Methane.getFluid(250)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(240).EUt(120) + .fluidInputs(SteamCrackedButene.getFluid(2000)) + .outputs(OreDictUnifier.get(dust, Carbon, 3)) + .fluidOutputs(Propene.getFluid(250), Ethylene.getFluid(625), Methane.getFluid(3000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(90).EUt(120) + .fluidInputs(HydroCrackedButadiene.getFluid(750)) + .fluidOutputs(Butene.getFluid(500), Ethylene.getFluid(500)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(240).EUt(120) + .fluidInputs(SteamCrackedButadiene.getFluid(2000)) + .outputs(OreDictUnifier.get(dust, Carbon, 2)) + .fluidOutputs(Propene.getFluid(250), Ethylene.getFluid(375), Methane.getFluid(2250)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(20).EUt(96) + .fluidInputs(OilLight.getFluid(150)) + .fluidOutputs(SulfuricHeavyFuel.getFluid(10), SulfuricLightFuel.getFluid(20), SulfuricNaphtha.getFluid(30), SulfuricGas.getFluid(240)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(20).EUt(96) + .fluidInputs(OilMedium.getFluid(100)) + .fluidOutputs(SulfuricHeavyFuel.getFluid(15), SulfuricLightFuel.getFluid(50), SulfuricNaphtha.getFluid(20), SulfuricGas.getFluid(60)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(20).EUt(288) + .fluidInputs(OilHeavy.getFluid(150)) + .fluidOutputs(SulfuricHeavyFuel.getFluid(250), SulfuricLightFuel.getFluid(45), SulfuricNaphtha.getFluid(15), SulfuricGas.getFluid(600)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(20).EUt(96) + .fluidInputs(Oil.getFluid(50)) + .fluidOutputs(SulfuricHeavyFuel.getFluid(15), SulfuricLightFuel.getFluid(50), SulfuricNaphtha.getFluid(20), SulfuricGas.getFluid(60)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(600).EUt(64) + .fluidInputs(DilutedHydrochloricAcid.getFluid(2000)) + .fluidOutputs(Water.getFluid(1000), HydrochloricAcid.getFluid(1000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(600).EUt(120) + .fluidInputs(DilutedSulfuricAcid.getFluid(3000)) + .fluidOutputs(SulfuricAcid.getFluid(2000), Water.getFluid(1000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(40).EUt(256) + .fluidInputs(CharcoalByproducts.getFluid(1000)) + .outputs(OreDictUnifier.get(dustSmall, Charcoal)) + .fluidOutputs(WoodTar.getFluid(250), WoodVinegar.getFluid(500), WoodGas.getFluid(250)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(40).EUt(256) + .fluidInputs(WoodTar.getFluid(1000)) + .fluidOutputs(Creosote.getFluid(500), Phenol.getFluid(75), Benzene.getFluid(350), Toluene.getFluid(75)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(40).EUt(256) + .fluidInputs(WoodGas.getFluid(1000)) + .fluidOutputs(CarbonDioxide.getFluid(490), Ethylene.getFluid(20), Methane.getFluid(130), CarbonMonoxde.getFluid(340), Hydrogen.getFluid(20)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(160).EUt(120) + .fluidInputs(Water.getFluid(576)) + .fluidOutputs(DistilledWater.getFluid(520)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(80).EUt(640) + .fluidInputs(Acetone.getFluid(1000)) + .fluidOutputs(Ethenone.getFluid(1000), Methane.getFluid(1000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(80).EUt(120) + .fluidInputs(CalciumAcetate.getFluid(1000)) + .outputs(OreDictUnifier.get(dust, Quicklime, 2)) + .fluidOutputs(Acetone.getFluid(1000), CarbonDioxide.getFluid(1000), Water.getFluid(1000)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(16).EUt(96) + .fluidInputs(SeedOil.getFluid(24)) + .fluidOutputs(Lubricant.getFluid(12)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(40).EUt(256) + .fluidInputs(WoodVinegar.getFluid(1000)) + .fluidOutputs(AceticAcid.getFluid(100), Water.getFluid(500), Ethanol.getFluid(10), Methanol.getFluid(300), Acetone.getFluid(50), MethylAcetate.getFluid(10)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(75).EUt(180) + .fluidInputs(FermentedBiomass.getFluid(1000)) + .fluidOutputs(AceticAcid.getFluid(25), Water.getFluid(375), Ethanol.getFluid(150), Methanol.getFluid(150), Ammonia.getFluid(100), CarbonDioxide.getFluid(400), Methane.getFluid(600)) + .buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .duration(32).EUt(400) + .fluidInputs(Biomass.getFluid(1000)) + .outputs(OreDictUnifier.get(dustSmall, Wood, 2)) + .fluidOutputs(Ethanol.getFluid(600), Water.getFluid(300)) + .buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .duration(160).EUt(24) + .circuitMeta(1) + .fluidInputs(Toluene.getFluid(30)) + .fluidOutputs(LightFuel.getFluid(30)) + .buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .duration(16).EUt(24) + .circuitMeta(1) + .fluidInputs(HeavyFuel.getFluid(10)) + .fluidOutputs(Toluene.getFluid(4)) + .buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .duration(16).EUt(24) + .circuitMeta(2) + .fluidInputs(HeavyFuel.getFluid(10)) + .fluidOutputs(Benzene.getFluid(4)) + .buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .duration(32).EUt(24) + .circuitMeta(3) + .fluidInputs(HeavyFuel.getFluid(20)) + .fluidOutputs(Phenol.getFluid(5)) + .buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .duration(16).EUt(24) + .circuitMeta(4) + .fluidInputs(OilLight.getFluid(300)) + .fluidOutputs(Oil.getFluid(100)) + .buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .duration(16).EUt(24) + .circuitMeta(4) + .fluidInputs(OilMedium.getFluid(200)) + .fluidOutputs(Oil.getFluid(100)) + .buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .duration(16).EUt(24) + .circuitMeta(4) + .fluidInputs(OilHeavy.getFluid(100)) + .fluidOutputs(Oil.getFluid(100)) + .buildAndRegister(); + + + // Centrifuge + CENTRIFUGE_RECIPES.recipeBuilder() + .duration(200).EUt(5) + .fluidInputs(Gas.getFluid(8000)) + .fluidOutputs(Methane.getFluid(4000), LPG.getFluid(4000)) + .buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .duration(1484).EUt(5) + .fluidInputs(LiquidAir.getFluid(53000)) + .fluidOutputs(Nitrogen.getFluid(32000), Nitrogen.getFluid(8000), Oxygen.getFluid(11000), Argon.getFluid(1000), NobleGases.getFluid(1000)) + .buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .duration(680).EUt(5) + .fluidInputs(NobleGases.getFluid(34000)) + .fluidOutputs(CarbonDioxide.getFluid(21000), Helium.getFluid(9000), Methane.getFluid(3000), Deuterium.getFluid(1000)) + .buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .duration(20).EUt(5) + .fluidInputs(Butane.getFluid(320)) + .fluidOutputs(LPG.getFluid(370)) + .buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .duration(20).EUt(5) + .fluidInputs(Propane.getFluid(320)) + .fluidOutputs(LPG.getFluid(290)) + .buildAndRegister(); + + + // Mixer + MIXER_RECIPES.recipeBuilder() + .duration(500).EUt(2) + .fluidInputs(NitricAcid.getFluid(1000), SulfuricAcid.getFluid(1000)) + .fluidOutputs(NitrationMixture.getFluid(1000)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(60).EUt(30) + .inputs(OreDictUnifier.get(dust, Sodium, 2), OreDictUnifier.get(dust, Sulfur)) + .outputs(OreDictUnifier.get(dust, SodiumSulfide, 3)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(50).EUt(8) + .fluidInputs(PolyvinylAcetate.getFluid(1000), Acetone.getFluid(1500)) + .fluidOutputs(Glue.getFluid(2500)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(50).EUt(8) + .fluidInputs(PolyvinylAcetate.getFluid(1000), MethylAcetate.getFluid(1500)) + .fluidOutputs(Glue.getFluid(2500)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(1200).EUt(2) + .input(dust, Wood, 4) + .fluidInputs(SulfuricAcid.getFluid(1000)) + .outputs(new ItemStack(Items.COAL, 1, 1)) + .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(1200).EUt(2) + .inputs(new ItemStack(Items.SUGAR, 4)) + .fluidInputs(SulfuricAcid.getFluid(1000)) + .outputs(new ItemStack(Items.COAL, 1, 1)) + .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(300).EUt(30) + .input(dust, Gallium).input(dust, Arsenic) + .outputs(OreDictUnifier.get(dust, GalliumArsenide, 2)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(40).EUt(8) + .input(dust, Salt, 2) + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(SaltWater.getFluid(1000)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(20).EUt(480) + .fluidInputs(BioDiesel.getFluid(1000), Tetranitromethane.getFluid(40)) + .fluidOutputs(NitroFuel.getFluid(750)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(20).EUt(480) + .fluidInputs(Fuel.getFluid(1000), Tetranitromethane.getFluid(20)) + .fluidOutputs(NitroFuel.getFluid(1000)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(60).EUt(16) + .fluidInputs(Oxygen.getFluid(1000), Dimethylhydrazine.getFluid(1000)) + .fluidOutputs(RocketFuel.getFluid(3000)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(60).EUt(16) + .fluidInputs(DinitrogenTetroxide.getFluid(1000), Dimethylhydrazine.getFluid(1000)) + .fluidOutputs(RocketFuel.getFluid(6000)) + .buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .duration(16).EUt(120) + .fluidInputs(LightFuel.getFluid(5000), HeavyFuel.getFluid(1000)) + .fluidOutputs(Fuel.getFluid(6000)) + .buildAndRegister(); + + for (DustMaterial dustMaterial : new DustMaterial[]{Talc, Soapstone, Redstone}) { + MIXER_RECIPES.recipeBuilder() + .duration(128).EUt(4) + .input(dust, dustMaterial) + .fluidInputs(Oil.getFluid(750)) + .fluidOutputs(Lubricant.getFluid(750)) + .buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(OrePrefix.dustTiny, Materials.SodiumHydroxide).fluidInputs(Materials.SeedOil.getFluid(6000), Materials.Methanol.getFluid(1000)).fluidOutputs(Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getFluid(6000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(OrePrefix.dustTiny, Materials.SodiumHydroxide).fluidInputs(Materials.SeedOil.getFluid(6000), Materials.Ethanol.getFluid(1000)).fluidOutputs(Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getFluid(6000)).buildAndRegister(); + MIXER_RECIPES.recipeBuilder() + .duration(128).EUt(4) + .input(dust, dustMaterial) + .fluidInputs(Creosote.getFluid(750)) + .fluidOutputs(Lubricant.getFluid(750)) + .buildAndRegister(); - for (DustMaterial dust : new DustMaterial[]{Materials.Talc, Materials.Soapstone, Materials.Redstone}) { - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(128).EUt(4).input(OrePrefix.dust, dust).fluidInputs(Materials.Oil.getFluid(750)).fluidOutputs(Materials.Lubricant.getFluid(750)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(128).EUt(4).input(OrePrefix.dust, dust).fluidInputs(Materials.Creosote.getFluid(750)).fluidOutputs(Materials.Lubricant.getFluid(750)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(128).EUt(4).input(OrePrefix.dust, dust).fluidInputs(Materials.SeedOil.getFluid(750)).fluidOutputs(Materials.Lubricant.getFluid(750)).buildAndRegister(); + MIXER_RECIPES.recipeBuilder() + .duration(128).EUt(4) + .input(dust, dustMaterial) + .fluidInputs(SeedOil.getFluid(750)) + .fluidOutputs(Lubricant.getFluid(750)) + .buildAndRegister(); } - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(1440).EUt(3).inputs(MetaItems.PLANT_BALL.getStackForm()).fluidInputs(Materials.Honey.getFluid(180)).fluidOutputs(Materials.Biomass.getFluid(270)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(600).EUt(3).input("treeSapling", 1).fluidInputs(Materials.Honey.getFluid(100)).fluidOutputs(Materials.Biomass.getFluid(150)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Items.POTATO)).fluidInputs(Materials.Honey.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Items.CARROT)).fluidInputs(Materials.Honey.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Blocks.CACTUS)).fluidInputs(Materials.Honey.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Items.REEDS)).fluidInputs(Materials.Honey.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Blocks.BROWN_MUSHROOM)).fluidInputs(Materials.Honey.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Blocks.RED_MUSHROOM)).fluidInputs(Materials.Honey.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Items.BEETROOT)).fluidInputs(Materials.Honey.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(1440).EUt(3).inputs(MetaItems.PLANT_BALL.getStackForm()).fluidInputs(Materials.Juice.getFluid(180)).fluidOutputs(Materials.Biomass.getFluid(270)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(600).EUt(3).input("treeSapling", 1).fluidInputs(Materials.Juice.getFluid(100)).fluidOutputs(Materials.Biomass.getFluid(150)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Items.POTATO)).fluidInputs(Materials.Juice.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Items.CARROT)).fluidInputs(Materials.Juice.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Blocks.CACTUS)).fluidInputs(Materials.Juice.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Items.REEDS)).fluidInputs(Materials.Juice.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Blocks.BROWN_MUSHROOM)).fluidInputs(Materials.Juice.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Blocks.RED_MUSHROOM)).fluidInputs(Materials.Juice.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(160).EUt(3).inputs(new ItemStack(Items.BEETROOT)).fluidInputs(Materials.Juice.getFluid(20)).fluidOutputs(Materials.Biomass.getFluid(30)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(1200).EUt(120).fluidInputs(Materials.SulfuricAcid.getFluid(1000), Materials.Ethanol.getFluid(1000)).fluidOutputs(Materials.Ethylene.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(1000)).buildAndRegister(); - } + // Electrolyzer + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(448).EUt(60) + .input(dust, SodiumBisulfate, 14) + .fluidOutputs(SodiumPersulfate.getFluid(1000), Hydrogen.getFluid(2000)) + .buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(720).EUt(30) + .fluidInputs(SaltWater.getFluid(1000)) + .outputs(OreDictUnifier.get(dust, SodiumHydroxide, 3)) + .fluidOutputs(Chlorine.getFluid(1000), Hydrogen.getFluid(1000)) + .buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(200).EUt(30) + .input(dust, Sphalerite, 2) + .outputs(OreDictUnifier.get(dust, Zinc), OreDictUnifier.get(dust, Sulfur)) + .chancedOutput(OreDictUnifier.get(dustTiny, Gallium), 2500, 1000) + .buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(2496).EUt(60) + .input(dust, Bauxite, 39) + .outputs(OreDictUnifier.get(dust, Rutile, 6), OreDictUnifier.get(dust, Aluminium, 16)) + .fluidOutputs(Hydrogen.getFluid(10000), Oxygen.getFluid(11000)) + .buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(1500).EUt(30) + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(2000), Oxygen.getFluid(1000)) + .buildAndRegister(); + + // TODO Make sure recipe right below this works + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(1500).EUt(30) + .fluidInputs(DistilledWater.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(2000), Oxygen.getFluid(1000)) + .buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(96).EUt(26) + .inputs(new ItemStack(Items.DYE, 3)) + .outputs(OreDictUnifier.get(dust, Calcium)) + .buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(500).EUt(25) + .inputs(new ItemStack(Blocks.SAND, 8)) + .outputs(OreDictUnifier.get(dust, SiliconDioxide)) + .buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .duration(100).EUt(26) + .input(dust, Graphite) + .outputs(OreDictUnifier.get(dust, Carbon, 4)) + .buildAndRegister(); + + + // Brewing + BREWING_RECIPES.recipeBuilder() + .duration(1440).EUt(3) + .inputs(MetaItems.PLANT_BALL.getStackForm()) + .fluidInputs(Honey.getFluid(180)) + .fluidOutputs(Biomass.getFluid(270)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(600).EUt(3) + .input("treeSapling", 1) + .fluidInputs(Honey.getFluid(100)) + .fluidOutputs(Biomass.getFluid(150)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Items.POTATO)) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Items.CARROT)) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Blocks.CACTUS)) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Items.REEDS)) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Blocks.BROWN_MUSHROOM)) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Blocks.RED_MUSHROOM)) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Items.BEETROOT)) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(1440).EUt(3) + .inputs(MetaItems.PLANT_BALL.getStackForm()) + .fluidInputs(Juice.getFluid(180)) + .fluidOutputs(Biomass.getFluid(270)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(600).EUt(3) + .input("treeSapling", 1) + .fluidInputs(Juice.getFluid(100)) + .fluidOutputs(Biomass.getFluid(150)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Items.POTATO)) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Items.CARROT)) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Blocks.CACTUS)) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Items.REEDS)) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Blocks.BROWN_MUSHROOM)) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Blocks.RED_MUSHROOM)) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .duration(160).EUt(3) + .inputs(new ItemStack(Items.BEETROOT)) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .buildAndRegister(); + + + // A Few Random Recipes + FLUID_HEATER_RECIPES.recipeBuilder() + .duration(16).EUt(30) + .circuitMeta(1) + .fluidInputs(Acetone.getFluid(100)) + .fluidOutputs(Ethenone.getFluid(100)) + .buildAndRegister(); + + FLUID_HEATER_RECIPES.recipeBuilder() + .duration(16).EUt(30) + .circuitMeta(1) + .fluidInputs(CalciumAcetate.getFluid(200)) + .fluidOutputs(Acetone.getFluid(200)) + .buildAndRegister(); + + VACUUM_RECIPES.recipeBuilder() + .duration(50) + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(Ice.getFluid(1000)) + .buildAndRegister(); + + VACUUM_RECIPES.recipeBuilder() + .duration(400) + .fluidInputs(Air.getFluid(4000)) + .fluidOutputs(LiquidAir.getFluid(4000)) + .buildAndRegister(); + + BLAST_RECIPES.recipeBuilder() + .duration(600).EUt(120) + .input(dust, FerriteMixture) + .fluidInputs(Oxygen.getFluid(2000)) + .outputs(OreDictUnifier.get(ingot, NickelZincFerrite)) + .blastFurnaceTemp(1500) + .buildAndRegister(); + + FERMENTING_RECIPES.recipeBuilder() + .duration(150).EUt(2) + .fluidInputs(Biomass.getFluid(100)) + .fluidOutputs(FermentedBiomass.getFluid(100)) + .buildAndRegister(); + + WIREMILL_RECIPES.recipeBuilder() + .duration(80).EUt(48) + .input(ingot, Polycaprolactam) + .outputs(new ItemStack(Items.STRING, 32)) + .buildAndRegister(); + + + + + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Isoprene.getFluid(144), Air.getFluid(2000)).outputs(OreDictUnifier.get(dust, RawRubber)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Isoprene.getFluid(144), Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dust, RawRubber, 3)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(240).fluidInputs(Butadiene.getFluid(108), Styrene.getFluid(36), Air.getFluid(2000)).outputs(OreDictUnifier.get(dust, RawStyreneButadieneRubber)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(240).fluidInputs(Butadiene.getFluid(108), Styrene.getFluid(36), Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dust, RawStyreneButadieneRubber, 3)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Propene.getFluid(2000)).fluidOutputs(Methane.getFluid(1000), Isoprene.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(3500).EUt(30).input(dust, Carbon).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Hydrogen.getFluid(4000)).fluidOutputs(Methane.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Ethylene.getFluid(1000), Propene.getFluid(1000)).fluidOutputs(Hydrogen.getFluid(2000), Isoprene.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(dust, RawStyreneButadieneRubber, 9).input(dust, Sulfur).fluidOutputs(StyreneButadieneRubber.getFluid(1296)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(360).input(dust, SodiumSulfide, 3).fluidInputs(Dichlorobenzene.getFluid(1000), Air.getFluid(16000)).outputs(OreDictUnifier.get(dust, Salt, 2)).fluidOutputs(PolyphenyleneSulfide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(360).input(dust, SodiumSulfide, 3).fluidInputs(Dichlorobenzene.getFluid(1000), Oxygen.getFluid(8000)).outputs(OreDictUnifier.get(dust, Salt, 2)).fluidOutputs(PolyphenyleneSulfide.getFluid(1500)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), Ethylene.getFluid(144)).fluidOutputs(Plastic.getFluid(144)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), Ethylene.getFluid(144)).fluidOutputs(Plastic.getFluid(216)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), Ethylene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Plastic.getFluid(3240)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), Ethylene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Plastic.getFluid(4320)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), VinylChloride.getFluid(144)).fluidOutputs(PolyvinylChloride.getFluid(144)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), VinylChloride.getFluid(144)).fluidOutputs(PolyvinylChloride.getFluid(216)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), VinylChloride.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(PolyvinylChloride.getFluid(3240)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), VinylChloride.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(PolyvinylChloride.getFluid(4320)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(dust, Polydimethylsiloxane, 9).input(dust, Sulfur).fluidOutputs(SiliconeRubber.getFluid(1296)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(HydrochloricAcid.getFluid(1000), Acetone.getFluid(1000), Phenol.getFluid(2000)).fluidOutputs(BisphenolA.getFluid(1000), DilutedHydrochloricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(8).fluidInputs(SulfurTrioxide.getFluid(1000), Water.getFluid(1000)).fluidOutputs(SulfuricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), Tetrafluoroethylene.getFluid(144)).fluidOutputs(Polytetrafluoroethylene.getFluid(144)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), Tetrafluoroethylene.getFluid(144)).fluidOutputs(Polytetrafluoroethylene.getFluid(216)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), Tetrafluoroethylene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Polytetrafluoroethylene.getFluid(3240)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), Tetrafluoroethylene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Polytetrafluoroethylene.getFluid(4320)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(30).input(dust, SodiumHydroxide, 3).fluidInputs(Epichlorhydrin.getFluid(1000), BisphenolA.getFluid(1000)).fluidOutputs(Epoxid.getFluid(1000), SaltWater.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(500).EUt(480).input(dust, Carbon, 2).input(dust, Rutile, 3).fluidInputs(Chlorine.getFluid(4000)).fluidOutputs(CarbonMonoxde.getFluid(2000), TitaniumTetrachloride.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(96).fluidInputs(Dimethyldichlorosilane.getFluid(1000), Water.getFluid(1000)).outputs(OreDictUnifier.get(dust, Polydimethylsiloxane, 3)).fluidOutputs(DilutedHydrochloricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(96).input(dust, Silicon).fluidInputs(HydrochloricAcid.getFluid(2000), Methanol.getFluid(2000)).outputs(OreDictUnifier.get(dust, Polydimethylsiloxane, 3)).fluidOutputs(DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(96).input(dust, Silicon).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Water.getFluid(1000), Chlorine.getFluid(4000), Methane.getFluid(2000)).outputs(OreDictUnifier.get(dust, Polydimethylsiloxane, 3)).fluidOutputs(HydrochloricAcid.getFluid(2000), DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).fluidInputs(Chlorine.getFluid(1000), Hydrogen.getFluid(1000)).fluidOutputs(HydrochloricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(30).input(dust, Salt, 2).fluidInputs(SulfuricAcid.getFluid(1000)).outputs(OreDictUnifier.get(dust, SodiumBisulfate, 7)).fluidOutputs(HydrochloricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Chlorine.getFluid(6000), Methane.getFluid(1000)).fluidOutputs(HydrochloricAcid.getFluid(3000), Chloroform.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Chlorine.getFluid(2000), Methane.getFluid(1000)).fluidOutputs(HydrochloricAcid.getFluid(1000), Chloromethane.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Chlorine.getFluid(3000), Benzene.getFluid(1000)).fluidOutputs(HydrochloricAcid.getFluid(2000), Dichlorobenzene.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Propene.getFluid(1000), Chlorine.getFluid(2000)).fluidOutputs(HydrochloricAcid.getFluid(1000), AllylChloride.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Chlorine.getFluid(2000), Ethylene.getFluid(1000)).fluidOutputs(VinylChloride.getFluid(1000), HydrochloricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).input(dust, Apatite, 9).fluidInputs(SulfuricAcid.getFluid(5000), Water.getFluid(10000)).outputs(OreDictUnifier.get(dust, Gypsum, 40)).fluidOutputs(HydrochloricAcid.getFluid(1000), PhosphoricAcid.getFluid(3000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(30).fluidInputs(SulfurDioxide.getFluid(1000), Oxygen.getFluid(1000)).fluidOutputs(SulfurTrioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(280).EUt(30).input(dust, Sulfur).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Oxygen.getFluid(3000)).fluidOutputs(SulfurTrioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(256).fluidInputs(Chloroform.getFluid(2000), HydrofluoricAcid.getFluid(4000)).fluidOutputs(HydrochloricAcid.getFluid(6000), Tetrafluoroethylene.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(dust, Sodium, 1).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Water.getFluid(1000)).outputs(OreDictUnifier.get(dust, SodiumHydroxide, 3)).fluidOutputs(Hydrogen.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), Styrene.getFluid(144)).fluidOutputs(Polystyrene.getFluid(144)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), Styrene.getFluid(144)).fluidOutputs(Polystyrene.getFluid(216)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), Styrene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Polystyrene.getFluid(3240)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), Styrene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Polystyrene.getFluid(4320)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Oxygen.getFluid(1000), HydrochloricAcid.getFluid(1000), Ethylene.getFluid(1000)).fluidOutputs(Water.getFluid(1000), VinylChloride.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Oxygen.getFluid(2000), Cumene.getFluid(1000)).fluidOutputs(Phenol.getFluid(1000), Acetone.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(180).EUt(30).fluidInputs(NitrationMixture.getFluid(3000), Glycerol.getFluid(1000)).fluidOutputs(Glyceryl.getFluid(1000), DilutedSulfuricAcid.getFluid(3000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(120).fluidInputs(SulfuricAcid.getFluid(1000), AceticAcid.getFluid(1000)).fluidOutputs(Ethenone.getFluid(1000), DilutedSulfuricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(120).input(dust, Calcite, 5).fluidInputs(AceticAcid.getFluid(2000)).fluidOutputs(CalciumAcetate.getFluid(1000), CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(400).EUt(380).input(dust, Quicklime, 2).fluidInputs(AceticAcid.getFluid(2000)).fluidOutputs(CalciumAcetate.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(400).EUt(380).input(dust, Calcium).fluidInputs(AceticAcid.getFluid(2000), Oxygen.getFluid(1000)).fluidOutputs(CalciumAcetate.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).fluidInputs(Methanol.getFluid(1000), AceticAcid.getFluid(1000)).fluidOutputs(MethylAcetate.getFluid(1000), Water.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).fluidInputs(Glycerol.getFluid(1000), HydrochloricAcid.getFluid(1000)).fluidOutputs(Water.getFluid(2000), Epichlorhydrin.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).input(dust, SodiumHydroxide, 3).fluidInputs(AllylChloride.getFluid(1000), HypochlorousAcid.getFluid(1000)).fluidOutputs(SaltWater.getFluid(1000), Epichlorhydrin.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).input(dust, Sulfur).fluidInputs(Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(SulfuricLightFuel.getFluid(12000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), LightFuel.getFluid(12000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(SulfuricHeavyFuel.getFluid(8000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), HeavyFuel.getFluid(8000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(SulfuricNaphtha.getFluid(12000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), Naphtha.getFluid(12000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(SulfuricGas.getFluid(16000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), Gas.getFluid(16000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(NaturalGas.getFluid(16000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), Gas.getFluid(16000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(1250).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Nitrogen.getFluid(1000), Oxygen.getFluid(2000)).fluidOutputs(NitrogenDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), VinylAcetate.getFluid(144)).fluidOutputs(PolyvinylAcetate.getFluid(144)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), VinylAcetate.getFluid(144)).fluidOutputs(PolyvinylAcetate.getFluid(216)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), VinylAcetate.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(PolyvinylAcetate.getFluid(3240)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), VinylAcetate.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(PolyvinylAcetate.getFluid(4320)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(96).fluidInputs(Hydrogen.getFluid(6000), CarbonDioxide.getFluid(1000)).fluidOutputs(Water.getFluid(1000), Methanol.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(96).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Hydrogen.getFluid(4000), CarbonMonoxde.getFluid(1000)).fluidOutputs(Methanol.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(96).input(dust, Carbon).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Hydrogen.getFluid(4000), Oxygen.getFluid(1000)).fluidOutputs(Methanol.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(8).fluidInputs(Mercury.getFluid(1000), Water.getFluid(10000), Chlorine.getFluid(10000)).fluidOutputs(HypochlorousAcid.getFluid(10000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Water.getFluid(1000), Chlorine.getFluid(2000)).fluidOutputs(HydrochloricAcid.getFluid(1000), HypochlorousAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(960).EUt(480).fluidInputs(Dimethylamine.getFluid(1000), Chloramine.getFluid(1000)).fluidOutputs(Dimethylhydrazine.getFluid(1000), HydrochloricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(1040).EUt(480).fluidInputs(Methanol.getFluid(2000), Ammonia.getFluid(2000), HypochlorousAcid.getFluid(1000)).fluidOutputs(Dimethylhydrazine.getFluid(1000), DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).input(dust, Sulfur).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).fluidOutputs(SulfurDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Oxygen.getFluid(3000), HydrogenSulfide.getFluid(1000)).fluidOutputs(Water.getFluid(1000), SulfurDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).fluidInputs(Hydrogen.getFluid(1000), Fluorine.getFluid(1000)).fluidOutputs(HydrofluoricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Ethylene.getFluid(1000), Benzene.getFluid(1000)).fluidOutputs(Hydrogen.getFluid(2000), Styrene.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(1920).EUt(30).fluidInputs(PhosphoricAcid.getFluid(1000), Benzene.getFluid(8000), Propene.getFluid(8000)).fluidOutputs(Cumene.getFluid(8000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(96).input(dust, Silicon).fluidInputs(Chloromethane.getFluid(2000)).fluidOutputs(Dimethyldichlorosilane.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(100).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000), Ethylene.getFluid(1000)).fluidOutputs(AceticAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(300).EUt(30).fluidInputs(CarbonMonoxde.getFluid(1000), Methanol.getFluid(1000)).fluidOutputs(AceticAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Hydrogen.getFluid(4000), CarbonMonoxde.getFluid(2000)).fluidOutputs(AceticAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).input(dust, Carbon, 2).notConsumable(new IntCircuitIngredient(4)).fluidInputs(Oxygen.getFluid(2000), Hydrogen.getFluid(4000)).fluidOutputs(AceticAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(600).input(dust, Aluminium, 4).fluidInputs(IndiumConcentrate.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Indium)).fluidOutputs(LeadZincSolution.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(30).EUt(240).notConsumable(new IntCircuitIngredient(3)).fluidInputs(NitrogenDioxide.getFluid(3000), Water.getFluid(1000)).fluidOutputs(NitricOxide.getFluid(1000), NitricAcid.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(10000), Ammonia.getFluid(4000)).fluidOutputs(NitricOxide.getFluid(4000), Water.getFluid(6000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(180).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Oxygen.getFluid(1000), AceticAcid.getFluid(1000), Ethylene.getFluid(1000)).fluidOutputs(Water.getFluid(1000), VinylAcetate.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(dust, Carbon).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(gem, Charcoal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(gem, Coal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(dust, Charcoal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(dust, Coal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(8).input(dust, Carbon).fluidInputs(CarbonDioxide.getFluid(1000)).fluidOutputs(CarbonMonoxde.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(384).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Hydrogen.getFluid(3000), Nitrogen.getFluid(1000)).fluidOutputs(Ammonia.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(HypochlorousAcid.getFluid(1000), Ammonia.getFluid(1000)).fluidOutputs(Water.getFluid(1000), Chloramine.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(120).fluidInputs(Ammonia.getFluid(1000), Methanol.getFluid(2000)).fluidOutputs(Water.getFluid(2000), Dimethylamine.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(30).input(dust, PhosphorousPentoxide, 14).fluidInputs(Water.getFluid(6000)).fluidOutputs(PhosphoricAcid.getFluid(4000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).input(dust, Phosphorus, 2).fluidInputs(Water.getFluid(3000), Oxygen.getFluid(5000)).fluidOutputs(PhosphoricAcid.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(HydrochloricAcid.getFluid(1000), Methanol.getFluid(1000)).fluidOutputs(Water.getFluid(1000), Chloromethane.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(150).input(crushedPurified, Sphalerite).input(crushedPurified, Galena).fluidInputs(SulfuricAcid.getFluid(4000)).fluidOutputs(IndiumConcentrate.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(30).input(dust, Phosphorus, 4).fluidInputs(Oxygen.getFluid(10000)).outputs(OreDictUnifier.get(dust, PhosphorousPentoxide, 14)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(dust, Carbon).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(gem, Charcoal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(gem, Coal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(dust, Charcoal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(dust, Coal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(150).EUt(480).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Water.getFluid(2000), Methane.getFluid(1000)).fluidOutputs(Hydrogen.getFluid(8000), CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(120).fluidInputs(AceticAcid.getFluid(4000), Ethenone.getFluid(4000), NitricAcid.getFluid(4000)).fluidOutputs(Tetranitromethane.getFluid(1000), AceticAcid.getFluid(7000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Oxygen.getFluid(7000), Ammonia.getFluid(2000)).fluidOutputs(DinitrogenTetroxide.getFluid(1000), Water.getFluid(3000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(640).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(NitrogenDioxide.getFluid(2000)).fluidOutputs(DinitrogenTetroxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(1100).EUt(480).notConsumable(new IntCircuitIngredient(23)).fluidInputs(Oxygen.getFluid(7000), Nitrogen.getFluid(2000), Hydrogen.getFluid(6000)).fluidOutputs(DinitrogenTetroxide.getFluid(1000), Water.getFluid(3000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(4000), Ammonia.getFluid(1000)).fluidOutputs(NitricAcid.getFluid(1000), Water.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).notConsumable(new IntCircuitIngredient(4)).fluidInputs(Water.getFluid(1000), Oxygen.getFluid(1000), NitrogenDioxide.getFluid(2000)).fluidOutputs(NitricAcid.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(480).notConsumable(new IntCircuitIngredient(24)).fluidInputs(Oxygen.getFluid(4000), Nitrogen.getFluid(1000), Hydrogen.getFluid(3000)).fluidOutputs(NitricAcid.getFluid(1000), Water.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(dustTiny, SodiumHydroxide).fluidInputs(SeedOil.getFluid(6000), Methanol.getFluid(1000)).fluidOutputs(Glycerol.getFluid(1000), BioDiesel.getFluid(6000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(dustTiny, SodiumHydroxide).fluidInputs(SeedOil.getFluid(6000), Ethanol.getFluid(1000)).fluidOutputs(Glycerol.getFluid(1000), BioDiesel.getFluid(6000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(1200).EUt(120).fluidInputs(SulfuricAcid.getFluid(1000), Ethanol.getFluid(1000)).fluidOutputs(Ethylene.getFluid(1000), DilutedSulfuricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(30).fluidInputs(Water.getFluid(1000)).input(dust, SodiumBisulfate, 7).outputs(OreDictUnifier.get(dust, SodiumHydroxide, 3)).fluidOutputs(SulfuricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(140).EUt(192).inputs(new ItemStack(Items.SUGAR)).input(dustTiny, Plastic, 1).fluidInputs(Toluene.getFluid(133)).outputs(MetaItems.GELLED_TOLUENE.getStackForm(2)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(320).fluidInputs(HydrogenSulfide.getFluid(1000), Oxygen.getFluid(4000)).fluidOutputs(SulfuricAcid.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(640).input(dust, Saltpeter, 1).fluidInputs(Naphtha.getFluid(576)).outputs(OreDictUnifier.get(dustTiny, Potassium, 1)).fluidOutputs(Polycaprolactam.getFluid(1296)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).fluidInputs(Epichlorhydrin.getFluid(144), Naphtha.getFluid(3000), NitrogenDioxide.getFluid(1000)).fluidOutputs(Epoxid.getFluid(L * 2)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(1000).input(dust, Uraninite, 1).input(dust, Aluminium, 1).outputs(OreDictUnifier.get(dust, Uranium, 1)).fluidOutputs(Aluminium.getFluid(144), Oxygen.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(1000).input(dust, Uraninite, 1).input(dust, Magnesium, 1).outputs(OreDictUnifier.get(dust, Uranium, 1)).fluidOutputs(Magnesium.getFluid(144), Oxygen.getFluid(2000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(500).input(dust, Calcium, 1).input(dust, Carbon, 1).fluidInputs(Oxygen.getFluid(3000)).outputs(OreDictUnifier.get(dust, Calcite, 5)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(1150).input(dust, Sulfur, 1).fluidInputs(Water.getFluid(4000)).fluidOutputs(SulfuricAcid.getFluid(1000), Hydrogen.getFluid(6000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(30).input(crushedPurified, Chalcopyrite).fluidInputs(NitricAcid.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, PlatinumGroupSludge)).fluidOutputs(CopperSulfateSolution.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(30).input(crushedPurified, Pentlandite).fluidInputs(NitricAcid.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, PlatinumGroupSludge)).fluidOutputs(NickelSulfateSolution.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).input(dust, Quicklime, 2).fluidInputs(CarbonDioxide.getFluid(1000)).outputs(OreDictUnifier.get(dust, Calcite, 5)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).input(dust, Magnesia, 2).fluidInputs(CarbonDioxide.getFluid(1000)).outputs(OreDictUnifier.get(dust, Magnesite, 5)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).input(dust, Calcite, 5).notConsumable(new IntCircuitIngredient(1)).outputs(OreDictUnifier.get(dust, Quicklime, 2)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).input(dust, Magnesite, 5).outputs(OreDictUnifier.get(dust, Magnesia, 2)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(16).input(dust, RawRubber, 9).input(dust, Sulfur, 1).fluidOutputs(Rubber.getFluid(1296)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.MELON, 1, OreDictionary.WILDCARD_VALUE)).input(nugget, Gold, 8).outputs(new ItemStack(Items.SPECKLED_MELON)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.CARROT, 1, OreDictionary.WILDCARD_VALUE)).input(nugget, Gold, 8).outputs(new ItemStack(Items.GOLDEN_CARROT)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.APPLE, 1, OreDictionary.WILDCARD_VALUE)).input(ingot, Gold, 8).outputs(new ItemStack(Items.GOLDEN_APPLE)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.APPLE, 1, OreDictionary.WILDCARD_VALUE)).input(block, Gold, 8).outputs(new ItemStack(Items.GOLDEN_APPLE, 1, 1)).buildAndRegister(); + CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(24).inputs(MetaItems.GELLED_TOLUENE.getStackForm(4)).fluidInputs(SulfuricAcid.getFluid(250)).outputs(new ItemStack(Blocks.TNT)).buildAndRegister(); + } } diff --git a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java index cf639f939b..0cd837a76d 100644 --- a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java @@ -13,11 +13,11 @@ import gregtech.api.unification.material.MarkerMaterials.Color; import gregtech.api.unification.material.MarkerMaterials.Tier; import gregtech.api.unification.material.Materials; -import gregtech.api.unification.material.type.FluidMaterial; import gregtech.api.unification.material.type.IngotMaterial; import gregtech.api.unification.ore.OrePrefix; import gregtech.api.unification.stack.MaterialStack; import gregtech.api.unification.stack.UnificationEntry; +import gregtech.api.util.GTUtility; import gregtech.common.ConfigHolder; import gregtech.common.blocks.BlockConcrete.ConcreteVariant; import gregtech.common.blocks.BlockGranite.GraniteVariant; @@ -40,12 +40,14 @@ import net.minecraft.item.ItemFood; import net.minecraft.item.ItemStack; import net.minecraft.util.IStringSerializable; +import net.minecraft.util.Tuple; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fml.common.registry.ForgeRegistries; import net.minecraftforge.oredict.OreDictionary; import java.util.Arrays; import java.util.Collection; +import java.util.List; import static gregtech.api.GTValues.L; import static gregtech.api.GTValues.M; @@ -61,7 +63,6 @@ public static void init() { registerCircuitRecipes(); registerCutterRecipes(); - registerChemicalRecipes(); registerChemicalBathRecipes(); registerDecompositionRecipes(); registerBlastFurnaceRecipes(); @@ -443,47 +444,6 @@ private static void registerOrganicRecyclingRecipes() { } } - private static void registerChemicalRecipes() { - RecipeMaps.VACUUM_RECIPES.recipeBuilder().duration(50).fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(Materials.Ice.getFluid(1000)).buildAndRegister(); - RecipeMaps.VACUUM_RECIPES.recipeBuilder().duration(400).fluidInputs(Materials.Air.getFluid(4000)).fluidOutputs(Materials.LiquidAir.getFluid(4000)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration(500).EUt(2).fluidInputs(Materials.NitricAcid.getFluid(1000), Materials.SulfuricAcid.getFluid(1000)).fluidOutputs(Materials.NitrationMixture.getFluid(1000)).buildAndRegister(); - - RecipeMaps.BREWING_RECIPES.recipeBuilder().duration(1440).EUt(3).inputs(MetaItems.PLANT_BALL.getStackForm()).fluidInputs(Materials.Water.getFluid(180)).fluidOutputs(Materials.Biomass.getFluid(180)).buildAndRegister(); - RecipeMaps.FERMENTING_RECIPES.recipeBuilder().duration(150).EUt(2).fluidInputs(Materials.Biomass.getFluid(100)).fluidOutputs(Materials.FermentedBiomass.getFluid(100)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(140).EUt(192).inputs(new ItemStack(Items.SUGAR)).input(OrePrefix.dustTiny, Materials.Plastic, 1).fluidInputs(Materials.Toluene.getFluid(133)).outputs(MetaItems.GELLED_TOLUENE.getStackForm(2)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(320).fluidInputs(Materials.HydrogenSulfide.getFluid(1000), Materials.Oxygen.getFluid(4000)).fluidOutputs(Materials.SulfuricAcid.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(640).input(OrePrefix.dust, Materials.Saltpeter, 1).fluidInputs(Materials.Naphtha.getFluid(576)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Potassium, 1)).fluidOutputs(Materials.Polycaprolactam.getFluid(1296)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).fluidInputs(Materials.Epichlorhydrin.getFluid(144), Materials.Naphtha.getFluid(3000), Materials.NitrogenDioxide.getFluid(1000)).fluidOutputs(Materials.Epoxid.getFluid(L * 2)).buildAndRegister(); - - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().duration(1500).EUt(30).fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(Materials.Hydrogen.getFluid(2000), Materials.Oxygen.getFluid(1000)).buildAndRegister(); - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().duration(1500).EUt(30).fluidInputs(ModHandler.getDistilledWater(1000)).fluidOutputs(Materials.Hydrogen.getFluid(2000), Materials.Oxygen.getFluid(1000)).buildAndRegister(); - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().inputs(new ItemStack(Items.DYE, 3)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Calcium, 1)).duration(96).EUt(26).buildAndRegister(); - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().inputs(new ItemStack(Blocks.SAND, 8)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.SiliconDioxide, 1)).duration(500).EUt(25).buildAndRegister(); - RecipeMaps.ELECTROLYZER_RECIPES.recipeBuilder().input(OrePrefix.dust, Materials.Graphite, 1).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Carbon, 4)).duration(100).EUt(26).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(1000).input(OrePrefix.dust, Materials.Uraninite, 1).input(OrePrefix.dust, Materials.Aluminium, 1).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Uranium, 1)).fluidOutputs(Materials.Aluminium.getFluid(144), Materials.Oxygen.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(1000).input(OrePrefix.dust, Materials.Uraninite, 1).input(OrePrefix.dust, Materials.Magnesium, 1).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Uranium, 1)).fluidOutputs(Materials.Magnesium.getFluid(144), Materials.Oxygen.getFluid(2000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(500).input(OrePrefix.dust, Materials.Calcium, 1).input(OrePrefix.dust, Materials.Carbon, 1).fluidInputs(Materials.Oxygen.getFluid(3000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Calcite, 5)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(1150).input(OrePrefix.dust, Materials.Sulfur, 1).fluidInputs(Materials.Water.getFluid(4000)).fluidOutputs(Materials.SulfuricAcid.getFluid(1000), Materials.Hydrogen.getFluid(6000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(30).input(OrePrefix.crushedPurified, Materials.Chalcopyrite).fluidInputs(Materials.NitricAcid.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.PlatinumGroupSludge)).fluidOutputs(Materials.CopperSulfateSolution.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(30).input(OrePrefix.crushedPurified, Materials.Pentlandite).fluidInputs(Materials.NitricAcid.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dustTiny, Materials.PlatinumGroupSludge)).fluidOutputs(Materials.NickelSulfateSolution.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).input(OrePrefix.dust, Materials.Quicklime, 2).fluidInputs(Materials.CarbonDioxide.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Calcite, 5)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).input(OrePrefix.dust, Materials.Magnesia, 2).fluidInputs(Materials.CarbonDioxide.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Magnesite, 5)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).input(OrePrefix.dust, Materials.Calcite, 5).notConsumable(new IntCircuitIngredient(1)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Quicklime, 2)).fluidOutputs(Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).input(OrePrefix.dust, Materials.Magnesite, 5).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.Magnesia, 2)).fluidOutputs(Materials.CarbonDioxide.getFluid(1000)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(16).input(OrePrefix.dust, Materials.RawRubber, 9).input(OrePrefix.dust, Materials.Sulfur, 1).fluidOutputs(Materials.Rubber.getFluid(1296)).buildAndRegister(); - - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.MELON, 1, OreDictionary.WILDCARD_VALUE)).input(OrePrefix.nugget, Materials.Gold, 8).outputs(new ItemStack(Items.SPECKLED_MELON)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.CARROT, 1, OreDictionary.WILDCARD_VALUE)).input(OrePrefix.nugget, Materials.Gold, 8).outputs(new ItemStack(Items.GOLDEN_CARROT)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.APPLE, 1, OreDictionary.WILDCARD_VALUE)).input(OrePrefix.ingot, Materials.Gold, 8).outputs(new ItemStack(Items.GOLDEN_APPLE)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.APPLE, 1, OreDictionary.WILDCARD_VALUE)).input(OrePrefix.block, Materials.Gold, 8).outputs(new ItemStack(Items.GOLDEN_APPLE, 1, 1)).buildAndRegister(); - RecipeMaps.CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(24).inputs(MetaItems.GELLED_TOLUENE.getStackForm(4)).fluidInputs(Materials.SulfuricAcid.getFluid(250)).outputs(new ItemStack(Blocks.TNT)).buildAndRegister(); - RecipeMaps.WIREMILL_RECIPES.recipeBuilder().duration(80).EUt(48).input(OrePrefix.ingot, Materials.Polycaprolactam, 1).outputs(new ItemStack(Items.STRING, 32)).buildAndRegister(); - } - private static final MaterialStack[][] alloySmelterList = { {new MaterialStack(Materials.Copper, 3L), new MaterialStack(Materials.Tin, 1), new MaterialStack(Materials.Bronze, 4L)}, {new MaterialStack(Materials.Copper, 3L), new MaterialStack(Materials.Zinc, 1), new MaterialStack(Materials.Brass, 4L)}, @@ -1023,6 +983,16 @@ private static void registerFluidRecipes() { .inputs(new ItemStack(Items.PUMPKIN_SEEDS, 1, OreDictionary.WILDCARD_VALUE)) .fluidOutputs(Materials.SeedOil.getFluid(6)).buildAndRegister(); + List> seedEntries = GTUtility.getGrassSeedEntries(); + for (Tuple seedEntry : seedEntries) { + RecipeMaps.FLUID_EXTRACTION_RECIPES.recipeBuilder() + .duration(32).EUt(2) + .inputs(seedEntry.getFirst()) + .fluidOutputs(Materials.SeedOil.getFluid(10)) + .buildAndRegister(); + } + RecipeMaps.FLUID_EXTRACTION_RECIPES.recipeBuilder().duration(32).EUt(2).inputs(new ItemStack(Items.BEETROOT_SEEDS)).fluidOutputs(Materials.SeedOil.getFluid(10)).buildAndRegister(); + RecipeMaps.FLUID_CANNER_RECIPES.recipeBuilder().duration(100).EUt(30).inputs(MetaItems.BATTERY_HULL_LV.getStackForm()).fluidInputs(Materials.Mercury.getFluid(1000)).outputs(MetaItems.BATTERY_SU_LV_MERCURY.getChargedStack(Long.MAX_VALUE)).buildAndRegister(); RecipeMaps.FLUID_CANNER_RECIPES.recipeBuilder().duration(200).EUt(30).inputs(MetaItems.BATTERY_HULL_MV.getStackForm()).fluidInputs(Materials.Mercury.getFluid(4000)).outputs(MetaItems.BATTERY_SU_MV_MERCURY.getChargedStack(Long.MAX_VALUE)).buildAndRegister(); RecipeMaps.FLUID_CANNER_RECIPES.recipeBuilder().duration(400).EUt(30).inputs(MetaItems.BATTERY_HULL_HV.getStackForm()).fluidInputs(Materials.Mercury.getFluid(16000)).outputs(MetaItems.BATTERY_SU_HV_MERCURY.getChargedStack(Long.MAX_VALUE)).buildAndRegister(); From 76a15acd8743a2db320e252569758dee3dd9d246 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Sun, 21 Feb 2021 00:39:56 -0600 Subject: [PATCH 02/17] Finish Primary Refactor --- .../gregtech/api/recipes/RecipeBuilder.java | 9 + .../loaders/recipe/ChemistryRecipes.java | 865 ++++++-------- .../loaders/recipe/MachineRecipeLoader.java | 1 + .../loaders/recipe/ReactorRecipes.java | 1034 +++++++++++++++++ 4 files changed, 1417 insertions(+), 492 deletions(-) create mode 100644 src/main/java/gregtech/loaders/recipe/ReactorRecipes.java diff --git a/src/main/java/gregtech/api/recipes/RecipeBuilder.java b/src/main/java/gregtech/api/recipes/RecipeBuilder.java index ab462365f3..a789de6e2c 100644 --- a/src/main/java/gregtech/api/recipes/RecipeBuilder.java +++ b/src/main/java/gregtech/api/recipes/RecipeBuilder.java @@ -2,6 +2,7 @@ import gregtech.api.items.metaitem.MetaItem; import gregtech.api.recipes.Recipe.ChanceEntry; +import gregtech.api.unification.OreDictUnifier; import gregtech.api.unification.material.type.Material; import gregtech.api.unification.ore.OrePrefix; import gregtech.api.util.EnumValidationResult; @@ -150,6 +151,14 @@ public R notConsumable(MetaItem.MetaValueItem item) { return inputs(CountableIngredient.from(item.getStackForm(), 0)); } + public R output(OrePrefix orePrefix, Material material) { + return outputs(OreDictUnifier.get(orePrefix, material, 1)); + } + + public R output(OrePrefix orePrefix, Material material, int count) { + return outputs(OreDictUnifier.get(orePrefix, material, count)); + } + public R outputs(ItemStack... outputs) { return outputs(Arrays.asList(outputs)); } diff --git a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java b/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java index a29c8a51c2..4747edbdb6 100644 --- a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java @@ -1,976 +1,857 @@ package gregtech.loaders.recipe; -import gregtech.api.recipes.ingredients.IntCircuitIngredient; import gregtech.api.unification.OreDictUnifier; import gregtech.api.unification.material.type.DustMaterial; +import gregtech.api.unification.material.type.FluidMaterial; import gregtech.common.items.MetaItems; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import net.minecraftforge.oredict.OreDictionary; -import static gregtech.api.GTValues.L; +import java.util.HashMap; +import java.util.Map; + import static gregtech.api.unification.ore.OrePrefix.*; import static gregtech.api.unification.material.Materials.*; import static gregtech.api.recipes.RecipeMaps.*; -// TODO Fit in Ruler public class ChemistryRecipes { public static void init() { //Cracking Unit CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Ethane.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Ethane.getFluid(1000)) .fluidOutputs(HydroCrackedEthane.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Ethylene.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Ethylene.getFluid(1000)) .fluidOutputs(HydroCrackedEthylene.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Propene.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Propene.getFluid(1000)) .fluidOutputs(HydroCrackedPropene.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Propane.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Propane.getFluid(1000)) .fluidOutputs(HydroCrackedPropane.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), LightFuel.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(LightFuel.getFluid(1000)) .fluidOutputs(HydroCrackedLightFuel.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Butane.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Butane.getFluid(1000)) .fluidOutputs(HydroCrackedButane.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Naphtha.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Naphtha.getFluid(1000)) .fluidOutputs(HydroCrackedNaphtha.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), HeavyFuel.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(HeavyFuel.getFluid(1000)) .fluidOutputs(HydroCrackedHeavyFuel.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Gas.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Gas.getFluid(1000)) .fluidOutputs(HydroCrackedGas.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Butene.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Butene.getFluid(1000)) .fluidOutputs(HydroCrackedButene.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Hydrogen.getFluid(2000), Butadiene.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Butadiene.getFluid(1000)) .fluidOutputs(HydroCrackedButadiene.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Ethane.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Ethane.getFluid(1000)) .fluidOutputs(SteamCrackedEthane.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Ethylene.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Ethylene.getFluid(1000)) .fluidOutputs(SteamCrackedEthylene.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Propene.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Propene.getFluid(1000)) .fluidOutputs(SteamCrackedPropene.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Propane.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Propane.getFluid(1000)) .fluidOutputs(SteamCrackedPropane.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), LightFuel.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(LightFuel.getFluid(1000)) .fluidOutputs(CrackedLightFuel.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Butane.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Butane.getFluid(1000)) .fluidOutputs(SteamCrackedButane.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Naphtha.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Naphtha.getFluid(1000)) .fluidOutputs(SteamCrackedNaphtha.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), HeavyFuel.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(HeavyFuel.getFluid(1000)) .fluidOutputs(CrackedHeavyFuel.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Gas.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Gas.getFluid(1000)) .fluidOutputs(SteamCrackedGas.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Butene.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Butene.getFluid(1000)) .fluidOutputs(SteamCrackedButene.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); CRACKING_RECIPES.recipeBuilder() - .duration(40).EUt(120) - .fluidInputs(Steam.getFluid(2000), Butadiene.getFluid(1000)) + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Butadiene.getFluid(1000)) .fluidOutputs(SteamCrackedButadiene.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(120).buildAndRegister(); //Distillation Tower / Distillery DISTILLATION_RECIPES.recipeBuilder() - .duration(16).EUt(96) .fluidInputs(Creosote.getFluid(24)) .fluidOutputs(Lubricant.getFluid(12)) - .buildAndRegister(); + .duration(16).EUt(96).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(HydroCrackedEthane.getFluid(1000)) .fluidOutputs(Methane.getFluid(2000)) - .buildAndRegister(); + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(SteamCrackedEthane.getFluid(1000)) - .outputs(OreDictUnifier.get(dustSmall, Carbon, 2)) + .output(dustSmall, Carbon, 2) .fluidOutputs(Methane.getFluid(1500)) - .buildAndRegister(); + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(HydroCrackedEthylene.getFluid(1000)) .fluidOutputs(Ethane.getFluid(1000)) - .buildAndRegister(); + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(SteamCrackedEthylene.getFluid(1000)) - .outputs(OreDictUnifier.get(dust, Carbon)) + .output(dust, Carbon) .fluidOutputs(Methane.getFluid(1000)) - .buildAndRegister(); + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(HydroCrackedPropene.getFluid(1000)) - .fluidOutputs(Propane.getFluid(500), Ethylene.getFluid(500), Methane.getFluid(500)) - .buildAndRegister(); + .fluidOutputs(Propane.getFluid(500)) + .fluidOutputs(Ethylene.getFluid(500)) + .fluidOutputs(Methane.getFluid(500)) + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(180).EUt(120) .fluidInputs(SteamCrackedPropene.getFluid(1000)) - .outputs(OreDictUnifier.get(dustSmall, Carbon, 6)) + .output(dustSmall, Carbon, 6) .fluidOutputs(Methane.getFluid(1500)) - .buildAndRegister(); + .duration(180).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(HydroCrackedPropane.getFluid(1000)) - .fluidOutputs(Ethane.getFluid(1000), Methane.getFluid(1000)) - .buildAndRegister(); + .fluidOutputs(Ethane.getFluid(1000)) + .fluidOutputs(Methane.getFluid(1000)) + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(240).EUt(120) .fluidInputs(SteamCrackedPropane.getFluid(2000)) - .outputs(OreDictUnifier.get(dustSmall, Carbon, 3)) - .fluidOutputs(Ethylene.getFluid(500), Methane.getFluid(3500)) - .buildAndRegister(); + .output(dustSmall, Carbon, 3) + .fluidOutputs(Ethylene.getFluid(500)) + .fluidOutputs(Methane.getFluid(3500)) + .duration(240).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(HydroCrackedLightFuel.getFluid(1000)) - .fluidOutputs(Naphtha.getFluid(800), Butane.getFluid(150), Propane.getFluid(200), Ethane.getFluid(125), Methane.getFluid(125)) - .buildAndRegister(); + .fluidOutputs(Naphtha.getFluid(800)) + .fluidOutputs(Butane.getFluid(150)) + .fluidOutputs(Propane.getFluid(200)) + .fluidOutputs(Ethane.getFluid(125)) + .fluidOutputs(Methane.getFluid(125)) + .duration(120).EUt(120).buildAndRegister(); - // TODO Make cleaner DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(CrackedLightFuel.getFluid(1000)) - .outputs(OreDictUnifier.get(dustTiny, Carbon)) - .fluidOutputs(HeavyFuel.getFluid(50), Naphtha.getFluid(100), Toluene.getFluid(30), Benzene.getFluid(150), Butene.getFluid(65), Butadiene.getFluid(50), Propane.getFluid(50), Propene.getFluid(250), Ethane.getFluid(50), Ethylene.getFluid(250), Methane.getFluid(250)) - .buildAndRegister(); + .output(dustTiny, Carbon) + .fluidOutputs(HeavyFuel.getFluid(50)) + .fluidOutputs(Naphtha.getFluid(100)) + .fluidOutputs(Toluene.getFluid(30)) + .fluidOutputs(Benzene.getFluid(150)) + .fluidOutputs(Butene.getFluid(65)) + .fluidOutputs(Butadiene.getFluid(50)) + .fluidOutputs(Propane.getFluid(50)) + .fluidOutputs(Propene.getFluid(250)) + .fluidOutputs(Ethane.getFluid(50)) + .fluidOutputs(Ethylene.getFluid(250)) + .fluidOutputs(Methane.getFluid(250)) + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(90).EUt(120) .fluidInputs(HydroCrackedButane.getFluid(750)) - .fluidOutputs(Propane.getFluid(500), Ethane.getFluid(500), Methane.getFluid(500)) - .buildAndRegister(); + .fluidOutputs(Propane.getFluid(500)) + .fluidOutputs(Ethane.getFluid(500)) + .fluidOutputs(Methane.getFluid(500)) + .duration(90).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(240).EUt(120) .fluidInputs(SteamCrackedButane.getFluid(2000)) - .outputs(OreDictUnifier.get(dustSmall, Carbon, 9)) - .fluidOutputs(Propane.getFluid(250), Ethane.getFluid(250), Ethylene.getFluid(250), Methane.getFluid(4000)) - .buildAndRegister(); + .output(dustSmall, Carbon, 9) + .fluidOutputs(Propane.getFluid(250)) + .fluidOutputs(Ethane.getFluid(250)) + .fluidOutputs(Ethylene.getFluid(250)) + .fluidOutputs(Methane.getFluid(4000)) + .duration(240).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(HydroCrackedNaphtha.getFluid(1000)) - .fluidOutputs(Butane.getFluid(800), Propane.getFluid(300), Ethane.getFluid(250), Methane.getFluid(250)) - .buildAndRegister(); + .fluidOutputs(Butane.getFluid(800)) + .fluidOutputs(Propane.getFluid(300)) + .fluidOutputs(Ethane.getFluid(250)) + .fluidOutputs(Methane.getFluid(250)) + .duration(120).EUt(120).buildAndRegister(); - // TODO Make cleaner DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(SteamCrackedNaphtha.getFluid(1000)) - .outputs(OreDictUnifier.get(dustTiny, Carbon, 3)) - .fluidOutputs(HeavyFuel.getFluid(25), LightFuel.getFluid(50), Toluene.getFluid(20), Benzene.getFluid(100), Butene.getFluid(50), Butadiene.getFluid(50), Propane.getFluid(15), Propene.getFluid(300), Ethane.getFluid(65), Ethylene.getFluid(500), Methane.getFluid(500)) - .buildAndRegister(); + .output(dustTiny, Carbon, 3) + .fluidOutputs(HeavyFuel.getFluid(25)) + .fluidOutputs(LightFuel.getFluid(50)) + .fluidOutputs(Toluene.getFluid(20)) + .fluidOutputs(Benzene.getFluid(100)) + .fluidOutputs(Butene.getFluid(50)) + .fluidOutputs(Butadiene.getFluid(50)) + .fluidOutputs(Propane.getFluid(15)) + .fluidOutputs(Propene.getFluid(300)) + .fluidOutputs(Ethane.getFluid(65)) + .fluidOutputs(Ethylene.getFluid(500)) + .fluidOutputs(Methane.getFluid(500)) + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(HydroCrackedHeavyFuel.getFluid(1000)) - .fluidOutputs(LightFuel.getFluid(600), Naphtha.getFluid(100), Butane.getFluid(100), Propane.getFluid(100), Ethane.getFluid(75), Methane.getFluid(75)) - .buildAndRegister(); + .fluidOutputs(LightFuel.getFluid(600)) + .fluidOutputs(Naphtha.getFluid(100)) + .fluidOutputs(Butane.getFluid(100)) + .fluidOutputs(Propane.getFluid(100)) + .fluidOutputs(Ethane.getFluid(75)) + .fluidOutputs(Methane.getFluid(75)) + .duration(120).EUt(120).buildAndRegister(); - // TODO make cleaner DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(CrackedHeavyFuel.getFluid(1000)) - .outputs(OreDictUnifier.get(dustTiny, Carbon, 3)) - .fluidOutputs(LightFuel.getFluid(100), Naphtha.getFluid(125), Toluene.getFluid(80), Benzene.getFluid(400), Butene.getFluid(80), Butadiene.getFluid(50), Propane.getFluid(10), Propene.getFluid(100), Ethane.getFluid(15), Ethylene.getFluid(150), Methane.getFluid(150)) - .buildAndRegister(); + .output(dustTiny, Carbon, 3) + .fluidOutputs(LightFuel.getFluid(100)) + .fluidOutputs(Naphtha.getFluid(125)) + .fluidOutputs(Toluene.getFluid(80)) + .fluidOutputs(Benzene.getFluid(400)) + .fluidOutputs(Butene.getFluid(80)) + .fluidOutputs(Butadiene.getFluid(50)) + .fluidOutputs(Propane.getFluid(10)) + .fluidOutputs(Propene.getFluid(100)) + .fluidOutputs(Ethane.getFluid(15)) + .fluidOutputs(Ethylene.getFluid(150)) + .fluidOutputs(Methane.getFluid(150)) + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(120).EUt(120) .fluidInputs(HydroCrackedGas.getFluid(1000)) - .fluidOutputs(Methane.getFluid(1400), Hydrogen.getFluid(1340), Helium.getFluid(20)) - .buildAndRegister(); + .fluidOutputs(Methane.getFluid(1400)) + .fluidOutputs(Hydrogen.getFluid(1340)) + .fluidOutputs(Helium.getFluid(20)) + .duration(120).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(96).EUt(120) .fluidInputs(SteamCrackedGas.getFluid(800)) - .outputs(OreDictUnifier.get(dustTiny, Carbon)) - .fluidOutputs(Propene.getFluid(6), Ethane.getFluid(6), Ethylene.getFluid(20), Methane.getFluid(914), Helium.getFluid(16)) - .buildAndRegister(); + .output(dustTiny, Carbon) + .fluidOutputs(Propene.getFluid(6)) + .fluidOutputs(Ethane.getFluid(6)) + .fluidOutputs(Ethylene.getFluid(20)) + .fluidOutputs(Methane.getFluid(914)) + .fluidOutputs(Helium.getFluid(16)) + .duration(96).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(90).EUt(120) .fluidInputs(HydroCrackedButene.getFluid(750)) - .fluidOutputs(Butane.getFluid(250), Propene.getFluid(250), Ethane.getFluid(250), Methane.getFluid(250)) - .buildAndRegister(); + .fluidOutputs(Butane.getFluid(250)) + .fluidOutputs(Propene.getFluid(250)) + .fluidOutputs(Ethane.getFluid(250)) + .fluidOutputs(Methane.getFluid(250)) + .duration(90).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(240).EUt(120) .fluidInputs(SteamCrackedButene.getFluid(2000)) - .outputs(OreDictUnifier.get(dust, Carbon, 3)) - .fluidOutputs(Propene.getFluid(250), Ethylene.getFluid(625), Methane.getFluid(3000)) - .buildAndRegister(); + .output(dust, Carbon, 3) + .fluidOutputs(Propene.getFluid(250)) + .fluidOutputs(Ethylene.getFluid(625)) + .fluidOutputs(Methane.getFluid(3000)) + .duration(240).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(90).EUt(120) .fluidInputs(HydroCrackedButadiene.getFluid(750)) - .fluidOutputs(Butene.getFluid(500), Ethylene.getFluid(500)) - .buildAndRegister(); + .fluidOutputs(Butene.getFluid(500)) + .fluidOutputs(Ethylene.getFluid(500)) + .duration(90).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(240).EUt(120) .fluidInputs(SteamCrackedButadiene.getFluid(2000)) - .outputs(OreDictUnifier.get(dust, Carbon, 2)) - .fluidOutputs(Propene.getFluid(250), Ethylene.getFluid(375), Methane.getFluid(2250)) - .buildAndRegister(); + .output(dust, Carbon, 2) + .fluidOutputs(Propene.getFluid(250)) + .fluidOutputs(Ethylene.getFluid(375)) + .fluidOutputs(Methane.getFluid(2250)) + .duration(240).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(20).EUt(96) .fluidInputs(OilLight.getFluid(150)) - .fluidOutputs(SulfuricHeavyFuel.getFluid(10), SulfuricLightFuel.getFluid(20), SulfuricNaphtha.getFluid(30), SulfuricGas.getFluid(240)) - .buildAndRegister(); + .fluidOutputs(SulfuricHeavyFuel.getFluid(10)) + .fluidOutputs(SulfuricLightFuel.getFluid(20)) + .fluidOutputs(SulfuricNaphtha.getFluid(30)) + .fluidOutputs(SulfuricGas.getFluid(240)) + .duration(20).EUt(96).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(20).EUt(96) .fluidInputs(OilMedium.getFluid(100)) - .fluidOutputs(SulfuricHeavyFuel.getFluid(15), SulfuricLightFuel.getFluid(50), SulfuricNaphtha.getFluid(20), SulfuricGas.getFluid(60)) - .buildAndRegister(); + .fluidOutputs(SulfuricHeavyFuel.getFluid(15)) + .fluidOutputs(SulfuricLightFuel.getFluid(50)) + .fluidOutputs(SulfuricNaphtha.getFluid(20)) + .fluidOutputs(SulfuricGas.getFluid(60)) + .duration(20).EUt(96).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(20).EUt(288) .fluidInputs(OilHeavy.getFluid(150)) - .fluidOutputs(SulfuricHeavyFuel.getFluid(250), SulfuricLightFuel.getFluid(45), SulfuricNaphtha.getFluid(15), SulfuricGas.getFluid(600)) - .buildAndRegister(); + .fluidOutputs(SulfuricHeavyFuel.getFluid(250)) + .fluidOutputs(SulfuricLightFuel.getFluid(45)) + .fluidOutputs(SulfuricNaphtha.getFluid(15)) + .fluidOutputs(SulfuricGas.getFluid(600)) + .duration(20).EUt(288).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(20).EUt(96) .fluidInputs(Oil.getFluid(50)) - .fluidOutputs(SulfuricHeavyFuel.getFluid(15), SulfuricLightFuel.getFluid(50), SulfuricNaphtha.getFluid(20), SulfuricGas.getFluid(60)) - .buildAndRegister(); + .fluidOutputs(SulfuricHeavyFuel.getFluid(15)) + .fluidOutputs(SulfuricLightFuel.getFluid(50)) + .fluidOutputs(SulfuricNaphtha.getFluid(20)) + .fluidOutputs(SulfuricGas.getFluid(60)) + .duration(20).EUt(96).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(600).EUt(64) .fluidInputs(DilutedHydrochloricAcid.getFluid(2000)) - .fluidOutputs(Water.getFluid(1000), HydrochloricAcid.getFluid(1000)) - .buildAndRegister(); + .fluidOutputs(Water.getFluid(1000)) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .duration(600).EUt(64).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(600).EUt(120) .fluidInputs(DilutedSulfuricAcid.getFluid(3000)) - .fluidOutputs(SulfuricAcid.getFluid(2000), Water.getFluid(1000)) - .buildAndRegister(); + .fluidOutputs(SulfuricAcid.getFluid(2000)) + .fluidOutputs(Water.getFluid(1000)) + .duration(600).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(40).EUt(256) .fluidInputs(CharcoalByproducts.getFluid(1000)) - .outputs(OreDictUnifier.get(dustSmall, Charcoal)) - .fluidOutputs(WoodTar.getFluid(250), WoodVinegar.getFluid(500), WoodGas.getFluid(250)) - .buildAndRegister(); + .output(dustSmall, Charcoal) + .fluidOutputs(WoodTar.getFluid(250)) + .fluidOutputs(WoodVinegar.getFluid(500)) + .fluidOutputs(WoodGas.getFluid(250)) + .duration(40).EUt(256).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(40).EUt(256) .fluidInputs(WoodTar.getFluid(1000)) - .fluidOutputs(Creosote.getFluid(500), Phenol.getFluid(75), Benzene.getFluid(350), Toluene.getFluid(75)) - .buildAndRegister(); + .fluidOutputs(Creosote.getFluid(500)) + .fluidOutputs(Phenol.getFluid(75)) + .fluidOutputs(Benzene.getFluid(350)) + .fluidOutputs(Toluene.getFluid(75)) + .duration(40).EUt(256).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(40).EUt(256) .fluidInputs(WoodGas.getFluid(1000)) - .fluidOutputs(CarbonDioxide.getFluid(490), Ethylene.getFluid(20), Methane.getFluid(130), CarbonMonoxde.getFluid(340), Hydrogen.getFluid(20)) - .buildAndRegister(); + .fluidOutputs(CarbonDioxide.getFluid(490)) + .fluidOutputs(Ethylene.getFluid(20)) + .fluidOutputs(Methane.getFluid(130)) + .fluidOutputs(CarbonMonoxde.getFluid(340)) + .fluidOutputs(Hydrogen.getFluid(20)) + .duration(40).EUt(256).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(160).EUt(120) .fluidInputs(Water.getFluid(576)) .fluidOutputs(DistilledWater.getFluid(520)) - .buildAndRegister(); + .duration(160).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(80).EUt(640) .fluidInputs(Acetone.getFluid(1000)) - .fluidOutputs(Ethenone.getFluid(1000), Methane.getFluid(1000)) - .buildAndRegister(); + .fluidOutputs(Ethenone.getFluid(1000)) + .fluidOutputs(Methane.getFluid(1000)) + .duration(80).EUt(640).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(80).EUt(120) .fluidInputs(CalciumAcetate.getFluid(1000)) - .outputs(OreDictUnifier.get(dust, Quicklime, 2)) - .fluidOutputs(Acetone.getFluid(1000), CarbonDioxide.getFluid(1000), Water.getFluid(1000)) - .buildAndRegister(); + .output(dust, Quicklime, 2) + .fluidOutputs(Acetone.getFluid(1000)) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .duration(80).EUt(120).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(16).EUt(96) .fluidInputs(SeedOil.getFluid(24)) .fluidOutputs(Lubricant.getFluid(12)) - .buildAndRegister(); + .duration(16).EUt(96).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(40).EUt(256) .fluidInputs(WoodVinegar.getFluid(1000)) - .fluidOutputs(AceticAcid.getFluid(100), Water.getFluid(500), Ethanol.getFluid(10), Methanol.getFluid(300), Acetone.getFluid(50), MethylAcetate.getFluid(10)) - .buildAndRegister(); + .fluidOutputs(AceticAcid.getFluid(100)) + .fluidOutputs(Water.getFluid(500)) + .fluidOutputs(Ethanol.getFluid(10)) + .fluidOutputs(Methanol.getFluid(300)) + .fluidOutputs(Acetone.getFluid(50)) + .fluidOutputs(MethylAcetate.getFluid(10)) + .duration(40).EUt(256).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(75).EUt(180) .fluidInputs(FermentedBiomass.getFluid(1000)) - .fluidOutputs(AceticAcid.getFluid(25), Water.getFluid(375), Ethanol.getFluid(150), Methanol.getFluid(150), Ammonia.getFluid(100), CarbonDioxide.getFluid(400), Methane.getFluid(600)) - .buildAndRegister(); + .fluidOutputs(AceticAcid.getFluid(25)) + .fluidOutputs(Water.getFluid(375)) + .fluidOutputs(Ethanol.getFluid(150)) + .fluidOutputs(Methanol.getFluid(150)) + .fluidOutputs(Ammonia.getFluid(100)) + .fluidOutputs(CarbonDioxide.getFluid(400)) + .fluidOutputs(Methane.getFluid(600)) + .duration(75).EUt(180).buildAndRegister(); DISTILLATION_RECIPES.recipeBuilder() - .duration(32).EUt(400) .fluidInputs(Biomass.getFluid(1000)) - .outputs(OreDictUnifier.get(dustSmall, Wood, 2)) - .fluidOutputs(Ethanol.getFluid(600), Water.getFluid(300)) - .buildAndRegister(); + .output(dustSmall, Wood, 2) + .fluidOutputs(Ethanol.getFluid(600)) + .fluidOutputs(Water.getFluid(300)) + .duration(32).EUt(400).buildAndRegister(); DISTILLERY_RECIPES.recipeBuilder() - .duration(160).EUt(24) .circuitMeta(1) .fluidInputs(Toluene.getFluid(30)) .fluidOutputs(LightFuel.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(24).buildAndRegister(); DISTILLERY_RECIPES.recipeBuilder() - .duration(16).EUt(24) .circuitMeta(1) .fluidInputs(HeavyFuel.getFluid(10)) .fluidOutputs(Toluene.getFluid(4)) - .buildAndRegister(); + .duration(16).EUt(24).buildAndRegister(); DISTILLERY_RECIPES.recipeBuilder() - .duration(16).EUt(24) .circuitMeta(2) .fluidInputs(HeavyFuel.getFluid(10)) .fluidOutputs(Benzene.getFluid(4)) - .buildAndRegister(); + .duration(16).EUt(24).buildAndRegister(); DISTILLERY_RECIPES.recipeBuilder() - .duration(32).EUt(24) .circuitMeta(3) .fluidInputs(HeavyFuel.getFluid(20)) .fluidOutputs(Phenol.getFluid(5)) - .buildAndRegister(); + .duration(32).EUt(24).buildAndRegister(); DISTILLERY_RECIPES.recipeBuilder() - .duration(16).EUt(24) .circuitMeta(4) .fluidInputs(OilLight.getFluid(300)) .fluidOutputs(Oil.getFluid(100)) - .buildAndRegister(); + .duration(16).EUt(24).buildAndRegister(); DISTILLERY_RECIPES.recipeBuilder() - .duration(16).EUt(24) .circuitMeta(4) .fluidInputs(OilMedium.getFluid(200)) .fluidOutputs(Oil.getFluid(100)) - .buildAndRegister(); + .duration(16).EUt(24).buildAndRegister(); DISTILLERY_RECIPES.recipeBuilder() - .duration(16).EUt(24) .circuitMeta(4) .fluidInputs(OilHeavy.getFluid(100)) .fluidOutputs(Oil.getFluid(100)) - .buildAndRegister(); + .duration(16).EUt(24).buildAndRegister(); // Centrifuge CENTRIFUGE_RECIPES.recipeBuilder() - .duration(200).EUt(5) .fluidInputs(Gas.getFluid(8000)) - .fluidOutputs(Methane.getFluid(4000), LPG.getFluid(4000)) - .buildAndRegister(); + .fluidOutputs(Methane.getFluid(4000)) + .fluidOutputs(LPG.getFluid(4000)) + .duration(200).EUt(5).buildAndRegister(); CENTRIFUGE_RECIPES.recipeBuilder() - .duration(1484).EUt(5) .fluidInputs(LiquidAir.getFluid(53000)) - .fluidOutputs(Nitrogen.getFluid(32000), Nitrogen.getFluid(8000), Oxygen.getFluid(11000), Argon.getFluid(1000), NobleGases.getFluid(1000)) - .buildAndRegister(); + .fluidOutputs(Nitrogen.getFluid(32000)) + .fluidOutputs(Nitrogen.getFluid(8000)) + .fluidOutputs(Oxygen.getFluid(11000)) + .fluidOutputs(Argon.getFluid(1000)) + .fluidOutputs(NobleGases.getFluid(1000)) + .duration(1484).EUt(5).buildAndRegister(); CENTRIFUGE_RECIPES.recipeBuilder() - .duration(680).EUt(5) .fluidInputs(NobleGases.getFluid(34000)) - .fluidOutputs(CarbonDioxide.getFluid(21000), Helium.getFluid(9000), Methane.getFluid(3000), Deuterium.getFluid(1000)) - .buildAndRegister(); + .fluidOutputs(CarbonDioxide.getFluid(21000)) + .fluidOutputs(Helium.getFluid(9000)) + .fluidOutputs(Methane.getFluid(3000)) + .fluidOutputs(Deuterium.getFluid(1000)) + .duration(680).EUt(5).buildAndRegister(); CENTRIFUGE_RECIPES.recipeBuilder() - .duration(20).EUt(5) .fluidInputs(Butane.getFluid(320)) .fluidOutputs(LPG.getFluid(370)) - .buildAndRegister(); + .duration(20).EUt(5).buildAndRegister(); CENTRIFUGE_RECIPES.recipeBuilder() - .duration(20).EUt(5) .fluidInputs(Propane.getFluid(320)) .fluidOutputs(LPG.getFluid(290)) - .buildAndRegister(); + .duration(20).EUt(5).buildAndRegister(); // Mixer MIXER_RECIPES.recipeBuilder() - .duration(500).EUt(2) - .fluidInputs(NitricAcid.getFluid(1000), SulfuricAcid.getFluid(1000)) - .fluidOutputs(NitrationMixture.getFluid(1000)) - .buildAndRegister(); + .fluidInputs(NitricAcid.getFluid(1000)) + .fluidInputs(SulfuricAcid.getFluid(1000)) + .fluidOutputs(NitrationMixture.getFluid(2000)) + .duration(500).EUt(2).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(60).EUt(30) - .inputs(OreDictUnifier.get(dust, Sodium, 2), OreDictUnifier.get(dust, Sulfur)) - .outputs(OreDictUnifier.get(dust, SodiumSulfide, 3)) - .buildAndRegister(); + .input(dust, Sodium, 2) + .input(dust, Sulfur) + .output(dust, SodiumSulfide, 3) + .duration(60).EUt(30).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(50).EUt(8) - .fluidInputs(PolyvinylAcetate.getFluid(1000), Acetone.getFluid(1500)) + .fluidInputs(PolyvinylAcetate.getFluid(1000)) + .fluidInputs(Acetone.getFluid(1500)) .fluidOutputs(Glue.getFluid(2500)) - .buildAndRegister(); + .duration(50).EUt(8).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(50).EUt(8) - .fluidInputs(PolyvinylAcetate.getFluid(1000), MethylAcetate.getFluid(1500)) + .fluidInputs(PolyvinylAcetate.getFluid(1000)) + .fluidInputs(MethylAcetate.getFluid(1500)) .fluidOutputs(Glue.getFluid(2500)) - .buildAndRegister(); + .duration(50).EUt(8).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(1200).EUt(2) .input(dust, Wood, 4) .fluidInputs(SulfuricAcid.getFluid(1000)) .outputs(new ItemStack(Items.COAL, 1, 1)) .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) - .buildAndRegister(); + .duration(1200).EUt(2).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(1200).EUt(2) .inputs(new ItemStack(Items.SUGAR, 4)) .fluidInputs(SulfuricAcid.getFluid(1000)) .outputs(new ItemStack(Items.COAL, 1, 1)) .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) - .buildAndRegister(); + .duration(1200).EUt(2).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(300).EUt(30) - .input(dust, Gallium).input(dust, Arsenic) - .outputs(OreDictUnifier.get(dust, GalliumArsenide, 2)) - .buildAndRegister(); + .input(dust, Gallium) + .input(dust, Arsenic) + .output(dust, GalliumArsenide, 2) + .duration(300).EUt(30).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(40).EUt(8) .input(dust, Salt, 2) .fluidInputs(Water.getFluid(1000)) .fluidOutputs(SaltWater.getFluid(1000)) - .buildAndRegister(); + .duration(40).EUt(8).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(20).EUt(480) - .fluidInputs(BioDiesel.getFluid(1000), Tetranitromethane.getFluid(40)) + .fluidInputs(BioDiesel.getFluid(1000)) + .fluidInputs(Tetranitromethane.getFluid(40)) .fluidOutputs(NitroFuel.getFluid(750)) - .buildAndRegister(); + .duration(20).EUt(480).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(20).EUt(480) - .fluidInputs(Fuel.getFluid(1000), Tetranitromethane.getFluid(20)) + .fluidInputs(Fuel.getFluid(1000)) + .fluidInputs(Tetranitromethane.getFluid(20)) .fluidOutputs(NitroFuel.getFluid(1000)) - .buildAndRegister(); + .duration(20).EUt(480).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(60).EUt(16) - .fluidInputs(Oxygen.getFluid(1000), Dimethylhydrazine.getFluid(1000)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(Dimethylhydrazine.getFluid(1000)) .fluidOutputs(RocketFuel.getFluid(3000)) - .buildAndRegister(); + .duration(60).EUt(16).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(60).EUt(16) - .fluidInputs(DinitrogenTetroxide.getFluid(1000), Dimethylhydrazine.getFluid(1000)) + .fluidInputs(DinitrogenTetroxide.getFluid(1000)) + .fluidInputs(Dimethylhydrazine.getFluid(1000)) .fluidOutputs(RocketFuel.getFluid(6000)) - .buildAndRegister(); + .duration(60).EUt(16).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(16).EUt(120) - .fluidInputs(LightFuel.getFluid(5000), HeavyFuel.getFluid(1000)) + .fluidInputs(LightFuel.getFluid(5000)) + .fluidInputs(HeavyFuel.getFluid(1000)) .fluidOutputs(Fuel.getFluid(6000)) - .buildAndRegister(); + .duration(16).EUt(120).buildAndRegister(); for (DustMaterial dustMaterial : new DustMaterial[]{Talc, Soapstone, Redstone}) { MIXER_RECIPES.recipeBuilder() - .duration(128).EUt(4) .input(dust, dustMaterial) .fluidInputs(Oil.getFluid(750)) .fluidOutputs(Lubricant.getFluid(750)) - .buildAndRegister(); + .duration(128).EUt(4).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(128).EUt(4) .input(dust, dustMaterial) .fluidInputs(Creosote.getFluid(750)) .fluidOutputs(Lubricant.getFluid(750)) - .buildAndRegister(); + .duration(128).EUt(4).buildAndRegister(); MIXER_RECIPES.recipeBuilder() - .duration(128).EUt(4) .input(dust, dustMaterial) .fluidInputs(SeedOil.getFluid(750)) .fluidOutputs(Lubricant.getFluid(750)) - .buildAndRegister(); + .duration(128).EUt(4).buildAndRegister(); } // Electrolyzer ELECTROLYZER_RECIPES.recipeBuilder() - .duration(448).EUt(60) .input(dust, SodiumBisulfate, 14) - .fluidOutputs(SodiumPersulfate.getFluid(1000), Hydrogen.getFluid(2000)) - .buildAndRegister(); + .fluidOutputs(SodiumPersulfate.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(2000)) + .duration(448).EUt(60).buildAndRegister(); ELECTROLYZER_RECIPES.recipeBuilder() - .duration(720).EUt(30) .fluidInputs(SaltWater.getFluid(1000)) - .outputs(OreDictUnifier.get(dust, SodiumHydroxide, 3)) - .fluidOutputs(Chlorine.getFluid(1000), Hydrogen.getFluid(1000)) - .buildAndRegister(); + .output(dust, SodiumHydroxide, 3) + .fluidOutputs(Chlorine.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(1000)) + .duration(720).EUt(30).buildAndRegister(); ELECTROLYZER_RECIPES.recipeBuilder() - .duration(200).EUt(30) .input(dust, Sphalerite, 2) - .outputs(OreDictUnifier.get(dust, Zinc), OreDictUnifier.get(dust, Sulfur)) + .output(dust, Zinc) + .output(dust, Sulfur) .chancedOutput(OreDictUnifier.get(dustTiny, Gallium), 2500, 1000) - .buildAndRegister(); + .duration(200).EUt(30).buildAndRegister(); ELECTROLYZER_RECIPES.recipeBuilder() - .duration(2496).EUt(60) .input(dust, Bauxite, 39) - .outputs(OreDictUnifier.get(dust, Rutile, 6), OreDictUnifier.get(dust, Aluminium, 16)) - .fluidOutputs(Hydrogen.getFluid(10000), Oxygen.getFluid(11000)) - .buildAndRegister(); + .output(dust, Rutile, 6) + .output(dust, Aluminium, 16) + .fluidOutputs(Hydrogen.getFluid(10000)) + .fluidOutputs(Oxygen.getFluid(11000)) + .duration(2496).EUt(60).buildAndRegister(); ELECTROLYZER_RECIPES.recipeBuilder() - .duration(1500).EUt(30) .fluidInputs(Water.getFluid(1000)) - .fluidOutputs(Hydrogen.getFluid(2000), Oxygen.getFluid(1000)) - .buildAndRegister(); + .fluidOutputs(Hydrogen.getFluid(2000)) + .fluidOutputs(Oxygen.getFluid(1000)) + .duration(1500).EUt(30).buildAndRegister(); // TODO Make sure recipe right below this works ELECTROLYZER_RECIPES.recipeBuilder() - .duration(1500).EUt(30) .fluidInputs(DistilledWater.getFluid(1000)) - .fluidOutputs(Hydrogen.getFluid(2000), Oxygen.getFluid(1000)) - .buildAndRegister(); + .fluidOutputs(Hydrogen.getFluid(2000)) + .fluidOutputs(Oxygen.getFluid(1000)) + .duration(1500).EUt(30).buildAndRegister(); ELECTROLYZER_RECIPES.recipeBuilder() - .duration(96).EUt(26) .inputs(new ItemStack(Items.DYE, 3)) - .outputs(OreDictUnifier.get(dust, Calcium)) - .buildAndRegister(); + .output(dust, Calcium) + .duration(96).EUt(26).buildAndRegister(); ELECTROLYZER_RECIPES.recipeBuilder() - .duration(500).EUt(25) .inputs(new ItemStack(Blocks.SAND, 8)) - .outputs(OreDictUnifier.get(dust, SiliconDioxide)) - .buildAndRegister(); + .output(dust, SiliconDioxide) + .duration(500).EUt(25).buildAndRegister(); ELECTROLYZER_RECIPES.recipeBuilder() - .duration(100).EUt(26) .input(dust, Graphite) - .outputs(OreDictUnifier.get(dust, Carbon, 4)) - .buildAndRegister(); + .output(dust, Carbon, 4) + .duration(100).EUt(26).buildAndRegister(); // Brewing BREWING_RECIPES.recipeBuilder() - .duration(1440).EUt(3) .inputs(MetaItems.PLANT_BALL.getStackForm()) .fluidInputs(Honey.getFluid(180)) .fluidOutputs(Biomass.getFluid(270)) - .buildAndRegister(); + .duration(1440).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(600).EUt(3) .input("treeSapling", 1) .fluidInputs(Honey.getFluid(100)) .fluidOutputs(Biomass.getFluid(150)) - .buildAndRegister(); + .duration(600).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Items.POTATO)) .fluidInputs(Honey.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Items.CARROT)) .fluidInputs(Honey.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Blocks.CACTUS)) .fluidInputs(Honey.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Items.REEDS)) .fluidInputs(Honey.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Blocks.BROWN_MUSHROOM)) .fluidInputs(Honey.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Blocks.RED_MUSHROOM)) .fluidInputs(Honey.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Items.BEETROOT)) .fluidInputs(Honey.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(1440).EUt(3) .inputs(MetaItems.PLANT_BALL.getStackForm()) .fluidInputs(Juice.getFluid(180)) .fluidOutputs(Biomass.getFluid(270)) - .buildAndRegister(); + .duration(1440).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(600).EUt(3) .input("treeSapling", 1) .fluidInputs(Juice.getFluid(100)) .fluidOutputs(Biomass.getFluid(150)) - .buildAndRegister(); + .duration(600).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Items.POTATO)) .fluidInputs(Juice.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Items.CARROT)) .fluidInputs(Juice.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Blocks.CACTUS)) .fluidInputs(Juice.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Items.REEDS)) .fluidInputs(Juice.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Blocks.BROWN_MUSHROOM)) .fluidInputs(Juice.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Blocks.RED_MUSHROOM)) .fluidInputs(Juice.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); - + .duration(160).EUt(3).buildAndRegister(); + BREWING_RECIPES.recipeBuilder() - .duration(160).EUt(3) .inputs(new ItemStack(Items.BEETROOT)) .fluidInputs(Juice.getFluid(20)) .fluidOutputs(Biomass.getFluid(30)) - .buildAndRegister(); + .duration(160).EUt(3).buildAndRegister(); // A Few Random Recipes FLUID_HEATER_RECIPES.recipeBuilder() - .duration(16).EUt(30) .circuitMeta(1) .fluidInputs(Acetone.getFluid(100)) .fluidOutputs(Ethenone.getFluid(100)) - .buildAndRegister(); + .duration(16).EUt(30).buildAndRegister(); FLUID_HEATER_RECIPES.recipeBuilder() - .duration(16).EUt(30) .circuitMeta(1) .fluidInputs(CalciumAcetate.getFluid(200)) .fluidOutputs(Acetone.getFluid(200)) - .buildAndRegister(); + .duration(16).EUt(30).buildAndRegister(); VACUUM_RECIPES.recipeBuilder() - .duration(50) .fluidInputs(Water.getFluid(1000)) .fluidOutputs(Ice.getFluid(1000)) - .buildAndRegister(); + .duration(50).EUt(30).buildAndRegister(); VACUUM_RECIPES.recipeBuilder() - .duration(400) .fluidInputs(Air.getFluid(4000)) .fluidOutputs(LiquidAir.getFluid(4000)) - .buildAndRegister(); + .duration(400).EUt(30).buildAndRegister(); BLAST_RECIPES.recipeBuilder() - .duration(600).EUt(120) .input(dust, FerriteMixture) .fluidInputs(Oxygen.getFluid(2000)) - .outputs(OreDictUnifier.get(ingot, NickelZincFerrite)) + .output(ingot, NickelZincFerrite) .blastFurnaceTemp(1500) - .buildAndRegister(); + .duration(600).EUt(120).buildAndRegister(); FERMENTING_RECIPES.recipeBuilder() - .duration(150).EUt(2) .fluidInputs(Biomass.getFluid(100)) .fluidOutputs(FermentedBiomass.getFluid(100)) - .buildAndRegister(); + .duration(150).EUt(2).buildAndRegister(); WIREMILL_RECIPES.recipeBuilder() - .duration(80).EUt(48) .input(ingot, Polycaprolactam) .outputs(new ItemStack(Items.STRING, 32)) - .buildAndRegister(); - - - - - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Isoprene.getFluid(144), Air.getFluid(2000)).outputs(OreDictUnifier.get(dust, RawRubber)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Isoprene.getFluid(144), Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dust, RawRubber, 3)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(240).fluidInputs(Butadiene.getFluid(108), Styrene.getFluid(36), Air.getFluid(2000)).outputs(OreDictUnifier.get(dust, RawStyreneButadieneRubber)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(240).fluidInputs(Butadiene.getFluid(108), Styrene.getFluid(36), Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dust, RawStyreneButadieneRubber, 3)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Propene.getFluid(2000)).fluidOutputs(Methane.getFluid(1000), Isoprene.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(3500).EUt(30).input(dust, Carbon).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Hydrogen.getFluid(4000)).fluidOutputs(Methane.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Ethylene.getFluid(1000), Propene.getFluid(1000)).fluidOutputs(Hydrogen.getFluid(2000), Isoprene.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(dust, RawStyreneButadieneRubber, 9).input(dust, Sulfur).fluidOutputs(StyreneButadieneRubber.getFluid(1296)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(360).input(dust, SodiumSulfide, 3).fluidInputs(Dichlorobenzene.getFluid(1000), Air.getFluid(16000)).outputs(OreDictUnifier.get(dust, Salt, 2)).fluidOutputs(PolyphenyleneSulfide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(360).input(dust, SodiumSulfide, 3).fluidInputs(Dichlorobenzene.getFluid(1000), Oxygen.getFluid(8000)).outputs(OreDictUnifier.get(dust, Salt, 2)).fluidOutputs(PolyphenyleneSulfide.getFluid(1500)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), Ethylene.getFluid(144)).fluidOutputs(Plastic.getFluid(144)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), Ethylene.getFluid(144)).fluidOutputs(Plastic.getFluid(216)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), Ethylene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Plastic.getFluid(3240)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), Ethylene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Plastic.getFluid(4320)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), VinylChloride.getFluid(144)).fluidOutputs(PolyvinylChloride.getFluid(144)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), VinylChloride.getFluid(144)).fluidOutputs(PolyvinylChloride.getFluid(216)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), VinylChloride.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(PolyvinylChloride.getFluid(3240)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), VinylChloride.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(PolyvinylChloride.getFluid(4320)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(dust, Polydimethylsiloxane, 9).input(dust, Sulfur).fluidOutputs(SiliconeRubber.getFluid(1296)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(HydrochloricAcid.getFluid(1000), Acetone.getFluid(1000), Phenol.getFluid(2000)).fluidOutputs(BisphenolA.getFluid(1000), DilutedHydrochloricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(8).fluidInputs(SulfurTrioxide.getFluid(1000), Water.getFluid(1000)).fluidOutputs(SulfuricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), Tetrafluoroethylene.getFluid(144)).fluidOutputs(Polytetrafluoroethylene.getFluid(144)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), Tetrafluoroethylene.getFluid(144)).fluidOutputs(Polytetrafluoroethylene.getFluid(216)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), Tetrafluoroethylene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Polytetrafluoroethylene.getFluid(3240)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), Tetrafluoroethylene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Polytetrafluoroethylene.getFluid(4320)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(30).input(dust, SodiumHydroxide, 3).fluidInputs(Epichlorhydrin.getFluid(1000), BisphenolA.getFluid(1000)).fluidOutputs(Epoxid.getFluid(1000), SaltWater.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(500).EUt(480).input(dust, Carbon, 2).input(dust, Rutile, 3).fluidInputs(Chlorine.getFluid(4000)).fluidOutputs(CarbonMonoxde.getFluid(2000), TitaniumTetrachloride.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(96).fluidInputs(Dimethyldichlorosilane.getFluid(1000), Water.getFluid(1000)).outputs(OreDictUnifier.get(dust, Polydimethylsiloxane, 3)).fluidOutputs(DilutedHydrochloricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(96).input(dust, Silicon).fluidInputs(HydrochloricAcid.getFluid(2000), Methanol.getFluid(2000)).outputs(OreDictUnifier.get(dust, Polydimethylsiloxane, 3)).fluidOutputs(DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(96).input(dust, Silicon).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Water.getFluid(1000), Chlorine.getFluid(4000), Methane.getFluid(2000)).outputs(OreDictUnifier.get(dust, Polydimethylsiloxane, 3)).fluidOutputs(HydrochloricAcid.getFluid(2000), DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).fluidInputs(Chlorine.getFluid(1000), Hydrogen.getFluid(1000)).fluidOutputs(HydrochloricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(30).input(dust, Salt, 2).fluidInputs(SulfuricAcid.getFluid(1000)).outputs(OreDictUnifier.get(dust, SodiumBisulfate, 7)).fluidOutputs(HydrochloricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Chlorine.getFluid(6000), Methane.getFluid(1000)).fluidOutputs(HydrochloricAcid.getFluid(3000), Chloroform.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Chlorine.getFluid(2000), Methane.getFluid(1000)).fluidOutputs(HydrochloricAcid.getFluid(1000), Chloromethane.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Chlorine.getFluid(3000), Benzene.getFluid(1000)).fluidOutputs(HydrochloricAcid.getFluid(2000), Dichlorobenzene.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Propene.getFluid(1000), Chlorine.getFluid(2000)).fluidOutputs(HydrochloricAcid.getFluid(1000), AllylChloride.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Chlorine.getFluid(2000), Ethylene.getFluid(1000)).fluidOutputs(VinylChloride.getFluid(1000), HydrochloricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).input(dust, Apatite, 9).fluidInputs(SulfuricAcid.getFluid(5000), Water.getFluid(10000)).outputs(OreDictUnifier.get(dust, Gypsum, 40)).fluidOutputs(HydrochloricAcid.getFluid(1000), PhosphoricAcid.getFluid(3000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(30).fluidInputs(SulfurDioxide.getFluid(1000), Oxygen.getFluid(1000)).fluidOutputs(SulfurTrioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(280).EUt(30).input(dust, Sulfur).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Oxygen.getFluid(3000)).fluidOutputs(SulfurTrioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(256).fluidInputs(Chloroform.getFluid(2000), HydrofluoricAcid.getFluid(4000)).fluidOutputs(HydrochloricAcid.getFluid(6000), Tetrafluoroethylene.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(dust, Sodium, 1).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Water.getFluid(1000)).outputs(OreDictUnifier.get(dust, SodiumHydroxide, 3)).fluidOutputs(Hydrogen.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), Styrene.getFluid(144)).fluidOutputs(Polystyrene.getFluid(144)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), Styrene.getFluid(144)).fluidOutputs(Polystyrene.getFluid(216)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), Styrene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Polystyrene.getFluid(3240)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), Styrene.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(Polystyrene.getFluid(4320)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Oxygen.getFluid(1000), HydrochloricAcid.getFluid(1000), Ethylene.getFluid(1000)).fluidOutputs(Water.getFluid(1000), VinylChloride.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(Oxygen.getFluid(2000), Cumene.getFluid(1000)).fluidOutputs(Phenol.getFluid(1000), Acetone.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(180).EUt(30).fluidInputs(NitrationMixture.getFluid(3000), Glycerol.getFluid(1000)).fluidOutputs(Glyceryl.getFluid(1000), DilutedSulfuricAcid.getFluid(3000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(120).fluidInputs(SulfuricAcid.getFluid(1000), AceticAcid.getFluid(1000)).fluidOutputs(Ethenone.getFluid(1000), DilutedSulfuricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(120).input(dust, Calcite, 5).fluidInputs(AceticAcid.getFluid(2000)).fluidOutputs(CalciumAcetate.getFluid(1000), CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(400).EUt(380).input(dust, Quicklime, 2).fluidInputs(AceticAcid.getFluid(2000)).fluidOutputs(CalciumAcetate.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(400).EUt(380).input(dust, Calcium).fluidInputs(AceticAcid.getFluid(2000), Oxygen.getFluid(1000)).fluidOutputs(CalciumAcetate.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).fluidInputs(Methanol.getFluid(1000), AceticAcid.getFluid(1000)).fluidOutputs(MethylAcetate.getFluid(1000), Water.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).fluidInputs(Glycerol.getFluid(1000), HydrochloricAcid.getFluid(1000)).fluidOutputs(Water.getFluid(2000), Epichlorhydrin.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).input(dust, SodiumHydroxide, 3).fluidInputs(AllylChloride.getFluid(1000), HypochlorousAcid.getFluid(1000)).fluidOutputs(SaltWater.getFluid(1000), Epichlorhydrin.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).input(dust, Sulfur).fluidInputs(Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(SulfuricLightFuel.getFluid(12000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), LightFuel.getFluid(12000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(SulfuricHeavyFuel.getFluid(8000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), HeavyFuel.getFluid(8000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(SulfuricNaphtha.getFluid(12000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), Naphtha.getFluid(12000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(SulfuricGas.getFluid(16000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), Gas.getFluid(16000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(NaturalGas.getFluid(16000), Hydrogen.getFluid(2000)).fluidOutputs(HydrogenSulfide.getFluid(1000), Gas.getFluid(16000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(1250).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Nitrogen.getFluid(1000), Oxygen.getFluid(2000)).fluidOutputs(NitrogenDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Air.getFluid(1000), VinylAcetate.getFluid(144)).fluidOutputs(PolyvinylAcetate.getFluid(144)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Oxygen.getFluid(1000), VinylAcetate.getFluid(144)).fluidOutputs(PolyvinylAcetate.getFluid(216)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Air.getFluid(7500), VinylAcetate.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(PolyvinylAcetate.getFluid(3240)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(7500), VinylAcetate.getFluid(2160), TitaniumTetrachloride.getFluid(100)).fluidOutputs(PolyvinylAcetate.getFluid(4320)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(96).fluidInputs(Hydrogen.getFluid(6000), CarbonDioxide.getFluid(1000)).fluidOutputs(Water.getFluid(1000), Methanol.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(96).notConsumable(new IntCircuitIngredient(0)).fluidInputs(Hydrogen.getFluid(4000), CarbonMonoxde.getFluid(1000)).fluidOutputs(Methanol.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(96).input(dust, Carbon).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Hydrogen.getFluid(4000), Oxygen.getFluid(1000)).fluidOutputs(Methanol.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(8).fluidInputs(Mercury.getFluid(1000), Water.getFluid(10000), Chlorine.getFluid(10000)).fluidOutputs(HypochlorousAcid.getFluid(10000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Water.getFluid(1000), Chlorine.getFluid(2000)).fluidOutputs(HydrochloricAcid.getFluid(1000), HypochlorousAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(960).EUt(480).fluidInputs(Dimethylamine.getFluid(1000), Chloramine.getFluid(1000)).fluidOutputs(Dimethylhydrazine.getFluid(1000), HydrochloricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(1040).EUt(480).fluidInputs(Methanol.getFluid(2000), Ammonia.getFluid(2000), HypochlorousAcid.getFluid(1000)).fluidOutputs(Dimethylhydrazine.getFluid(1000), DilutedHydrochloricAcid.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).input(dust, Sulfur).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).fluidOutputs(SulfurDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Oxygen.getFluid(3000), HydrogenSulfide.getFluid(1000)).fluidOutputs(Water.getFluid(1000), SulfurDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(8).fluidInputs(Hydrogen.getFluid(1000), Fluorine.getFluid(1000)).fluidOutputs(HydrofluoricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(120).EUt(30).fluidInputs(Ethylene.getFluid(1000), Benzene.getFluid(1000)).fluidOutputs(Hydrogen.getFluid(2000), Styrene.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(1920).EUt(30).fluidInputs(PhosphoricAcid.getFluid(1000), Benzene.getFluid(8000), Propene.getFluid(8000)).fluidOutputs(Cumene.getFluid(8000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(96).input(dust, Silicon).fluidInputs(Chloromethane.getFluid(2000)).fluidOutputs(Dimethyldichlorosilane.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(100).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000), Ethylene.getFluid(1000)).fluidOutputs(AceticAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(300).EUt(30).fluidInputs(CarbonMonoxde.getFluid(1000), Methanol.getFluid(1000)).fluidOutputs(AceticAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Hydrogen.getFluid(4000), CarbonMonoxde.getFluid(2000)).fluidOutputs(AceticAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).input(dust, Carbon, 2).notConsumable(new IntCircuitIngredient(4)).fluidInputs(Oxygen.getFluid(2000), Hydrogen.getFluid(4000)).fluidOutputs(AceticAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(600).input(dust, Aluminium, 4).fluidInputs(IndiumConcentrate.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Indium)).fluidOutputs(LeadZincSolution.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(30).EUt(240).notConsumable(new IntCircuitIngredient(3)).fluidInputs(NitrogenDioxide.getFluid(3000), Water.getFluid(1000)).fluidOutputs(NitricOxide.getFluid(1000), NitricAcid.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(10000), Ammonia.getFluid(4000)).fluidOutputs(NitricOxide.getFluid(4000), Water.getFluid(6000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(180).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Oxygen.getFluid(1000), AceticAcid.getFluid(1000), Ethylene.getFluid(1000)).fluidOutputs(Water.getFluid(1000), VinylAcetate.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(dust, Carbon).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(gem, Charcoal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(gem, Coal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(dust, Charcoal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(dust, Coal).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonMonoxde.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(800).EUt(8).input(dust, Carbon).fluidInputs(CarbonDioxide.getFluid(1000)).fluidOutputs(CarbonMonoxde.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(384).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Hydrogen.getFluid(3000), Nitrogen.getFluid(1000)).fluidOutputs(Ammonia.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).fluidInputs(HypochlorousAcid.getFluid(1000), Ammonia.getFluid(1000)).fluidOutputs(Water.getFluid(1000), Chloramine.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(120).fluidInputs(Ammonia.getFluid(1000), Methanol.getFluid(2000)).fluidOutputs(Water.getFluid(2000), Dimethylamine.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(30).input(dust, PhosphorousPentoxide, 14).fluidInputs(Water.getFluid(6000)).fluidOutputs(PhosphoricAcid.getFluid(4000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).input(dust, Phosphorus, 2).fluidInputs(Water.getFluid(3000), Oxygen.getFluid(5000)).fluidOutputs(PhosphoricAcid.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(160).EUt(30).notConsumable(new IntCircuitIngredient(1)).fluidInputs(HydrochloricAcid.getFluid(1000), Methanol.getFluid(1000)).fluidOutputs(Water.getFluid(1000), Chloromethane.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(150).input(crushedPurified, Sphalerite).input(crushedPurified, Galena).fluidInputs(SulfuricAcid.getFluid(4000)).fluidOutputs(IndiumConcentrate.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(30).input(dust, Phosphorus, 4).fluidInputs(Oxygen.getFluid(10000)).outputs(OreDictUnifier.get(dust, PhosphorousPentoxide, 14)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(40).EUt(8).input(dust, Carbon).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(gem, Charcoal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(gem, Coal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(dust, Charcoal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(8).input(dust, Coal).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(2000)).outputs(OreDictUnifier.get(dustTiny, Ash)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(150).EUt(480).notConsumable(new IntCircuitIngredient(1)).fluidInputs(Water.getFluid(2000), Methane.getFluid(1000)).fluidOutputs(Hydrogen.getFluid(8000), CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(120).fluidInputs(AceticAcid.getFluid(4000), Ethenone.getFluid(4000), NitricAcid.getFluid(4000)).fluidOutputs(Tetranitromethane.getFluid(1000), AceticAcid.getFluid(7000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(480).EUt(30).notConsumable(new IntCircuitIngredient(3)).fluidInputs(Oxygen.getFluid(7000), Ammonia.getFluid(2000)).fluidOutputs(DinitrogenTetroxide.getFluid(1000), Water.getFluid(3000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(640).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(NitrogenDioxide.getFluid(2000)).fluidOutputs(DinitrogenTetroxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(1100).EUt(480).notConsumable(new IntCircuitIngredient(23)).fluidInputs(Oxygen.getFluid(7000), Nitrogen.getFluid(2000), Hydrogen.getFluid(6000)).fluidOutputs(DinitrogenTetroxide.getFluid(1000), Water.getFluid(3000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(30).notConsumable(new IntCircuitIngredient(2)).fluidInputs(Oxygen.getFluid(4000), Ammonia.getFluid(1000)).fluidOutputs(NitricAcid.getFluid(1000), Water.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).notConsumable(new IntCircuitIngredient(4)).fluidInputs(Water.getFluid(1000), Oxygen.getFluid(1000), NitrogenDioxide.getFluid(2000)).fluidOutputs(NitricAcid.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).EUt(480).notConsumable(new IntCircuitIngredient(24)).fluidInputs(Oxygen.getFluid(4000), Nitrogen.getFluid(1000), Hydrogen.getFluid(3000)).fluidOutputs(NitricAcid.getFluid(1000), Water.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(dustTiny, SodiumHydroxide).fluidInputs(SeedOil.getFluid(6000), Methanol.getFluid(1000)).fluidOutputs(Glycerol.getFluid(1000), BioDiesel.getFluid(6000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(30).input(dustTiny, SodiumHydroxide).fluidInputs(SeedOil.getFluid(6000), Ethanol.getFluid(1000)).fluidOutputs(Glycerol.getFluid(1000), BioDiesel.getFluid(6000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(1200).EUt(120).fluidInputs(SulfuricAcid.getFluid(1000), Ethanol.getFluid(1000)).fluidOutputs(Ethylene.getFluid(1000), DilutedSulfuricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(60).EUt(30).fluidInputs(Water.getFluid(1000)).input(dust, SodiumBisulfate, 7).outputs(OreDictUnifier.get(dust, SodiumHydroxide, 3)).fluidOutputs(SulfuricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(140).EUt(192).inputs(new ItemStack(Items.SUGAR)).input(dustTiny, Plastic, 1).fluidInputs(Toluene.getFluid(133)).outputs(MetaItems.GELLED_TOLUENE.getStackForm(2)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(320).fluidInputs(HydrogenSulfide.getFluid(1000), Oxygen.getFluid(4000)).fluidOutputs(SulfuricAcid.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(640).input(dust, Saltpeter, 1).fluidInputs(Naphtha.getFluid(576)).outputs(OreDictUnifier.get(dustTiny, Potassium, 1)).fluidOutputs(Polycaprolactam.getFluid(1296)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).fluidInputs(Epichlorhydrin.getFluid(144), Naphtha.getFluid(3000), NitrogenDioxide.getFluid(1000)).fluidOutputs(Epoxid.getFluid(L * 2)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(1000).input(dust, Uraninite, 1).input(dust, Aluminium, 1).outputs(OreDictUnifier.get(dust, Uranium, 1)).fluidOutputs(Aluminium.getFluid(144), Oxygen.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(1000).input(dust, Uraninite, 1).input(dust, Magnesium, 1).outputs(OreDictUnifier.get(dust, Uranium, 1)).fluidOutputs(Magnesium.getFluid(144), Oxygen.getFluid(2000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(500).input(dust, Calcium, 1).input(dust, Carbon, 1).fluidInputs(Oxygen.getFluid(3000)).outputs(OreDictUnifier.get(dust, Calcite, 5)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(1150).input(dust, Sulfur, 1).fluidInputs(Water.getFluid(4000)).fluidOutputs(SulfuricAcid.getFluid(1000), Hydrogen.getFluid(6000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(30).input(crushedPurified, Chalcopyrite).fluidInputs(NitricAcid.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, PlatinumGroupSludge)).fluidOutputs(CopperSulfateSolution.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(50).EUt(30).input(crushedPurified, Pentlandite).fluidInputs(NitricAcid.getFluid(1000)).outputs(OreDictUnifier.get(dustTiny, PlatinumGroupSludge)).fluidOutputs(NickelSulfateSolution.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).input(dust, Quicklime, 2).fluidInputs(CarbonDioxide.getFluid(1000)).outputs(OreDictUnifier.get(dust, Calcite, 5)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(80).EUt(30).input(dust, Magnesia, 2).fluidInputs(CarbonDioxide.getFluid(1000)).outputs(OreDictUnifier.get(dust, Magnesite, 5)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).input(dust, Calcite, 5).notConsumable(new IntCircuitIngredient(1)).outputs(OreDictUnifier.get(dust, Quicklime, 2)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(240).EUt(30).input(dust, Magnesite, 5).outputs(OreDictUnifier.get(dust, Magnesia, 2)).fluidOutputs(CarbonDioxide.getFluid(1000)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(600).EUt(16).input(dust, RawRubber, 9).input(dust, Sulfur, 1).fluidOutputs(Rubber.getFluid(1296)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.MELON, 1, OreDictionary.WILDCARD_VALUE)).input(nugget, Gold, 8).outputs(new ItemStack(Items.SPECKLED_MELON)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.CARROT, 1, OreDictionary.WILDCARD_VALUE)).input(nugget, Gold, 8).outputs(new ItemStack(Items.GOLDEN_CARROT)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.APPLE, 1, OreDictionary.WILDCARD_VALUE)).input(ingot, Gold, 8).outputs(new ItemStack(Items.GOLDEN_APPLE)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(50).inputs(new ItemStack(Items.APPLE, 1, OreDictionary.WILDCARD_VALUE)).input(block, Gold, 8).outputs(new ItemStack(Items.GOLDEN_APPLE, 1, 1)).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder().duration(200).EUt(24).inputs(MetaItems.GELLED_TOLUENE.getStackForm(4)).fluidInputs(SulfuricAcid.getFluid(250)).outputs(new ItemStack(Blocks.TNT)).buildAndRegister(); + .duration(80).EUt(48).buildAndRegister(); } } diff --git a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java index 0cd837a76d..35c4c4ed41 100644 --- a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java @@ -58,6 +58,7 @@ public class MachineRecipeLoader { public static void init() { ChemistryRecipes.init(); + ReactorRecipes.init(); FuelRecipes.registerFuels(); AssemblyLineRecipeLoader.registerAssemblyLineRecipes(); diff --git a/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java new file mode 100644 index 0000000000..28c5e93d5c --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java @@ -0,0 +1,1034 @@ +package gregtech.loaders.recipe; + +import gregtech.api.recipes.ingredients.IntCircuitIngredient; +import gregtech.api.unification.OreDictUnifier; +import gregtech.common.items.MetaItems; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; +import net.minecraftforge.oredict.OreDictionary; + +import static gregtech.api.GTValues.L; +import static gregtech.api.recipes.RecipeMaps.CHEMICAL_RECIPES; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.unification.ore.OrePrefix.*; +import static gregtech.api.unification.ore.OrePrefix.block; + +public class ReactorRecipes { + + public static void init() { + + // Plastics / Rubbers ************************************************* + + // Rubber + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Isoprene.getFluid(144)) + .fluidInputs(Air.getFluid(2000)) + .output(dust, RawRubber) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Isoprene.getFluid(144)) + .fluidInputs(Oxygen.getFluid(2000)) + .output(dust, RawRubber, 3) + .duration(160).EUt(30).buildAndRegister(); + + // S-B Rubber + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Butadiene.getFluid(108)) + .fluidInputs(Styrene.getFluid(36)) + .fluidInputs(Air.getFluid(2000)) + .output(dust, RawStyreneButadieneRubber) + .duration(160).EUt(240).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Butadiene.getFluid(108)) + .fluidInputs(Styrene.getFluid(36)) + .fluidInputs(Oxygen.getFluid(2000)) + .output(dust, RawStyreneButadieneRubber, 3) + .duration(160).EUt(240).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, RawStyreneButadieneRubber, 9) + .input(dust, Sulfur) + .fluidOutputs(StyreneButadieneRubber.getFluid(1296)) + .duration(600).EUt(30).buildAndRegister(); + + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .fluidInputs(Propene.getFluid(2000)) + .fluidOutputs(Methane.getFluid(1000)) + .fluidOutputs(Isoprene.getFluid(1000)) + .duration(120).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .input(dust, Carbon) + .fluidInputs(Hydrogen.getFluid(4000)) + .fluidOutputs(Methane.getFluid(1000)) + .duration(3500).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Ethylene.getFluid(1000)) + .fluidInputs(Propene.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(2000)) + .fluidOutputs(Isoprene.getFluid(1000)) + .duration(120).EUt(30).buildAndRegister(); + + + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, SodiumSulfide, 3) + .fluidInputs(Dichlorobenzene.getFluid(1000)) + .fluidInputs(Air.getFluid(16000)) + .output(dust, Salt, 2) + .fluidOutputs(PolyphenyleneSulfide.getFluid(1000)) + .duration(240).EUt(360).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, SodiumSulfide, 3) + .fluidInputs(Dichlorobenzene.getFluid(1000)) + .fluidInputs(Oxygen.getFluid(8000)) + .output(dust, Salt, 2) + .fluidOutputs(PolyphenyleneSulfide.getFluid(1500)) + .duration(240).EUt(360).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Air.getFluid(1000)) + .fluidInputs(Ethylene.getFluid(144)) + .fluidOutputs(Plastic.getFluid(144)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(Ethylene.getFluid(144)) + .fluidOutputs(Plastic.getFluid(216)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Air.getFluid(7500)) + .fluidInputs(Ethylene.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(Plastic.getFluid(3240)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Oxygen.getFluid(7500)) + .fluidInputs(Ethylene.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(Plastic.getFluid(4320)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Air.getFluid(1000)) + .fluidInputs(VinylChloride.getFluid(144)) + .fluidOutputs(PolyvinylChloride.getFluid(144)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(VinylChloride.getFluid(144)) + .fluidOutputs(PolyvinylChloride.getFluid(216)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Air.getFluid(7500)) + .fluidInputs(VinylChloride.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(PolyvinylChloride.getFluid(3240)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Oxygen.getFluid(7500)) + .fluidInputs(VinylChloride.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(PolyvinylChloride.getFluid(4320)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Polydimethylsiloxane, 9) + .input(dust, Sulfur) + .fluidOutputs(SiliconeRubber.getFluid(1296)) + .duration(600).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(HydrochloricAcid.getFluid(1000)) + .fluidInputs(Acetone.getFluid(1000)) + .fluidInputs(Phenol.getFluid(2000)) + .fluidOutputs(BisphenolA.getFluid(1000)) + .fluidOutputs(DilutedHydrochloricAcid.getFluid(1000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(SulfurTrioxide.getFluid(1000)) + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(SulfuricAcid.getFluid(1000)) + .duration(320).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Air.getFluid(1000)) + .fluidInputs(Tetrafluoroethylene.getFluid(144)) + .fluidOutputs(Polytetrafluoroethylene.getFluid(144)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(Tetrafluoroethylene.getFluid(144)) + .fluidOutputs(Polytetrafluoroethylene.getFluid(216)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Air.getFluid(7500)) + .fluidInputs(Tetrafluoroethylene.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(Polytetrafluoroethylene.getFluid(3240)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Oxygen.getFluid(7500)) + .fluidInputs(Tetrafluoroethylene.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(Polytetrafluoroethylene.getFluid(4320)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, SodiumHydroxide, 3) + .fluidInputs(Epichlorhydrin.getFluid(1000)) + .fluidInputs(BisphenolA.getFluid(1000)) + .fluidOutputs(Epoxid.getFluid(1000)) + .fluidOutputs(SaltWater.getFluid(1000)) + .duration(200).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Carbon, 2) + .input(dust, Rutile, 3) + .fluidInputs(Chlorine.getFluid(4000)) + .fluidOutputs(CarbonMonoxde.getFluid(2000)) + .fluidOutputs(TitaniumTetrachloride.getFluid(1000)) + .duration(500).EUt(480).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Dimethyldichlorosilane.getFluid(1000)) + .fluidInputs(Water.getFluid(1000)) + .output(dust, Polydimethylsiloxane, 3) + .fluidOutputs(DilutedHydrochloricAcid.getFluid(1000)) + .duration(240).EUt(96).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Silicon) + .fluidInputs(HydrochloricAcid.getFluid(2000)) + .fluidInputs(Methanol.getFluid(2000)) + .output(dust, Polydimethylsiloxane, 3) + .fluidOutputs(DilutedHydrochloricAcid.getFluid(2000)) + .duration(480).EUt(96).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .input(dust, Silicon) + .fluidInputs(Water.getFluid(1000)) + .fluidInputs(Chlorine.getFluid(4000)) + .fluidInputs(Methane.getFluid(2000)) + .output(dust, Polydimethylsiloxane, 3) + .fluidOutputs(HydrochloricAcid.getFluid(2000)) + .fluidOutputs(DilutedHydrochloricAcid.getFluid(2000)) + .duration(480).EUt(96).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Chlorine.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(1000)) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .duration(60).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Salt, 2) + .fluidInputs(SulfuricAcid.getFluid(1000)) + .output(dust, SodiumBisulfate, 7) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .duration(60).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Chlorine.getFluid(6000)) + .fluidInputs(Methane.getFluid(1000)) + .fluidOutputs(HydrochloricAcid.getFluid(3000)) + .fluidOutputs(Chloroform.getFluid(1000)) + .duration(80).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(3)) + .fluidInputs(Chlorine.getFluid(2000)) + .fluidInputs(Methane.getFluid(1000)) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Chloromethane.getFluid(1000)) + .duration(80).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Chlorine.getFluid(3000)) + .fluidInputs(Benzene.getFluid(1000)) + .fluidOutputs(HydrochloricAcid.getFluid(2000)) + .fluidOutputs(Dichlorobenzene.getFluid(1000)) + .duration(120).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Propene.getFluid(1000)) + .fluidInputs(Chlorine.getFluid(2000)) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .fluidOutputs(AllylChloride.getFluid(1000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Chlorine.getFluid(2000)) + .fluidInputs(Ethylene.getFluid(1000)) + .fluidOutputs(VinylChloride.getFluid(1000)) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Apatite, 9) + .fluidInputs(SulfuricAcid.getFluid(5000)) + .fluidInputs(Water.getFluid(10000)) + .output(dust, Gypsum, 40) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .fluidOutputs(PhosphoricAcid.getFluid(3000)) + .duration(320).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(SulfurDioxide.getFluid(1000)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidOutputs(SulfurTrioxide.getFluid(1000)) + .duration(200).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(3)) + .input(dust, Sulfur) + .fluidInputs(Oxygen.getFluid(3000)) + .fluidOutputs(SulfurTrioxide.getFluid(1000)) + .duration(280).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Chloroform.getFluid(2000)) + .fluidInputs(HydrofluoricAcid.getFluid(4000)) + .fluidOutputs(HydrochloricAcid.getFluid(6000)) + .fluidOutputs(Tetrafluoroethylene.getFluid(1000)) + .duration(240).EUt(256).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .input(dust, Sodium) + .fluidInputs(Water.getFluid(1000)) + .output(dust, SodiumHydroxide, 3) + .fluidOutputs(Hydrogen.getFluid(1000)) + .duration(40).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Air.getFluid(1000)) + .fluidInputs(Styrene.getFluid(144)) + .fluidOutputs(Polystyrene.getFluid(144)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(Styrene.getFluid(144)) + .fluidOutputs(Polystyrene.getFluid(216)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Air.getFluid(7500)) + .fluidInputs(Styrene.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(Polystyrene.getFluid(3240)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Oxygen.getFluid(7500)) + .fluidInputs(Styrene.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(Polystyrene.getFluid(4320)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(3)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(HydrochloricAcid.getFluid(1000)) + .fluidInputs(Ethylene.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .fluidOutputs(VinylChloride.getFluid(1000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Oxygen.getFluid(2000)) + .fluidInputs(Cumene.getFluid(1000)) + .fluidOutputs(Phenol.getFluid(1000)) + .fluidOutputs(Acetone.getFluid(1000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(NitrationMixture.getFluid(3000)) + .fluidInputs(Glycerol.getFluid(1000)) + .fluidOutputs(Glyceryl.getFluid(1000)) + .fluidOutputs(DilutedSulfuricAcid.getFluid(3000)) + .duration(180).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(SulfuricAcid.getFluid(1000)) + .fluidInputs(AceticAcid.getFluid(1000)) + .fluidOutputs(Ethenone.getFluid(1000)) + .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) + .duration(160).EUt(120).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Calcite, 5) + .fluidInputs(AceticAcid.getFluid(2000)) + .fluidOutputs(CalciumAcetate.getFluid(1000)) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(200).EUt(120).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Quicklime, 2) + .fluidInputs(AceticAcid.getFluid(2000)) + .fluidOutputs(CalciumAcetate.getFluid(1000)) + .duration(400).EUt(380).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Calcium) + .fluidInputs(AceticAcid.getFluid(2000)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidOutputs(CalciumAcetate.getFluid(1000)) + .duration(400).EUt(380).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Methanol.getFluid(1000)) + .fluidInputs(AceticAcid.getFluid(1000)) + .fluidOutputs(MethylAcetate.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .duration(240).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Glycerol.getFluid(1000)) + .fluidInputs(HydrochloricAcid.getFluid(1000)) + .fluidOutputs(Water.getFluid(2000)) + .fluidOutputs(Epichlorhydrin.getFluid(1000)) + .duration(480).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, SodiumHydroxide, 3) + .fluidInputs(AllylChloride.getFluid(1000)) + .fluidInputs(HypochlorousAcid.getFluid(1000)) + .fluidOutputs(SaltWater.getFluid(1000)) + .fluidOutputs(Epichlorhydrin.getFluid(1000)) + .duration(480).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Sulfur) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidOutputs(HydrogenSulfide.getFluid(1000)) + .duration(60).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(SulfuricLightFuel.getFluid(12000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidOutputs(HydrogenSulfide.getFluid(1000)) + .fluidOutputs(LightFuel.getFluid(12000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(SulfuricHeavyFuel.getFluid(8000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidOutputs(HydrogenSulfide.getFluid(1000)) + .fluidOutputs(HeavyFuel.getFluid(8000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(SulfuricNaphtha.getFluid(12000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidOutputs(HydrogenSulfide.getFluid(1000)) + .fluidOutputs(Naphtha.getFluid(12000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(SulfuricGas.getFluid(16000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidOutputs(HydrogenSulfide.getFluid(1000)) + .fluidOutputs(Gas.getFluid(16000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(NaturalGas.getFluid(16000)) + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidOutputs(HydrogenSulfide.getFluid(1000)) + .fluidOutputs(Gas.getFluid(16000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Nitrogen.getFluid(1000)) + .fluidInputs(Oxygen.getFluid(2000)) + .fluidOutputs(NitrogenDioxide.getFluid(1000)) + .duration(1250).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Air.getFluid(1000)) + .fluidInputs(VinylAcetate.getFluid(144)) + .fluidOutputs(PolyvinylAcetate.getFluid(144)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(VinylAcetate.getFluid(144)) + .fluidOutputs(PolyvinylAcetate.getFluid(216)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Air.getFluid(7500)) + .fluidInputs(VinylAcetate.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(PolyvinylAcetate.getFluid(3240)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Oxygen.getFluid(7500)) + .fluidInputs(VinylAcetate.getFluid(2160)) + .fluidInputs(TitaniumTetrachloride.getFluid(100)) + .fluidOutputs(PolyvinylAcetate.getFluid(4320)) + .duration(800).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(6000)) + .fluidInputs(CarbonDioxide.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .fluidOutputs(Methanol.getFluid(1000)) + .duration(120).EUt(96).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(0)) + .fluidInputs(Hydrogen.getFluid(4000)) + .fluidInputs(CarbonMonoxde.getFluid(1000)) + .fluidOutputs(Methanol.getFluid(1000)) + .duration(120).EUt(96).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(3)) + .input(dust, Carbon) + .fluidInputs(Hydrogen.getFluid(4000)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidOutputs(Methanol.getFluid(1000)) + .duration(320).EUt(96).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Mercury.getFluid(1000)) + .fluidInputs(Water.getFluid(10000)) + .fluidInputs(Chlorine.getFluid(10000)) + .fluidOutputs(HypochlorousAcid.getFluid(10000)) + .duration(600).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Water.getFluid(1000)) + .fluidInputs(Chlorine.getFluid(2000)) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .fluidOutputs(HypochlorousAcid.getFluid(1000)) + .duration(120).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Dimethylamine.getFluid(1000)) + .fluidInputs(Chloramine.getFluid(1000)) + .fluidOutputs(Dimethylhydrazine.getFluid(1000)) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .duration(960).EUt(480).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Methanol.getFluid(2000)) + .fluidInputs(Ammonia.getFluid(2000)) + .fluidInputs(HypochlorousAcid.getFluid(1000)) + .fluidOutputs(Dimethylhydrazine.getFluid(1000)) + .fluidOutputs(DilutedHydrochloricAcid.getFluid(2000)) + .duration(1040).EUt(480).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .input(dust, Sulfur) + .fluidInputs(Oxygen.getFluid(2000)) + .fluidOutputs(SulfurDioxide.getFluid(1000)) + .duration(60).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Oxygen.getFluid(3000)) + .fluidInputs(HydrogenSulfide.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .fluidOutputs(SulfurDioxide.getFluid(1000)) + .duration(120).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(1000)) + .fluidInputs(Fluorine.getFluid(1000)) + .fluidOutputs(HydrofluoricAcid.getFluid(1000)) + .duration(60).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Ethylene.getFluid(1000)) + .fluidInputs(Benzene.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(2000)) + .fluidOutputs(Styrene.getFluid(1000)) + .duration(120).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(PhosphoricAcid.getFluid(1000)) + .fluidInputs(Benzene.getFluid(8000)) + .fluidInputs(Propene.getFluid(8000)) + .fluidOutputs(Cumene.getFluid(8000)) + .duration(1920).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Silicon) + .fluidInputs(Chloromethane.getFluid(2000)) + .fluidOutputs(Dimethyldichlorosilane.getFluid(1000)) + .duration(240).EUt(96).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .fluidInputs(Oxygen.getFluid(2000)) + .fluidInputs(Ethylene.getFluid(1000)) + .fluidOutputs(AceticAcid.getFluid(1000)) + .duration(100).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(CarbonMonoxde.getFluid(1000)) + .fluidInputs(Methanol.getFluid(1000)) + .fluidOutputs(AceticAcid.getFluid(1000)) + .duration(300).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Hydrogen.getFluid(4000)) + .fluidInputs(CarbonMonoxde.getFluid(2000)) + .fluidOutputs(AceticAcid.getFluid(1000)) + .duration(320).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(4)) + .input(dust, Carbon, 2) + .fluidInputs(Oxygen.getFluid(2000)) + .fluidInputs(Hydrogen.getFluid(4000)) + .fluidOutputs(AceticAcid.getFluid(1000)) + .duration(480).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Aluminium, 4) + .fluidInputs(IndiumConcentrate.getFluid(1000)) + .output(dustTiny, Indium) + .fluidOutputs(LeadZincSolution.getFluid(1000)) + .duration(50).EUt(600).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(3)) + .fluidInputs(NitrogenDioxide.getFluid(3000)) + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(NitricOxide.getFluid(1000)) + .fluidOutputs(NitricAcid.getFluid(2000)) + .duration(30).EUt(240).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Oxygen.getFluid(10000)) + .fluidInputs(Ammonia.getFluid(4000)) + .fluidOutputs(NitricOxide.getFluid(4000)) + .fluidOutputs(Water.getFluid(6000)) + .duration(320).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(3)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(AceticAcid.getFluid(1000)) + .fluidInputs(Ethylene.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .fluidOutputs(VinylAcetate.getFluid(1000)) + .duration(180).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .input(dust, Carbon) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidOutputs(CarbonMonoxde.getFluid(1000)) + .duration(40).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .input(gem, Charcoal) + .fluidInputs(Oxygen.getFluid(1000)) + .output(dustTiny, Ash) + .fluidOutputs(CarbonMonoxde.getFluid(1000)) + .duration(80).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .input(gem, Coal) + .fluidInputs(Oxygen.getFluid(1000)) + .output(dustTiny, Ash) + .fluidOutputs(CarbonMonoxde.getFluid(1000)) + .duration(80).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .input(dust, Charcoal) + .fluidInputs(Oxygen.getFluid(1000)) + .output(dustTiny, Ash) + .fluidOutputs(CarbonMonoxde.getFluid(1000)) + .duration(80).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .duration(80).EUt(8) + .input(dust, Coal) + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Oxygen.getFluid(1000)) + .outputs(OreDictUnifier.get(dustTiny, Ash)) + .fluidOutputs(CarbonMonoxde.getFluid(1000)) + .buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Carbon) + .fluidInputs(CarbonDioxide.getFluid(1000)) + .fluidOutputs(CarbonMonoxde.getFluid(2000)) + .duration(800).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Hydrogen.getFluid(3000)) + .fluidInputs(Nitrogen.getFluid(1000)) + .fluidOutputs(Ammonia.getFluid(1000)) + .duration(320).EUt(384).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(HypochlorousAcid.getFluid(1000)) + .fluidInputs(Ammonia.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .fluidOutputs(Chloramine.getFluid(1000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Ammonia.getFluid(1000)) + .fluidInputs(Methanol.getFluid(2000)) + .fluidOutputs(Water.getFluid(2000)) + .fluidOutputs(Dimethylamine.getFluid(1000)) + .duration(240).EUt(120).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, PhosphorousPentoxide, 14) + .fluidInputs(Water.getFluid(6000)) + .fluidOutputs(PhosphoricAcid.getFluid(4000)) + .duration(40).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Phosphorus, 2) + .fluidInputs(Water.getFluid(3000)) + .fluidInputs(Oxygen.getFluid(5000)) + .fluidOutputs(PhosphoricAcid.getFluid(2000)) + .duration(320).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(HydrochloricAcid.getFluid(1000)) + .fluidInputs(Methanol.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .fluidOutputs(Chloromethane.getFluid(1000)) + .duration(160).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(crushedPurified, Sphalerite) + .input(crushedPurified, Galena) + .fluidInputs(SulfuricAcid.getFluid(4000)) + .fluidOutputs(IndiumConcentrate.getFluid(1000)) + .duration(60).EUt(150).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Phosphorus, 4) + .fluidInputs(Oxygen.getFluid(10000)) + .output(dust, PhosphorousPentoxide, 14) + .duration(40).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .input(dust, Carbon) + .fluidInputs(Oxygen.getFluid(2000)) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(40).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .input(gem, Charcoal) + .fluidInputs(Oxygen.getFluid(2000)) + .output(dustTiny, Ash) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(80).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .input(gem, Coal) + .fluidInputs(Oxygen.getFluid(2000)) + .output(dustTiny, Ash) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(80).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .input(dust, Charcoal) + .fluidInputs(Oxygen.getFluid(2000)) + .output(dustTiny, Ash) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(80).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .input(dust, Coal) + .fluidInputs(Oxygen.getFluid(2000)) + .output(dustTiny, Ash) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(80).EUt(8).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .fluidInputs(Water.getFluid(2000)) + .fluidInputs(Methane.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(8000)) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(150).EUt(480).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(AceticAcid.getFluid(4000)) + .fluidInputs(Ethenone.getFluid(4000)) + .fluidInputs(NitricAcid.getFluid(4000)) + .fluidOutputs(Tetranitromethane.getFluid(1000)) + .fluidOutputs(AceticAcid.getFluid(7000)) + .duration(480).EUt(120).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(3)) + .fluidInputs(Oxygen.getFluid(7000)) + .fluidInputs(Ammonia.getFluid(2000)) + .fluidOutputs(DinitrogenTetroxide.getFluid(1000)) + .fluidOutputs(Water.getFluid(3000)) + .duration(480).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .fluidInputs(NitrogenDioxide.getFluid(2000)) + .fluidOutputs(DinitrogenTetroxide.getFluid(1000)) + .duration(640).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(23)) + .fluidInputs(Oxygen.getFluid(7000)) + .fluidInputs(Nitrogen.getFluid(2000)) + .fluidInputs(Hydrogen.getFluid(6000)) + .fluidOutputs(DinitrogenTetroxide.getFluid(1000)) + .fluidOutputs(Water.getFluid(3000)) + .duration(1100).EUt(480).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) + .fluidInputs(Oxygen.getFluid(4000)) + .fluidInputs(Ammonia.getFluid(1000)) + .fluidOutputs(NitricAcid.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .duration(320).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(4)) + .fluidInputs(Water.getFluid(1000)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(NitrogenDioxide.getFluid(2000)) + .fluidOutputs(NitricAcid.getFluid(2000)) + .duration(240).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(24)) + .fluidInputs(Oxygen.getFluid(4000)) + .fluidInputs(Nitrogen.getFluid(1000)) + .fluidInputs(Hydrogen.getFluid(3000)) + .fluidOutputs(NitricAcid.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .duration(320).EUt(480).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dustTiny, SodiumHydroxide) + .fluidInputs(SeedOil.getFluid(6000)) + .fluidInputs(Methanol.getFluid(1000)) + .fluidOutputs(Glycerol.getFluid(1000)) + .fluidOutputs(BioDiesel.getFluid(6000)) + .duration(600).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dustTiny, SodiumHydroxide) + .fluidInputs(SeedOil.getFluid(6000)) + .fluidInputs(Ethanol.getFluid(1000)) + .fluidOutputs(Glycerol.getFluid(1000)) + .fluidOutputs(BioDiesel.getFluid(6000)) + .duration(600).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(SulfuricAcid.getFluid(1000)) + .fluidInputs(Ethanol.getFluid(1000)) + .fluidOutputs(Ethylene.getFluid(1000)) + .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) + .duration(1200).EUt(120).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, SodiumBisulfate, 7) + .fluidInputs(Water.getFluid(1000)) + .output(dust, SodiumHydroxide, 3) + .fluidOutputs(SulfuricAcid.getFluid(1000)) + .duration(60).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .inputs(new ItemStack(Items.SUGAR)) + .input(dustTiny, Plastic) + .fluidInputs(Toluene.getFluid(133)) + .outputs(MetaItems.GELLED_TOLUENE.getStackForm(2)) + .duration(140).EUt(192).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(HydrogenSulfide.getFluid(1000)) + .fluidInputs(Oxygen.getFluid(4000)) + .fluidOutputs(SulfuricAcid.getFluid(1000)) + .duration(320).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Saltpeter) + .fluidInputs(Naphtha.getFluid(576)) + .output(dustTiny, Potassium) + .fluidOutputs(Polycaprolactam.getFluid(1296)) + .duration(640).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Epichlorhydrin.getFluid(144)) + .fluidInputs(Naphtha.getFluid(3000)) + .fluidInputs(NitrogenDioxide.getFluid(1000)) + .fluidOutputs(Epoxid.getFluid(L * 2)) + .duration(240).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Uraninite) + .input(dust, Aluminium) + .output(dust, Uranium) + .fluidOutputs(Aluminium.getFluid(144)) + .fluidOutputs(Oxygen.getFluid(2000)) + .duration(1000).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Uraninite) + .input(dust, Magnesium) + .output(dust, Uranium) + .fluidOutputs(Magnesium.getFluid(144)) + .fluidOutputs(Oxygen.getFluid(2000)) + .duration(1000).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Calcium) + .input(dust, Carbon) + .fluidInputs(Oxygen.getFluid(3000)) + .output(dust, Calcite, 5) + .duration(500).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Sulfur) + .fluidInputs(Water.getFluid(4000)) + .fluidOutputs(SulfuricAcid.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(6000)) + .duration(1150).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(crushedPurified, Chalcopyrite) + .fluidInputs(NitricAcid.getFluid(1000)) + .output(dustTiny, PlatinumGroupSludge) + .fluidOutputs(CopperSulfateSolution.getFluid(1000)) + .duration(50).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(crushedPurified, Pentlandite) + .fluidInputs(NitricAcid.getFluid(1000)) + .output(dustTiny, PlatinumGroupSludge) + .fluidOutputs(NickelSulfateSolution.getFluid(1000)) + .duration(50).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Quicklime, 2) + .fluidInputs(CarbonDioxide.getFluid(1000)) + .output(dust, Calcite, 5) + .duration(80).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Magnesia, 2) + .fluidInputs(CarbonDioxide.getFluid(1000)) + .output(dust, Magnesite, 5) + .duration(80).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) + .input(dust, Calcite, 5) + .output(dust, Quicklime, 2) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(240).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Magnesite, 5) + .output(dust, Magnesia, 2) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .duration(240).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, RawRubber, 9) + .input(dust, Sulfur) + .fluidOutputs(Rubber.getFluid(1296)) + .duration(600).EUt(16).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .inputs(new ItemStack(Items.MELON, 1, OreDictionary.WILDCARD_VALUE)) + .input(nugget, Gold, 8) + .outputs(new ItemStack(Items.SPECKLED_MELON)) + .duration(50).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .inputs(new ItemStack(Items.CARROT, 1, OreDictionary.WILDCARD_VALUE)) + .input(nugget, Gold, 8) + .outputs(new ItemStack(Items.GOLDEN_CARROT)) + .duration(50).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .inputs(new ItemStack(Items.APPLE, 1, OreDictionary.WILDCARD_VALUE)) + .input(ingot, Gold, 8) + .outputs(new ItemStack(Items.GOLDEN_APPLE)) + .duration(50).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .inputs(new ItemStack(Items.APPLE, 1, OreDictionary.WILDCARD_VALUE)) + .input(block, Gold, 8) + .outputs(new ItemStack(Items.GOLDEN_APPLE, 1, 1)) + .duration(50).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .inputs(MetaItems.GELLED_TOLUENE.getStackForm(4)) + .fluidInputs(SulfuricAcid.getFluid(250)) + .outputs(new ItemStack(Blocks.TNT)) + .duration(200).EUt(24).buildAndRegister(); + } +} From d8c161e986aea62063c4eaabb80c0892a74e265f Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Sun, 21 Feb 2021 01:11:40 -0600 Subject: [PATCH 03/17] Add recipes, cleanup --- .../api/unification/material/Materials.java | 2 +- .../loaders/recipe/ChemistryRecipes.java | 36 ++++++++++++++++-- .../loaders/recipe/ReactorRecipes.java | 38 ++++++++++++++----- 3 files changed, 62 insertions(+), 14 deletions(-) diff --git a/src/main/java/gregtech/api/unification/material/Materials.java b/src/main/java/gregtech/api/unification/material/Materials.java index a38cba58dc..4757ddf13d 100644 --- a/src/main/java/gregtech/api/unification/material/Materials.java +++ b/src/main/java/gregtech/api/unification/material/Materials.java @@ -235,7 +235,7 @@ public static void register() { public static IngotMaterial Graphene = new IngotMaterial(205, "graphene", 0x808080, SHINY, 2, of(), GENERATE_PLATE); public static GemMaterial Jasper = new GemMaterial(206, "jasper", 0xC85050, EMERALD, 2, of(), STD_GEM | NO_SMELTING | HIGH_SIFTER_OUTPUT); public static IngotMaterial Osmiridium = new IngotMaterial(207, "osmiridium", 0x6464FF, METALLIC, 3, of(new MaterialStack(Iridium, 3), new MaterialStack(Osmium, 1)), EXT2_METAL, null, 9.0F, 3.0f, 3152, 2500); - public static FluidMaterial NitrationMixture = new FluidMaterial(352, "nitration_mixture", 0xEEEEAA, FLUID, of(new MaterialStack(NitricAcid, 1), new MaterialStack(SulfuricAcid, 1)), 0); + public static FluidMaterial NitrationMixture = new FluidMaterial(352, "nitration_mixture", 0xEEEEAA, FLUID, of(new MaterialStack(NitricAcid, 1), new MaterialStack(SulfuricAcid, 1)), DISABLE_DECOMPOSITION); public static DustMaterial Tenorite = new DustMaterial(358, "tenorite", 0x606060, FINE, 1, of(new MaterialStack(Copper, 1), new MaterialStack(Oxygen, 1)), GENERATE_ORE); public static DustMaterial Cuprite = new DustMaterial(359, "cuprite", 0x770000, RUBY, 2, of(new MaterialStack(Copper, 2), new MaterialStack(Oxygen, 1)), GENERATE_ORE); public static DustMaterial Bornite = new DustMaterial(360, "bornite", 0xC11800, DULL, 1, of(new MaterialStack(Copper, 5), new MaterialStack(Iron, 1), new MaterialStack(Sulfur, 4)), GENERATE_ORE); diff --git a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java b/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java index 4747edbdb6..1f12490a3d 100644 --- a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java @@ -2,15 +2,11 @@ import gregtech.api.unification.OreDictUnifier; import gregtech.api.unification.material.type.DustMaterial; -import gregtech.api.unification.material.type.FluidMaterial; import gregtech.common.items.MetaItems; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import java.util.HashMap; -import java.util.Map; - import static gregtech.api.unification.ore.OrePrefix.*; import static gregtech.api.unification.material.Materials.*; import static gregtech.api.recipes.RecipeMaps.*; @@ -543,6 +539,12 @@ public static void init() { .fluidOutputs(LPG.getFluid(290)) .duration(20).EUt(5).buildAndRegister(); + CENTRIFUGE_RECIPES.recipeBuilder() + .fluidInputs(NitrationMixture.getFluid(2000)) + .fluidOutputs(NitricAcid.getFluid(1000)) + .fluidOutputs(SulfuricAcid.getFluid(1000)) + .duration(192).EUt(30).buildAndRegister(); + // Mixer MIXER_RECIPES.recipeBuilder() @@ -703,6 +705,32 @@ public static void init() { .output(dust, Carbon, 4) .duration(100).EUt(26).buildAndRegister(); + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(AceticAcid.getFluid(2000)) + .fluidOutputs(Ethane.getFluid(1000)) + .fluidOutputs(CarbonDioxide.getFluid(2000)) + .fluidOutputs(Hydrogen.getFluid(2000)) + .duration(512).EUt(60).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(Chloromethane.getFluid(2000)) + .fluidOutputs(Ethane.getFluid(1000)) + .fluidOutputs(Chlorine.getFluid(2000)) + .duration(400).EUt(60).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(MethylAcetate.getFluid(1000)) + .output(dust, Carbon) + .fluidOutputs(AceticAcid.getFluid(1000)) + .duration(264).EUt(60).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(Acetone.getFluid(2000)) + .output(dust, Carbon, 3) + .fluidOutputs(Propane.getFluid(1000)) + .fluidOutputs(Water.getFluid(2000)) + .duration(480).EUt(60).buildAndRegister(); + // Brewing BREWING_RECIPES.recipeBuilder() diff --git a/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java index 28c5e93d5c..fa9bfe5b80 100644 --- a/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java @@ -8,7 +8,6 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; -import static gregtech.api.GTValues.L; import static gregtech.api.recipes.RecipeMaps.CHEMICAL_RECIPES; import static gregtech.api.unification.material.Materials.*; import static gregtech.api.unification.ore.OrePrefix.*; @@ -18,9 +17,6 @@ public class ReactorRecipes { public static void init() { - // Plastics / Rubbers ************************************************* - - // Rubber CHEMICAL_RECIPES.recipeBuilder() .fluidInputs(Isoprene.getFluid(144)) .fluidInputs(Air.getFluid(2000)) @@ -33,7 +29,6 @@ public static void init() { .output(dust, RawRubber, 3) .duration(160).EUt(30).buildAndRegister(); - // S-B Rubber CHEMICAL_RECIPES.recipeBuilder() .fluidInputs(Butadiene.getFluid(108)) .fluidInputs(Styrene.getFluid(36)) @@ -54,7 +49,6 @@ public static void init() { .fluidOutputs(StyreneButadieneRubber.getFluid(1296)) .duration(600).EUt(30).buildAndRegister(); - CHEMICAL_RECIPES.recipeBuilder() .notConsumable(new IntCircuitIngredient(2)) .fluidInputs(Propene.getFluid(2000)) @@ -76,8 +70,6 @@ public static void init() { .fluidOutputs(Isoprene.getFluid(1000)) .duration(120).EUt(30).buildAndRegister(); - - CHEMICAL_RECIPES.recipeBuilder() .input(dust, SodiumSulfide, 3) .fluidInputs(Dichlorobenzene.getFluid(1000)) @@ -923,7 +915,7 @@ public static void init() { .fluidInputs(Epichlorhydrin.getFluid(144)) .fluidInputs(Naphtha.getFluid(3000)) .fluidInputs(NitrogenDioxide.getFluid(1000)) - .fluidOutputs(Epoxid.getFluid(L * 2)) + .fluidOutputs(Epoxid.getFluid(288)) .duration(240).EUt(30).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() @@ -1030,5 +1022,33 @@ public static void init() { .fluidInputs(SulfuricAcid.getFluid(250)) .outputs(new ItemStack(Blocks.TNT)) .duration(200).EUt(24).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, SodiumBisulfate, 7) + .fluidInputs(Water.getFluid(1000)) + .output(dust, SodiumHydroxide, 3) + .fluidOutputs(SulfuricAcid.getFluid(1000)) + .duration(60).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, SodiumHydroxide, 6) + .fluidInputs(Dichlorobenzene.getFluid(1000)) + .output(dust, Salt, 4) + .fluidOutputs(Phenol.getFluid(1000)) + .fluidOutputs(Oxygen.getFluid(1000)) + .duration(120).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Benzene.getFluid(1000)) + .fluidInputs(Oxygen.getFluid(1000)) + .fluidOutputs(Phenol.getFluid(1000)) + .duration(400).EUt(2000).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(Glycerol.getFluid(1000)) + .fluidInputs(CarbonDioxide.getFluid(1000)) + .fluidOutputs(Ethylene.getFluid(2000)) + .fluidOutputs(Oxygen.getFluid(5000)) + .duration(400).EUt(200).buildAndRegister(); } } From c293906bd52229066681263860a78311891defb8 Mon Sep 17 00:00:00 2001 From: thecodingchicken Date: Sun, 21 Feb 2021 18:38:19 -0500 Subject: [PATCH 04/17] Uraninite change regarding progression Due to @DStrand1 's pull request here(https://github.com/GregTechCE/GregTech/pull/1414), the recipes for processing Uraninite into Uranium 238 were changed. One of the recipes, which outputs 144mb of liquid Aluminium, allows you to delay making a blast furnace until further materials are needed. By changing the EU/t cost of the recipe to require MV power, it ensures that you need to make your first aluminium from smelting in the blast furnace. In the future, uraninite processing needs to be looked at in more depth. --- src/main/java/gregtech/loaders/recipe/ReactorRecipes.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java index fa9bfe5b80..9167c7904a 100644 --- a/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java @@ -924,7 +924,7 @@ public static void init() { .output(dust, Uranium) .fluidOutputs(Aluminium.getFluid(144)) .fluidOutputs(Oxygen.getFluid(2000)) - .duration(1000).EUt(30).buildAndRegister(); + .duration(500).EUt(80).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() .input(dust, Uraninite) @@ -932,7 +932,7 @@ public static void init() { .output(dust, Uranium) .fluidOutputs(Magnesium.getFluid(144)) .fluidOutputs(Oxygen.getFluid(2000)) - .duration(1000).EUt(30).buildAndRegister(); + .duration(500).EUt(80).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() .input(dust, Calcium) From ceddb17563b257b237fc12709bbf39db534f29a3 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Tue, 23 Feb 2021 14:35:12 -0600 Subject: [PATCH 05/17] Second Refactor --- .../gregtech/api/recipes/RecipeBuilder.java | 51 + .../loaders/recipe/ChemistryRecipes.java | 885 ------------------ .../loaders/recipe/MachineRecipeLoader.java | 20 +- .../recipe/chemistry/BrewingRecipes.java | 122 +++ .../recipe/chemistry/ChemicalBathRecipes.java | 92 ++ .../recipe/chemistry/ChemistryRecipes.java | 62 ++ .../recipe/chemistry/CrackingRecipes.java | 142 +++ .../recipe/chemistry/DistillationRecipes.java | 365 ++++++++ .../recipe/chemistry/MixerRecipes.java | 113 +++ .../{ => chemistry}/ReactorRecipes.java | 2 +- .../recipe/chemistry/SeparationRecipes.java | 142 +++ 11 files changed, 1091 insertions(+), 905 deletions(-) delete mode 100644 src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java create mode 100644 src/main/java/gregtech/loaders/recipe/chemistry/BrewingRecipes.java create mode 100644 src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java create mode 100644 src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java create mode 100644 src/main/java/gregtech/loaders/recipe/chemistry/CrackingRecipes.java create mode 100644 src/main/java/gregtech/loaders/recipe/chemistry/DistillationRecipes.java create mode 100644 src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java rename src/main/java/gregtech/loaders/recipe/{ => chemistry}/ReactorRecipes.java (99%) create mode 100644 src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java diff --git a/src/main/java/gregtech/api/recipes/RecipeBuilder.java b/src/main/java/gregtech/api/recipes/RecipeBuilder.java index a789de6e2c..7a4fe9d92f 100644 --- a/src/main/java/gregtech/api/recipes/RecipeBuilder.java +++ b/src/main/java/gregtech/api/recipes/RecipeBuilder.java @@ -9,10 +9,13 @@ import gregtech.api.util.GTLog; import gregtech.api.util.GTUtility; import gregtech.api.util.ValidationResult; +import net.minecraft.block.Block; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.item.crafting.Ingredient; import net.minecraft.util.NonNullList; import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.oredict.OreDictionary; import org.apache.commons.lang3.builder.ToStringBuilder; import java.util.*; @@ -116,6 +119,34 @@ public R input(OrePrefix orePrefix, Material material, int count) { return inputs(CountableIngredient.from(orePrefix, material, count)); } + public R input(Item item) { + return input(item, 1); + } + + public R input(Item item, int count) { + return inputs(new ItemStack(item, count)); + } + + public R input(Item item, int count, int meta) { + return inputs(new ItemStack(item, count, meta)); + } + + public R input(Item item, int count, boolean wild) { + return inputs(new ItemStack(item, count, OreDictionary.WILDCARD_VALUE)); + } + + public R input(Block item) { + return input(item, 1); + } + + public R input(Block item, int count) { + return inputs(new ItemStack(item, count)); + } + + public R input(Block item, int count, boolean wild) { + return inputs(new ItemStack(item, count, OreDictionary.WILDCARD_VALUE)); + } + public R inputs(CountableIngredient... inputs) { List ingredients = new ArrayList<>(); for (CountableIngredient input : inputs) { @@ -159,6 +190,26 @@ public R output(OrePrefix orePrefix, Material material, int count) { return outputs(OreDictUnifier.get(orePrefix, material, count)); } + public R output(Item item) { + return output(item, 1); + } + + public R output(Item item, int count) { + return outputs(new ItemStack(item, count)); + } + + public R output(Item item, int count, int meta) { + return outputs(new ItemStack(item, count, meta)); + } + + public R output(Block item) { + return output(item, 1); + } + + public R output(Block item, int count) { + return outputs(new ItemStack(item, count)); + } + public R outputs(ItemStack... outputs) { return outputs(Arrays.asList(outputs)); } diff --git a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java b/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java deleted file mode 100644 index 1f12490a3d..0000000000 --- a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java +++ /dev/null @@ -1,885 +0,0 @@ -package gregtech.loaders.recipe; - -import gregtech.api.unification.OreDictUnifier; -import gregtech.api.unification.material.type.DustMaterial; -import gregtech.common.items.MetaItems; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; - -import static gregtech.api.unification.ore.OrePrefix.*; -import static gregtech.api.unification.material.Materials.*; -import static gregtech.api.recipes.RecipeMaps.*; - -public class ChemistryRecipes { - - public static void init() { - - //Cracking Unit - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Ethane.getFluid(1000)) - .fluidOutputs(HydroCrackedEthane.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Ethylene.getFluid(1000)) - .fluidOutputs(HydroCrackedEthylene.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Propene.getFluid(1000)) - .fluidOutputs(HydroCrackedPropene.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Propane.getFluid(1000)) - .fluidOutputs(HydroCrackedPropane.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(LightFuel.getFluid(1000)) - .fluidOutputs(HydroCrackedLightFuel.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Butane.getFluid(1000)) - .fluidOutputs(HydroCrackedButane.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Naphtha.getFluid(1000)) - .fluidOutputs(HydroCrackedNaphtha.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(HeavyFuel.getFluid(1000)) - .fluidOutputs(HydroCrackedHeavyFuel.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Gas.getFluid(1000)) - .fluidOutputs(HydroCrackedGas.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Butene.getFluid(1000)) - .fluidOutputs(HydroCrackedButene.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Hydrogen.getFluid(2000)) - .fluidInputs(Butadiene.getFluid(1000)) - .fluidOutputs(HydroCrackedButadiene.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Ethane.getFluid(1000)) - .fluidOutputs(SteamCrackedEthane.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Ethylene.getFluid(1000)) - .fluidOutputs(SteamCrackedEthylene.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Propene.getFluid(1000)) - .fluidOutputs(SteamCrackedPropene.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Propane.getFluid(1000)) - .fluidOutputs(SteamCrackedPropane.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(LightFuel.getFluid(1000)) - .fluidOutputs(CrackedLightFuel.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Butane.getFluid(1000)) - .fluidOutputs(SteamCrackedButane.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Naphtha.getFluid(1000)) - .fluidOutputs(SteamCrackedNaphtha.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(HeavyFuel.getFluid(1000)) - .fluidOutputs(CrackedHeavyFuel.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Gas.getFluid(1000)) - .fluidOutputs(SteamCrackedGas.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Butene.getFluid(1000)) - .fluidOutputs(SteamCrackedButene.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - CRACKING_RECIPES.recipeBuilder() - .fluidInputs(Steam.getFluid(2000)) - .fluidInputs(Butadiene.getFluid(1000)) - .fluidOutputs(SteamCrackedButadiene.getFluid(1000)) - .duration(40).EUt(120).buildAndRegister(); - - - //Distillation Tower / Distillery - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(Creosote.getFluid(24)) - .fluidOutputs(Lubricant.getFluid(12)) - .duration(16).EUt(96).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedEthane.getFluid(1000)) - .fluidOutputs(Methane.getFluid(2000)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedEthane.getFluid(1000)) - .output(dustSmall, Carbon, 2) - .fluidOutputs(Methane.getFluid(1500)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedEthylene.getFluid(1000)) - .fluidOutputs(Ethane.getFluid(1000)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedEthylene.getFluid(1000)) - .output(dust, Carbon) - .fluidOutputs(Methane.getFluid(1000)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedPropene.getFluid(1000)) - .fluidOutputs(Propane.getFluid(500)) - .fluidOutputs(Ethylene.getFluid(500)) - .fluidOutputs(Methane.getFluid(500)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedPropene.getFluid(1000)) - .output(dustSmall, Carbon, 6) - .fluidOutputs(Methane.getFluid(1500)) - .duration(180).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedPropane.getFluid(1000)) - .fluidOutputs(Ethane.getFluid(1000)) - .fluidOutputs(Methane.getFluid(1000)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedPropane.getFluid(2000)) - .output(dustSmall, Carbon, 3) - .fluidOutputs(Ethylene.getFluid(500)) - .fluidOutputs(Methane.getFluid(3500)) - .duration(240).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedLightFuel.getFluid(1000)) - .fluidOutputs(Naphtha.getFluid(800)) - .fluidOutputs(Butane.getFluid(150)) - .fluidOutputs(Propane.getFluid(200)) - .fluidOutputs(Ethane.getFluid(125)) - .fluidOutputs(Methane.getFluid(125)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(CrackedLightFuel.getFluid(1000)) - .output(dustTiny, Carbon) - .fluidOutputs(HeavyFuel.getFluid(50)) - .fluidOutputs(Naphtha.getFluid(100)) - .fluidOutputs(Toluene.getFluid(30)) - .fluidOutputs(Benzene.getFluid(150)) - .fluidOutputs(Butene.getFluid(65)) - .fluidOutputs(Butadiene.getFluid(50)) - .fluidOutputs(Propane.getFluid(50)) - .fluidOutputs(Propene.getFluid(250)) - .fluidOutputs(Ethane.getFluid(50)) - .fluidOutputs(Ethylene.getFluid(250)) - .fluidOutputs(Methane.getFluid(250)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedButane.getFluid(750)) - .fluidOutputs(Propane.getFluid(500)) - .fluidOutputs(Ethane.getFluid(500)) - .fluidOutputs(Methane.getFluid(500)) - .duration(90).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedButane.getFluid(2000)) - .output(dustSmall, Carbon, 9) - .fluidOutputs(Propane.getFluid(250)) - .fluidOutputs(Ethane.getFluid(250)) - .fluidOutputs(Ethylene.getFluid(250)) - .fluidOutputs(Methane.getFluid(4000)) - .duration(240).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedNaphtha.getFluid(1000)) - .fluidOutputs(Butane.getFluid(800)) - .fluidOutputs(Propane.getFluid(300)) - .fluidOutputs(Ethane.getFluid(250)) - .fluidOutputs(Methane.getFluid(250)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedNaphtha.getFluid(1000)) - .output(dustTiny, Carbon, 3) - .fluidOutputs(HeavyFuel.getFluid(25)) - .fluidOutputs(LightFuel.getFluid(50)) - .fluidOutputs(Toluene.getFluid(20)) - .fluidOutputs(Benzene.getFluid(100)) - .fluidOutputs(Butene.getFluid(50)) - .fluidOutputs(Butadiene.getFluid(50)) - .fluidOutputs(Propane.getFluid(15)) - .fluidOutputs(Propene.getFluid(300)) - .fluidOutputs(Ethane.getFluid(65)) - .fluidOutputs(Ethylene.getFluid(500)) - .fluidOutputs(Methane.getFluid(500)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedHeavyFuel.getFluid(1000)) - .fluidOutputs(LightFuel.getFluid(600)) - .fluidOutputs(Naphtha.getFluid(100)) - .fluidOutputs(Butane.getFluid(100)) - .fluidOutputs(Propane.getFluid(100)) - .fluidOutputs(Ethane.getFluid(75)) - .fluidOutputs(Methane.getFluid(75)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(CrackedHeavyFuel.getFluid(1000)) - .output(dustTiny, Carbon, 3) - .fluidOutputs(LightFuel.getFluid(100)) - .fluidOutputs(Naphtha.getFluid(125)) - .fluidOutputs(Toluene.getFluid(80)) - .fluidOutputs(Benzene.getFluid(400)) - .fluidOutputs(Butene.getFluid(80)) - .fluidOutputs(Butadiene.getFluid(50)) - .fluidOutputs(Propane.getFluid(10)) - .fluidOutputs(Propene.getFluid(100)) - .fluidOutputs(Ethane.getFluid(15)) - .fluidOutputs(Ethylene.getFluid(150)) - .fluidOutputs(Methane.getFluid(150)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedGas.getFluid(1000)) - .fluidOutputs(Methane.getFluid(1400)) - .fluidOutputs(Hydrogen.getFluid(1340)) - .fluidOutputs(Helium.getFluid(20)) - .duration(120).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedGas.getFluid(800)) - .output(dustTiny, Carbon) - .fluidOutputs(Propene.getFluid(6)) - .fluidOutputs(Ethane.getFluid(6)) - .fluidOutputs(Ethylene.getFluid(20)) - .fluidOutputs(Methane.getFluid(914)) - .fluidOutputs(Helium.getFluid(16)) - .duration(96).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedButene.getFluid(750)) - .fluidOutputs(Butane.getFluid(250)) - .fluidOutputs(Propene.getFluid(250)) - .fluidOutputs(Ethane.getFluid(250)) - .fluidOutputs(Methane.getFluid(250)) - .duration(90).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedButene.getFluid(2000)) - .output(dust, Carbon, 3) - .fluidOutputs(Propene.getFluid(250)) - .fluidOutputs(Ethylene.getFluid(625)) - .fluidOutputs(Methane.getFluid(3000)) - .duration(240).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(HydroCrackedButadiene.getFluid(750)) - .fluidOutputs(Butene.getFluid(500)) - .fluidOutputs(Ethylene.getFluid(500)) - .duration(90).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SteamCrackedButadiene.getFluid(2000)) - .output(dust, Carbon, 2) - .fluidOutputs(Propene.getFluid(250)) - .fluidOutputs(Ethylene.getFluid(375)) - .fluidOutputs(Methane.getFluid(2250)) - .duration(240).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(OilLight.getFluid(150)) - .fluidOutputs(SulfuricHeavyFuel.getFluid(10)) - .fluidOutputs(SulfuricLightFuel.getFluid(20)) - .fluidOutputs(SulfuricNaphtha.getFluid(30)) - .fluidOutputs(SulfuricGas.getFluid(240)) - .duration(20).EUt(96).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(OilMedium.getFluid(100)) - .fluidOutputs(SulfuricHeavyFuel.getFluid(15)) - .fluidOutputs(SulfuricLightFuel.getFluid(50)) - .fluidOutputs(SulfuricNaphtha.getFluid(20)) - .fluidOutputs(SulfuricGas.getFluid(60)) - .duration(20).EUt(96).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(OilHeavy.getFluid(150)) - .fluidOutputs(SulfuricHeavyFuel.getFluid(250)) - .fluidOutputs(SulfuricLightFuel.getFluid(45)) - .fluidOutputs(SulfuricNaphtha.getFluid(15)) - .fluidOutputs(SulfuricGas.getFluid(600)) - .duration(20).EUt(288).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(Oil.getFluid(50)) - .fluidOutputs(SulfuricHeavyFuel.getFluid(15)) - .fluidOutputs(SulfuricLightFuel.getFluid(50)) - .fluidOutputs(SulfuricNaphtha.getFluid(20)) - .fluidOutputs(SulfuricGas.getFluid(60)) - .duration(20).EUt(96).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(DilutedHydrochloricAcid.getFluid(2000)) - .fluidOutputs(Water.getFluid(1000)) - .fluidOutputs(HydrochloricAcid.getFluid(1000)) - .duration(600).EUt(64).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(DilutedSulfuricAcid.getFluid(3000)) - .fluidOutputs(SulfuricAcid.getFluid(2000)) - .fluidOutputs(Water.getFluid(1000)) - .duration(600).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(CharcoalByproducts.getFluid(1000)) - .output(dustSmall, Charcoal) - .fluidOutputs(WoodTar.getFluid(250)) - .fluidOutputs(WoodVinegar.getFluid(500)) - .fluidOutputs(WoodGas.getFluid(250)) - .duration(40).EUt(256).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(WoodTar.getFluid(1000)) - .fluidOutputs(Creosote.getFluid(500)) - .fluidOutputs(Phenol.getFluid(75)) - .fluidOutputs(Benzene.getFluid(350)) - .fluidOutputs(Toluene.getFluid(75)) - .duration(40).EUt(256).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(WoodGas.getFluid(1000)) - .fluidOutputs(CarbonDioxide.getFluid(490)) - .fluidOutputs(Ethylene.getFluid(20)) - .fluidOutputs(Methane.getFluid(130)) - .fluidOutputs(CarbonMonoxde.getFluid(340)) - .fluidOutputs(Hydrogen.getFluid(20)) - .duration(40).EUt(256).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(Water.getFluid(576)) - .fluidOutputs(DistilledWater.getFluid(520)) - .duration(160).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(Acetone.getFluid(1000)) - .fluidOutputs(Ethenone.getFluid(1000)) - .fluidOutputs(Methane.getFluid(1000)) - .duration(80).EUt(640).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(CalciumAcetate.getFluid(1000)) - .output(dust, Quicklime, 2) - .fluidOutputs(Acetone.getFluid(1000)) - .fluidOutputs(CarbonDioxide.getFluid(1000)) - .fluidOutputs(Water.getFluid(1000)) - .duration(80).EUt(120).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(SeedOil.getFluid(24)) - .fluidOutputs(Lubricant.getFluid(12)) - .duration(16).EUt(96).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(WoodVinegar.getFluid(1000)) - .fluidOutputs(AceticAcid.getFluid(100)) - .fluidOutputs(Water.getFluid(500)) - .fluidOutputs(Ethanol.getFluid(10)) - .fluidOutputs(Methanol.getFluid(300)) - .fluidOutputs(Acetone.getFluid(50)) - .fluidOutputs(MethylAcetate.getFluid(10)) - .duration(40).EUt(256).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(FermentedBiomass.getFluid(1000)) - .fluidOutputs(AceticAcid.getFluid(25)) - .fluidOutputs(Water.getFluid(375)) - .fluidOutputs(Ethanol.getFluid(150)) - .fluidOutputs(Methanol.getFluid(150)) - .fluidOutputs(Ammonia.getFluid(100)) - .fluidOutputs(CarbonDioxide.getFluid(400)) - .fluidOutputs(Methane.getFluid(600)) - .duration(75).EUt(180).buildAndRegister(); - - DISTILLATION_RECIPES.recipeBuilder() - .fluidInputs(Biomass.getFluid(1000)) - .output(dustSmall, Wood, 2) - .fluidOutputs(Ethanol.getFluid(600)) - .fluidOutputs(Water.getFluid(300)) - .duration(32).EUt(400).buildAndRegister(); - - DISTILLERY_RECIPES.recipeBuilder() - .circuitMeta(1) - .fluidInputs(Toluene.getFluid(30)) - .fluidOutputs(LightFuel.getFluid(30)) - .duration(160).EUt(24).buildAndRegister(); - - DISTILLERY_RECIPES.recipeBuilder() - .circuitMeta(1) - .fluidInputs(HeavyFuel.getFluid(10)) - .fluidOutputs(Toluene.getFluid(4)) - .duration(16).EUt(24).buildAndRegister(); - - DISTILLERY_RECIPES.recipeBuilder() - .circuitMeta(2) - .fluidInputs(HeavyFuel.getFluid(10)) - .fluidOutputs(Benzene.getFluid(4)) - .duration(16).EUt(24).buildAndRegister(); - - DISTILLERY_RECIPES.recipeBuilder() - .circuitMeta(3) - .fluidInputs(HeavyFuel.getFluid(20)) - .fluidOutputs(Phenol.getFluid(5)) - .duration(32).EUt(24).buildAndRegister(); - - DISTILLERY_RECIPES.recipeBuilder() - .circuitMeta(4) - .fluidInputs(OilLight.getFluid(300)) - .fluidOutputs(Oil.getFluid(100)) - .duration(16).EUt(24).buildAndRegister(); - - DISTILLERY_RECIPES.recipeBuilder() - .circuitMeta(4) - .fluidInputs(OilMedium.getFluid(200)) - .fluidOutputs(Oil.getFluid(100)) - .duration(16).EUt(24).buildAndRegister(); - - DISTILLERY_RECIPES.recipeBuilder() - .circuitMeta(4) - .fluidInputs(OilHeavy.getFluid(100)) - .fluidOutputs(Oil.getFluid(100)) - .duration(16).EUt(24).buildAndRegister(); - - - // Centrifuge - CENTRIFUGE_RECIPES.recipeBuilder() - .fluidInputs(Gas.getFluid(8000)) - .fluidOutputs(Methane.getFluid(4000)) - .fluidOutputs(LPG.getFluid(4000)) - .duration(200).EUt(5).buildAndRegister(); - - CENTRIFUGE_RECIPES.recipeBuilder() - .fluidInputs(LiquidAir.getFluid(53000)) - .fluidOutputs(Nitrogen.getFluid(32000)) - .fluidOutputs(Nitrogen.getFluid(8000)) - .fluidOutputs(Oxygen.getFluid(11000)) - .fluidOutputs(Argon.getFluid(1000)) - .fluidOutputs(NobleGases.getFluid(1000)) - .duration(1484).EUt(5).buildAndRegister(); - - CENTRIFUGE_RECIPES.recipeBuilder() - .fluidInputs(NobleGases.getFluid(34000)) - .fluidOutputs(CarbonDioxide.getFluid(21000)) - .fluidOutputs(Helium.getFluid(9000)) - .fluidOutputs(Methane.getFluid(3000)) - .fluidOutputs(Deuterium.getFluid(1000)) - .duration(680).EUt(5).buildAndRegister(); - - CENTRIFUGE_RECIPES.recipeBuilder() - .fluidInputs(Butane.getFluid(320)) - .fluidOutputs(LPG.getFluid(370)) - .duration(20).EUt(5).buildAndRegister(); - - CENTRIFUGE_RECIPES.recipeBuilder() - .fluidInputs(Propane.getFluid(320)) - .fluidOutputs(LPG.getFluid(290)) - .duration(20).EUt(5).buildAndRegister(); - - CENTRIFUGE_RECIPES.recipeBuilder() - .fluidInputs(NitrationMixture.getFluid(2000)) - .fluidOutputs(NitricAcid.getFluid(1000)) - .fluidOutputs(SulfuricAcid.getFluid(1000)) - .duration(192).EUt(30).buildAndRegister(); - - - // Mixer - MIXER_RECIPES.recipeBuilder() - .fluidInputs(NitricAcid.getFluid(1000)) - .fluidInputs(SulfuricAcid.getFluid(1000)) - .fluidOutputs(NitrationMixture.getFluid(2000)) - .duration(500).EUt(2).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .input(dust, Sodium, 2) - .input(dust, Sulfur) - .output(dust, SodiumSulfide, 3) - .duration(60).EUt(30).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .fluidInputs(PolyvinylAcetate.getFluid(1000)) - .fluidInputs(Acetone.getFluid(1500)) - .fluidOutputs(Glue.getFluid(2500)) - .duration(50).EUt(8).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .fluidInputs(PolyvinylAcetate.getFluid(1000)) - .fluidInputs(MethylAcetate.getFluid(1500)) - .fluidOutputs(Glue.getFluid(2500)) - .duration(50).EUt(8).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .input(dust, Wood, 4) - .fluidInputs(SulfuricAcid.getFluid(1000)) - .outputs(new ItemStack(Items.COAL, 1, 1)) - .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) - .duration(1200).EUt(2).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.SUGAR, 4)) - .fluidInputs(SulfuricAcid.getFluid(1000)) - .outputs(new ItemStack(Items.COAL, 1, 1)) - .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) - .duration(1200).EUt(2).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .input(dust, Gallium) - .input(dust, Arsenic) - .output(dust, GalliumArsenide, 2) - .duration(300).EUt(30).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .input(dust, Salt, 2) - .fluidInputs(Water.getFluid(1000)) - .fluidOutputs(SaltWater.getFluid(1000)) - .duration(40).EUt(8).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .fluidInputs(BioDiesel.getFluid(1000)) - .fluidInputs(Tetranitromethane.getFluid(40)) - .fluidOutputs(NitroFuel.getFluid(750)) - .duration(20).EUt(480).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .fluidInputs(Fuel.getFluid(1000)) - .fluidInputs(Tetranitromethane.getFluid(20)) - .fluidOutputs(NitroFuel.getFluid(1000)) - .duration(20).EUt(480).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .fluidInputs(Oxygen.getFluid(1000)) - .fluidInputs(Dimethylhydrazine.getFluid(1000)) - .fluidOutputs(RocketFuel.getFluid(3000)) - .duration(60).EUt(16).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .fluidInputs(DinitrogenTetroxide.getFluid(1000)) - .fluidInputs(Dimethylhydrazine.getFluid(1000)) - .fluidOutputs(RocketFuel.getFluid(6000)) - .duration(60).EUt(16).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .fluidInputs(LightFuel.getFluid(5000)) - .fluidInputs(HeavyFuel.getFluid(1000)) - .fluidOutputs(Fuel.getFluid(6000)) - .duration(16).EUt(120).buildAndRegister(); - - for (DustMaterial dustMaterial : new DustMaterial[]{Talc, Soapstone, Redstone}) { - MIXER_RECIPES.recipeBuilder() - .input(dust, dustMaterial) - .fluidInputs(Oil.getFluid(750)) - .fluidOutputs(Lubricant.getFluid(750)) - .duration(128).EUt(4).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .input(dust, dustMaterial) - .fluidInputs(Creosote.getFluid(750)) - .fluidOutputs(Lubricant.getFluid(750)) - .duration(128).EUt(4).buildAndRegister(); - - MIXER_RECIPES.recipeBuilder() - .input(dust, dustMaterial) - .fluidInputs(SeedOil.getFluid(750)) - .fluidOutputs(Lubricant.getFluid(750)) - .duration(128).EUt(4).buildAndRegister(); - } - - - // Electrolyzer - ELECTROLYZER_RECIPES.recipeBuilder() - .input(dust, SodiumBisulfate, 14) - .fluidOutputs(SodiumPersulfate.getFluid(1000)) - .fluidOutputs(Hydrogen.getFluid(2000)) - .duration(448).EUt(60).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .fluidInputs(SaltWater.getFluid(1000)) - .output(dust, SodiumHydroxide, 3) - .fluidOutputs(Chlorine.getFluid(1000)) - .fluidOutputs(Hydrogen.getFluid(1000)) - .duration(720).EUt(30).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .input(dust, Sphalerite, 2) - .output(dust, Zinc) - .output(dust, Sulfur) - .chancedOutput(OreDictUnifier.get(dustTiny, Gallium), 2500, 1000) - .duration(200).EUt(30).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .input(dust, Bauxite, 39) - .output(dust, Rutile, 6) - .output(dust, Aluminium, 16) - .fluidOutputs(Hydrogen.getFluid(10000)) - .fluidOutputs(Oxygen.getFluid(11000)) - .duration(2496).EUt(60).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .fluidInputs(Water.getFluid(1000)) - .fluidOutputs(Hydrogen.getFluid(2000)) - .fluidOutputs(Oxygen.getFluid(1000)) - .duration(1500).EUt(30).buildAndRegister(); - - // TODO Make sure recipe right below this works - ELECTROLYZER_RECIPES.recipeBuilder() - .fluidInputs(DistilledWater.getFluid(1000)) - .fluidOutputs(Hydrogen.getFluid(2000)) - .fluidOutputs(Oxygen.getFluid(1000)) - .duration(1500).EUt(30).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.DYE, 3)) - .output(dust, Calcium) - .duration(96).EUt(26).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .inputs(new ItemStack(Blocks.SAND, 8)) - .output(dust, SiliconDioxide) - .duration(500).EUt(25).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .input(dust, Graphite) - .output(dust, Carbon, 4) - .duration(100).EUt(26).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .fluidInputs(AceticAcid.getFluid(2000)) - .fluidOutputs(Ethane.getFluid(1000)) - .fluidOutputs(CarbonDioxide.getFluid(2000)) - .fluidOutputs(Hydrogen.getFluid(2000)) - .duration(512).EUt(60).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .fluidInputs(Chloromethane.getFluid(2000)) - .fluidOutputs(Ethane.getFluid(1000)) - .fluidOutputs(Chlorine.getFluid(2000)) - .duration(400).EUt(60).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .fluidInputs(MethylAcetate.getFluid(1000)) - .output(dust, Carbon) - .fluidOutputs(AceticAcid.getFluid(1000)) - .duration(264).EUt(60).buildAndRegister(); - - ELECTROLYZER_RECIPES.recipeBuilder() - .fluidInputs(Acetone.getFluid(2000)) - .output(dust, Carbon, 3) - .fluidOutputs(Propane.getFluid(1000)) - .fluidOutputs(Water.getFluid(2000)) - .duration(480).EUt(60).buildAndRegister(); - - - // Brewing - BREWING_RECIPES.recipeBuilder() - .inputs(MetaItems.PLANT_BALL.getStackForm()) - .fluidInputs(Honey.getFluid(180)) - .fluidOutputs(Biomass.getFluid(270)) - .duration(1440).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .input("treeSapling", 1) - .fluidInputs(Honey.getFluid(100)) - .fluidOutputs(Biomass.getFluid(150)) - .duration(600).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.POTATO)) - .fluidInputs(Honey.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.CARROT)) - .fluidInputs(Honey.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Blocks.CACTUS)) - .fluidInputs(Honey.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.REEDS)) - .fluidInputs(Honey.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Blocks.BROWN_MUSHROOM)) - .fluidInputs(Honey.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Blocks.RED_MUSHROOM)) - .fluidInputs(Honey.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.BEETROOT)) - .fluidInputs(Honey.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(MetaItems.PLANT_BALL.getStackForm()) - .fluidInputs(Juice.getFluid(180)) - .fluidOutputs(Biomass.getFluid(270)) - .duration(1440).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .input("treeSapling", 1) - .fluidInputs(Juice.getFluid(100)) - .fluidOutputs(Biomass.getFluid(150)) - .duration(600).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.POTATO)) - .fluidInputs(Juice.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.CARROT)) - .fluidInputs(Juice.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Blocks.CACTUS)) - .fluidInputs(Juice.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.REEDS)) - .fluidInputs(Juice.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Blocks.BROWN_MUSHROOM)) - .fluidInputs(Juice.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Blocks.RED_MUSHROOM)) - .fluidInputs(Juice.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - BREWING_RECIPES.recipeBuilder() - .inputs(new ItemStack(Items.BEETROOT)) - .fluidInputs(Juice.getFluid(20)) - .fluidOutputs(Biomass.getFluid(30)) - .duration(160).EUt(3).buildAndRegister(); - - - // A Few Random Recipes - FLUID_HEATER_RECIPES.recipeBuilder() - .circuitMeta(1) - .fluidInputs(Acetone.getFluid(100)) - .fluidOutputs(Ethenone.getFluid(100)) - .duration(16).EUt(30).buildAndRegister(); - - FLUID_HEATER_RECIPES.recipeBuilder() - .circuitMeta(1) - .fluidInputs(CalciumAcetate.getFluid(200)) - .fluidOutputs(Acetone.getFluid(200)) - .duration(16).EUt(30).buildAndRegister(); - - VACUUM_RECIPES.recipeBuilder() - .fluidInputs(Water.getFluid(1000)) - .fluidOutputs(Ice.getFluid(1000)) - .duration(50).EUt(30).buildAndRegister(); - - VACUUM_RECIPES.recipeBuilder() - .fluidInputs(Air.getFluid(4000)) - .fluidOutputs(LiquidAir.getFluid(4000)) - .duration(400).EUt(30).buildAndRegister(); - - BLAST_RECIPES.recipeBuilder() - .input(dust, FerriteMixture) - .fluidInputs(Oxygen.getFluid(2000)) - .output(ingot, NickelZincFerrite) - .blastFurnaceTemp(1500) - .duration(600).EUt(120).buildAndRegister(); - - FERMENTING_RECIPES.recipeBuilder() - .fluidInputs(Biomass.getFluid(100)) - .fluidOutputs(FermentedBiomass.getFluid(100)) - .duration(150).EUt(2).buildAndRegister(); - - WIREMILL_RECIPES.recipeBuilder() - .input(ingot, Polycaprolactam) - .outputs(new ItemStack(Items.STRING, 32)) - .duration(80).EUt(48).buildAndRegister(); - } -} diff --git a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java index 35c4c4ed41..8d55a44266 100644 --- a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java @@ -33,6 +33,7 @@ import gregtech.common.blocks.wood.BlockGregLog.LogVariant; import gregtech.common.items.MetaItems; import gregtech.common.metatileentities.MetaTileEntities; +import gregtech.loaders.recipe.chemistry.ChemistryRecipes; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.EnumDyeColor; @@ -58,13 +59,11 @@ public class MachineRecipeLoader { public static void init() { ChemistryRecipes.init(); - ReactorRecipes.init(); FuelRecipes.registerFuels(); AssemblyLineRecipeLoader.registerAssemblyLineRecipes(); registerCircuitRecipes(); registerCutterRecipes(); - registerChemicalBathRecipes(); registerDecompositionRecipes(); registerBlastFurnaceRecipes(); registerAssemblerRecipes(); @@ -1028,23 +1027,6 @@ private static void registerFluidRecipes() { RecipeMaps.ALLOY_SMELTER_RECIPES.recipeBuilder().input(OrePrefix.ingot, Materials.WroughtIron, 31).notConsumable(MetaItems.SHAPE_MOLD_ANVIL).outputs(new ItemStack(Blocks.ANVIL)).duration(31 * 512).EUt(4 * 16).buildAndRegister(); } - private static void registerChemicalBathRecipes() { - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(12).EUt(4).input(OrePrefix.dust, Materials.Coal, 1).fluidInputs(Materials.Water.getFluid(125)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.HydratedCoal, 1)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(200).EUt(4).input(OrePrefix.dust, Materials.Wood, 1).fluidInputs(Materials.Water.getFluid(100)).outputs(new ItemStack(Items.PAPER)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(100).EUt(4).input(OrePrefix.dust, Materials.Paper, 1).fluidInputs(Materials.Water.getFluid(100)).outputs(new ItemStack(Items.PAPER)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(100).EUt(8).inputs(new ItemStack(Items.REEDS, 1, OreDictionary.WILDCARD_VALUE)).fluidInputs(Materials.Water.getFluid(100)).outputs(new ItemStack(Items.PAPER)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(12).EUt(4).input(OrePrefix.dust, Materials.Coal, 1).fluidInputs(ModHandler.getDistilledWater(125)).outputs(OreDictUnifier.get(OrePrefix.dust, Materials.HydratedCoal, 1)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(200).EUt(4).input(OrePrefix.dust, Materials.Wood, 1).fluidInputs(ModHandler.getDistilledWater(100)).outputs(new ItemStack(Items.PAPER)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(100).EUt(4).input(OrePrefix.dust, Materials.Paper, 1).fluidInputs(ModHandler.getDistilledWater(100)).outputs(new ItemStack(Items.PAPER)).buildAndRegister(); - - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(100).EUt(8).inputs(new ItemStack(Items.REEDS, 1, OreDictionary.WILDCARD_VALUE)).fluidInputs(ModHandler.getDistilledWater(100)).outputs(new ItemStack(Items.PAPER)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(400).EUt(2).inputs(new ItemStack(Blocks.WOOL, 1, OreDictionary.WILDCARD_VALUE)).fluidInputs(Materials.Chlorine.getFluid(50)).outputs(new ItemStack(Blocks.WOOL)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(400).EUt(2).inputs(new ItemStack(Blocks.CARPET, 1, OreDictionary.WILDCARD_VALUE)).fluidInputs(Materials.Chlorine.getFluid(25)).outputs(new ItemStack(Blocks.CARPET)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(400).EUt(2).inputs(new ItemStack(Blocks.STAINED_HARDENED_CLAY, 1, OreDictionary.WILDCARD_VALUE)).fluidInputs(Materials.Chlorine.getFluid(50)).outputs(new ItemStack(Blocks.HARDENED_CLAY)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(400).EUt(2).inputs(new ItemStack(Blocks.STAINED_GLASS, 1, OreDictionary.WILDCARD_VALUE)).fluidInputs(Materials.Chlorine.getFluid(50)).outputs(new ItemStack(Blocks.GLASS)).buildAndRegister(); - RecipeMaps.CHEMICAL_BATH_RECIPES.recipeBuilder().duration(400).EUt(2).inputs(new ItemStack(Blocks.STAINED_GLASS_PANE, 1, OreDictionary.WILDCARD_VALUE)).fluidInputs(Materials.Chlorine.getFluid(20)).outputs(new ItemStack(Blocks.GLASS_PANE)).buildAndRegister(); - } - private static & IStringSerializable> void registerBrickRecipe(StoneBlock stoneBlock, T normalVariant, T brickVariant) { ModHandler.addShapedRecipe(stoneBlock.getRegistryName().getResourceDomain() + "_" + normalVariant + "_bricks", stoneBlock.getItemVariant(brickVariant, ChiselingVariant.NORMAL, 4), diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/BrewingRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/BrewingRecipes.java new file mode 100644 index 0000000000..8b6130a8d6 --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/BrewingRecipes.java @@ -0,0 +1,122 @@ +package gregtech.loaders.recipe.chemistry; + +import gregtech.common.items.MetaItems; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; + +import static gregtech.api.recipes.RecipeMaps.BREWING_RECIPES; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.unification.material.Materials.Biomass; + +public class BrewingRecipes { + + public static void init() { + BREWING_RECIPES.recipeBuilder() + .inputs(MetaItems.PLANT_BALL.getStackForm()) + .fluidInputs(Honey.getFluid(180)) + .fluidOutputs(Biomass.getFluid(270)) + .duration(1440).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input("treeSapling", 1) + .fluidInputs(Honey.getFluid(100)) + .fluidOutputs(Biomass.getFluid(150)) + .duration(600).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Items.POTATO) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Items.CARROT) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Blocks.CACTUS) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Items.REEDS) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Blocks.BROWN_MUSHROOM) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Blocks.RED_MUSHROOM) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Items.BEETROOT) + .fluidInputs(Honey.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .inputs(MetaItems.PLANT_BALL.getStackForm()) + .fluidInputs(Juice.getFluid(180)) + .fluidOutputs(Biomass.getFluid(270)) + .duration(1440).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input("treeSapling", 1) + .fluidInputs(Juice.getFluid(100)) + .fluidOutputs(Biomass.getFluid(150)) + .duration(600).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Items.POTATO) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Items.CARROT) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Blocks.CACTUS) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Items.REEDS) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Blocks.BROWN_MUSHROOM) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Blocks.RED_MUSHROOM) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + + BREWING_RECIPES.recipeBuilder() + .input(Items.BEETROOT) + .fluidInputs(Juice.getFluid(20)) + .fluidOutputs(Biomass.getFluid(30)) + .duration(160).EUt(3).buildAndRegister(); + } +} diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java new file mode 100644 index 0000000000..068e108247 --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java @@ -0,0 +1,92 @@ +package gregtech.loaders.recipe.chemistry; + +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; + +import static gregtech.api.recipes.RecipeMaps.CHEMICAL_BATH_RECIPES; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.unification.ore.OrePrefix.dust; + +public class ChemicalBathRecipes { + + public static void init() { + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(dust, Coal) + .fluidInputs(Water.getFluid(125)) + .output(dust, HydratedCoal) + .duration(12).EUt(4).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(dust, Wood) + .fluidInputs(Water.getFluid(100)) + .output(Items.PAPER) + .duration(200).EUt(4).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(dust, Paper) + .fluidInputs(Water.getFluid(100)) + .output(Items.PAPER) + .duration(100).EUt(4).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(Items.REEDS, 1, true) + .fluidInputs(Water.getFluid(100)) + .output(Items.PAPER) + .duration(100).EUt(8).buildAndRegister(); + + // TODO Check recipe exists + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(dust, Coal) + .fluidInputs(DistilledWater.getFluid(125)) + .output(dust, HydratedCoal) + .duration(12).EUt(4).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(dust, Wood) + .fluidInputs(DistilledWater.getFluid(100)) + .output(Items.PAPER) + .duration(200).EUt(4).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(dust, Paper) + .fluidInputs(DistilledWater.getFluid(100)) + .output(Items.PAPER) + .duration(100).EUt(4).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(Items.REEDS, 1, true) + .fluidInputs(DistilledWater.getFluid(100)) + .output(Items.PAPER) + .duration(100).EUt(8).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(Blocks.WOOL, 1, true) + .fluidInputs(Chlorine.getFluid(50)) + .output(Blocks.WOOL) + .duration(400).EUt(2).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(Blocks.CARPET, 1, true) + .fluidInputs(Chlorine.getFluid(25)) + .output(Blocks.CARPET) + .duration(400).EUt(2).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(Blocks.STAINED_HARDENED_CLAY, 1, true) + .fluidInputs(Chlorine.getFluid(50)) + .output(Blocks.HARDENED_CLAY) + .duration(400).EUt(2).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(Blocks.STAINED_GLASS, 1, true) + .fluidInputs(Chlorine.getFluid(50)) + .output(Blocks.GLASS) + .duration(400).EUt(2).buildAndRegister(); + + CHEMICAL_BATH_RECIPES.recipeBuilder() + .input(Blocks.STAINED_GLASS_PANE, 1, true) + .fluidInputs(Chlorine.getFluid(20)) + .output(Blocks.GLASS_PANE) + .duration(400).EUt(2).buildAndRegister(); + } +} diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java new file mode 100644 index 0000000000..fdc52ce61f --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java @@ -0,0 +1,62 @@ +package gregtech.loaders.recipe.chemistry; + +import net.minecraft.init.Items; + +import static gregtech.api.unification.ore.OrePrefix.*; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.recipes.RecipeMaps.*; + +public class ChemistryRecipes { + + public static void init() { + + CrackingRecipes.init(); + DistillationRecipes.init(); + SeparationRecipes.init(); + MixerRecipes.init(); + BrewingRecipes.init(); + ChemicalBathRecipes.init(); + ReactorRecipes.init(); + + + // A Few Random Recipes + FLUID_HEATER_RECIPES.recipeBuilder() + .circuitMeta(1) + .fluidInputs(Acetone.getFluid(100)) + .fluidOutputs(Ethenone.getFluid(100)) + .duration(16).EUt(30).buildAndRegister(); + + FLUID_HEATER_RECIPES.recipeBuilder() + .circuitMeta(1) + .fluidInputs(CalciumAcetate.getFluid(200)) + .fluidOutputs(Acetone.getFluid(200)) + .duration(16).EUt(30).buildAndRegister(); + + VACUUM_RECIPES.recipeBuilder() + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(Ice.getFluid(1000)) + .duration(50).EUt(30).buildAndRegister(); + + VACUUM_RECIPES.recipeBuilder() + .fluidInputs(Air.getFluid(4000)) + .fluidOutputs(LiquidAir.getFluid(4000)) + .duration(400).EUt(30).buildAndRegister(); + + BLAST_RECIPES.recipeBuilder() + .input(dust, FerriteMixture) + .fluidInputs(Oxygen.getFluid(2000)) + .output(ingot, NickelZincFerrite) + .blastFurnaceTemp(1500) + .duration(600).EUt(120).buildAndRegister(); + + FERMENTING_RECIPES.recipeBuilder() + .fluidInputs(Biomass.getFluid(100)) + .fluidOutputs(FermentedBiomass.getFluid(100)) + .duration(150).EUt(2).buildAndRegister(); + + WIREMILL_RECIPES.recipeBuilder() + .input(ingot, Polycaprolactam) + .output(Items.STRING, 32) + .duration(80).EUt(48).buildAndRegister(); + } +} diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/CrackingRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/CrackingRecipes.java new file mode 100644 index 0000000000..d8d775f82c --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/CrackingRecipes.java @@ -0,0 +1,142 @@ +package gregtech.loaders.recipe.chemistry; + +import static gregtech.api.recipes.RecipeMaps.CRACKING_RECIPES; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.unification.material.Materials.SteamCrackedButadiene; + +public class CrackingRecipes { + + public static void init() { + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Ethane.getFluid(1000)) + .fluidOutputs(HydroCrackedEthane.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Ethylene.getFluid(1000)) + .fluidOutputs(HydroCrackedEthylene.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Propene.getFluid(1000)) + .fluidOutputs(HydroCrackedPropene.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Propane.getFluid(1000)) + .fluidOutputs(HydroCrackedPropane.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(LightFuel.getFluid(1000)) + .fluidOutputs(HydroCrackedLightFuel.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Butane.getFluid(1000)) + .fluidOutputs(HydroCrackedButane.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Naphtha.getFluid(1000)) + .fluidOutputs(HydroCrackedNaphtha.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(HeavyFuel.getFluid(1000)) + .fluidOutputs(HydroCrackedHeavyFuel.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Gas.getFluid(1000)) + .fluidOutputs(HydroCrackedGas.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Butene.getFluid(1000)) + .fluidOutputs(HydroCrackedButene.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Hydrogen.getFluid(2000)) + .fluidInputs(Butadiene.getFluid(1000)) + .fluidOutputs(HydroCrackedButadiene.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Ethane.getFluid(1000)) + .fluidOutputs(SteamCrackedEthane.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Ethylene.getFluid(1000)) + .fluidOutputs(SteamCrackedEthylene.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Propene.getFluid(1000)) + .fluidOutputs(SteamCrackedPropene.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Propane.getFluid(1000)) + .fluidOutputs(SteamCrackedPropane.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(LightFuel.getFluid(1000)) + .fluidOutputs(CrackedLightFuel.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Butane.getFluid(1000)) + .fluidOutputs(SteamCrackedButane.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Naphtha.getFluid(1000)) + .fluidOutputs(SteamCrackedNaphtha.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(HeavyFuel.getFluid(1000)) + .fluidOutputs(CrackedHeavyFuel.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Gas.getFluid(1000)) + .fluidOutputs(SteamCrackedGas.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Butene.getFluid(1000)) + .fluidOutputs(SteamCrackedButene.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + + CRACKING_RECIPES.recipeBuilder() + .fluidInputs(Steam.getFluid(2000)) + .fluidInputs(Butadiene.getFluid(1000)) + .fluidOutputs(SteamCrackedButadiene.getFluid(1000)) + .duration(40).EUt(120).buildAndRegister(); + } +} diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/DistillationRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/DistillationRecipes.java new file mode 100644 index 0000000000..2b62cd92c9 --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/DistillationRecipes.java @@ -0,0 +1,365 @@ +package gregtech.loaders.recipe.chemistry; + +import static gregtech.api.recipes.RecipeMaps.DISTILLATION_RECIPES; +import static gregtech.api.recipes.RecipeMaps.DISTILLERY_RECIPES; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.unification.ore.OrePrefix.*; + +public class DistillationRecipes { + + public static void init() { + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(Creosote.getFluid(24)) + .fluidOutputs(Lubricant.getFluid(12)) + .duration(16).EUt(96).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedEthane.getFluid(1000)) + .fluidOutputs(Methane.getFluid(2000)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedEthane.getFluid(1000)) + .output(dustSmall, Carbon, 2) + .fluidOutputs(Methane.getFluid(1500)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedEthylene.getFluid(1000)) + .fluidOutputs(Ethane.getFluid(1000)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedEthylene.getFluid(1000)) + .output(dust, Carbon) + .fluidOutputs(Methane.getFluid(1000)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedPropene.getFluid(1000)) + .fluidOutputs(Propane.getFluid(500)) + .fluidOutputs(Ethylene.getFluid(500)) + .fluidOutputs(Methane.getFluid(500)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedPropene.getFluid(1000)) + .output(dustSmall, Carbon, 6) + .fluidOutputs(Methane.getFluid(1500)) + .duration(180).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedPropane.getFluid(1000)) + .fluidOutputs(Ethane.getFluid(1000)) + .fluidOutputs(Methane.getFluid(1000)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedPropane.getFluid(2000)) + .output(dustSmall, Carbon, 3) + .fluidOutputs(Ethylene.getFluid(500)) + .fluidOutputs(Methane.getFluid(3500)) + .duration(240).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedLightFuel.getFluid(1000)) + .fluidOutputs(Naphtha.getFluid(800)) + .fluidOutputs(Butane.getFluid(150)) + .fluidOutputs(Propane.getFluid(200)) + .fluidOutputs(Ethane.getFluid(125)) + .fluidOutputs(Methane.getFluid(125)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(CrackedLightFuel.getFluid(1000)) + .output(dustTiny, Carbon) + .fluidOutputs(HeavyFuel.getFluid(50)) + .fluidOutputs(Naphtha.getFluid(100)) + .fluidOutputs(Toluene.getFluid(30)) + .fluidOutputs(Benzene.getFluid(150)) + .fluidOutputs(Butene.getFluid(65)) + .fluidOutputs(Butadiene.getFluid(50)) + .fluidOutputs(Propane.getFluid(50)) + .fluidOutputs(Propene.getFluid(250)) + .fluidOutputs(Ethane.getFluid(50)) + .fluidOutputs(Ethylene.getFluid(250)) + .fluidOutputs(Methane.getFluid(250)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedButane.getFluid(750)) + .fluidOutputs(Propane.getFluid(500)) + .fluidOutputs(Ethane.getFluid(500)) + .fluidOutputs(Methane.getFluid(500)) + .duration(90).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedButane.getFluid(2000)) + .output(dustSmall, Carbon, 9) + .fluidOutputs(Propane.getFluid(250)) + .fluidOutputs(Ethane.getFluid(250)) + .fluidOutputs(Ethylene.getFluid(250)) + .fluidOutputs(Methane.getFluid(4000)) + .duration(240).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedNaphtha.getFluid(1000)) + .fluidOutputs(Butane.getFluid(800)) + .fluidOutputs(Propane.getFluid(300)) + .fluidOutputs(Ethane.getFluid(250)) + .fluidOutputs(Methane.getFluid(250)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedNaphtha.getFluid(1000)) + .output(dustTiny, Carbon, 3) + .fluidOutputs(HeavyFuel.getFluid(25)) + .fluidOutputs(LightFuel.getFluid(50)) + .fluidOutputs(Toluene.getFluid(20)) + .fluidOutputs(Benzene.getFluid(100)) + .fluidOutputs(Butene.getFluid(50)) + .fluidOutputs(Butadiene.getFluid(50)) + .fluidOutputs(Propane.getFluid(15)) + .fluidOutputs(Propene.getFluid(300)) + .fluidOutputs(Ethane.getFluid(65)) + .fluidOutputs(Ethylene.getFluid(500)) + .fluidOutputs(Methane.getFluid(500)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedHeavyFuel.getFluid(1000)) + .fluidOutputs(LightFuel.getFluid(600)) + .fluidOutputs(Naphtha.getFluid(100)) + .fluidOutputs(Butane.getFluid(100)) + .fluidOutputs(Propane.getFluid(100)) + .fluidOutputs(Ethane.getFluid(75)) + .fluidOutputs(Methane.getFluid(75)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(CrackedHeavyFuel.getFluid(1000)) + .output(dustTiny, Carbon, 3) + .fluidOutputs(LightFuel.getFluid(100)) + .fluidOutputs(Naphtha.getFluid(125)) + .fluidOutputs(Toluene.getFluid(80)) + .fluidOutputs(Benzene.getFluid(400)) + .fluidOutputs(Butene.getFluid(80)) + .fluidOutputs(Butadiene.getFluid(50)) + .fluidOutputs(Propane.getFluid(10)) + .fluidOutputs(Propene.getFluid(100)) + .fluidOutputs(Ethane.getFluid(15)) + .fluidOutputs(Ethylene.getFluid(150)) + .fluidOutputs(Methane.getFluid(150)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedGas.getFluid(1000)) + .fluidOutputs(Methane.getFluid(1400)) + .fluidOutputs(Hydrogen.getFluid(1340)) + .fluidOutputs(Helium.getFluid(20)) + .duration(120).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedGas.getFluid(800)) + .output(dustTiny, Carbon) + .fluidOutputs(Propene.getFluid(6)) + .fluidOutputs(Ethane.getFluid(6)) + .fluidOutputs(Ethylene.getFluid(20)) + .fluidOutputs(Methane.getFluid(914)) + .fluidOutputs(Helium.getFluid(16)) + .duration(96).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedButene.getFluid(750)) + .fluidOutputs(Butane.getFluid(250)) + .fluidOutputs(Propene.getFluid(250)) + .fluidOutputs(Ethane.getFluid(250)) + .fluidOutputs(Methane.getFluid(250)) + .duration(90).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedButene.getFluid(2000)) + .output(dust, Carbon, 3) + .fluidOutputs(Propene.getFluid(250)) + .fluidOutputs(Ethylene.getFluid(625)) + .fluidOutputs(Methane.getFluid(3000)) + .duration(240).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(HydroCrackedButadiene.getFluid(750)) + .fluidOutputs(Butene.getFluid(500)) + .fluidOutputs(Ethylene.getFluid(500)) + .duration(90).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SteamCrackedButadiene.getFluid(2000)) + .output(dust, Carbon, 2) + .fluidOutputs(Propene.getFluid(250)) + .fluidOutputs(Ethylene.getFluid(375)) + .fluidOutputs(Methane.getFluid(2250)) + .duration(240).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(OilLight.getFluid(150)) + .fluidOutputs(SulfuricHeavyFuel.getFluid(10)) + .fluidOutputs(SulfuricLightFuel.getFluid(20)) + .fluidOutputs(SulfuricNaphtha.getFluid(30)) + .fluidOutputs(SulfuricGas.getFluid(240)) + .duration(20).EUt(96).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(OilMedium.getFluid(100)) + .fluidOutputs(SulfuricHeavyFuel.getFluid(15)) + .fluidOutputs(SulfuricLightFuel.getFluid(50)) + .fluidOutputs(SulfuricNaphtha.getFluid(20)) + .fluidOutputs(SulfuricGas.getFluid(60)) + .duration(20).EUt(96).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(OilHeavy.getFluid(150)) + .fluidOutputs(SulfuricHeavyFuel.getFluid(250)) + .fluidOutputs(SulfuricLightFuel.getFluid(45)) + .fluidOutputs(SulfuricNaphtha.getFluid(15)) + .fluidOutputs(SulfuricGas.getFluid(600)) + .duration(20).EUt(288).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(Oil.getFluid(50)) + .fluidOutputs(SulfuricHeavyFuel.getFluid(15)) + .fluidOutputs(SulfuricLightFuel.getFluid(50)) + .fluidOutputs(SulfuricNaphtha.getFluid(20)) + .fluidOutputs(SulfuricGas.getFluid(60)) + .duration(20).EUt(96).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(DilutedHydrochloricAcid.getFluid(2000)) + .fluidOutputs(Water.getFluid(1000)) + .fluidOutputs(HydrochloricAcid.getFluid(1000)) + .duration(600).EUt(64).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(DilutedSulfuricAcid.getFluid(3000)) + .fluidOutputs(SulfuricAcid.getFluid(2000)) + .fluidOutputs(Water.getFluid(1000)) + .duration(600).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(CharcoalByproducts.getFluid(1000)) + .output(dustSmall, Charcoal) + .fluidOutputs(WoodTar.getFluid(250)) + .fluidOutputs(WoodVinegar.getFluid(500)) + .fluidOutputs(WoodGas.getFluid(250)) + .duration(40).EUt(256).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(WoodTar.getFluid(1000)) + .fluidOutputs(Creosote.getFluid(500)) + .fluidOutputs(Phenol.getFluid(75)) + .fluidOutputs(Benzene.getFluid(350)) + .fluidOutputs(Toluene.getFluid(75)) + .duration(40).EUt(256).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(WoodGas.getFluid(1000)) + .fluidOutputs(CarbonDioxide.getFluid(490)) + .fluidOutputs(Ethylene.getFluid(20)) + .fluidOutputs(Methane.getFluid(130)) + .fluidOutputs(CarbonMonoxde.getFluid(340)) + .fluidOutputs(Hydrogen.getFluid(20)) + .duration(40).EUt(256).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(Water.getFluid(576)) + .fluidOutputs(DistilledWater.getFluid(520)) + .duration(160).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(Acetone.getFluid(1000)) + .fluidOutputs(Ethenone.getFluid(1000)) + .fluidOutputs(Methane.getFluid(1000)) + .duration(80).EUt(640).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(CalciumAcetate.getFluid(1000)) + .output(dust, Quicklime, 2) + .fluidOutputs(Acetone.getFluid(1000)) + .fluidOutputs(CarbonDioxide.getFluid(1000)) + .fluidOutputs(Water.getFluid(1000)) + .duration(80).EUt(120).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(SeedOil.getFluid(24)) + .fluidOutputs(Lubricant.getFluid(12)) + .duration(16).EUt(96).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(WoodVinegar.getFluid(1000)) + .fluidOutputs(AceticAcid.getFluid(100)) + .fluidOutputs(Water.getFluid(500)) + .fluidOutputs(Ethanol.getFluid(10)) + .fluidOutputs(Methanol.getFluid(300)) + .fluidOutputs(Acetone.getFluid(50)) + .fluidOutputs(MethylAcetate.getFluid(10)) + .duration(40).EUt(256).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(FermentedBiomass.getFluid(1000)) + .fluidOutputs(AceticAcid.getFluid(25)) + .fluidOutputs(Water.getFluid(375)) + .fluidOutputs(Ethanol.getFluid(150)) + .fluidOutputs(Methanol.getFluid(150)) + .fluidOutputs(Ammonia.getFluid(100)) + .fluidOutputs(CarbonDioxide.getFluid(400)) + .fluidOutputs(Methane.getFluid(600)) + .duration(75).EUt(180).buildAndRegister(); + + DISTILLATION_RECIPES.recipeBuilder() + .fluidInputs(Biomass.getFluid(1000)) + .output(dustSmall, Wood, 2) + .fluidOutputs(Ethanol.getFluid(600)) + .fluidOutputs(Water.getFluid(300)) + .duration(32).EUt(400).buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .circuitMeta(1) + .fluidInputs(Toluene.getFluid(30)) + .fluidOutputs(LightFuel.getFluid(30)) + .duration(160).EUt(24).buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .circuitMeta(1) + .fluidInputs(HeavyFuel.getFluid(10)) + .fluidOutputs(Toluene.getFluid(4)) + .duration(16).EUt(24).buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .circuitMeta(2) + .fluidInputs(HeavyFuel.getFluid(10)) + .fluidOutputs(Benzene.getFluid(4)) + .duration(16).EUt(24).buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .circuitMeta(3) + .fluidInputs(HeavyFuel.getFluid(20)) + .fluidOutputs(Phenol.getFluid(5)) + .duration(32).EUt(24).buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .circuitMeta(4) + .fluidInputs(OilLight.getFluid(300)) + .fluidOutputs(Oil.getFluid(100)) + .duration(16).EUt(24).buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .circuitMeta(4) + .fluidInputs(OilMedium.getFluid(200)) + .fluidOutputs(Oil.getFluid(100)) + .duration(16).EUt(24).buildAndRegister(); + + DISTILLERY_RECIPES.recipeBuilder() + .circuitMeta(4) + .fluidInputs(OilHeavy.getFluid(100)) + .fluidOutputs(Oil.getFluid(100)) + .duration(16).EUt(24).buildAndRegister(); + } +} diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java new file mode 100644 index 0000000000..c13db2beab --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java @@ -0,0 +1,113 @@ +package gregtech.loaders.recipe.chemistry; + +import gregtech.api.unification.material.type.DustMaterial; +import net.minecraft.init.Items; + +import static gregtech.api.recipes.RecipeMaps.MIXER_RECIPES; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.unification.ore.OrePrefix.dust; + +public class MixerRecipes { + + public static void init() { + MIXER_RECIPES.recipeBuilder() + .fluidInputs(NitricAcid.getFluid(1000)) + .fluidInputs(SulfuricAcid.getFluid(1000)) + .fluidOutputs(NitrationMixture.getFluid(2000)) + .duration(500).EUt(2).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .input(dust, Sodium, 2) + .input(dust, Sulfur) + .output(dust, SodiumSulfide, 3) + .duration(60).EUt(30).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .fluidInputs(PolyvinylAcetate.getFluid(1000)) + .fluidInputs(Acetone.getFluid(1500)) + .fluidOutputs(Glue.getFluid(2500)) + .duration(50).EUt(8).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .fluidInputs(PolyvinylAcetate.getFluid(1000)) + .fluidInputs(MethylAcetate.getFluid(1500)) + .fluidOutputs(Glue.getFluid(2500)) + .duration(50).EUt(8).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .input(dust, Wood, 4) + .fluidInputs(SulfuricAcid.getFluid(1000)) + .output(Items.COAL, 1, 1) + .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) + .duration(1200).EUt(2).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .input(Items.SUGAR, 4) + .fluidInputs(SulfuricAcid.getFluid(1000)) + .output(Items.COAL, 1, 1) + .fluidOutputs(DilutedSulfuricAcid.getFluid(1000)) + .duration(1200).EUt(2).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .input(dust, Gallium) + .input(dust, Arsenic) + .output(dust, GalliumArsenide, 2) + .duration(300).EUt(30).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .input(dust, Salt, 2) + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(SaltWater.getFluid(1000)) + .duration(40).EUt(8).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .fluidInputs(BioDiesel.getFluid(1000)) + .fluidInputs(Tetranitromethane.getFluid(40)) + .fluidOutputs(NitroFuel.getFluid(750)) + .duration(20).EUt(480).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .fluidInputs(Fuel.getFluid(1000)) + .fluidInputs(Tetranitromethane.getFluid(20)) + .fluidOutputs(NitroFuel.getFluid(1000)) + .duration(20).EUt(480).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .fluidInputs(Oxygen.getFluid(1000)) + .fluidInputs(Dimethylhydrazine.getFluid(1000)) + .fluidOutputs(RocketFuel.getFluid(3000)) + .duration(60).EUt(16).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .fluidInputs(DinitrogenTetroxide.getFluid(1000)) + .fluidInputs(Dimethylhydrazine.getFluid(1000)) + .fluidOutputs(RocketFuel.getFluid(6000)) + .duration(60).EUt(16).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .fluidInputs(LightFuel.getFluid(5000)) + .fluidInputs(HeavyFuel.getFluid(1000)) + .fluidOutputs(Fuel.getFluid(6000)) + .duration(16).EUt(120).buildAndRegister(); + + for (DustMaterial dustMaterial : new DustMaterial[]{Talc, Soapstone, Redstone}) { + MIXER_RECIPES.recipeBuilder() + .input(dust, dustMaterial) + .fluidInputs(Oil.getFluid(750)) + .fluidOutputs(Lubricant.getFluid(750)) + .duration(128).EUt(4).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .input(dust, dustMaterial) + .fluidInputs(Creosote.getFluid(750)) + .fluidOutputs(Lubricant.getFluid(750)) + .duration(128).EUt(4).buildAndRegister(); + + MIXER_RECIPES.recipeBuilder() + .input(dust, dustMaterial) + .fluidInputs(SeedOil.getFluid(750)) + .fluidOutputs(Lubricant.getFluid(750)) + .duration(128).EUt(4).buildAndRegister(); + } + } +} diff --git a/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java similarity index 99% rename from src/main/java/gregtech/loaders/recipe/ReactorRecipes.java rename to src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java index 9167c7904a..2e73cd6e3f 100644 --- a/src/main/java/gregtech/loaders/recipe/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java @@ -1,4 +1,4 @@ -package gregtech.loaders.recipe; +package gregtech.loaders.recipe.chemistry; import gregtech.api.recipes.ingredients.IntCircuitIngredient; import gregtech.api.unification.OreDictUnifier; diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java new file mode 100644 index 0000000000..201ec1baea --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java @@ -0,0 +1,142 @@ +package gregtech.loaders.recipe.chemistry; + +import gregtech.api.unification.OreDictUnifier; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; + +import static gregtech.api.recipes.RecipeMaps.CENTRIFUGE_RECIPES; +import static gregtech.api.recipes.RecipeMaps.ELECTROLYZER_RECIPES; +import static gregtech.api.unification.material.Materials.*; +import static gregtech.api.unification.ore.OrePrefix.dust; +import static gregtech.api.unification.ore.OrePrefix.dustTiny; + +public class SeparationRecipes { + + public static void init() { + + // Centrifuge + CENTRIFUGE_RECIPES.recipeBuilder() + .fluidInputs(Gas.getFluid(8000)) + .fluidOutputs(Methane.getFluid(4000)) + .fluidOutputs(LPG.getFluid(4000)) + .duration(200).EUt(5).buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .fluidInputs(LiquidAir.getFluid(53000)) + .fluidOutputs(Nitrogen.getFluid(32000)) + .fluidOutputs(Nitrogen.getFluid(8000)) + .fluidOutputs(Oxygen.getFluid(11000)) + .fluidOutputs(Argon.getFluid(1000)) + .fluidOutputs(NobleGases.getFluid(1000)) + .duration(1484).EUt(5).buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .fluidInputs(NobleGases.getFluid(34000)) + .fluidOutputs(CarbonDioxide.getFluid(21000)) + .fluidOutputs(Helium.getFluid(9000)) + .fluidOutputs(Methane.getFluid(3000)) + .fluidOutputs(Deuterium.getFluid(1000)) + .duration(680).EUt(5).buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .fluidInputs(Butane.getFluid(320)) + .fluidOutputs(LPG.getFluid(370)) + .duration(20).EUt(5).buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .fluidInputs(Propane.getFluid(320)) + .fluidOutputs(LPG.getFluid(290)) + .duration(20).EUt(5).buildAndRegister(); + + CENTRIFUGE_RECIPES.recipeBuilder() + .fluidInputs(NitrationMixture.getFluid(2000)) + .fluidOutputs(NitricAcid.getFluid(1000)) + .fluidOutputs(SulfuricAcid.getFluid(1000)) + .duration(192).EUt(30).buildAndRegister(); + + + // Electrolyzer + ELECTROLYZER_RECIPES.recipeBuilder() + .input(dust, SodiumBisulfate, 14) + .fluidOutputs(SodiumPersulfate.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(2000)) + .duration(448).EUt(60).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(SaltWater.getFluid(1000)) + .output(dust, SodiumHydroxide, 3) + .fluidOutputs(Chlorine.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(1000)) + .duration(720).EUt(30).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .input(dust, Sphalerite, 2) + .output(dust, Zinc) + .output(dust, Sulfur) + .chancedOutput(OreDictUnifier.get(dustTiny, Gallium), 2500, 1000) + .duration(200).EUt(30).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .input(dust, Bauxite, 39) + .output(dust, Rutile, 6) + .output(dust, Aluminium, 16) + .fluidOutputs(Hydrogen.getFluid(10000)) + .fluidOutputs(Oxygen.getFluid(11000)) + .duration(2496).EUt(60).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(Water.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(2000)) + .fluidOutputs(Oxygen.getFluid(1000)) + .duration(1500).EUt(30).buildAndRegister(); + + // TODO Make sure recipe right below this works + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(DistilledWater.getFluid(1000)) + .fluidOutputs(Hydrogen.getFluid(2000)) + .fluidOutputs(Oxygen.getFluid(1000)) + .duration(1500).EUt(30).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .inputs(new ItemStack(Items.DYE, 3)) + .output(dust, Calcium) + .duration(96).EUt(26).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .inputs(new ItemStack(Blocks.SAND, 8)) + .output(dust, SiliconDioxide) + .duration(500).EUt(25).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .input(dust, Graphite) + .output(dust, Carbon, 4) + .duration(100).EUt(26).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(AceticAcid.getFluid(2000)) + .fluidOutputs(Ethane.getFluid(1000)) + .fluidOutputs(CarbonDioxide.getFluid(2000)) + .fluidOutputs(Hydrogen.getFluid(2000)) + .duration(512).EUt(60).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(Chloromethane.getFluid(2000)) + .fluidOutputs(Ethane.getFluid(1000)) + .fluidOutputs(Chlorine.getFluid(2000)) + .duration(400).EUt(60).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(MethylAcetate.getFluid(1000)) + .output(dust, Carbon) + .fluidOutputs(AceticAcid.getFluid(1000)) + .duration(264).EUt(60).buildAndRegister(); + + ELECTROLYZER_RECIPES.recipeBuilder() + .fluidInputs(Acetone.getFluid(2000)) + .output(dust, Carbon, 3) + .fluidOutputs(Propane.getFluid(1000)) + .fluidOutputs(Water.getFluid(2000)) + .duration(480).EUt(60).buildAndRegister(); + } +} From aea7aecad5a62f963433ccf3919b204d917edc1f Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Tue, 23 Feb 2021 14:56:53 -0600 Subject: [PATCH 06/17] Fix H2S --- .../gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java | 1 - .../java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java | 2 ++ .../gregtech/loaders/recipe/chemistry/SeparationRecipes.java | 1 - 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java index 068e108247..9c7d6491d4 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java @@ -34,7 +34,6 @@ public static void init() { .output(Items.PAPER) .duration(100).EUt(8).buildAndRegister(); - // TODO Check recipe exists CHEMICAL_BATH_RECIPES.recipeBuilder() .input(dust, Coal) .fluidInputs(DistilledWater.getFluid(125)) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java index 2e73cd6e3f..74f5ea16cd 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java @@ -565,6 +565,7 @@ public static void init() { .duration(60).EUt(8).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) .fluidInputs(Oxygen.getFluid(3000)) .fluidInputs(HydrogenSulfide.getFluid(1000)) .fluidOutputs(Water.getFluid(1000)) @@ -899,6 +900,7 @@ public static void init() { .duration(140).EUt(192).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) .fluidInputs(HydrogenSulfide.getFluid(1000)) .fluidInputs(Oxygen.getFluid(4000)) .fluidOutputs(SulfuricAcid.getFluid(1000)) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java index 201ec1baea..3ac97e171e 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java @@ -91,7 +91,6 @@ public static void init() { .fluidOutputs(Oxygen.getFluid(1000)) .duration(1500).EUt(30).buildAndRegister(); - // TODO Make sure recipe right below this works ELECTROLYZER_RECIPES.recipeBuilder() .fluidInputs(DistilledWater.getFluid(1000)) .fluidOutputs(Hydrogen.getFluid(2000)) From cd68cbf1e0b4c224b10247ee34b90b2fc08d0dc2 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Tue, 23 Feb 2021 15:00:22 -0600 Subject: [PATCH 07/17] Fix Dichlorobenzene --- .../java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java index 74f5ea16cd..cc6249d96a 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java @@ -268,7 +268,7 @@ public static void init() { .duration(80).EUt(30).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() - .fluidInputs(Chlorine.getFluid(3000)) + .fluidInputs(Chlorine.getFluid(4000)) .fluidInputs(Benzene.getFluid(1000)) .fluidOutputs(HydrochloricAcid.getFluid(2000)) .fluidOutputs(Dichlorobenzene.getFluid(1000)) From 72fb6f1232e376ed26495fa003bc4fb8ca3c2ce6 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Sat, 27 Feb 2021 20:05:41 -0600 Subject: [PATCH 08/17] Fix YBCO, TC --- .../gregtech/loaders/recipe/CraftingRecipeLoader.java | 2 -- .../java/gregtech/loaders/recipe/MachineRecipeLoader.java | 3 +-- .../gregtech/loaders/recipe/chemistry/MixerRecipes.java | 8 ++++++++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/gregtech/loaders/recipe/CraftingRecipeLoader.java b/src/main/java/gregtech/loaders/recipe/CraftingRecipeLoader.java index 982d702d7a..a4a17d1f59 100644 --- a/src/main/java/gregtech/loaders/recipe/CraftingRecipeLoader.java +++ b/src/main/java/gregtech/loaders/recipe/CraftingRecipeLoader.java @@ -192,13 +192,11 @@ private static void loadCraftingRecipes() { ModHandler.addShapelessRecipe("dust_ultimet", OreDictUnifier.get(OrePrefix.dust, Materials.Ultimet, 9), new UnificationEntry(OrePrefix.dust, Materials.Cobalt), new UnificationEntry(OrePrefix.dust, Materials.Cobalt), new UnificationEntry(OrePrefix.dust, Materials.Cobalt), new UnificationEntry(OrePrefix.dust, Materials.Cobalt), new UnificationEntry(OrePrefix.dust, Materials.Cobalt), new UnificationEntry(OrePrefix.dust, Materials.Chrome), new UnificationEntry(OrePrefix.dust, Materials.Chrome), new UnificationEntry(OrePrefix.dust, Materials.Nickel), new UnificationEntry(OrePrefix.dust, Materials.Molybdenum)); ModHandler.addShapelessRecipe("dust_cobalt_brass", OreDictUnifier.get(OrePrefix.dust, Materials.CobaltBrass, 9), new UnificationEntry(OrePrefix.dust, Materials.Brass), new UnificationEntry(OrePrefix.dust, Materials.Brass), new UnificationEntry(OrePrefix.dust, Materials.Brass), new UnificationEntry(OrePrefix.dust, Materials.Brass), new UnificationEntry(OrePrefix.dust, Materials.Brass), new UnificationEntry(OrePrefix.dust, Materials.Brass), new UnificationEntry(OrePrefix.dust, Materials.Brass), new UnificationEntry(OrePrefix.dust, Materials.Aluminium), new UnificationEntry(OrePrefix.dust, Materials.Cobalt)); ModHandler.addShapelessRecipe("dust_stainless_steel", OreDictUnifier.get(OrePrefix.dust, Materials.StainlessSteel, 9), new UnificationEntry(OrePrefix.dust, Materials.Iron), new UnificationEntry(OrePrefix.dust, Materials.Iron), new UnificationEntry(OrePrefix.dust, Materials.Iron), new UnificationEntry(OrePrefix.dust, Materials.Iron), new UnificationEntry(OrePrefix.dust, Materials.Iron), new UnificationEntry(OrePrefix.dust, Materials.Iron), new UnificationEntry(OrePrefix.dust, Materials.Nickel), new UnificationEntry(OrePrefix.dust, Materials.Manganese), new UnificationEntry(OrePrefix.dust, Materials.Chrome)); - ModHandler.addShapelessRecipe("dust_yttrium_barium_cuprate", OreDictUnifier.get(OrePrefix.dust, Materials.YttriumBariumCuprate, 6), new UnificationEntry(OrePrefix.dust, Materials.Yttrium), new UnificationEntry(OrePrefix.dust, Materials.Barium), new UnificationEntry(OrePrefix.dust, Materials.Barium), new UnificationEntry(OrePrefix.dust, Materials.Copper), new UnificationEntry(OrePrefix.dust, Materials.Copper), new UnificationEntry(OrePrefix.dust, Materials.Copper)); ModHandler.addShapelessRecipe("dust_kanthal", OreDictUnifier.get(OrePrefix.dust, Materials.Kanthal, 3), new UnificationEntry(OrePrefix.dust, Materials.Iron), new UnificationEntry(OrePrefix.dust, Materials.Aluminium), new UnificationEntry(OrePrefix.dust, Materials.Chrome)); ModHandler.addShapelessRecipe("dust_tiny_ultimet", OreDictUnifier.get(OrePrefix.dust, Materials.Ultimet, 1), new UnificationEntry(OrePrefix.dustTiny, Materials.Cobalt), new UnificationEntry(OrePrefix.dustTiny, Materials.Cobalt), new UnificationEntry(OrePrefix.dustTiny, Materials.Cobalt), new UnificationEntry(OrePrefix.dustTiny, Materials.Cobalt), new UnificationEntry(OrePrefix.dustTiny, Materials.Cobalt), new UnificationEntry(OrePrefix.dustTiny, Materials.Chrome), new UnificationEntry(OrePrefix.dustTiny, Materials.Chrome), new UnificationEntry(OrePrefix.dustTiny, Materials.Nickel), new UnificationEntry(OrePrefix.dustTiny, Materials.Molybdenum)); ModHandler.addShapelessRecipe("dust_tiny_cobalt_brass", OreDictUnifier.get(OrePrefix.dust, Materials.CobaltBrass, 1), new UnificationEntry(OrePrefix.dustTiny, Materials.Brass), new UnificationEntry(OrePrefix.dustTiny, Materials.Brass), new UnificationEntry(OrePrefix.dustTiny, Materials.Brass), new UnificationEntry(OrePrefix.dustTiny, Materials.Brass), new UnificationEntry(OrePrefix.dustTiny, Materials.Brass), new UnificationEntry(OrePrefix.dustTiny, Materials.Brass), new UnificationEntry(OrePrefix.dustTiny, Materials.Brass), new UnificationEntry(OrePrefix.dustTiny, Materials.Aluminium), new UnificationEntry(OrePrefix.dustTiny, Materials.Cobalt)); ModHandler.addShapelessRecipe("dust_tiny_stainless_steel", OreDictUnifier.get(OrePrefix.dust, Materials.StainlessSteel, 1), new UnificationEntry(OrePrefix.dustTiny, Materials.Iron), new UnificationEntry(OrePrefix.dustTiny, Materials.Iron), new UnificationEntry(OrePrefix.dustTiny, Materials.Iron), new UnificationEntry(OrePrefix.dustTiny, Materials.Iron), new UnificationEntry(OrePrefix.dustTiny, Materials.Iron), new UnificationEntry(OrePrefix.dustTiny, Materials.Iron), new UnificationEntry(OrePrefix.dustTiny, Materials.Nickel), new UnificationEntry(OrePrefix.dustTiny, Materials.Manganese), new UnificationEntry(OrePrefix.dustTiny, Materials.Chrome)); - ModHandler.addShapelessRecipe("dust_tiny_yttrium_barium_cuprate", OreDictUnifier.get(OrePrefix.dustTiny, Materials.YttriumBariumCuprate, 6), new UnificationEntry(OrePrefix.dustTiny, Materials.Yttrium), new UnificationEntry(OrePrefix.dustTiny, Materials.Barium), new UnificationEntry(OrePrefix.dustTiny, Materials.Barium), new UnificationEntry(OrePrefix.dustTiny, Materials.Copper), new UnificationEntry(OrePrefix.dustTiny, Materials.Copper), new UnificationEntry(OrePrefix.dustTiny, Materials.Copper)); ModHandler.addShapelessRecipe("dust_tiny_kanthal", OreDictUnifier.get(OrePrefix.dustTiny, Materials.Kanthal, 3), new UnificationEntry(OrePrefix.dustTiny, Materials.Iron), new UnificationEntry(OrePrefix.dustTiny, Materials.Aluminium), new UnificationEntry(OrePrefix.dustTiny, Materials.Chrome)); ModHandler.addShapelessRecipe("dust_vanadium_steel", OreDictUnifier.get(OrePrefix.dust, Materials.VanadiumSteel, 9), new UnificationEntry(OrePrefix.dust, Materials.Steel), new UnificationEntry(OrePrefix.dust, Materials.Steel), new UnificationEntry(OrePrefix.dust, Materials.Steel), new UnificationEntry(OrePrefix.dust, Materials.Steel), new UnificationEntry(OrePrefix.dust, Materials.Steel), new UnificationEntry(OrePrefix.dust, Materials.Steel), new UnificationEntry(OrePrefix.dust, Materials.Steel), new UnificationEntry(OrePrefix.dust, Materials.Vanadium), new UnificationEntry(OrePrefix.dust, Materials.Chrome)); diff --git a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java index 8d55a44266..aba0d9b0dd 100644 --- a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java @@ -505,7 +505,6 @@ private static void registerAlloyRecipes() { RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (300 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Iron, 2).input(prefix, Materials.Nickel, 1).outputs(OreDictUnifier.getDust(Materials.Invar, 3 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (900 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Iron, 4).input(prefix, Materials.Invar, 3).input(prefix, Materials.Manganese, 1).input(prefix, Materials.Chrome, 1).outputs(OreDictUnifier.getDust(Materials.StainlessSteel, 9 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (300 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Iron, 1).input(prefix, Materials.Aluminium, 1).input(prefix, Materials.Chrome, 1).outputs(OreDictUnifier.getDust(Materials.Kanthal, 3 * prefix.materialAmount)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (600 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Copper, 3).input(prefix, Materials.Barium, 2).input(prefix, Materials.Yttrium, 1).outputs(OreDictUnifier.getDust(Materials.YttriumBariumCuprate, 6 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (400 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Copper, 3).input(prefix, Materials.Zinc, 1).outputs(OreDictUnifier.getDust(Materials.Brass, 4 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (400 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Copper, 3).input(prefix, Materials.Tin, 1).outputs(OreDictUnifier.getDust(Materials.Bronze, 4 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (200 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Copper, 1).input(prefix, Materials.Nickel, 1).outputs(OreDictUnifier.getDust(Materials.Cupronickel, 2 * prefix.materialAmount)).buildAndRegister(); @@ -685,7 +684,7 @@ private static void registerAssemblerRecipes() { private static void registerBlastFurnaceRecipes() { RecipeMaps.BLAST_RECIPES.recipeBuilder().duration((int) Math.max(Materials.TungstenSteel.getAverageMass() / 80, 1) * Materials.TungstenSteel.blastFurnaceTemperature).EUt(480).input(OrePrefix.ingot, Materials.Tungsten, 1).input(OrePrefix.ingot, Materials.Steel, 1).outputs(OreDictUnifier.get(OrePrefix.ingotHot, Materials.TungstenSteel, 2), OreDictUnifier.get(OrePrefix.dustSmall, Materials.DarkAsh, 1)).blastFurnaceTemp(Materials.TungstenSteel.blastFurnaceTemperature).buildAndRegister(); - RecipeMaps.BLAST_RECIPES.recipeBuilder().duration((int) Math.max(Materials.TungstenCarbide.getAverageMass() / 40, 1) * Materials.TungstenCarbide.blastFurnaceTemperature).EUt(480).input(OrePrefix.ingot, Materials.Tungsten, 1).input(OrePrefix.dust, Materials.Carbon, 1).outputs(OreDictUnifier.get(OrePrefix.ingotHot, Materials.TungstenCarbide, 1), OreDictUnifier.get(OrePrefix.dustSmall, Materials.Ash, 2)).blastFurnaceTemp(Materials.TungstenCarbide.blastFurnaceTemperature).buildAndRegister(); + RecipeMaps.BLAST_RECIPES.recipeBuilder().duration((int) Math.max(Materials.TungstenCarbide.getAverageMass() / 40, 1) * Materials.TungstenCarbide.blastFurnaceTemperature).EUt(480).input(OrePrefix.ingot, Materials.Tungsten, 1).input(OrePrefix.dust, Materials.Carbon, 1).outputs(OreDictUnifier.get(OrePrefix.ingotHot, Materials.TungstenCarbide, 2), OreDictUnifier.get(OrePrefix.dustSmall, Materials.DarkAsh, 1)).blastFurnaceTemp(Materials.TungstenCarbide.blastFurnaceTemperature).buildAndRegister(); RecipeMaps.BLAST_RECIPES.recipeBuilder().duration((int) Math.max(Materials.VanadiumGallium.getAverageMass() / 40, 1) * Materials.VanadiumGallium.blastFurnaceTemperature).EUt(480).input(OrePrefix.ingot, Materials.Vanadium, 3).input(OrePrefix.ingot, Materials.Gallium, 1).outputs(OreDictUnifier.get(OrePrefix.ingotHot, Materials.VanadiumGallium, 4), OreDictUnifier.get(OrePrefix.dustSmall, Materials.DarkAsh, 2)).blastFurnaceTemp(Materials.VanadiumGallium.blastFurnaceTemperature).buildAndRegister(); RecipeMaps.BLAST_RECIPES.recipeBuilder().duration((int) Math.max(Materials.NiobiumTitanium.getAverageMass() / 80, 1) * Materials.NiobiumTitanium.blastFurnaceTemperature).EUt(480).input(OrePrefix.ingot, Materials.Niobium, 1).input(OrePrefix.ingot, Materials.Titanium, 1).outputs(OreDictUnifier.get(OrePrefix.ingotHot, Materials.NiobiumTitanium, 2), OreDictUnifier.get(OrePrefix.dustSmall, Materials.DarkAsh, 1)).blastFurnaceTemp(Materials.NiobiumTitanium.blastFurnaceTemperature).buildAndRegister(); RecipeMaps.BLAST_RECIPES.recipeBuilder().duration((int) Math.max(Materials.Nichrome.getAverageMass() / 32, 1) * Materials.Nichrome.blastFurnaceTemperature).EUt(480).input(OrePrefix.ingot, Materials.Nickel, 4).input(OrePrefix.ingot, Materials.Chrome, 1).outputs(OreDictUnifier.get(OrePrefix.ingotHot, Materials.Nichrome, 5), OreDictUnifier.get(OrePrefix.dustSmall, Materials.DarkAsh, 2)).blastFurnaceTemp(Materials.Nichrome.blastFurnaceTemperature).buildAndRegister(); diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java index c13db2beab..fd4ba06e6a 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java @@ -90,6 +90,14 @@ public static void init() { .fluidOutputs(Fuel.getFluid(6000)) .duration(16).EUt(120).buildAndRegister(); + MIXER_RECIPES.recipeBuilder() + .input(dust, Yttrium) + .input(dust, Barium, 2) + .input(dust, Copper, 3) + .fluidInputs(Oxygen.getFluid(7000)) + .output(dust, YttriumBariumCuprate, 13) + .EUt(8).duration(8000).buildAndRegister(); + for (DustMaterial dustMaterial : new DustMaterial[]{Talc, Soapstone, Redstone}) { MIXER_RECIPES.recipeBuilder() .input(dust, dustMaterial) From 4f73ee4ee393df9281f37051e6b484675303f7af Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Sun, 7 Mar 2021 00:43:48 -0600 Subject: [PATCH 09/17] Fix Methyl Acetate --- .../loaders/recipe/chemistry/ReactorRecipes.java | 9 +++++++++ .../loaders/recipe/chemistry/SeparationRecipes.java | 6 ------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java index cc6249d96a..1cfde94889 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java @@ -9,6 +9,7 @@ import net.minecraftforge.oredict.OreDictionary; import static gregtech.api.recipes.RecipeMaps.CHEMICAL_RECIPES; +import static gregtech.api.recipes.RecipeMaps.ELECTROLYZER_RECIPES; import static gregtech.api.unification.material.Materials.*; import static gregtech.api.unification.ore.OrePrefix.*; import static gregtech.api.unification.ore.OrePrefix.block; @@ -1052,5 +1053,13 @@ public static void init() { .fluidOutputs(Ethylene.getFluid(2000)) .fluidOutputs(Oxygen.getFluid(5000)) .duration(400).EUt(200).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .fluidInputs(MethylAcetate.getFluid(1000)) + .fluidInputs(Water.getFluid(1000)) + .notConsumable(OreDictUnifier.get(dust, SodiumHydroxide)) + .fluidOutputs(AceticAcid.getFluid(1000)) + .fluidOutputs(Methanol.getFluid(1000)) + .duration(264).EUt(60).buildAndRegister(); } } diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java index 3ac97e171e..c768610ac1 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java @@ -125,12 +125,6 @@ public static void init() { .fluidOutputs(Chlorine.getFluid(2000)) .duration(400).EUt(60).buildAndRegister(); - ELECTROLYZER_RECIPES.recipeBuilder() - .fluidInputs(MethylAcetate.getFluid(1000)) - .output(dust, Carbon) - .fluidOutputs(AceticAcid.getFluid(1000)) - .duration(264).EUt(60).buildAndRegister(); - ELECTROLYZER_RECIPES.recipeBuilder() .fluidInputs(Acetone.getFluid(2000)) .output(dust, Carbon, 3) From ad46f9ea781fbfc18b2cf663db711cd444441c17 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Tue, 9 Mar 2021 13:07:41 -0600 Subject: [PATCH 10/17] Fix #1525 --- src/main/java/gregtech/api/unification/material/Materials.java | 2 +- .../gregtech/loaders/recipe/chemistry/ChemistryRecipes.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/gregtech/api/unification/material/Materials.java b/src/main/java/gregtech/api/unification/material/Materials.java index 4757ddf13d..1475242212 100644 --- a/src/main/java/gregtech/api/unification/material/Materials.java +++ b/src/main/java/gregtech/api/unification/material/Materials.java @@ -162,7 +162,7 @@ public static void register() { public static DustMaterial Ilmenite = new DustMaterial(121, "ilmenite", 0x463732, ROUGH, 3, of(new MaterialStack(Iron, 1), new MaterialStack(Titanium, 1), new MaterialStack(Oxygen, 3)), GENERATE_ORE | DISABLE_DECOMPOSITION); public static GemMaterial Rutile = new GemMaterial(122, "rutile", 0xD40D5C, GEM_HORIZONTAL, 2, of(new MaterialStack(Titanium, 1), new MaterialStack(Oxygen, 2)), STD_GEM | DISABLE_DECOMPOSITION); public static DustMaterial Bauxite = new DustMaterial(123, "bauxite", 0xC86400, ROUGH, 1, of(new MaterialStack(Rutile, 2), new MaterialStack(Aluminium, 16), new MaterialStack(Hydrogen, 10), new MaterialStack(Oxygen, 11)), GENERATE_ORE | DISABLE_DECOMPOSITION); - public static FluidMaterial TitaniumTetrachloride = new FluidMaterial(124, "titanium_tetrachloride", 0xD40D5C, FLUID, of(new MaterialStack(Titanium, 1), new MaterialStack(Carbon, 2), new MaterialStack(Chlorine, 2)), DISABLE_DECOMPOSITION).setFluidTemperature(2200); + public static FluidMaterial TitaniumTetrachloride = new FluidMaterial(124, "titanium_tetrachloride", 0xD40D5C, FLUID, of(new MaterialStack(Titanium, 1), new MaterialStack(Chlorine, 4)), DISABLE_DECOMPOSITION).setFluidTemperature(2200); public static DustMaterial MagnesiumChloride = new DustMaterial(125, "magnesium_chloride", 0xD40D5C, ROUGH, 2, of(new MaterialStack(Magnesium, 1), new MaterialStack(Chlorine, 2)), 0); public static IngotMaterial Invar = new IngotMaterial(126, "invar", 0xB4B478, METALLIC, 2, of(new MaterialStack(Iron, 2), new MaterialStack(Nickel, 1)), EXT2_METAL | MORTAR_GRINDABLE | GENERATE_RING | GENERATE_FRAME, 7.0F, 3.0f, 512); public static IngotMaterial Kanthal = new IngotMaterial(127, "kanthal", 0xC2D2DF, METALLIC, 2, of(new MaterialStack(Iron, 1), new MaterialStack(Aluminium, 1), new MaterialStack(Chrome, 1)), EXT_METAL, null, 1800); diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java index fdc52ce61f..dbfa5c23d8 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java @@ -44,7 +44,7 @@ public static void init() { BLAST_RECIPES.recipeBuilder() .input(dust, FerriteMixture) - .fluidInputs(Oxygen.getFluid(2000)) + .fluidInputs(Oxygen.getFluid(1500)) .output(ingot, NickelZincFerrite) .blastFurnaceTemp(1500) .duration(600).EUt(120).buildAndRegister(); From 0e81781ea13aee24db0f317849114afe3dc46ebb Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Thu, 18 Mar 2021 15:05:24 -0500 Subject: [PATCH 11/17] Fix Phosphorus recipe conflict --- .../java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java index 1cfde94889..1c77f6ff62 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java @@ -733,6 +733,7 @@ public static void init() { .duration(40).EUt(30).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(2)) .input(dust, Phosphorus, 2) .fluidInputs(Water.getFluid(3000)) .fluidInputs(Oxygen.getFluid(5000)) @@ -755,6 +756,7 @@ public static void init() { .duration(60).EUt(150).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() + .notConsumable(new IntCircuitIngredient(1)) .input(dust, Phosphorus, 4) .fluidInputs(Oxygen.getFluid(10000)) .output(dust, PhosphorousPentoxide, 14) From 2968642f288fa8b255eef75e7d3ca37454e9e9f1 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Thu, 18 Mar 2021 15:12:53 -0500 Subject: [PATCH 12/17] Finish NZF --- .../loaders/recipe/chemistry/ChemistryRecipes.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java index dbfa5c23d8..2798a5db23 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java @@ -43,11 +43,11 @@ public static void init() { .duration(400).EUt(30).buildAndRegister(); BLAST_RECIPES.recipeBuilder() - .input(dust, FerriteMixture) - .fluidInputs(Oxygen.getFluid(1500)) - .output(ingot, NickelZincFerrite) + .input(dust, FerriteMixture, 6) + .fluidInputs(Oxygen.getFluid(8000)) + .output(ingot, NickelZincFerrite, 14) .blastFurnaceTemp(1500) - .duration(600).EUt(120).buildAndRegister(); + .duration(3200).EUt(120).buildAndRegister(); FERMENTING_RECIPES.recipeBuilder() .fluidInputs(Biomass.getFluid(100)) From 93590984afef17a4260b12cd38fec3a46f91f796 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Thu, 18 Mar 2021 15:18:49 -0500 Subject: [PATCH 13/17] Finish Uraninite --- .../gregtech/loaders/recipe/chemistry/ReactorRecipes.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java index 1c77f6ff62..135fdae325 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java @@ -924,20 +924,20 @@ public static void init() { .duration(240).EUt(30).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() - .input(dust, Uraninite) + .input(dust, Uraninite, 3) .input(dust, Aluminium) .output(dust, Uranium) .fluidOutputs(Aluminium.getFluid(144)) .fluidOutputs(Oxygen.getFluid(2000)) - .duration(500).EUt(80).buildAndRegister(); + .duration(360).EUt(120).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() - .input(dust, Uraninite) + .input(dust, Uraninite, 3) .input(dust, Magnesium) .output(dust, Uranium) .fluidOutputs(Magnesium.getFluid(144)) .fluidOutputs(Oxygen.getFluid(2000)) - .duration(500).EUt(80).buildAndRegister(); + .duration(360).EUt(120).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() .input(dust, Calcium) From 5648ee55424ea0cd22c135bdc93ce8b2d11d09eb Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Thu, 18 Mar 2021 15:27:52 -0500 Subject: [PATCH 14/17] normalize red alloy --- .../api/unification/material/Materials.java | 2 +- .../loaders/recipe/MachineRecipeLoader.java | 4 ++-- .../loaders/recipe/chemistry/ChemistryRecipes.java | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/main/java/gregtech/api/unification/material/Materials.java b/src/main/java/gregtech/api/unification/material/Materials.java index 1475242212..8a7448262a 100644 --- a/src/main/java/gregtech/api/unification/material/Materials.java +++ b/src/main/java/gregtech/api/unification/material/Materials.java @@ -426,7 +426,7 @@ public static void register() { public static IngotMaterial DamascusSteel = new IngotMaterial(234, "damascus_steel", 0x6E6E6E, METALLIC, 2, of(new MaterialStack(Steel, 1)), EXT_METAL, null, 8.0F, 5.0f, 1280, 1500); public static IngotMaterial TungstenSteel = new IngotMaterial(235, "tungsten_steel", 0x6464A0, METALLIC, 4, of(new MaterialStack(Steel, 1), new MaterialStack(Tungsten, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_DENSE | GENERATE_FRAME, null, 8.0F, 4.0f, 2560, 3000); public static FluidMaterial NitroFuel = new FluidMaterial(236, "nitro_fuel", 0xC8FF00, FLUID, of(), FLAMMABLE | EXPLOSIVE | NO_SMELTING | NO_SMASHING); - public static IngotMaterial RedAlloy = new IngotMaterial(237, "red_alloy", 0xC80000, DULL, 0, of(new MaterialStack(Copper, 1), new MaterialStack(Redstone, 4)), GENERATE_PLATE | GENERATE_FINE_WIRE); + public static IngotMaterial RedAlloy = new IngotMaterial(237, "red_alloy", 0xC80000, DULL, 0, of(new MaterialStack(Copper, 1), new MaterialStack(Redstone, 1)), GENERATE_PLATE | GENERATE_FINE_WIRE); public static IngotMaterial CobaltBrass = new IngotMaterial(238, "cobalt_brass", 0xB4B4A0, METALLIC, 2, of(new MaterialStack(Brass, 7), new MaterialStack(Aluminium, 1), new MaterialStack(Cobalt, 1)), EXT2_METAL, null, 8.0F, 2.0f, 256); public static DustMaterial Phosphor = new DustMaterial(239, "phosphor", 0xFFFF00, FLINT, 2, of(new MaterialStack(Calcium, 3), new MaterialStack(Phosphate, 2)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | FLAMMABLE | EXPLOSIVE); public static DustMaterial Basalt = new DustMaterial(240, "basalt", 0x1E1414, ROUGH, 1, of(new MaterialStack(Olivine, 1), new MaterialStack(Calcite, 3), new MaterialStack(Flint, 8), new MaterialStack(DarkAsh, 4)), NO_SMASHING); diff --git a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java index aba0d9b0dd..24d27d8147 100644 --- a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java @@ -701,8 +701,8 @@ private static void registerBlastFurnaceRecipes() { RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(500).EUt(120).input(OrePrefix.ingot, Materials.Iron, 1).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingot, Materials.Steel, 1), OreDictUnifier.get(OrePrefix.dustSmall, Materials.DarkAsh, 1)).blastFurnaceTemp(1000).buildAndRegister(); RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(100).EUt(120).input(OrePrefix.ingot, Materials.PigIron, 1).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingot, Materials.Steel, 1), OreDictUnifier.get(OrePrefix.dustSmall, Materials.DarkAsh, 1)).blastFurnaceTemp(1000).buildAndRegister(); RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(100).EUt(120).input(OrePrefix.ingot, Materials.WroughtIron, 1).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingot, Materials.Steel, 1), OreDictUnifier.get(OrePrefix.dustSmall, Materials.DarkAsh, 1)).blastFurnaceTemp(1000).buildAndRegister(); - RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(500).EUt(120).input(OrePrefix.dust, Materials.Copper, 1).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingot, Materials.AnnealedCopper, 1)).blastFurnaceTemp(1200).buildAndRegister(); - RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(500).EUt(120).input(OrePrefix.ingot, Materials.Copper, 1).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingot, Materials.AnnealedCopper, 1)).blastFurnaceTemp(1200).buildAndRegister(); + RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(500).EUt(120).input(OrePrefix.dust, Materials.Copper, 1).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingot, Materials.AnnealedCopper, 1)).blastFurnaceTemp(1200).notConsumable(new IntCircuitIngredient(1)).buildAndRegister(); + RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(500).EUt(120).input(OrePrefix.ingot, Materials.Copper, 1).fluidInputs(Materials.Oxygen.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingot, Materials.AnnealedCopper, 1)).blastFurnaceTemp(1200).notConsumable(new IntCircuitIngredient(1)).buildAndRegister(); RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(500).EUt(1920).input(OrePrefix.ingot, Materials.Iridium, 3).input(OrePrefix.ingot, Materials.Osmium, 1).fluidInputs(Materials.Helium.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingotHot, Materials.Osmiridium, 4)).blastFurnaceTemp(2900).buildAndRegister(); RecipeMaps.BLAST_RECIPES.recipeBuilder().duration(500).EUt(30720).input(OrePrefix.ingot, Materials.Naquadah, 1).input(OrePrefix.ingot, Materials.Osmiridium, 1).fluidInputs(Materials.Argon.getFluid(1000)).outputs(OreDictUnifier.get(OrePrefix.ingotHot, Materials.NaquadahAlloy, 2)).blastFurnaceTemp(Materials.NaquadahAlloy.blastFurnaceTemperature).buildAndRegister(); } diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java index 2798a5db23..91f8da3800 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java @@ -58,5 +58,19 @@ public static void init() { .input(ingot, Polycaprolactam) .output(Items.STRING, 32) .duration(80).EUt(48).buildAndRegister(); + + BLAST_RECIPES.recipeBuilder() + .input(Items.REDSTONE) + .input(ingot, Copper) + .output(ingot, RedAlloy, 2) + .blastFurnaceTemp(1200) + .duration(884).EUt(120).buildAndRegister(); + + BLAST_RECIPES.recipeBuilder() + .input(Items.REDSTONE) + .input(dust, Copper) + .output(ingot, RedAlloy, 2) + .blastFurnaceTemp(1200) + .duration(884).EUt(120).buildAndRegister(); } } From e84371ba7466d8fd7245158d205e3e6719b9ecd8 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Thu, 18 Mar 2021 19:51:07 -0500 Subject: [PATCH 15/17] Fix TNM --- .../gregtech/loaders/recipe/chemistry/ReactorRecipes.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java index 135fdae325..5c632f1cb6 100644 --- a/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java @@ -810,11 +810,11 @@ public static void init() { .duration(150).EUt(480).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() - .fluidInputs(AceticAcid.getFluid(4000)) - .fluidInputs(Ethenone.getFluid(4000)) + .fluidInputs(MethylAcetate.getFluid(2000)) .fluidInputs(NitricAcid.getFluid(4000)) + .output(dust, Carbon, 5) .fluidOutputs(Tetranitromethane.getFluid(1000)) - .fluidOutputs(AceticAcid.getFluid(7000)) + .fluidOutputs(Water.getFluid(8000)) .duration(480).EUt(120).buildAndRegister(); CHEMICAL_RECIPES.recipeBuilder() From 090cbbdbe1d8bfd6f39769fb56cafd61d7c60908 Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Sat, 20 Mar 2021 19:45:16 -0500 Subject: [PATCH 16/17] Fix Invar conflict --- .../java/gregtech/loaders/recipe/MachineRecipeLoader.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java index 24d27d8147..e314b17050 100644 --- a/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/recipe/MachineRecipeLoader.java @@ -499,10 +499,10 @@ private static void registerAlloyRecipes() { for (OrePrefix prefix : Arrays.asList(OrePrefix.dust, OrePrefix.dustSmall, OrePrefix.dustTiny)) { RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (800 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Boron, 1).input(prefix, Materials.Glass, 7).outputs(OreDictUnifier.getDust(Materials.BorosilicateGlass, 8L * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (100 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Indium, 1).input(prefix, Materials.Gallium, 1).input(prefix, Materials.Phosphorus, 1).outputs(OreDictUnifier.getDust(Materials.IndiumGalliumPhosphide, 3 * prefix.materialAmount)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (600 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Nickel, 1).input(prefix, Materials.Zinc, 1).input(prefix, Materials.Iron, 4).outputs(OreDictUnifier.getDust(Materials.FerriteMixture, 6 * prefix.materialAmount)).buildAndRegister(); + RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (600 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Nickel, 1).input(prefix, Materials.Zinc, 1).input(prefix, Materials.Iron, 4).notConsumable(new IntCircuitIngredient(2)).outputs(OreDictUnifier.getDust(Materials.FerriteMixture, 6 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (100 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.EnderPearl, 1).input(prefix, Materials.Blaze, 1).outputs(OreDictUnifier.getDust(Materials.EnderEye, prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (200 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Gold, 1).input(prefix, Materials.Silver, 1).outputs(OreDictUnifier.getDust(Materials.Electrum, 2 * prefix.materialAmount)).buildAndRegister(); - RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (300 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Iron, 2).input(prefix, Materials.Nickel, 1).outputs(OreDictUnifier.getDust(Materials.Invar, 3 * prefix.materialAmount)).buildAndRegister(); + RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (300 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Iron, 2).input(prefix, Materials.Nickel, 1).notConsumable(new IntCircuitIngredient(1)).outputs(OreDictUnifier.getDust(Materials.Invar, 3 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (900 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Iron, 4).input(prefix, Materials.Invar, 3).input(prefix, Materials.Manganese, 1).input(prefix, Materials.Chrome, 1).outputs(OreDictUnifier.getDust(Materials.StainlessSteel, 9 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (300 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Iron, 1).input(prefix, Materials.Aluminium, 1).input(prefix, Materials.Chrome, 1).outputs(OreDictUnifier.getDust(Materials.Kanthal, 3 * prefix.materialAmount)).buildAndRegister(); RecipeMaps.MIXER_RECIPES.recipeBuilder().duration((int) (400 * prefix.materialAmount / M)).EUt(8).input(prefix, Materials.Copper, 3).input(prefix, Materials.Zinc, 1).outputs(OreDictUnifier.getDust(Materials.Brass, 4 * prefix.materialAmount)).buildAndRegister(); From 1d58b47116c2bbd5d7eb939db02c27afe8d1340b Mon Sep 17 00:00:00 2001 From: DStrand1 Date: Sat, 20 Mar 2021 22:36:39 -0500 Subject: [PATCH 17/17] Remove some weird decomp --- .../gregtech/api/unification/material/Materials.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/gregtech/api/unification/material/Materials.java b/src/main/java/gregtech/api/unification/material/Materials.java index 8a7448262a..531c58f77c 100644 --- a/src/main/java/gregtech/api/unification/material/Materials.java +++ b/src/main/java/gregtech/api/unification/material/Materials.java @@ -178,11 +178,11 @@ public static void register() { public static DustMaterial Obsidian = new DustMaterial(138, "obsidian", 0x503264, DULL, 3, of(new MaterialStack(Magnesium, 1), new MaterialStack(Iron, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 8)), NO_SMASHING | EXCLUDE_BLOCK_CRAFTING_RECIPES); public static DustMaterial Phosphate = new DustMaterial(139, "phosphate", 0xFFFF00, ROUGH, 1, of(new MaterialStack(Phosphorus, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE | NO_SMASHING | NO_SMELTING | FLAMMABLE | EXPLOSIVE); public static IngotMaterial PigIron = new IngotMaterial(140, "pig_iron", 0xC8B4B4, METALLIC, 2, of(new MaterialStack(Iron, 1)), EXT_METAL | GENERATE_RING, 6.0F, 4.0f, 384); - public static IngotMaterial Plastic = new IngotMaterial(141, "plastic", 0xC8C8C8, DULL, 1, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 2)), GENERATE_PLATE | FLAMMABLE | NO_SMASHING | SMELT_INTO_FLUID); - public static IngotMaterial Epoxid = new IngotMaterial(142, "epoxid", 0xC88C14, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)), EXT2_METAL); - public static DustMaterial Silicone = new DustMaterial(143, "silicone", 0xDCDCDC, DULL, 1, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 1)), GENERATE_PLATE | FLAMMABLE | NO_SMASHING | SMELT_INTO_FLUID); - public static IngotMaterial Polycaprolactam = new IngotMaterial(144, "polycaprolactam", 0x323232, DULL, 1, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 11), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 1)), GENERATE_PLATE); - public static IngotMaterial Polytetrafluoroethylene = new IngotMaterial(145, "polytetrafluoroethylene", 0x646464, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Fluorine, 4)), GENERATE_PLATE | SMELT_INTO_FLUID | NO_WORKING); + public static IngotMaterial Plastic = new IngotMaterial(141, "plastic", 0xC8C8C8, DULL, 1, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 2)), GENERATE_PLATE | FLAMMABLE | NO_SMASHING | SMELT_INTO_FLUID | DISABLE_DECOMPOSITION); + public static IngotMaterial Epoxid = new IngotMaterial(142, "epoxid", 0xC88C14, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)), EXT2_METAL | DISABLE_DECOMPOSITION); + public static DustMaterial Silicone = new DustMaterial(143, "silicone", 0xDCDCDC, DULL, 1, of(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Silicon, 2), new MaterialStack(Oxygen, 1)), GENERATE_PLATE | FLAMMABLE | NO_SMASHING | SMELT_INTO_FLUID | DISABLE_DECOMPOSITION); + public static IngotMaterial Polycaprolactam = new IngotMaterial(144, "polycaprolactam", 0x323232, DULL, 1, of(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 11), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 1)), GENERATE_PLATE | DISABLE_DECOMPOSITION); + public static IngotMaterial Polytetrafluoroethylene = new IngotMaterial(145, "polytetrafluoroethylene", 0x646464, DULL, 1, of(new MaterialStack(Carbon, 2), new MaterialStack(Fluorine, 4)), GENERATE_PLATE | SMELT_INTO_FLUID | NO_WORKING | DISABLE_DECOMPOSITION); public static DustMaterial Powellite = new DustMaterial(146, "powellite", 0xFFFF00, ROUGH, 2, of(new MaterialStack(Calcium, 1), new MaterialStack(Molybdenum, 1), new MaterialStack(Oxygen, 4)), GENERATE_ORE); public static DustMaterial Pyrite = new DustMaterial(148, "pyrite", 0x967828, ROUGH, 1, of(new MaterialStack(Iron, 1), new MaterialStack(Sulfur, 2)), GENERATE_ORE | INDUCTION_SMELTING_LOW_OUTPUT); public static DustMaterial Pyrolusite = new DustMaterial(149, "pyrolusite", 0x9696AA, ROUGH, 2, of(new MaterialStack(Manganese, 1), new MaterialStack(Oxygen, 2)), GENERATE_ORE);