From 57b0e3988f720b81bf7b6e83fced4cfc5dc1c16b Mon Sep 17 00:00:00 2001 From: dan Date: Mon, 22 Mar 2021 13:46:15 -0500 Subject: [PATCH] Fixing the Chemistry, Take Two (#1492) --- .../gregtech/api/recipes/RecipeBuilder.java | 60 + .../api/unification/material/Materials.java | 889 +++++++------- .../loaders/recipe/ChemistryRecipes.java | 298 ----- .../loaders/recipe/CraftingRecipeLoader.java | 2 - .../loaders/recipe/MachineRecipeLoader.java | 86 +- .../recipe/chemistry/BrewingRecipes.java | 122 ++ .../recipe/chemistry/ChemicalBathRecipes.java | 91 ++ .../recipe/chemistry/ChemistryRecipes.java | 76 ++ .../recipe/chemistry/CrackingRecipes.java | 142 +++ .../recipe/chemistry/DistillationRecipes.java | 365 ++++++ .../recipe/chemistry/MixerRecipes.java | 121 ++ .../recipe/chemistry/ReactorRecipes.java | 1067 +++++++++++++++++ .../recipe/chemistry/SeparationRecipes.java | 135 +++ 13 files changed, 2643 insertions(+), 811 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 create mode 100644 src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java 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 ab462365f3..7a4fe9d92f 100644 --- a/src/main/java/gregtech/api/recipes/RecipeBuilder.java +++ b/src/main/java/gregtech/api/recipes/RecipeBuilder.java @@ -2,16 +2,20 @@ 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; 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.*; @@ -115,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) { @@ -150,6 +182,34 @@ 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 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/api/unification/material/Materials.java b/src/main/java/gregtech/api/unification/material/Materials.java index f7b6104fa8..531c58f77c 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(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); + 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 | 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); + 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)), 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); + 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, 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); + 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 deleted file mode 100644 index d486aa93d4..0000000000 --- a/src/main/java/gregtech/loaders/recipe/ChemistryRecipes.java +++ /dev/null @@ -1,298 +0,0 @@ -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 java.util.List; - -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(); - - 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(); - - 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(); - } - - 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(); - } - -} 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 cf639f939b..e314b17050 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; @@ -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; @@ -40,12 +41,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,8 +64,6 @@ public static void init() { registerCircuitRecipes(); registerCutterRecipes(); - registerChemicalRecipes(); - registerChemicalBathRecipes(); registerDecompositionRecipes(); registerBlastFurnaceRecipes(); registerAssemblerRecipes(); @@ -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)}, @@ -539,13 +499,12 @@ 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) (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(); @@ -725,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(); @@ -742,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(); } @@ -1023,6 +982,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(); @@ -1057,23 +1026,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..9c7d6491d4 --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ChemicalBathRecipes.java @@ -0,0 +1,91 @@ +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(); + + 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..91f8da3800 --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ChemistryRecipes.java @@ -0,0 +1,76 @@ +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, 6) + .fluidInputs(Oxygen.getFluid(8000)) + .output(ingot, NickelZincFerrite, 14) + .blastFurnaceTemp(1500) + .duration(3200).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(); + + 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(); + } +} 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..fd4ba06e6a --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/MixerRecipes.java @@ -0,0 +1,121 @@ +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(); + + 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) + .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/chemistry/ReactorRecipes.java b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java new file mode 100644 index 0000000000..5c632f1cb6 --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/ReactorRecipes.java @@ -0,0 +1,1067 @@ +package gregtech.loaders.recipe.chemistry; + +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.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; + +public class ReactorRecipes { + + public static void init() { + + 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(); + + 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(4000)) + .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() + .notConsumable(new IntCircuitIngredient(1)) + .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() + .notConsumable(new IntCircuitIngredient(2)) + .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() + .notConsumable(new IntCircuitIngredient(1)) + .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(MethylAcetate.getFluid(2000)) + .fluidInputs(NitricAcid.getFluid(4000)) + .output(dust, Carbon, 5) + .fluidOutputs(Tetranitromethane.getFluid(1000)) + .fluidOutputs(Water.getFluid(8000)) + .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() + .notConsumable(new IntCircuitIngredient(2)) + .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(288)) + .duration(240).EUt(30).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Uraninite, 3) + .input(dust, Aluminium) + .output(dust, Uranium) + .fluidOutputs(Aluminium.getFluid(144)) + .fluidOutputs(Oxygen.getFluid(2000)) + .duration(360).EUt(120).buildAndRegister(); + + CHEMICAL_RECIPES.recipeBuilder() + .input(dust, Uraninite, 3) + .input(dust, Magnesium) + .output(dust, Uranium) + .fluidOutputs(Magnesium.getFluid(144)) + .fluidOutputs(Oxygen.getFluid(2000)) + .duration(360).EUt(120).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(); + + 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(); + + 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 new file mode 100644 index 0000000000..c768610ac1 --- /dev/null +++ b/src/main/java/gregtech/loaders/recipe/chemistry/SeparationRecipes.java @@ -0,0 +1,135 @@ +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(); + + 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(Acetone.getFluid(2000)) + .output(dust, Carbon, 3) + .fluidOutputs(Propane.getFluid(1000)) + .fluidOutputs(Water.getFluid(2000)) + .duration(480).EUt(60).buildAndRegister(); + } +}