From 388f2239f17dd8d57706c34399d29ae699cd88a8 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Sun, 1 Nov 2020 16:13:46 -0800 Subject: [PATCH 01/21] First pieces of new recipe system. --- .../api/recipes/GT_MachineRecipe.java | 136 ++++++++++++++++++ .../gregtech/api/recipes/GT_RecipeInput.java | 42 ++++++ .../api/recipes/GT_RecipeInputOredict.java | 33 +++++ .../gregtech/api/recipes/GT_RecipeOutput.java | 108 ++++++++++++++ 4 files changed, 319 insertions(+) create mode 100644 src/main/java/gregtech/api/recipes/GT_MachineRecipe.java create mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeInput.java create mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java create mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeOutput.java diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java new file mode 100644 index 0000000000..19e8cd0425 --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -0,0 +1,136 @@ +package gregtech.api.recipes; + +import gregtech.api.objects.GT_FluidStack; +import net.minecraftforge.fluids.FluidStack; + + +/** + * Heavily modified version of GT_Recipe, which will eventually allow oredicted input and output as well as checking NBT tags, + * and loading of XML (or maybe other format) recipes. + */ +public class GT_MachineRecipe { + public GT_RecipeInput[] mInputs; + public GT_RecipeOutput[] mOutputs; + public FluidStack[] mFluidInputs; + public FluidStack[] mFluidOutputs; + + /** + * An Item that needs to be inside the Special Slot, like for example the Copy Slot inside the Printer. This is only useful for Fake Recipes in NEI, since findRecipe() and containsInput() don't give a shit about this Field. Lists are also possible. + */ + public Object mSpecialItems; + + public int mDuration, mEUt, mSpecialValue; + + /** + * Use this to just disable a specific Recipe, but the Configuration enables that already for every single Recipe. + */ + public boolean mEnabled = true; + /** + * Use this to make a recipe enabled depending on a certain config setting. + * TODO: implement map for looking up said config settings. + */ + public String mEnableCondition = null; + /** + * If this is true, having the setting specified in mEnableCondition false will enable this recipe. + */ + public boolean mInvertCondition = false; + /** + * If this Recipe is hidden from NEI + */ + public boolean mHidden = false; + /** + * If this Recipe is Fake and therefore doesn't get found by the findRecipe Function (It is still in the HashMaps, so that containsInput does return T on those fake Inputs) + */ + public boolean mFakeRecipe = false; + /** + * If this Recipe can be stored inside a Machine in order to make Recipe searching more Efficient by trying the previously used Recipe first. In case you have a Recipe Map overriding things and returning one time use Recipes, you have to set this to F. + */ + public boolean mCanBeBuffered = true; + /** + * If this Recipe needs the Output Slots to be completely empty. Needed in case you have randomised Outputs + */ + public boolean mNeedsEmptyOutput = false; + /** + * Used for describing recipes that do not fit the default recipe pattern (for example Large Boiler Fuels) + */ + private String[] neiDesc = null; + + /** + * The main constructor with inputs and outputs. Other details can be added with chainable setters. + */ + public GT_MachineRecipe(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { + mInputs = aInputs; + mOutputs = aOutputs; + mFluidInputs = aFluidInputs; + mFluidOutputs = aFluidOutputs; + + if (mInputs == null) mInputs = new GT_RecipeInput[0]; + if (mOutputs == null) mOutputs = new GT_RecipeOutput[0]; + if (mFluidInputs == null) mFluidInputs = new FluidStack[0]; + if (mFluidOutputs == null) mFluidOutputs = new FluidStack[0]; + + for (int i = 0; i < mFluidInputs.length; i++) mFluidInputs[i] = new GT_FluidStack(mFluidInputs[i]); + for (int i = 0; i < mFluidOutputs.length; i++) mFluidOutputs[i] = new GT_FluidStack(mFluidOutputs[i]); + } + + public GT_MachineRecipe setSpecialItems(Object aSpecialItems) { + mSpecialItems = aSpecialItems; + return this; + } + + public GT_MachineRecipe setDuration(int aDuration) { + mDuration = aDuration; + return this; + } + + public GT_MachineRecipe setEUt(int aEUt) { + mEUt = aEUt; + return this; + } + + public GT_MachineRecipe setSpecialValue(int aSpecialValue) { + mSpecialValue = aSpecialValue; + return this; + } + + public GT_MachineRecipe setEnabled(boolean aEnabled) { + mEnabled = aEnabled; + return this; + } + + public GT_MachineRecipe setEnableCondition(String aEnableCondition) { + mEnableCondition = aEnableCondition; + return this; + } + + public GT_MachineRecipe setInvertCondition(boolean aInvertCondition) { + mInvertCondition = aInvertCondition; + return this; + } + + public GT_MachineRecipe setHidden(boolean aHidden) { + mHidden = aHidden; + return this; + } + + public GT_MachineRecipe setFakeRecipe(boolean aFakeRecipe) { + mFakeRecipe = aFakeRecipe; + return this; + } + + public GT_MachineRecipe setCanBeBuffered(boolean aCanBeBuffered) { + mCanBeBuffered = aCanBeBuffered; + return this; + } + + public GT_MachineRecipe setNeedsEmptyOutput(boolean aNeedsEmptyOutput) { + mNeedsEmptyOutput = aNeedsEmptyOutput; + return this; + } + + public GT_MachineRecipe setNeiDesc(String... aNeiDesc) { + neiDesc = aNeiDesc; + return this; + } + +} \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java new file mode 100644 index 0000000000..4582a4b31a --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -0,0 +1,42 @@ +package gregtech.api.recipes; + +import net.minecraft.item.ItemStack; + +/** + * Represents an item stack as used for input in a GregTech machine recipe. + * Heavily based on/inspired by the recipe system in Ender IO, which is public domain. + * (see https://github.com/SleepyTrousers/EnderIO/blob/release/1.7.10/2.3/LICENSE to confirm) + */ +public class GT_RecipeInput { + + private final ItemStack mItemStack; + private final boolean mUseMeta; + + public GT_RecipeInput(ItemStack aItemStack) { + this(aItemStack, true); + } + + public GT_RecipeInput(ItemStack aItemStack, boolean aUseMeta) { + mItemStack = aItemStack; + mUseMeta = aUseMeta; + } + + public boolean inputMatches(ItemStack aItemStack) { + return inputMatches(aItemStack, true); + } + + public boolean inputMatches(ItemStack aItemStack, boolean aCheckCount) { + if (aItemStack == null) return false; + if (aCheckCount && aItemStack.stackSize < mItemStack.stackSize) return false; + if (mUseMeta && aItemStack.getItemDamage() != mItemStack.getItemDamage()) return false; + // Now check for NBT tags specified in recipe input. Extra tags specified on provided item but not in recipe can be ignored. + if (mItemStack.stackTagCompound != null) { + if (aItemStack.stackTagCompound == null) return false; + for (Object tTag : mItemStack.stackTagCompound.func_150296_c()) { // gets the key set + if (!mItemStack.stackTagCompound.getTag(tTag.toString()).equals(aItemStack.stackTagCompound.getTag(tTag.toString()))) return false; + } + } + return true; + } + +} \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java new file mode 100644 index 0000000000..ee92aad987 --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java @@ -0,0 +1,33 @@ +package gregtech.api.recipes; + +import java.util.ArrayList; +import net.minecraft.item.ItemStack; +import net.minecraftforge.oredict.OreDictionary; + +/** + * Represents an ore dictionary entry (and count) for use in a GregTech machine recipe. + * Heavily based on/inspired by the recipe system in Ender IO, which is public domain. + * (see https://github.com/SleepyTrousers/EnderIO/blob/release/1.7.10/2.3/LICENSE to confirm) + */ +public class GT_RecipeInputOredict extends GT_RecipeInput { + + private final String mOredictName; + private final int mCount; + + public GT_RecipeInputOredict(String aOredictName, int aCount) { + super(null, false); + mOredictName = aOredictName; + mCount = aCount; + } + + public boolean inputMatches(ItemStack aItemStack, boolean aCheckCount) { + if (aItemStack == null) return false; + if (aCheckCount && aItemStack.stackSize < mCount) return false; + ArrayList tList = OreDictionary.getOres(mOredictName); + if (tList == null) return false; + for (ItemStack tStack : tList) { + if (OreDictionary.itemMatches(tStack, aItemStack, false)) return true; + } + return false; + } +} \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java new file mode 100644 index 0000000000..ef9506dba1 --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java @@ -0,0 +1,108 @@ +package gregtech.api.recipes; + +import gregtech.api.util.GT_OreDictUnificator; +import java.util.ArrayList; +import java.util.Random; +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +/** + * Represents an item stack as used for output in a GregTech machine recipe (with chance). + * Heavily based on/inspired by the recipe system in Ender IO, which is public domain. + * (see https://github.com/SleepyTrousers/EnderIO/blob/release/1.7.10/2.3/LICENSE to confirm) + */ +public class GT_RecipeOutput { + + private final ItemStack mItemStack; + private final float mChance; + + public GT_RecipeOutput(Block aBlock) { + this(new ItemStack(aBlock, 1)); + } + + public GT_RecipeOutput(Block aBlock, float aChance) { + this(new ItemStack(aBlock, 1), aChance); + } + + public GT_RecipeOutput(Block aBlock, int aCount) { + this(new ItemStack(aBlock, aCount)); + } + + public GT_RecipeOutput(Block aBlock, int aCount, float aChance) { + this(new ItemStack(aBlock, aCount), aChance); + } + + public GT_RecipeOutput(Item aItem) { + this(new ItemStack(aItem, 1)); + } + + public GT_RecipeOutput(Item aItem, float aChance) { + this(new ItemStack(aItem, 1), aChance); + } + + public GT_RecipeOutput(Item aItem, int aCount) { + this(new ItemStack(aItem, aCount)); + } + + public GT_RecipeOutput(Item aItem, int aCount, float aChance) { + this(new ItemStack(aItem, aCount), aChance); + } + + public GT_RecipeOutput(String aOredictName) { + this(aOredictName, 1, 1.0f); + } + + public GT_RecipeOutput(String aOredictName, float aChance) { + this(aOredictName, 1, aChance); + } + + public GT_RecipeOutput(String aOredictName, int aCount) { + this(aOredictName, aCount, 1.0f); + } + + public GT_RecipeOutput(String aOredictName, int aCount, float aChance) { + this(GT_OreDictUnificator.getFirstOre(aOredictName, aCount), aChance); + } + + public GT_RecipeOutput(ItemStack aItemStack) { + this(aItemStack, 1.0f); + } + + public GT_RecipeOutput(ItemStack aItemStack, float aChance) { + mItemStack = aItemStack; + mChance = Math.min(1.0f, Math.max(aChance, 0.0f)); + } + + /** + * Get the actual output, considering chances. + * @param aRandom - the pseudo-random number generator object to use. + * If the chance is 0 or 1 the random state will be unchanged. + */ + public ItemStack getActualOutput(Random aRandom) { + int tCount = 0; + if (mChance == 1.0f) { + tCount = mItemStack.stackSize; + } else if (mChance > 0.0f) { + for (int i = 0; i < mItemStack.stackSize; i++) { + if (aRandom.nextFloat() < mChance) { + tCount++; + } + } + } + ItemStack tItemStack = mItemStack.copy(); + tItemStack.stackSize = tCount; + return tItemStack; + } + + /** + * Get the output to show, e.g. for an NEI recipe. + */ + public ItemStack getShownOutput() { + return mItemStack.copy(); + } + + public float getChance() { + return mChance; + } +} \ No newline at end of file From 58867415ea869808207cf78ba563485c79ae943b Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Sun, 1 Nov 2020 21:31:47 -0800 Subject: [PATCH 02/21] More pieces for new recipe system. --- .../api/recipes/GT_AssemblyLineRecipe.java | 32 ++++++ .../api/recipes/GT_MachineRecipe.java | 19 ++++ .../gregtech/api/recipes/GT_RecipeInput.java | 10 ++ .../api/recipes/GT_RecipeInputOredict.java | 19 ++++ .../gregtech/api/recipes/GT_RecipeMap.java | 102 ++++++++++++++++++ 5 files changed, 182 insertions(+) create mode 100644 src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java create mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeMap.java diff --git a/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java b/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java new file mode 100644 index 0000000000..0ad13225d4 --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java @@ -0,0 +1,32 @@ +package gregtech.api.recipes; + +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; + +public class GT_AssemblyLineRecipe extends GT_MachineRecipe { + + public ItemStack mResearchItem; + public int mResearchTime; + + public GT_AssemblyLineRecipe(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { + super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); + } + + public GT_AssemblyLineRecipe setResearchItem(ItemStack aResearchItem) { + mResearchItem = aResearchItem; + return this; + } + + public GT_AssemblyLineRecipe setResearchTime(int aResearchTime) { + mResearchTime = aResearchTime; + return this; + } + + @Override + public boolean isValidRecipe() { + if (mResearchItem == null) return false; + if (mResearchTime <= 0) return false; + return super.isValidRecipe(); + } + +} diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index 19e8cd0425..c874919665 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -133,4 +133,23 @@ public GT_MachineRecipe setNeiDesc(String... aNeiDesc) { return this; } + public String[] getNeiDesc() { + return neiDesc; + } + + /** + * Validates the recipe by making sure the duration and EU/t have been set, it has input items and/or fluid as well + * as output items and/or fluid, unless it is a fake recipe (fake recipes are always considered valid). + * Because of the chained setters, some details could accidentally be omitted, and this method should be used before + * adding a recipe to a list or map. + */ + public boolean isValidRecipe() { + if (mFakeRecipe) return true; + if (mDuration <= 0) return false; + if (mEUt <= 0) return false; + if (mInputs.length == 0 && mFluidInputs.length == 0) return false; + if (mOutputs.length == 0 && mFluidOutputs.length == 0) return false; + return true; + } + } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java index 4582a4b31a..544ef49006 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -1,5 +1,7 @@ package gregtech.api.recipes; +import java.util.Collections; +import java.util.List; import net.minecraft.item.ItemStack; /** @@ -39,4 +41,12 @@ public boolean inputMatches(ItemStack aItemStack, boolean aCheckCount) { return true; } + public List getInputStacks() { + return Collections.singletonList(mItemStack.copy()); + } + + public String getInputDescription() { + return mItemStack.stackSize + " " + mItemStack.getDisplayName(); + } + } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java index ee92aad987..a547e90f1e 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java @@ -1,6 +1,8 @@ package gregtech.api.recipes; +import gregtech.api.util.GT_OreDictUnificator; import java.util.ArrayList; +import java.util.List; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; @@ -30,4 +32,21 @@ public boolean inputMatches(ItemStack aItemStack, boolean aCheckCount) { } return false; } + + @Override + public List getInputStacks() { + List result = GT_OreDictUnificator.getOres(mOredictName); + for (int i = 0; i < result.size(); i++) { + ItemStack tItemStack = result.get(i).copy(); + tItemStack.stackSize = mCount; + result.set(i, tItemStack); + } + return result; + } + + @Override + public String getInputDescription() { + return mCount + " " + mOredictName; + } + } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java new file mode 100644 index 0000000000..3f1b02dbfd --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -0,0 +1,102 @@ +package gregtech.api.recipes; + +import java.util.Collection; + +public class GT_RecipeMap { + + /** + * The List of all Recipes + */ + public final Collection mRecipeList; + /** + * String used as an unlocalised Name. + */ + public String mUnlocalizedName = ""; + /** + * String used in NEI for the Recipe Lists. If null it will use the unlocalised Name instead + */ + public String mNEIName = ""; + /** + * GUI used for NEI Display. Usually the GUI of the Machine itself + */ + public String mNEIGUIPath = ""; + public String mNEISpecialValuePre = "", mNEISpecialValuePost = ""; + public int mInputSlots = 1; + public int mOutputSlots = 1; + public int mNEISpecialValueMultiplier = 1; + public int mMinimalInputItems = 1; + public int mMinimalInputFluids = 0; + public int mAmperage = 1; + public boolean mNEIAllowed = true; + public boolean mShowVoltageAmperageInNEI = true; + + public GT_RecipeMap(Collection aRecipeList) { + mRecipeList = aRecipeList; + } + + public GT_RecipeMap setUnlocalizedName(String aUnlocalizedName) { + mUnlocalizedName = aUnlocalizedName; + return this; + } + + public GT_RecipeMap setNEIName(String aNEIName) { + mNEIName = aNEIName; + return this; + } + + public GT_RecipeMap setNEIGUIPath(String aNEIGUIPath) { + mNEIGUIPath = aNEIGUIPath; + return this; + } + + public GT_RecipeMap setNEISpecialValuePre(String aNEISpecialValuePre) { + mNEISpecialValuePre = aNEISpecialValuePre; + return this; + } + + public GT_RecipeMap setNEISpecialValuePost(String aNEISpecialValuePost) { + mNEISpecialValuePost = aNEISpecialValuePost; + return this; + } + + public GT_RecipeMap setInputSlots(int aInputSlots) { + mInputSlots = aInputSlots; + return this; + } + + public GT_RecipeMap setOutputSlots(int aOutputSlots) { + mOutputSlots = aOutputSlots; + return this; + } + + public GT_RecipeMap setNEISpecialValueMultiplier(int aNEISpecialValueMultiplier) { + mNEISpecialValueMultiplier = aNEISpecialValueMultiplier; + return this; + } + + public GT_RecipeMap setMinimalInputItems(int aMinimalInputItems) { + mMinimalInputItems = aMinimalInputItems; + return this; + } + + public GT_RecipeMap setMinimalInputFluids(int aMinimalInputFluids) { + mMinimalInputFluids = aMinimalInputFluids; + return this; + } + + public GT_RecipeMap setAmperage(int aAmperage) { + mAmperage = aAmperage; + return this; + } + + public GT_RecipeMap setNEIAllowed(boolean aNEIAllowed) { + mNEIAllowed = aNEIAllowed; + return this; + } + + public GT_RecipeMap setShowVoltageAmperageInNEI(boolean aShowVoltageAmperageInNEI) { + mShowVoltageAmperageInNEI = aShowVoltageAmperageInNEI; + return this; + } + +} \ No newline at end of file From d2c02ffbfe7211d9c7334282192c2e2c7e0517d5 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Mon, 2 Nov 2020 22:34:57 -0800 Subject: [PATCH 03/21] Added most relevant fields for recipe map class. Also tweaked an argument name and usage for easier backward compatibility with functions that call the old recipe system. --- .../gregtech/api/recipes/GT_RecipeInput.java | 4 +- .../api/recipes/GT_RecipeInputOredict.java | 14 +- .../gregtech/api/recipes/GT_RecipeMap.java | 263 +++++++++++++++++- 3 files changed, 255 insertions(+), 26 deletions(-) diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java index 544ef49006..1c0613db7d 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -27,9 +27,9 @@ public boolean inputMatches(ItemStack aItemStack) { return inputMatches(aItemStack, true); } - public boolean inputMatches(ItemStack aItemStack, boolean aCheckCount) { + public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { if (aItemStack == null) return false; - if (aCheckCount && aItemStack.stackSize < mItemStack.stackSize) return false; + if (!aIgnoreCount && aItemStack.stackSize < mItemStack.stackSize) return false; if (mUseMeta && aItemStack.getItemDamage() != mItemStack.getItemDamage()) return false; // Now check for NBT tags specified in recipe input. Extra tags specified on provided item but not in recipe can be ignored. if (mItemStack.stackTagCompound != null) { diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java index a547e90f1e..99562c863b 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java @@ -1,10 +1,8 @@ package gregtech.api.recipes; import gregtech.api.util.GT_OreDictUnificator; -import java.util.ArrayList; import java.util.List; import net.minecraft.item.ItemStack; -import net.minecraftforge.oredict.OreDictionary; /** * Represents an ore dictionary entry (and count) for use in a GregTech machine recipe. @@ -22,15 +20,11 @@ public GT_RecipeInputOredict(String aOredictName, int aCount) { mCount = aCount; } - public boolean inputMatches(ItemStack aItemStack, boolean aCheckCount) { + @Override + public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { if (aItemStack == null) return false; - if (aCheckCount && aItemStack.stackSize < mCount) return false; - ArrayList tList = OreDictionary.getOres(mOredictName); - if (tList == null) return false; - for (ItemStack tStack : tList) { - if (OreDictionary.itemMatches(tStack, aItemStack, false)) return true; - } - return false; + if (!aIgnoreCount && aItemStack.stackSize < mCount) return false; + return GT_OreDictUnificator.isItemStackInstanceOf(aItemStack, mOredictName); } @Override diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index 3f1b02dbfd..3fd03fc41a 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -1,9 +1,92 @@ package gregtech.api.recipes; +import gregtech.api.enums.GT_Values; +import gregtech.api.util.GT_LanguageManager; +import java.util.ArrayList; import java.util.Collection; +import java.util.HashSet; + + public class GT_RecipeMap { + /** + * Contains all Recipe Maps + */ + public static final Collection sMappings = new ArrayList(100); + + public static final GT_RecipeMap sOreWasherRecipes = new GT_RecipeMap(new HashSet(120)).setNames("gt.recipe.orewasher", "Ore Washing Plant").setNEIGUIPathBasic("OreWasher").setOutputSlots(3).setMinimalInputFluids(1); + public static final GT_RecipeMap sThermalCentrifugeRecipes = new GT_RecipeMap(new HashSet(120)).setNames("gt.recipe.thermalcentrifuge", "Thermal Centrifuge").setNEIGUIPathBasic("ThermalCentrifuge").setOutputSlots(3).setAmperage(2); + public static final GT_RecipeMap sCompressorRecipes = new GT_RecipeMap(new HashSet(120)).setNames("gt.recipe.compressor", "Compressor").setNEIGUIPathBasic("Compressor"); + public static final GT_RecipeMap sExtractorRecipes = new GT_RecipeMap(new HashSet(30)).setNames("gt.recipe.extractor", "Extractor").setNEIGUIPathBasic("Extractor"); + public static final GT_RecipeMap sRecyclerRecipes = new GT_RecipeMapRecycler(new HashSet(0)).setNames("ic.recipe.recycler", "Recycler").setNEIName("ic2.recycler").setNEIGUIPathBasic("Recycler").setNEIAllowed(false); + public static final GT_RecipeMap sFurnaceRecipes = new GT_RecipeMapFurnace(new HashSet(0)).setNames("mc.recipe.furnace", "Furnace").setNEIName("smelting").setNEIGUIPathBasic("E_Furnace").setNEIAllowed(false); + public static final GT_RecipeMap sMicrowaveRecipes = new GT_RecipeMapMicrowave(new HashSet(0)).setNames("gt.recipe.microwave", "Microwave").setNEIName("smelting").setNEIGUIPathBasic("E_Furance").setNEIAllowed(false); + + public static final GT_RecipeMap sScannerFakeRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.scanner", "Scanner").setNEIGUIPathBasic("Scanner"); + public static final GT_RecipeMap sRockBreakerFakeRecipes = new GT_RecipeMap(new HashSet(3)).setNames("gt.recipe.rockbreaker", "Rock Breaker").setNEIGUIPathBasic("RockBreaker").setMinimalInputItems(0); + public static final GT_RecipeMap sByproductList = new GT_RecipeMap(new HashSet(1000)).setNames("gt.recipe.byproductlist", "Ore Byproduct List").setNEIGUIPathBasic("Default").setOutputSlots(6); + public static final GT_RecipeMap sReplicatorFakeRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.replicator", "Replicator").setNEIGUIPathBasic("Replicator").setInputSlots(0).setMinimalInputItems(0).setMinimalInputFluids(1); + public static final GT_RecipeMap sOrganicReplicatorFakeRecipes = new GT_RecipeMap(new HashSet(1)).setNames("gt.recipe.organicreplicator", "Organic Replicator").setNEIGUIPathBasic("OrganicReplicator").setMinimalInputFluids(1); + public static final GT_RecipeMap sAssemblyLineVisualRecipes = new GT_RecipeMap(new HashSet(30)).setNames("gt.recipe.fakeAssemblylineProcess", "Assemblyline Process").setNEIGUIPathRes("FakeAssemblyline").setNEIAllowed(false); + public static final GT_RecipeMap sPlasmaArcFurnaceRecipes = new GT_RecipeMap(new HashSet(10000)).setNames("gt.recipe.plasmaarcfurnace", "Plasma Arc Furnace").setNEIGUIPathBasic("PlasmaArcFurnace").setOutputSlots(4).setMinimalInputFluids(1); + public static final GT_RecipeMap sArcFurnaceRecipes = new GT_RecipeMap(new HashSet(10000)).setNames("gt.recipe.arcfurnace", "Arc Furnace").setNEIGUIPathBasic("ArcFurnace").setOutputSlots(4).setMinimalInputFluids(1).setAmperage(3); + public static final GT_RecipeMap sPrinterRecipes = new GT_RecipeMapPrinter(new HashSet(100)).setNames("gt.recipe.printer", "Printer").setNEIGUIPathBasic("Printer").setMinimalInputFluids(1); + public static final GT_RecipeMap sSifterRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.sifter", "Sifter").setNEIGUIPathBasic("Sifter").setOutputSlots(9); + public static final GT_RecipeMap sPressRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.press", "Forming Press").setNEIGUIPathBasic("FormingPress").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sLaserEngraverRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.laserengraver", "Precision Laser Engraver").setNEIGUIPathBasic("LaserEngraver").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sMixerRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.mixer", "Mixer").setNEIGUIPathBasic("Mixer").setInputSlots(4).setMinimalTotalInputs(2); + public static final GT_RecipeMap sAutoclaveRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.autoclave", "Autoclave").setNEIGUIPathBasic("Autoclave").setMinimalInputFluids(1); + public static final GT_RecipeMap sElectroMagneticSeparatorRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.electromagneticseparator", "Electromagnetic Separator").setNEIGUIPathBasic("ElectromagneticSeparator").setOutputSlots(3); + public static final GT_RecipeMap sPolarizerRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.polarizer", "Electromagnetic Polarizer").setNEIGUIPathBasic("Polarizer"); + public static final GT_RecipeMap sMaceratorRecipes = new GT_RecipeMapMacerator(new HashSet(10000)).setNames("gt.recipe.macerator", "Pulverization").setNEIGUIPathBasic("Macerator4").setOutputSlots(4); + public static final GT_RecipeMap sChemicalBathRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.chemicalbath", "Chemical Bath").setNEIGUIPathBasic("ChemicalBath").setOutputSlots(3).setMinimalInputFluids(1); + public static final GT_RecipeMap sFluidCannerRecipes = new GT_RecipeMapFluidCanner(new HashSet(1000)).setNames("gt.recipe.fluidcanner", "Fluid Canning Machine").setNEIGUIPathBasic("FluidCannerNEI"); + public static final GT_RecipeMap sBrewingRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.brewer", "Brewing Machine").setNEIGUIPathBasic("PotionBrewer").setOutputSlots(0).setMinimalInputFluids(1); + public static final GT_RecipeMap sFluidHeaterRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.fluidheater", "Fluid Heater").setNEIGUIPathBasic("FluidHeater").setOutputSlots(0).setMinimalInputFluids(1); + + public static final GT_RecipeMap sDistilleryRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.distillery", "Distillery").setNEIGUIPathBasic("Distillery").setMinimalInputFluids(1); + public static final GT_RecipeMap sFermentingRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.fermenter", "Fermenter").setNEIGUIPathBasic("Fermenter").setInputSlots(0).setOutputSlots(0).setMinimalInputItems(0); + public static final GT_RecipeMap sFluidSolidificationRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.fluidsolidifier", "Fluid Solidifier").setNEIGUIPathBasic("FluidSolidifier").setMinimalInputFluids(1); + public static final GT_RecipeMap sFluidExtractionRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.fluidextractor", "Fluid Extractor").setNEIGUIPathBasic("FluidExtractor"); + public static final GT_RecipeMap sBoxinatorRecipes = new GT_RecipeMap(new HashSet(2500)).setNames("gt.recipe.packager", "Packager").setNEIGUIPathBasic("Packager").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sUnboxinatorRecipes = new GT_RecipeMapUnboxinator(new HashSet(2500)).setNames("gt.recipe.unpackager", "Unpackager").setNEIGUIPathBasic("Unpackager").setOutputSlots(2); + public static final GT_RecipeMap sFusionRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.fusionreactor", "Fusion Reactor").setNEIGUIPathBasic("Default").setInputSlots(0).setOutputSlots(0).setMinimalInputItems(0).setMinimalInputFluids(2).setNEISpecialValuePre("Start: ").setNEISpecialValuePost(" EU"); + public static final GT_RecipeMap sCentrifugeRecipes = new GT_RecipeMap(new HashSet(1000)).setNames("gt.recipe.centrifuge", "Centrifuge").setNEIGUIPathBasic("Centrifuge").setInputSlots(2).setOutputSlots(6).setMinimalInputItems(0).setMinimalInputFluids(0).setMinimalTotalInputs(1); + public static final GT_RecipeMap sElectrolyzerRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.electrolyzer", "Electrolyzer").setNEIGUIPathBasic("Electrolyzer").setInputSlots(2).setOutputSlots(6).setMinimalInputItems(0).setMinimalInputFluids(0).setMinimalTotalInputs(1); + public static final GT_RecipeMap sBlastRecipes = new GT_RecipeMap(new HashSet(500)).setNames("gt.recipe.blastfurnace", "Blast Furnace").setNEIGUIPathBasic("Default").setInputSlots(2).setOutputSlots(2).setNEISpecialValuePre("Heat Capacity: ").setNEISpecialValuePost(" K").setShowVoltageAmperageInNEI(false); + public static final GT_RecipeMap sPrimitiveBlastRecipes = new GT_RecipeMap(new HashSet(500)).setNames("gt.recipe.primitiveblastfurnace", "Primitive Blast Furnace").setNEIGUIPathBasic("Default").setInputSlots(3).setOutputSlots(3).setMinimalInputItems(2).setShowVoltageAmperageInNEI(false); + public static final GT_RecipeMap sImplosionRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.implosioncompressor", "Implosion Compressor").setNEIGUIPathBasic("Default").setInputSlots(2).setOutputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sVacuumRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.vacuumfreezer", "Vacuum Freezer").setNEIGUIPathBasic("Default"); + public static final GT_RecipeMap sChemicalRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.chemicalreactor", "Chemical Reactor").setNEIGUIPathBasic("ChemicalReactor").setInputSlots(2).setOutputSlots(2); + public static final GT_RecipeMap sMultiblockChemicalRecipes = new GT_RecipeMapLargeChemicalReactor(); + public static final GT_RecipeMap sDistillationRecipes = new GT_RecipeMapDistillationTower(); + public static final GT_RecipeMap sCrackingRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.craker", "Oil Cracker").setNEIGUIPathBasic("Default").setMinimalInputFluids(2); + public static final GT_RecipeMap sPyrolyseRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.pyro", "Pyrolyse Oven").setNEIGUIPathBasic("Default").setInputSlots(2); + public static final GT_RecipeMap sWiremillRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.wiremill", "Wiremill").setNEIGUIPathBasic("Wiremill"); + public static final GT_RecipeMap sBenderRecipes = new GT_RecipeMap(new HashSet(400)).setNames("gt.recipe.metalbender", "Metal Bender").setNEIGUIPathBasic("Bender").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sAlloySmelterRecipes = new GT_RecipeMap(new HashSet(3000)).setNames("gt.recipe.alloysmelter", "Alloy Smelter").setNEIGUIPathBasic("AlloySmelter").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sAssemblerRecipes = new GT_RecipeMapAssembler(new HashSet(300)).setNames("gt.recipe.assembler", "Assembler").setNEIGUIPathBasic("Assembler").setInputSlots(6); + public static final GT_RecipeMap sCircuitAssemblerRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.circuitassembler", "Circuit Assembler").setNEIGUIPathBasic("CircuitAssembler").setInputSlots(6).setMinimalInputItems(3).setMinimalInputFluids(1); + public static final GT_RecipeMap sCannerRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.canner", "Canning Machine").setNEIGUIPathBasic("Canner").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sLatheRecipes = new GT_RecipeMap(new HashSet(400)).setNames("gt.recipe.lathe", "Lathe").setNEIGUIPathBasic("Lathe").setOutputSlots(2); + public static final GT_RecipeMap sCutterRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.cuttingsaw", "Cutting Saw").setNEIGUIPathBasic("Cutter").setOutputSlots(2).setMinimalInputFluids(2); + public static final GT_RecipeMap sSlicerRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.slicer", "Slicer").setNEIGUIPathBasic("Slicer").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sExtruderRecipes = new GT_RecipeMap(new HashSet(1000)).setNames("gt.recipe.extruder", "Extruder").setNEIGUIPathBasic("Extruder").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sHammerRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.hammer", "Hammer").setNEIGUIPathBasic("Hammer"); + public static final GT_RecipeMap sAmplifiers = new GT_RecipeMap(new HashSet(10)).setNames("gt.recipe.uuamplifier", "UU Amplifier").setNEIGUIPathBasic("Amplifabricator").setOutputSlots(0); + public static final GT_RecipeMap sMassFabFakeRecipes = new GT_RecipeMap(new HashSet(10)).setNames("gt.recipe.massfab", "Mass Fabrication").setNEIGUIPathBasic("Massfabricator").setOutputSlots(0); + public static final GT_RecipeMapFuel sDieselFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.dieselgeneratorfuel", "Diesel Generator Fuel").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); + public static final GT_RecipeMapFuel sTurbineFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.gasturbinefuel", "Gas Turbine Fuel").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); + public static final GT_RecipeMapFuel sHotFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.thermalgeneratorfuel", "Thermal Generator Fuel").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU").setNEIAllowed(false); + public static final GT_RecipeMapFuel sDenseLiquidFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.semifluidboilerfuels", "Semifluid Boiler Fuels").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); + public static final GT_RecipeMapFuel sPlasmaFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.plasmageneratorfuels", "Plasma generator Fuels").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); + public static final GT_RecipeMapFuel sMagicFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.magicfuels", "Magic Fuels").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); + public static final GT_RecipeMapFuel sSmallNaquadahReactorFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.smallnaquadahreactor", "Small Naquadah Reactor").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); + public static final GT_RecipeMapFuel sLargeNaquadahReactorFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.largenaquadahreactor", "Large Naquadah Reactor").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); + public static final GT_RecipeMapFuel sFluidNaquadahReactorFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.fluidnaquadahreactor", "Fluid Naquadah Reactor").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); + public static final GT_RecipeMapLargeBoilerFakeFuels sLargeBoilerFakeFuels = new GT_RecipeMapLargeBoilerFakeFuels(); + /** * The List of all Recipes */ @@ -26,77 +109,229 @@ public class GT_RecipeMap { public int mNEISpecialValueMultiplier = 1; public int mMinimalInputItems = 1; public int mMinimalInputFluids = 0; + public int mMinimalTotalInputs = 0; // For a few machines like the mixer that are item + fluid or item + item but no single-item or single-fluid input. public int mAmperage = 1; public boolean mNEIAllowed = true; public boolean mShowVoltageAmperageInNEI = true; public GT_RecipeMap(Collection aRecipeList) { mRecipeList = aRecipeList; + sMappings.add(this); + } + + public final GT_RecipeMap setUnlocalizedName(String aUnlocalizedName) { + mUnlocalizedName = aUnlocalizedName; + if ("".equals(mNEIName)) { + mNEIName = aUnlocalizedName; + } + return this; } - public GT_RecipeMap setUnlocalizedName(String aUnlocalizedName) { + // unlocalized name and local name should usually be set together, but local name isn't technically stored in this object. + public final GT_RecipeMap setNames(String aUnlocalizedName, String aLocalName) { mUnlocalizedName = aUnlocalizedName; + if ("".equals(mNEIName)) { + mNEIName = aUnlocalizedName; + } + GT_LanguageManager.addStringLocalization(aUnlocalizedName, aLocalName); return this; } - public GT_RecipeMap setNEIName(String aNEIName) { + public final GT_RecipeMap setNEIName(String aNEIName) { mNEIName = aNEIName; return this; } - public GT_RecipeMap setNEIGUIPath(String aNEIGUIPath) { - mNEIGUIPath = aNEIGUIPath; + public final GT_RecipeMap setNEIGUIPath(String aNEIGUIPath) { + if (aNEIGUIPath.endsWith(".png")) { + mNEIGUIPath = aNEIGUIPath; + } else { + mNEIGUIPath = aNEIGUIPath + ".png"; + } return this; } - public GT_RecipeMap setNEISpecialValuePre(String aNEISpecialValuePre) { + // Convenience method to prepend GT_Values.RES_PATH_GUI to the passed path, + // since it is nearly always used. + public final GT_RecipeMap setNEIGUIPathRes(String aNEIGUIPath) { + if (aNEIGUIPath.endsWith(".png")) { + mNEIGUIPath = GT_Values.RES_PATH_GUI + aNEIGUIPath; + } else { + mNEIGUIPath = GT_Values.RES_PATH_GUI + aNEIGUIPath + ".png"; + } + return this; + } + + public final GT_RecipeMap setNEIGUIPathBasic(String aNEIGUIPath) { + return setNEIGUIPathRes("basicmachines/" + aNEIGUIPath); + } + + public final GT_RecipeMap setNEISpecialValuePre(String aNEISpecialValuePre) { mNEISpecialValuePre = aNEISpecialValuePre; return this; } - public GT_RecipeMap setNEISpecialValuePost(String aNEISpecialValuePost) { + public final GT_RecipeMap setNEISpecialValuePost(String aNEISpecialValuePost) { mNEISpecialValuePost = aNEISpecialValuePost; return this; } - public GT_RecipeMap setInputSlots(int aInputSlots) { + public final GT_RecipeMap setInputSlots(int aInputSlots) { mInputSlots = aInputSlots; return this; } - public GT_RecipeMap setOutputSlots(int aOutputSlots) { + public final GT_RecipeMap setOutputSlots(int aOutputSlots) { mOutputSlots = aOutputSlots; return this; } - public GT_RecipeMap setNEISpecialValueMultiplier(int aNEISpecialValueMultiplier) { + public final GT_RecipeMap setNEISpecialValueMultiplier(int aNEISpecialValueMultiplier) { mNEISpecialValueMultiplier = aNEISpecialValueMultiplier; return this; } - public GT_RecipeMap setMinimalInputItems(int aMinimalInputItems) { + public final GT_RecipeMap setMinimalInputItems(int aMinimalInputItems) { mMinimalInputItems = aMinimalInputItems; return this; } - public GT_RecipeMap setMinimalInputFluids(int aMinimalInputFluids) { + public final GT_RecipeMap setMinimalInputFluids(int aMinimalInputFluids) { mMinimalInputFluids = aMinimalInputFluids; return this; } - public GT_RecipeMap setAmperage(int aAmperage) { + public final GT_RecipeMap setMinimalTotalInputs(int aMinimalTotalInputs) { + mMinimalTotalInputs = aMinimalTotalInputs; + return this; + } + + public final GT_RecipeMap setAmperage(int aAmperage) { mAmperage = aAmperage; return this; } - public GT_RecipeMap setNEIAllowed(boolean aNEIAllowed) { + public final GT_RecipeMap setNEIAllowed(boolean aNEIAllowed) { mNEIAllowed = aNEIAllowed; return this; } - public GT_RecipeMap setShowVoltageAmperageInNEI(boolean aShowVoltageAmperageInNEI) { + public final GT_RecipeMap setShowVoltageAmperageInNEI(boolean aShowVoltageAmperageInNEI) { mShowVoltageAmperageInNEI = aShowVoltageAmperageInNEI; return this; } + + public static class GT_RecipeMapAssembler extends GT_RecipeMap { + + public GT_RecipeMapAssembler(Collection aRecipeList) { + super(aRecipeList); + } + + } + + public static class GT_RecipeMapDistillationTower extends GT_RecipeMap { + + public GT_RecipeMapDistillationTower() { + super(new HashSet(50)); + setNames("gt.recipe.distillationtower", "Distillation Tower"); + setNEIGUIPathBasic("DistillationTower"); + setInputSlots(2); + setOutputSlots(4); + setMinimalInputItems(0); + setMinimalInputFluids(1); + } + + } + + public static class GT_RecipeMapFluidCanner extends GT_RecipeMap { + + public GT_RecipeMapFluidCanner(Collection aRecipeList) { + super(aRecipeList); + } + + } + + public static class GT_RecipeMapFuel extends GT_RecipeMap { + + public GT_RecipeMapFuel(Collection aRecipeList) { + super(aRecipeList); + } + + } + + public static class GT_RecipeMapFurnace extends GT_RecipeMap { + + public GT_RecipeMapFurnace(Collection aRecipeList) { + super(aRecipeList); + } + + } + + public static class GT_RecipeMapLargeBoilerFakeFuels extends GT_RecipeMap { + + public GT_RecipeMapLargeBoilerFakeFuels() { + super (new HashSet(30)); + setNames("gt.recipe.largeboilerfakefuels", "Large Boiler"); + setNEIGUIPathBasic("Default"); + setOutputSlots(0); + } + + } + + public static class GT_RecipeMapLargeChemicalReactor extends GT_RecipeMap { + + private static final int INPUT_COUNT = 2; + private static final int OUTPUT_COUNT = 2; + + public GT_RecipeMapLargeChemicalReactor() { + super(new HashSet(200)); + setNames("gt.recipe.largechemicalreactor", "Large Chemical Reactor"); + setNEIGUIPathBasic("Default"); + setInputSlots(INPUT_COUNT); + setOutputSlots(OUTPUT_COUNT); + setMinimalInputItems(0); + setMinimalTotalInputs(1); + } + + } + + public static class GT_RecipeMapMacerator extends GT_RecipeMap { + + public GT_RecipeMapMacerator(Collection aRecipeList) { + super(aRecipeList); + } + + } + + public static class GT_RecipeMapMicrowave extends GT_RecipeMap { + + public GT_RecipeMapMicrowave(Collection aRecipeList) { + super(aRecipeList); + } + + } + + public static class GT_RecipeMapPrinter extends GT_RecipeMap { + + public GT_RecipeMapPrinter(Collection aRecipeList) { + super(aRecipeList); + } + + } + + public static class GT_RecipeMapRecycler extends GT_RecipeMap { + + public GT_RecipeMapRecycler(Collection aRecipeList) { + super(aRecipeList); + } + } + + public static class GT_RecipeMapUnboxinator extends GT_RecipeMap { + + public GT_RecipeMapUnboxinator(Collection aRecipeList) { + super(aRecipeList); + } + + } } \ No newline at end of file From 3f103b27c9711412b6e8fbd06d9cff9d0905aea8 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Tue, 3 Nov 2020 19:54:33 -0800 Subject: [PATCH 04/21] Added core of recipe map functionality. --- .../api/recipes/GT_MachineRecipe.java | 245 ++++- .../gregtech/api/recipes/GT_RecipeInput.java | 13 +- .../api/recipes/GT_RecipeInputOredict.java | 22 +- .../gregtech/api/recipes/GT_RecipeMap.java | 986 +++++++++++++++++- .../gregtech/api/recipes/GT_RecipeOutput.java | 8 + 5 files changed, 1262 insertions(+), 12 deletions(-) diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index c874919665..fb83134981 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -1,6 +1,12 @@ package gregtech.api.recipes; +import codechicken.nei.PositionedStack; import gregtech.api.objects.GT_FluidStack; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; +import java.util.ArrayList; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; @@ -8,7 +14,7 @@ * Heavily modified version of GT_Recipe, which will eventually allow oredicted input and output as well as checking NBT tags, * and loading of XML (or maybe other format) recipes. */ -public class GT_MachineRecipe { +public class GT_MachineRecipe implements Comparable { public GT_RecipeInput[] mInputs; public GT_RecipeOutput[] mOutputs; public FluidStack[] mFluidInputs; @@ -55,6 +61,8 @@ public class GT_MachineRecipe { */ private String[] neiDesc = null; + private boolean mOptimized = false; + /** * The main constructor with inputs and outputs. Other details can be added with chainable setters. */ @@ -69,10 +77,35 @@ public GT_MachineRecipe(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, Fl if (mFluidInputs == null) mFluidInputs = new FluidStack[0]; if (mFluidOutputs == null) mFluidOutputs = new FluidStack[0]; + mInputs = GT_Utility.getArrayListWithoutTrailingNulls(mInputs).toArray(new GT_RecipeInput[0]); + mOutputs = GT_Utility.getArrayListWithoutTrailingNulls(mOutputs).toArray(new GT_RecipeOutput[0]); + mFluidInputs = GT_Utility.getArrayListWithoutNulls(mFluidInputs).toArray(new FluidStack[0]); + mFluidOutputs = GT_Utility.getArrayListWithoutNulls(mFluidOutputs).toArray(new FluidStack[0]); + for (int i = 0; i < mFluidInputs.length; i++) mFluidInputs[i] = new GT_FluidStack(mFluidInputs[i]); for (int i = 0; i < mFluidOutputs.length; i++) mFluidOutputs[i] = new GT_FluidStack(mFluidOutputs[i]); } + private static GT_RecipeInput[] wrapInputs(ItemStack[] aInputs) { + GT_RecipeInput[] tInputs = new GT_RecipeInput[aInputs.length]; + for (int i = 0; i < aInputs.length; i++) { + tInputs[i] = new GT_RecipeInput(aInputs[i]); + } + return tInputs; + } + + private static GT_RecipeOutput[] wrapOutputs(ItemStack[] aOutputs) { + GT_RecipeOutput[] tOutputs = new GT_RecipeOutput[aOutputs.length]; + for (int i = 0; i < aOutputs.length; i++) { + tOutputs[i] = new GT_RecipeOutput(aOutputs[i]); + } + return tOutputs; + } + + public GT_MachineRecipe(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { + this(wrapInputs(aInputs), wrapOutputs(aOutputs), aFluidInputs, aFluidOutputs); + } + public GT_MachineRecipe setSpecialItems(Object aSpecialItems) { mSpecialItems = aSpecialItems; return this; @@ -137,6 +170,22 @@ public String[] getNeiDesc() { return neiDesc; } + /** + * Overriding this method and getOutputPositionedStacks allows for custom NEI stack placement + * @return A list of input stacks + */ + public ArrayList getInputPositionedStacks(){ + return null; + } + + /** + * Overriding this method and getInputPositionedStacks allows for custom NEI stack placement + * @return A list of output stacks + */ + public ArrayList getOutputPositionedStacks(){ + return null; + } + /** * Validates the recipe by making sure the duration and EU/t have been set, it has input items and/or fluid as well * as output items and/or fluid, unless it is a fake recipe (fake recipes are always considered valid). @@ -152,4 +201,198 @@ public boolean isValidRecipe() { return true; } + // Copied from StackOverflow + private static int gcd(int a, int b) { return b==0 ? a : gcd(b, a%b); } + + public GT_MachineRecipe optimize() { + assert(isValidRecipe()); + if (!mFakeRecipe && !mOptimized) { // fake recipes probably aren't worth optimizing + int tDivisor = mDuration; + if (tDivisor >= 32) { + for (int i = 0; i < mInputs.length && tDivisor > 1; i++) { + tDivisor = gcd(tDivisor, mInputs[i].getCount()); + } + for (int i = 0; i < mOutputs.length && tDivisor > 1; i++) { + tDivisor = gcd(tDivisor, mOutputs[i].getCount()); + } + for (int i = 0; i < mFluidInputs.length && tDivisor > 1; i++) { + tDivisor = gcd(tDivisor, mFluidInputs[i].amount); + } + for (int i = 0; i < mFluidOutputs.length && tDivisor > 1; i++) { + tDivisor = gcd(tDivisor, mFluidOutputs[i].amount); + } + } + if (tDivisor > 1) { + for (GT_RecipeInput tInput : mInputs) { + tInput.setCount(tInput.getCount() / tDivisor); + } + for (GT_RecipeOutput tOutput : mOutputs) { + tOutput.setCount(tOutput.getCount() / tDivisor); + } + for (FluidStack tFluidInput : mFluidInputs) { + tFluidInput.amount /= tDivisor; + } + for (FluidStack tFluidOutput : mFluidOutputs) { + tFluidOutput.amount /= tDivisor; + } + } + mOptimized = true; + } + return this; + } + + public GT_MachineRecipe copy() { + GT_MachineRecipe rRecipe = new GT_MachineRecipe(mInputs, mOutputs, mFluidInputs, mFluidOutputs); + rRecipe.mCanBeBuffered = this.mCanBeBuffered; + rRecipe.mDuration = this.mDuration; + rRecipe.mEUt = this.mEUt; + rRecipe.mEnableCondition = this.mEnableCondition; + rRecipe.mEnabled = this.mEnabled; + rRecipe.mFakeRecipe = this.mFakeRecipe; + rRecipe.mHidden = this.mHidden; + rRecipe.mInvertCondition = this.mInvertCondition; + rRecipe.mNeedsEmptyOutput = this.mNeedsEmptyOutput; + rRecipe.mOptimized = this.mOptimized; + rRecipe.mSpecialItems = this.mSpecialItems; + rRecipe.mSpecialValue = this.mSpecialValue; + rRecipe.neiDesc = this.neiDesc; + + return rRecipe; + } + + public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, FluidStack[] aFluidInputs, ItemStack... aInputs) { + return isRecipeInputEqual(aDecreaseStacksizeBySuccess, false, aFluidInputs, aInputs); + } + + public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, boolean aIgnoreCounts, FluidStack[] aFluidInputs, ItemStack... aInputs) { + if (mFluidInputs.length > 0 && aFluidInputs == null) { + return false; + } + int amt; + for (FluidStack tFluid : mFluidInputs) { + if (tFluid != null) { + boolean temp = true; + amt = tFluid.amount; + for (FluidStack aFluid : aFluidInputs) { + if (aFluid != null && aFluid.isFluidEqual(tFluid)) { + if (aIgnoreCounts) { + temp = false; + break; + } + amt -= aFluid.amount; + if (amt < 1) { + temp = false; + break; + } + } + } + if (temp) { + return false; + } + } + } + + if (mInputs.length > 0 && aInputs == null) { + return false; + } + + for (GT_RecipeInput tInput : mInputs) { + if (tInput != null) { + boolean temp = true; + for (ItemStack tStack : aInputs) { + if (tInput.inputMatches(tStack, aIgnoreCounts)) { + temp = false; + break; + } + } + if (temp) { + return false; + } + } + } + if (aDecreaseStacksizeBySuccess) { + if (aFluidInputs != null) { + for (FluidStack tFluid : mFluidInputs) { + if (tFluid != null) { + amt = tFluid.amount; + for (FluidStack aFluid : aFluidInputs) { + if (aFluid != null && aFluid.isFluidEqual(tFluid)) { + if (aIgnoreCounts) { + aFluid.amount -= amt; + break; + } + if (aFluid.amount < amt) { + amt -= aFluid.amount; + aFluid.amount = 0; + } else { + aFluid.amount -= amt; + amt = 0; + break; + } + } + } + } + } + } + + if (aInputs != null) { + for (GT_RecipeInput tInput : mInputs) { + if (tInput != null) { + amt = tInput.getCount(); + for (ItemStack aStack : aInputs) { + if (tInput.inputMatches(aStack, aIgnoreCounts)) { + if (aIgnoreCounts) { + aStack.stackSize -= amt; + break; + } + if (aStack.stackSize < amt) { + amt -= aStack.stackSize; + aStack.stackSize = 0; + } else { + aStack.stackSize -= amt; + amt = 0; + break; + } + } + } + } + } + } + } + return true; + } + + @Override + public int compareTo(GT_MachineRecipe aRecipe) { + // first lowest tier recipes + // then fastest + // then with lowest special value + // then dry recipes + // then with fewer inputs + // and finally by earlier fluid id or item id, to keep ordering consistent + // at least when modlist stays the same. + if (this.mEUt != aRecipe.mEUt) { + return this.mEUt - aRecipe.mEUt; + } else if (this.mDuration != aRecipe.mDuration) { + return this.mDuration - aRecipe.mDuration; + } else if (this.mSpecialValue != aRecipe.mSpecialValue) { + return this.mSpecialValue - aRecipe.mSpecialValue; + } else if (this.mFluidInputs.length != aRecipe.mFluidInputs.length) { + return this.mFluidInputs.length - aRecipe.mFluidInputs.length; + } else if (this.mInputs.length != aRecipe.mInputs.length) { + return this.mInputs.length - aRecipe.mInputs.length; + } + for (int i = 0; i < mFluidInputs.length; i++) { + if (this.mFluidInputs[i].getFluidID() != aRecipe.mFluidInputs[i].getFluidID()) { + return this.mFluidInputs[i].getFluidID() - aRecipe.mFluidInputs[i].getFluidID(); + } + } + for (int i = 0; i < mInputs.length; i++) { + if (Item.getIdFromItem(this.mInputs[i].getInputStacks().get(0).getItem()) != Item.getIdFromItem(aRecipe.mInputs[i].getInputStacks().get(0).getItem())) { + return Item.getIdFromItem(this.mInputs[i].getInputStacks().get(0).getItem()) - Item.getIdFromItem(aRecipe.mInputs[i].getInputStacks().get(0).getItem()); + } + } + return 0; + } + } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java index 1c0613db7d..f4dec69257 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -41,6 +41,10 @@ public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { return true; } + /** + * Gets a list of item stacks represented by this recipe input, possibly for display in NEI. + * @return either a singleton list of the item stack or list of interchangeable item stacks usable as input for the current recipe. + */ public List getInputStacks() { return Collections.singletonList(mItemStack.copy()); } @@ -48,5 +52,12 @@ public List getInputStacks() { public String getInputDescription() { return mItemStack.stackSize + " " + mItemStack.getDisplayName(); } - + + public int getCount() { + return mItemStack.stackSize; + } + + public void setCount(int aCount) { + mItemStack.stackSize = aCount; + } } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java index 99562c863b..7bc2ab3536 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java @@ -12,7 +12,7 @@ public class GT_RecipeInputOredict extends GT_RecipeInput { private final String mOredictName; - private final int mCount; + private int mCount; public GT_RecipeInputOredict(String aOredictName, int aCount) { super(null, false); @@ -29,13 +29,13 @@ public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { @Override public List getInputStacks() { - List result = GT_OreDictUnificator.getOres(mOredictName); - for (int i = 0; i < result.size(); i++) { - ItemStack tItemStack = result.get(i).copy(); + List rList = GT_OreDictUnificator.getOres(mOredictName); + for (int i = 0; i < rList.size(); i++) { + ItemStack tItemStack = rList.get(i).copy(); tItemStack.stackSize = mCount; - result.set(i, tItemStack); + rList.set(i, tItemStack); } - return result; + return rList; } @Override @@ -43,4 +43,14 @@ public String getInputDescription() { return mCount + " " + mOredictName; } + @Override + public int getCount() { + return mCount; + } + + @Override + public void setCount(int aCount) { + mCount = aCount; + } + } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index 3fd03fc41a..d108876342 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -1,10 +1,47 @@ package gregtech.api.recipes; +import codechicken.nei.PositionedStack; +import cpw.mods.fml.common.Loader; +import cpw.mods.fml.common.Optional; +import gregtech.api.GregTech_API; +import gregtech.api.enums.Dyes; import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.SubTag; +import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords; +import gregtech.api.objects.GT_ItemStack; +import gregtech.api.objects.ItemData; +import gregtech.api.objects.MaterialStack; import gregtech.api.util.GT_LanguageManager; +import gregtech.api.util.GT_Log; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Utility; +import gregtech.nei.GT_NEI_DefaultHandler; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; +import java.util.HashMap; import java.util.HashSet; +import java.util.List; +import java.util.Map; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntityFurnace; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidContainerRegistry; +import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.fluids.IFluidContainerItem; + +import static gregtech.api.enums.GT_Values.D1; +import static gregtech.api.enums.GT_Values.L; +import static gregtech.api.enums.GT_Values.W; @@ -33,7 +70,7 @@ public class GT_RecipeMap { public static final GT_RecipeMap sArcFurnaceRecipes = new GT_RecipeMap(new HashSet(10000)).setNames("gt.recipe.arcfurnace", "Arc Furnace").setNEIGUIPathBasic("ArcFurnace").setOutputSlots(4).setMinimalInputFluids(1).setAmperage(3); public static final GT_RecipeMap sPrinterRecipes = new GT_RecipeMapPrinter(new HashSet(100)).setNames("gt.recipe.printer", "Printer").setNEIGUIPathBasic("Printer").setMinimalInputFluids(1); public static final GT_RecipeMap sSifterRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.sifter", "Sifter").setNEIGUIPathBasic("Sifter").setOutputSlots(9); - public static final GT_RecipeMap sPressRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.press", "Forming Press").setNEIGUIPathBasic("FormingPress").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sPressRecipes = new GT_RecipeMapFormingPress(new HashSet(100)).setNames("gt.recipe.press", "Forming Press").setNEIGUIPathBasic("FormingPress").setInputSlots(2).setMinimalInputItems(2); public static final GT_RecipeMap sLaserEngraverRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.laserengraver", "Precision Laser Engraver").setNEIGUIPathBasic("LaserEngraver").setInputSlots(2).setMinimalInputItems(2); public static final GT_RecipeMap sMixerRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.mixer", "Mixer").setNEIGUIPathBasic("Mixer").setInputSlots(4).setMinimalTotalInputs(2); public static final GT_RecipeMap sAutoclaveRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.autoclave", "Autoclave").setNEIGUIPathBasic("Autoclave").setMinimalInputFluids(1); @@ -87,6 +124,16 @@ public class GT_RecipeMap { public static final GT_RecipeMapFuel sFluidNaquadahReactorFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.fluidnaquadahreactor", "Fluid Naquadah Reactor").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); public static final GT_RecipeMapLargeBoilerFakeFuels sLargeBoilerFakeFuels = new GT_RecipeMapLargeBoilerFakeFuels(); + + /** + * HashMap of Recipes based on their Items + */ + public final Map> mRecipeItemMap = new HashMap<>(1000); + /** + * HashMap of Recipes based on their Fluids + */ + public final Map> mRecipeFluidMap = new HashMap<>(200); + /** * The List of all Recipes */ @@ -221,16 +268,358 @@ public final GT_RecipeMap setShowVoltageAmperageInNEI(boolean aShowVoltageAmpera return this; } + public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + GT_RecipeInput[] tInputs = new GT_RecipeInput[0]; + if (aInputs != null) { + tInputs = new GT_RecipeInput[aInputs.length]; + } + for (int i = 0; i < tInputs.length; i++) { + tInputs[i] = new GT_RecipeInput(aInputs[i]); + } + GT_RecipeOutput[] tOutputs = new GT_RecipeOutput[0]; + if (aOutputs != null) { + tOutputs = new GT_RecipeOutput[aOutputs.length]; + } + if (aOutputChances != null) { + for (int i = 0; i < aOutputChances.length && i < tOutputs.length; i++) { + tOutputs[i] = new GT_RecipeOutput(aOutputs[i], aOutputChances[i] / 10000f); + } + for (int i = aOutputChances.length; i < tOutputs.length; i++) { + tOutputs[i] = new GT_RecipeOutput(aOutputs[i]); + } + } else { + for (int i = 0; i < tOutputs.length; i++) { + tOutputs[i] = new GT_RecipeOutput(aOutputs[i]); + } + } + GT_MachineRecipe tRecipe = new GT_MachineRecipe(tInputs, tOutputs, aFluidInputs, aFluidOutputs); + tRecipe.setSpecialItems(aSpecial); + tRecipe.setDuration(aDuration); + tRecipe.setEUt(aEUt); + tRecipe.setSpecialValue(aSpecialValue); + if (aOptimize) { + tRecipe.optimize(); + } + return addRecipe(tRecipe); + } + + public GT_MachineRecipe addRecipe(int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addRecipe(false, new ItemStack[0], new ItemStack[0], null, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); + } + + public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); + } + + public GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe) { + return addRecipe(aRecipe, true, false, false); + } + + protected GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe, boolean aCheckForCollisions, boolean aFakeRecipe, boolean aHidden) { + aRecipe.mHidden = aHidden; + aRecipe.mFakeRecipe = aFakeRecipe; + if (aRecipe.mFluidInputs.length < mMinimalInputFluids && aRecipe.mInputs.length < mMinimalInputItems) { + return null; + } + if (aCheckForCollisions) { + // Allowing ore dictionary inputs complicates checking for collision, but try looking for the first possible item stack for each input. + ItemStack[] tInputs = new ItemStack[aRecipe.mInputs.length]; + for (int i = 0; i < tInputs.length; i++) { + tInputs[i] = aRecipe.mInputs[i].getInputStacks().get(0); + } + if (findRecipe(null, null, Long.MAX_VALUE, aRecipe.mFluidInputs, null, tInputs) != null) { + return null; + } + } + return add(aRecipe); + } + + /** + * Only used for fake Recipe Handlers to show something in NEI, do not use + * this for adding actual Recipes! findRecipe wont find fake Recipes, + * containsInput WILL find fake Recipes + */ + public GT_MachineRecipe addFakeRecipe(boolean aCheckForCollisions, GT_MachineRecipe aRecipe) { + return addRecipe(aRecipe, aCheckForCollisions, true, false); + } + + public GT_MachineRecipe addFakeRecipe(boolean aCheckForCollisions, GT_MachineRecipe aRecipe, boolean hidden) { + return addRecipe(aRecipe, aCheckForCollisions, true, hidden); + } + + public GT_MachineRecipe add(GT_MachineRecipe aRecipe) { + mRecipeList.add(aRecipe); + addToFluidMap(aRecipe); + return addToItemMap(aRecipe); + } + + protected GT_MachineRecipe addToFluidMap(GT_MachineRecipe aRecipe) { + for (FluidStack aFluid : aRecipe.mFluidInputs) { + if (aFluid != null) { + Collection tList = mRecipeFluidMap.get(aFluid.getFluid()); + if (tList == null) { + tList = new HashSet<>(1); + mRecipeFluidMap.put(aFluid.getFluid(), tList); + } + tList.add(aRecipe); + } + } + return aRecipe; + } + + protected GT_MachineRecipe addToItemMap(GT_MachineRecipe aRecipe) { + for (GT_RecipeInput aInput : aRecipe.mInputs) { + for (ItemStack aStack : aInput.getInputStacks()) { + if (aStack != null) { + GT_ItemStack tStack = new GT_ItemStack(aStack); + Collection tList = mRecipeItemMap.get(tStack); + if (tList == null) { + tList = new HashSet<>(1); + mRecipeItemMap.put(tStack, tList); + } + tList.add(aRecipe); + } + } + } + return aRecipe; + } + + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + return findRecipe(aTileEntity, aRecipe, false, aVoltage, aFluids, aSpecialSlot, aInputs); + } + + /** + * finds a Recipe matching the aFluid and ItemStack Inputs. + * + * @param aTileEntity an Object representing the current coordinates of the + * executing Block/Entity/Whatever. This may be null, especially during + * Startup. + * @param aRecipe in case this is != null it will try to use this Recipe + * first when looking things up. + * @param aIgnoreCounts if set to false will only return recipes that can be + * executed at least once with the provided input + * @param aVoltage Voltage of the Machine or Long.MAX_VALUE if it has no + * Voltage + * @param aFluids the Fluid Inputs + * @param aSpecialSlot the content of the Special Slot, the regular Manager + * doesn't do anything with this, but some custom ones do. + * @param aInputs the Item Inputs + * @return the Recipe it has found or null for no matching Recipe + */ + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + // No Recipes? Well, nothing to be found then. + if (mRecipeList.isEmpty()) { + return null; + } + + // Some Recipe Classes require a certain amount of Inputs of certain kinds. Like "at least 1 Fluid + 1 Stack" or "at least 2 Stacks" before they start searching for Recipes. + // This improves Performance massively, especially if people leave things like Circuits, Molds or Shapes in their Machines to select Sub Recipes. + int tFluidCount = 0; + int tItemCount = 0; + if (GregTech_API.sPostloadFinished) { + if (mMinimalInputFluids > 0) { + if (aFluids == null) { + return null; + } + for (FluidStack aFluid : aFluids) { + if (aFluid != null) { + tFluidCount++; + } + } + if (tFluidCount < mMinimalInputFluids) { + return null; + } + } + if (mMinimalInputItems > 0) { + if (aInputs == null) { + return null; + } + for (ItemStack aInput : aInputs) { + if (aInput != null) { + tItemCount++; + } + } + if (tItemCount < mMinimalInputItems) { + return null; + } + } + if (tItemCount + tFluidCount < mMinimalTotalInputs) { + return null; + } + } + + // Check the Recipe which has been used last time in order to not have to search for it again, if possible. + if (aRecipe != null) { + if (!aRecipe.mFakeRecipe && aRecipe.mCanBeBuffered && aRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { + if (aRecipe.mEnabled && aVoltage * mAmperage >= aRecipe.mEUt) { + return aRecipe; + } + return null; + } + } + + // Now look for the Recipes inside the Item HashMaps, but only when the Recipes usually have Items. + if (mInputSlots > 0 && aInputs != null) { + for (ItemStack tStack : aInputs) { + if (tStack != null) { + Collection tRecipes = mRecipeItemMap.get(new GT_ItemStack(tStack)); + if (tRecipes != null) { + for (GT_MachineRecipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { + if (tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt) { + return tRecipe; + } + return null; + } + } + } + tRecipes = mRecipeItemMap.get(new GT_ItemStack(GT_Utility.copyMetaData(W, tStack))); + if (tRecipes != null) { + for (GT_MachineRecipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { + if (tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt) { + return tRecipe; + } + return null; + } + } + } + } + } + } + + // If the minimal Amount of Items for the Recipe is 0, then it could be a Fluid-Only Recipe, so check that Map too. + if (mMinimalInputItems == 0 && aFluids != null) { + for (FluidStack aFluid : aFluids) { + if (aFluid != null) { + Collection tRecipes = mRecipeFluidMap.get(aFluid.getFluid()); + if (tRecipes != null) { + for (GT_MachineRecipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { + if (tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt) { + return tRecipe; + } + return null; + } + } + } + } + } + } + + // And nothing has been found. + return null; + } + + /** + * @return if this Item is a valid Input for any for the Recipes + */ + public boolean containsInput(ItemStack aStack) { + return aStack != null && (mRecipeItemMap.containsKey(new GT_ItemStack(aStack)) || mRecipeItemMap.containsKey(new GT_ItemStack(GT_Utility.copyMetaData(W, aStack)))); + } + + /** + * @return if this Fluid is a valid Input for any for the Recipes + */ + public boolean containsInput(FluidStack aFluid) { + return aFluid != null && containsInput(aFluid.getFluid()); + } + + /** + * @return if this Fluid is a valid Input for any for the Recipes + */ + public boolean containsInput(Fluid aFluid) { + return aFluid != null && mRecipeFluidMap.containsKey(aFluid); + } + + public void reInit() { + Map> tMap = mRecipeItemMap; + if (tMap != null) { + tMap.clear(); + } + for (GT_MachineRecipe tRecipe : mRecipeList) { + if (tMap != null) { + addToItemMap(tRecipe); + } + } + } + + public static abstract class GT_RecipeMap_NonGT extends GT_RecipeMap { + + public GT_RecipeMap_NonGT(Collection aRecipeList) { + super(aRecipeList); + } + + @Override + public boolean containsInput(ItemStack aStack) { + return false; + } + + @Override + public boolean containsInput(FluidStack aFluid) { + return false; + } + + @Override + public boolean containsInput(Fluid aFluid) { + return false; + } + + + @Override + public GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe) { + return null; + } + + @Override + public GT_MachineRecipe addFakeRecipe(boolean aCheckForCollisions, GT_MachineRecipe aRecipe) { + return null; + } + + @Override + public GT_MachineRecipe add(GT_MachineRecipe aRecipe) { + return null; + } + + @Override + public final void reInit() {/**/} + + @Override + protected GT_MachineRecipe addToItemMap(GT_MachineRecipe aRecipe) { + return null; + } + } + public static class GT_RecipeMapAssembler extends GT_RecipeMap { public GT_RecipeMapAssembler(Collection aRecipeList) { super(aRecipeList); } + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || rRecipe == null || !GregTech_API.sPostloadFinished) { + return rRecipe; + } + for (ItemStack aInput : aInputs) { + if (ItemList.Paper_Printed_Pages.isStackEqual(aInput, false, true)) { + rRecipe = rRecipe.copy(); + rRecipe.mCanBeBuffered = false; + ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); + tStack.setTagCompound(aInput.getTagCompound()); + rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); + } + } + return rRecipe; + } } public static class GT_RecipeMapDistillationTower extends GT_RecipeMap { + private static final int FLUID_OUTPUT_COUNT = 11; + private static final int ROW_SIZE = 3; + public GT_RecipeMapDistillationTower() { super(new HashSet(50)); setNames("gt.recipe.distillationtower", "Distillation Tower"); @@ -241,6 +630,51 @@ public GT_RecipeMapDistillationTower() { setMinimalInputFluids(1); } + @Override + public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addRecipe(new GT_Recipe_DistillationTower(aInputs, aOutputs, aFluidInputs, aFluidOutputs).setDuration(aDuration).setEUt(aEUt).setSpecialValue(aSpecialValue)); + } + + @Override + public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); + } + + private static class GT_Recipe_DistillationTower extends GT_MachineRecipe { + + protected GT_Recipe_DistillationTower(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { + super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); + } + + @Override + public ArrayList getInputPositionedStacks() { + ArrayList inputStacks = new ArrayList<>(1); + + if (this.mFluidInputs.length > 0 && this.mFluidInputs[0] != null) { + inputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[0], true), 48, 52)); + } + return inputStacks; + } + + @Override + public ArrayList getOutputPositionedStacks() { + int fluidLimit = Math.min(mFluidOutputs.length, FLUID_OUTPUT_COUNT); + ArrayList outputStacks = new ArrayList<>(1 + fluidLimit); + + if (this.mOutputs.length > 0 && this.mOutputs[0] != null) { + outputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(this.mOutputs[0].getShownOutput(), 102, 52)); + } + + for (int i = 0; i < fluidLimit; i++) { + int x = 102 + ((i + 1) % ROW_SIZE) * 18; + int y = 52 - ((i + 1) / ROW_SIZE) * 18; + outputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[i], true), x, y)); + } + + return outputStacks; + } + + } } public static class GT_RecipeMapFluidCanner extends GT_RecipeMap { @@ -249,6 +683,98 @@ public GT_RecipeMapFluidCanner(Collection aRecipeList) { super(aRecipeList); } + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || rRecipe != null || !GregTech_API.sPostloadFinished) { + return rRecipe; + } + if (aFluids != null && aFluids.length > 0 && aFluids[0] != null) { + ItemStack tOutput = GT_Utility.fillFluidContainer(aFluids[0], aInputs[0], false, true); + FluidStack tFluid = GT_Utility.getFluidForFilledItem(tOutput, true); + if (tFluid != null) { + rRecipe = new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[]{tFluid}, null).setDuration(Math.max(tFluid.amount / 64, 16)).setEUt(1); + } + } + if (rRecipe == null) { + FluidStack tFluid = GT_Utility.getFluidForFilledItem(aInputs[0], true); + if (tFluid != null) { + rRecipe = new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{GT_Utility.getContainerItem(aInputs[0], true)}, null, new FluidStack[]{tFluid}).setDuration(Math.max(tFluid.amount / 64, 16)).setEUt(1); + } + } + if (rRecipe != null) { + rRecipe.mCanBeBuffered = false; + } + return rRecipe; + } + + @Override + public boolean containsInput(ItemStack aStack) { + return aStack != null && (super.containsInput(aStack) || (aStack.getItem() instanceof IFluidContainerItem && ((IFluidContainerItem) aStack.getItem()).getCapacity(aStack) > 0)); + } + + @Override + public boolean containsInput(FluidStack aFluid) { + return true; + } + + @Override + public boolean containsInput(Fluid aFluid) { + return true; + } + } + + public static class GT_RecipeMapFormingPress extends GT_RecipeMap { + + public GT_RecipeMapFormingPress(Collection aRecipeList) { + super(aRecipeList); + } + + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + if (aInputs == null || aInputs.length < 2 || aInputs[0] == null || aInputs[1] == null || !GregTech_API.sPostloadFinished) { + return rRecipe; + } + if (rRecipe == null) { + if (ItemList.Shape_Mold_Name.isStackEqual(aInputs[0], false, true)) { + ItemStack tOutput = GT_Utility.copyAmount(1, aInputs[1]); + tOutput.setStackDisplayName(aInputs[0].getDisplayName()); + rRecipe = new GT_MachineRecipe(new ItemStack[]{ItemList.Shape_Mold_Name.get(0), GT_Utility.copyAmount(1, aInputs[1])}, new ItemStack[]{tOutput}, null, null).setDuration(128).setEUt(8); + rRecipe.mCanBeBuffered = false; + return rRecipe; + } + if (ItemList.Shape_Mold_Name.isStackEqual(aInputs[1], false, true)) { + ItemStack tOutput = GT_Utility.copyAmount(1, aInputs[0]); + tOutput.setStackDisplayName(aInputs[1].getDisplayName()); + rRecipe = new GT_MachineRecipe(new ItemStack[]{ItemList.Shape_Mold_Name.get(0), GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, null, null).setDuration(128).setEUt(8); + rRecipe.mCanBeBuffered = false; + return rRecipe; + } + return null; + } + for (ItemStack aMold : aInputs) { + if (ItemList.Shape_Mold_Credit.isStackEqual(aMold, false, true)) { + NBTTagCompound tNBT = aMold.getTagCompound(); + if (tNBT == null) { + tNBT = new NBTTagCompound(); + } + if (!tNBT.hasKey("credit_security_id")) { + tNBT.setLong("credit_security_id", System.nanoTime()); + } + aMold.setTagCompound(tNBT); + + rRecipe = rRecipe.copy(); + rRecipe.mCanBeBuffered = false; + ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); + tStack.setTagCompound(tNBT); + rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); + return rRecipe; + } + } + return rRecipe; + } + } public static class GT_RecipeMapFuel extends GT_RecipeMap { @@ -257,14 +783,52 @@ public GT_RecipeMapFuel(Collection aRecipeList) { super(aRecipeList); } + public GT_MachineRecipe addFuel(ItemStack aInput, ItemStack aOutput, int aFuelValueInEU) { + return addFuel(aInput, aOutput, null, null, 10000, aFuelValueInEU); + } + + public GT_MachineRecipe addFuel(ItemStack aInput, ItemStack aOutput, int aChance, int aFuelValueInEU) { + return addFuel(aInput, aOutput, null, null, aChance, aFuelValueInEU); + } + + public GT_MachineRecipe addFuel(FluidStack aFluidInput, FluidStack aFluidOutput, int aFuelValueInEU) { + return addFuel(null, null, aFluidInput, aFluidOutput, 10000, aFuelValueInEU); + } + + public GT_MachineRecipe addFuel(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput, int aFuelValueInEU) { + return addFuel(aInput, aOutput, aFluidInput, aFluidOutput, 10000, aFuelValueInEU); + } + + public GT_MachineRecipe addFuel(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput, int aChance, int aFuelValueInEU) { + return addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, new int[]{aChance}, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, 0, 0, aFuelValueInEU); + } } - public static class GT_RecipeMapFurnace extends GT_RecipeMap { + public static class GT_RecipeMapFurnace extends GT_RecipeMap_NonGT { public GT_RecipeMapFurnace(Collection aRecipeList) { super(aRecipeList); } + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aNotUnificated, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { + return null; + } + if (aRecipe != null && aRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { + return aRecipe; + } + ItemStack tOutput = GT_ModHandler.getSmeltingOutput(aInputs[0], false, null); + if (tOutput == null) { + return null; + } + return new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[0], new FluidStack[0]).setDuration(128).setEUt(4); + } + + @Override + public boolean containsInput(ItemStack aStack) { + return GT_ModHandler.getSmeltingOutput(aStack, false, null) != null; + } } public static class GT_RecipeMapLargeBoilerFakeFuels extends GT_RecipeMap { @@ -274,14 +838,52 @@ public GT_RecipeMapLargeBoilerFakeFuels() { setNames("gt.recipe.largeboilerfakefuels", "Large Boiler"); setNEIGUIPathBasic("Default"); setOutputSlots(0); + GT_MachineRecipe explanatoryRecipe = new GT_MachineRecipe(new ItemStack[]{}, new ItemStack[]{}, null, null).setDuration(1).setEUt(1).setSpecialValue(1); + explanatoryRecipe.setNeiDesc("Not all solid fuels are listed.", "Any item that burns in a", "vanilla furnace will burn in", "a Large Boiler."); + addRecipe(explanatoryRecipe); } + public GT_MachineRecipe addDenseLiquidRecipe(GT_MachineRecipe recipe) { + return addRecipe(recipe, ((double) recipe.mSpecialValue) / 10); + } + + public GT_MachineRecipe addDieselRecipe(GT_MachineRecipe recipe) { + return addRecipe(recipe, ((double) recipe.mSpecialValue) / 40); + } + + public void addSolidRecipes(ItemStack... itemStacks) { + for (ItemStack itemStack : itemStacks) { + addSolidRecipe(itemStack); + } + } + + public GT_MachineRecipe addSolidRecipe(ItemStack fuelItemStack) { + return addRecipe(new GT_MachineRecipe(new ItemStack[]{fuelItemStack}, new ItemStack[]{}, null, null).setDuration(1).setSpecialValue(GT_ModHandler.getFuelValue(fuelItemStack) / 1600), ((double) GT_ModHandler.getFuelValue(fuelItemStack)) / 1600); + } + + private GT_MachineRecipe addRecipe(GT_MachineRecipe recipe, double baseBurnTime) { + GT_MachineRecipe tRecipe = recipe.copy(); + + double bronzeBurnTime = baseBurnTime * 2; + double steelBurnTime = baseBurnTime * 1.5; + double titaniumBurnTime = baseBurnTime * 1.3; + double tungstensteelBurnTime = baseBurnTime * 1.2; + + tRecipe.setNeiDesc("Burn time in seconds:", + String.format("Bronze Boiler: %.4f", bronzeBurnTime), + String.format("Steel Boiler: %.4f", steelBurnTime), + String.format("Titanium Boiler: %.4f", titaniumBurnTime), + String.format("Tungstensteel Boiler: %.4f", tungstensteelBurnTime)); + return super.addRecipe(tRecipe); + } } public static class GT_RecipeMapLargeChemicalReactor extends GT_RecipeMap { private static final int INPUT_COUNT = 2; private static final int OUTPUT_COUNT = 2; + private static final int FLUID_INPUT_COUNT = 4; + private static final int FLUID_OUTPUT_COUNT = 4; public GT_RecipeMapLargeChemicalReactor() { super(new HashSet(200)); @@ -293,6 +895,130 @@ public GT_RecipeMapLargeChemicalReactor() { setMinimalTotalInputs(1); } + @Override + public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + ArrayList adjustedInputs = new ArrayList<>(5); + ArrayList adjustedOutputs = new ArrayList<>(5); + ArrayList adjustedFluidInputs = new ArrayList<>(5); + ArrayList adjustedFluidOutputs = new ArrayList<>(5); + + ItemStack[] tInputs = aInputs; + if (tInputs == null) { + tInputs = new ItemStack[0]; + } + for (ItemStack input : tInputs) { + FluidStack inputFluidContent = FluidContainerRegistry.getFluidForFilledItem(input); + if (inputFluidContent != null) { + inputFluidContent.amount *= input.stackSize; + if (inputFluidContent.getFluid().getName().equals("ic2steam")) { + inputFluidContent = GT_ModHandler.getSteam(inputFluidContent.amount); + } + adjustedFluidInputs.add(inputFluidContent); + } else { + ItemData itemData = GT_OreDictUnificator.getItemData(input); + if ((itemData == null || !itemData.hasValidPrefixMaterialData()) || itemData.mMaterial.mMaterial != Materials.Empty) { + if (itemData != null && itemData.hasValidPrefixMaterialData() && itemData.mPrefix == OrePrefixes.cell) { + ItemStack dustStack = itemData.mMaterial.mMaterial.getDust(input.stackSize); + if (dustStack != null) { + adjustedInputs.add(dustStack); + } else { + adjustedInputs.add(input); + } + } else { + adjustedInputs.add(input); + } + } + } + } + FluidStack[] tFluidInputs = aFluidInputs; + if (tFluidInputs == null) { + tFluidInputs = new FluidStack[0]; + } + adjustedFluidInputs.addAll(Arrays.asList(tFluidInputs)); + tInputs = adjustedInputs.toArray(new ItemStack[adjustedInputs.size()]); + tFluidInputs = adjustedFluidInputs.toArray(new FluidStack[adjustedFluidInputs.size()]); + + ItemStack[] tOutputs = aOutputs; + if (tOutputs == null) { + tOutputs = new ItemStack[0]; + } + for (ItemStack output : tOutputs) { + FluidStack outputFluidContent = FluidContainerRegistry.getFluidForFilledItem(output); + if (outputFluidContent != null) { + outputFluidContent.amount *= output.stackSize; + if (outputFluidContent.getFluid().getName().equals("ic2steam")) { + outputFluidContent = GT_ModHandler.getSteam(outputFluidContent.amount); + } + adjustedFluidOutputs.add(outputFluidContent); + } else { + ItemData itemData = GT_OreDictUnificator.getItemData(output); + if ((itemData == null || !itemData.hasValidPrefixMaterialData()) || itemData.mMaterial.mMaterial != Materials.Empty) { + adjustedOutputs.add(output); + } + } + } + + FluidStack[] tFluidOutputs = aFluidOutputs; + if (tFluidOutputs == null) { + tFluidOutputs = new FluidStack[0]; + } + adjustedFluidOutputs.addAll(Arrays.asList(tFluidOutputs)); + tOutputs = adjustedOutputs.toArray(new ItemStack[adjustedOutputs.size()]); + tFluidOutputs = adjustedFluidOutputs.toArray(new FluidStack[adjustedFluidOutputs.size()]); + + GT_MachineRecipe_LargeChemicalReactor rRecipe = (GT_MachineRecipe_LargeChemicalReactor) new GT_MachineRecipe_LargeChemicalReactor(tInputs, tOutputs, tFluidInputs, tFluidOutputs).setDuration(aDuration).setEUt(aEUt).setSpecialValue(aSpecialValue); + if (aOptimize) { + rRecipe.optimize(); + } + return rRecipe; + + } + + private static class GT_MachineRecipe_LargeChemicalReactor extends GT_MachineRecipe { + + protected GT_MachineRecipe_LargeChemicalReactor(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { + super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); + } + + @Override + public ArrayList getInputPositionedStacks() { + int itemLimit = Math.min(mInputs.length, INPUT_COUNT); + int fluidLimit = Math.min(mFluidInputs.length, FLUID_INPUT_COUNT); + ArrayList inputStacks = new ArrayList<>(itemLimit + fluidLimit); + + for (int i = 0; i < itemLimit; i++) { + inputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(this.mInputs[i].getInputStacks(), 48 - i * 18, 5)); + } + + for (int i = 0; i < fluidLimit; i++) { + if (i < 3) { + inputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[i], true), 48 - i * 18, 23)); + } else { + inputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[i], true), 12, 5)); + } + } + + return inputStacks; + } + + @Override + public ArrayList getOutputPositionedStacks() { + int itemLimit = Math.min(mOutputs.length, OUTPUT_COUNT); + int fluidLimit = Math.min(mFluidOutputs.length, FLUID_OUTPUT_COUNT); + ArrayList outputStacks = new ArrayList(itemLimit + fluidLimit); + + for (int i = 0; i < itemLimit; i++) { + outputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(this.mOutputs[i].getShownOutput().copy(), 102 + i * 18, 5)); + } + + for (int i = 0; i < fluidLimit; i++) { + outputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[i], true), 102 + i * 18, 23)); + } + + return outputStacks; + } + + } } public static class GT_RecipeMapMacerator extends GT_RecipeMap { @@ -300,15 +1026,133 @@ public static class GT_RecipeMapMacerator extends GT_RecipeMap { public GT_RecipeMapMacerator(Collection aRecipeList) { super(aRecipeList); } + + @Optional.Method(modid = "Railcraft") + private List getRockCrusherOutputs(ItemStack aStack) { + return mods.railcraft.api.crafting.RailcraftCraftingManager.rockCrusher.getRecipe(GT_Utility.copyAmount(1, aStack)).getRandomizedOuputs(); + } + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || !GregTech_API.sPostloadFinished) + return super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + if (rRecipe != null) return rRecipe; + + if (Loader.isModLoaded("Railcraft")) { + List tRecipeOutputs = getRockCrusherOutputs(aInputs[0]); + if (tRecipeOutputs != null) { + rRecipe = new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, tRecipeOutputs.toArray(new ItemStack[tRecipeOutputs.size()]), null, null).setDuration(800).setEUt(2); + rRecipe.mCanBeBuffered = false; + rRecipe.mNeedsEmptyOutput = true; + return rRecipe; + } + } + + ItemStack tComparedInput = GT_Utility.copy(aInputs[0]); + ItemStack[] tOutputItems = GT_ModHandler.getMachineOutput(tComparedInput, ic2.api.recipe.Recipes.macerator.getRecipes(), true, new NBTTagCompound(), null, null, null); + if (GT_Utility.arrayContainsNonNull(tOutputItems)) { + return new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(aInputs[0].stackSize - tComparedInput.stackSize, aInputs[0])}, tOutputItems, null, null).setDuration(400).setEUt(2); + } + return null; + } + + @Override + public boolean containsInput(ItemStack aStack) { + return super.containsInput(aStack) || GT_Utility.arrayContainsNonNull(GT_ModHandler.getMachineOutput(GT_Utility.copyAmount(64, aStack), ic2.api.recipe.Recipes.macerator.getRecipes(), false, new NBTTagCompound(), null, null, null)); + } } - public static class GT_RecipeMapMicrowave extends GT_RecipeMap { + public static class GT_RecipeMapMicrowave extends GT_RecipeMap_NonGT { public GT_RecipeMapMicrowave(Collection aRecipeList) { super(aRecipeList); } + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { + return null; + } + if (aRecipe != null && aRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { + return aRecipe; + } + ItemStack tOutput = GT_ModHandler.getSmeltingOutput(aInputs[0], false, null); + + if (GT_Utility.areStacksEqual(aInputs[0], new ItemStack(Items.book, 1, W))) { + return new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{GT_Utility.getWrittenBook("Manual_Microwave", ItemList.Book_Written_03.get(1))}, new FluidStack[0], new FluidStack[0]).setDuration(32).setEUt(4); + } + + // Check Container Item of Input since it is around the Input, then the Input itself, then Container Item of Output and last check the Output itself + for (ItemStack tStack : new ItemStack[]{GT_Utility.getContainerItem(aInputs[0], true), aInputs[0], GT_Utility.getContainerItem(tOutput, true), tOutput}) { + if (tStack != null) { + if (GT_Utility.areStacksEqual(tStack, new ItemStack(Blocks.netherrack, 1, W), true) + || GT_Utility.areStacksEqual(tStack, new ItemStack(Blocks.tnt, 1, W), true) + || GT_Utility.areStacksEqual(tStack, new ItemStack(Items.egg, 1, W), true) + || GT_Utility.areStacksEqual(tStack, new ItemStack(Items.firework_charge, 1, W), true) + || GT_Utility.areStacksEqual(tStack, new ItemStack(Items.fireworks, 1, W), true) + || GT_Utility.areStacksEqual(tStack, new ItemStack(Items.fire_charge, 1, W), true) + ) { + if (aTileEntity instanceof IGregTechTileEntity) { + ((IGregTechTileEntity) aTileEntity).doExplosion(aVoltage * 4); + } + return null; + } + ItemData tData = GT_OreDictUnificator.getItemData(tStack); + + + if (tData != null) { + if (tData.mMaterial != null && tData.mMaterial.mMaterial != null) { + if (tData.mMaterial.mMaterial.contains(SubTag.METAL) || tData.mMaterial.mMaterial.contains(SubTag.EXPLOSIVE)) { + if (aTileEntity instanceof IGregTechTileEntity) { + ((IGregTechTileEntity) aTileEntity).doExplosion(aVoltage * 4); + } + return null; + } + if (tData.mMaterial.mMaterial.contains(SubTag.FLAMMABLE)) { + if (aTileEntity instanceof IGregTechTileEntity) { + ((IGregTechTileEntity) aTileEntity).setOnFire(); + } + return null; + } + } + for (MaterialStack tMaterial : tData.mByProducts) { + if (tMaterial != null) { + if (tMaterial.mMaterial.contains(SubTag.METAL) || tMaterial.mMaterial.contains(SubTag.EXPLOSIVE)) { + if (aTileEntity instanceof IGregTechTileEntity) { + ((IGregTechTileEntity) aTileEntity).doExplosion(aVoltage * 4); + } + return null; + } + if (tMaterial.mMaterial.contains(SubTag.FLAMMABLE)) { + if (aTileEntity instanceof IGregTechTileEntity) { + ((IGregTechTileEntity) aTileEntity).setOnFire(); + } + return null; + } + } + } + } + if (TileEntityFurnace.getItemBurnTime(tStack) > 0) { + if (aTileEntity instanceof IGregTechTileEntity) { + ((IGregTechTileEntity) aTileEntity).setOnFire(); + } + return null; + } + + } + } + + if (tOutput == null) { + return null; + } + return new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[0], new FluidStack[0]).setDuration(32).setEUt(4); + } + + @Override + public boolean containsInput(ItemStack aStack) { + return GT_ModHandler.getSmeltingOutput(aStack, false, null) != null; + } } public static class GT_RecipeMapPrinter extends GT_RecipeMap { @@ -317,13 +1161,126 @@ public GT_RecipeMapPrinter(Collection aRecipeList) { super(aRecipeList); } + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || aFluids == null || aFluids.length <= 0 || aFluids[0] == null || !GregTech_API.sPostloadFinished) { + return rRecipe; + } + + Dyes aDye = null; + for (Dyes tDye : Dyes.VALUES) { + if (tDye.isFluidDye(aFluids[0])) { + aDye = tDye; + break; + } + } + + if (aDye == null) { + return rRecipe; + } + + if (rRecipe == null) { + ItemStack + tOutput = GT_ModHandler.getAllRecipeOutput(aTileEntity == null ? null : aTileEntity.getWorld(), aInputs[0], aInputs[0], aInputs[0], aInputs[0], ItemList.DYE_ONLY_ITEMS[aDye.mIndex].get(1), aInputs[0], aInputs[0], aInputs[0], aInputs[0]); + if (tOutput != null) { + return addRecipe(new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(8, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[]{new FluidStack(aFluids[0].getFluid(), (int) L)}, null).setDuration(256).setEUt(2).optimize(), false, false, true); + } + + tOutput = GT_ModHandler.getAllRecipeOutput(aTileEntity == null ? null : aTileEntity.getWorld(), aInputs[0], ItemList.DYE_ONLY_ITEMS[aDye.mIndex].get(1)); + if (tOutput != null) { + return addRecipe(new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[]{new FluidStack(aFluids[0].getFluid(), (int) L)}, null).setDuration(32).setEUt(2).optimize(), false, false, true); + } + } else { + if (aInputs[0].getItem() == Items.paper) { + if (!ItemList.Tool_DataStick.isStackEqual(aSpecialSlot, false, true)) { + return null; + } + NBTTagCompound tNBT = aSpecialSlot.getTagCompound(); + if (tNBT == null || GT_Utility.isStringInvalid(tNBT.getString("title")) || GT_Utility.isStringInvalid(tNBT.getString("author"))) { + return null; + } + + rRecipe = rRecipe.copy(); + rRecipe.mCanBeBuffered = false; + ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); + tStack.setTagCompound(tNBT); + rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); + return rRecipe; + } + if (aInputs[0].getItem() == Items.map) { + if (!ItemList.Tool_DataStick.isStackEqual(aSpecialSlot, false, true)) { + return null; + } + NBTTagCompound tNBT = aSpecialSlot.getTagCompound(); + if (tNBT == null || !tNBT.hasKey("map_id")) { + return null; + } + + rRecipe = rRecipe.copy(); + rRecipe.mCanBeBuffered = false; + ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); + tStack.setItemDamage(tNBT.getShort("map_id")); + rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); + return rRecipe; + } + if (ItemList.Paper_Punch_Card_Empty.isStackEqual(aInputs[0], false, true)) { + if (!ItemList.Tool_DataStick.isStackEqual(aSpecialSlot, false, true)) { + return null; + } + NBTTagCompound tNBT = aSpecialSlot.getTagCompound(); + if (tNBT == null || !tNBT.hasKey("GT.PunchCardData")) { + return null; + } + + rRecipe = rRecipe.copy(); + rRecipe.mCanBeBuffered = false; + ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); + tStack.setTagCompound(GT_Utility.getNBTContainingString(new NBTTagCompound(), "GT.PunchCardData", tNBT.getString("GT.PunchCardData"))); + rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); + return rRecipe; + } + } + return rRecipe; + } + + @Override + public boolean containsInput(ItemStack aStack) { + return true; + } + + @Override + public boolean containsInput(FluidStack aFluid) { + return super.containsInput(aFluid) || Dyes.isAnyFluidDye(aFluid); + } + + @Override + public boolean containsInput(Fluid aFluid) { + return super.containsInput(aFluid) || Dyes.isAnyFluidDye(aFluid); + } } - public static class GT_RecipeMapRecycler extends GT_RecipeMap { + public static class GT_RecipeMapRecycler extends GT_RecipeMap_NonGT { public GT_RecipeMapRecycler(Collection aRecipeList) { super(aRecipeList); } + + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { + return null; + } + if (aRecipe != null && aRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { + return aRecipe; + } + return new GT_MachineRecipe(new GT_RecipeInput[]{new GT_RecipeInput(GT_Utility.copyAmount(1, aInputs[0]))}, GT_ModHandler.getRecyclerOutput(GT_Utility.copyAmount(64, aInputs[0]), 0) == null ? null : new GT_RecipeOutput[]{new GT_RecipeOutput(ItemList.IC2_Scrap.get(1), 0.125f)}, null, null).setDuration(45).setEUt(1); + } + + @Override + public boolean containsInput(ItemStack aStack) { + return GT_ModHandler.getRecyclerOutput(GT_Utility.copyAmount(64, aStack), 0) != null; + } } public static class GT_RecipeMapUnboxinator extends GT_RecipeMap { @@ -332,6 +1289,27 @@ public GT_RecipeMapUnboxinator(Collection aRecipeList) { super(aRecipeList); } + @Override + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + if (aInputs == null || aInputs.length <= 0 || !ItemList.IC2_Scrapbox.isStackEqual(aInputs[0], false, true)) { + return super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + } + ItemStack tOutput = GT_ModHandler.getRandomScrapboxDrop(); + if (tOutput == null) { + return super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + } + GT_MachineRecipe rRecipe = new GT_MachineRecipe(new ItemStack[]{ItemList.IC2_Scrapbox.get(1)}, new ItemStack[]{tOutput}, new FluidStack[0], new FluidStack[0]).setDuration(16).setEUt(1); + // It is not allowed to be buffered due to the random Output + rRecipe.mCanBeBuffered = false; + // Due to its randomness it is not good if there are Items in the Output Slot, because those Items could manipulate the outcome. + rRecipe.mNeedsEmptyOutput = true; + return rRecipe; + } + + @Override + public boolean containsInput(ItemStack aStack) { + return ItemList.IC2_Scrapbox.isStackEqual(aStack, false, true) || super.containsInput(aStack); + } } } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java index ef9506dba1..06a1507cc2 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java @@ -105,4 +105,12 @@ public ItemStack getShownOutput() { public float getChance() { return mChance; } + + public int getCount() { + return mItemStack.stackSize; + } + + public void setCount(int aCount) { + mItemStack.stackSize = aCount; + } } \ No newline at end of file From 070ca5641d75550be96a670eb6c7084b98f10ce0 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Wed, 4 Nov 2020 11:11:30 -0800 Subject: [PATCH 05/21] RecipeAdder for new recipe system. --- .gitignore | 1 + .nb-gradle-properties | 5 + src/main/java/gregtech/GT_Mod.java | 3 +- .../api/recipes/GT_AssemblyLineRecipe.java | 3 + .../gregtech/api/recipes/GT_RecipeInput.java | 5 + .../api/recipes/GT_RecipeInputAlts.java | 86 ++ .../gregtech/api/recipes/GT_RecipeMap.java | 3 - .../common/GT_MachineRecipeAdder.java | 1256 +++++++++++++++++ 8 files changed, 1358 insertions(+), 4 deletions(-) create mode 100644 .nb-gradle-properties create mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java create mode 100644 src/main/java/gregtech/common/GT_MachineRecipeAdder.java diff --git a/.gitignore b/.gitignore index f427f51f8c..63dadce33e 100644 --- a/.gitignore +++ b/.gitignore @@ -80,3 +80,4 @@ gradlew.bat # Linux *~ +/.nb-gradle/ \ No newline at end of file diff --git a/.nb-gradle-properties b/.nb-gradle-properties new file mode 100644 index 0000000000..32fef248a1 --- /dev/null +++ b/.nb-gradle-properties @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index 9ff12f4c6e..6ad084226f 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -16,6 +16,7 @@ import gregtech.api.objects.XSTR; import gregtech.api.util.*; import gregtech.common.GT_DummyWorld; +import gregtech.common.GT_MachineRecipeAdder; import gregtech.common.GT_Network; import gregtech.common.GT_Proxy; import gregtech.common.GT_RecipeAdder; @@ -95,7 +96,7 @@ public GT_Mod() { GT_Values.GT = this; GT_Values.DW = new GT_DummyWorld(); GT_Values.NW = new GT_Network(); - GregTech_API.sRecipeAdder = GT_Values.RA = new GT_RecipeAdder(); + GregTech_API.sRecipeAdder = GT_Values.RA = new GT_MachineRecipeAdder(); Textures.BlockIcons.VOID.name(); Textures.ItemIcons.VOID.name(); diff --git a/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java b/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java index 0ad13225d4..97a095dda5 100644 --- a/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java @@ -1,10 +1,13 @@ package gregtech.api.recipes; +import java.util.ArrayList; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; public class GT_AssemblyLineRecipe extends GT_MachineRecipe { + public static final ArrayList sAssemblyLineRecipes = new ArrayList<>(50); + public ItemStack mResearchItem; public int mResearchTime; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java index f4dec69257..00fcc1a384 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -30,6 +30,7 @@ public boolean inputMatches(ItemStack aItemStack) { public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { if (aItemStack == null) return false; if (!aIgnoreCount && aItemStack.stackSize < mItemStack.stackSize) return false; + if (aItemStack.getItem() != mItemStack.getItem()) return false; if (mUseMeta && aItemStack.getItemDamage() != mItemStack.getItemDamage()) return false; // Now check for NBT tags specified in recipe input. Extra tags specified on provided item but not in recipe can be ignored. if (mItemStack.stackTagCompound != null) { @@ -49,6 +50,10 @@ public List getInputStacks() { return Collections.singletonList(mItemStack.copy()); } + /** + * Gets a description of this input, probably for an assembly line instruction book + * @return a description of the item or items that can be used as input for the current recipe. + */ public String getInputDescription() { return mItemStack.stackSize + " " + mItemStack.getDisplayName(); } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java new file mode 100644 index 0000000000..356b4c91e7 --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java @@ -0,0 +1,86 @@ +package gregtech.api.recipes; + +import java.util.Arrays; +import java.util.List; +import net.minecraft.item.ItemStack; + +/** + * Represents a choice of several item stacks for use in a recipe (most likely an assembly line) + * which don't even have to use the same stack size. + */ +public class GT_RecipeInputAlts extends GT_RecipeInput { + + private final ItemStack[] mItems; + private int mCount = Integer.MAX_VALUE; + + public GT_RecipeInputAlts(ItemStack[] aItems) { + super(null); + this.mItems = aItems; + for (ItemStack aItem : aItems) { + mCount = Math.min(mCount, aItem.stackSize); + } + } + + @Override + public boolean inputMatches(ItemStack aItemStack) { + return inputMatches(aItemStack, true); + } + + @Override + public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { + if (aItemStack == null) { + return false; + } + for (ItemStack tItemStack : mItems) { + if (tItemStack.getItem() == aItemStack.getItem()) { + if (!aIgnoreCount && aItemStack.stackSize < tItemStack.stackSize) { + return false; + } + if (tItemStack.getItemDamage() != aItemStack.getItemDamage()) { + return false; + } + if (tItemStack.stackTagCompound != null) { + if (aItemStack.stackTagCompound == null) { + return false; + } + for (Object tTag : tItemStack.stackTagCompound.func_150296_c()) { // gets the key set + if (!tItemStack.stackTagCompound.getTag(tTag.toString()).equals(aItemStack.stackTagCompound.getTag(tTag.toString()))) { + return false; + } + } + } + return true; + } + } + return false; + } + + @Override + public List getInputStacks() { + return Arrays.asList(mItems); + } + + @Override + public String getInputDescription() { + StringBuilder rDescription = new StringBuilder(100); + for (ItemStack tItem : mItems) { + rDescription.append(tItem.getDisplayName()); + rDescription.append(" or "); + } + return rDescription.substring(0, rDescription.length() - 4); + } + + @Override + public int getCount() { + return mCount; + } + + @Override + public void setCount(int aCount) { + for (ItemStack tItem : mItems) { + tItem.stackSize = tItem.stackSize * aCount / mCount; + } + mCount = aCount; + } + +} diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index d108876342..f3271fbcb6 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -16,10 +16,8 @@ import gregtech.api.objects.ItemData; import gregtech.api.objects.MaterialStack; import gregtech.api.util.GT_LanguageManager; -import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.nei.GT_NEI_DefaultHandler; import java.util.ArrayList; @@ -39,7 +37,6 @@ import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.IFluidContainerItem; -import static gregtech.api.enums.GT_Values.D1; import static gregtech.api.enums.GT_Values.L; import static gregtech.api.enums.GT_Values.W; diff --git a/src/main/java/gregtech/common/GT_MachineRecipeAdder.java b/src/main/java/gregtech/common/GT_MachineRecipeAdder.java new file mode 100644 index 0000000000..88c1c0f26f --- /dev/null +++ b/src/main/java/gregtech/common/GT_MachineRecipeAdder.java @@ -0,0 +1,1256 @@ +package gregtech.common; + +import cpw.mods.fml.common.Loader; +import gregtech.GT_Mod; +import gregtech.api.GregTech_API; +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.interfaces.internal.IGT_RecipeAdder; +import gregtech.api.objects.GT_FluidStack; +import gregtech.api.objects.ItemData; +import gregtech.api.recipes.GT_AssemblyLineRecipe; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeInput; +import gregtech.api.recipes.GT_RecipeInputAlts; +import gregtech.api.recipes.GT_RecipeInputOredict; +import gregtech.api.recipes.GT_RecipeMap; +import gregtech.api.recipes.GT_RecipeOutput; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; +import gregtech.common.items.GT_IntegratedCircuit_Item; +import java.util.Arrays; +import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; +import mods.railcraft.common.items.RailcraftToolItems; +import net.minecraft.init.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidStack; + +public class GT_MachineRecipeAdder implements IGT_RecipeAdder { + + @Override + @Deprecated + public boolean addFusionReactorRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aFusionDurationInTicks, int aFusionEnergyPerTick, int aEnergyNeededForStartingFusion) { + return false; + } + + @Override + public boolean addFusionReactorRecipe(FluidStack aInput1, FluidStack aInput2, FluidStack aOutput1, int aDuration, int aEUt, int aStartEU) { + if (aInput1 == null || aInput2 == null || aOutput1 == null || aDuration < 1 || aEUt < 1 || aStartEU < 1) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("fusion", aOutput1.getFluid().getName(), aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sFusionRecipes.addRecipe(null, new FluidStack[]{aInput1, aInput2}, new FluidStack[]{aOutput1}, tDuration, aEUt, aStartEU); + return true; + } + + @Override + public boolean addCentrifugeRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration) { + ItemStack tInput2 = null; + if (aInput2 < 0) { + tInput2 = ItemList.IC2_Fuel_Can_Empty.get(-aInput2, new Object[0]); + } else if (aInput2 > 0) { + tInput2 = ItemList.Cell_Empty.get(aInput2, new Object[0]); + } + return addCentrifugeRecipe(aInput1, tInput2, GT_Values.NF, GT_Values.NF, aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6, null, aDuration, 5); + } + + @Override + public boolean addCentrifugeRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int[] aChances, int aDuration, int aEUt) { + if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput1 == null) && (aFluidOutput == null))) { + return false; + } + int tDuration = aDuration; + if (aInput1 != null) { + tDuration = GregTech_API.sRecipeFile.get("centrifuge", aInput1, aDuration); + if (tDuration <= 0) { + return false; + } + } + if (aFluidInput != null) { + tDuration = GregTech_API.sRecipeFile.get("centrifuge", aFluidInput.getFluid().getName(), aDuration); + if (tDuration <= 0) { + return false; + } + } + GT_RecipeMap.sCentrifugeRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6}, null, aChances, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addCompressorRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { + if ((aInput1 == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("compressor", aInput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sCompressorRecipes.addRecipe(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addElectrolyzerRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration, int aEUt) { + ItemStack tInput2 = null; + if (aInput2 < 0) { + tInput2 = ItemList.IC2_Fuel_Can_Empty.get(-aInput2, new Object[0]); + } else if (aInput2 > 0) { + tInput2 = ItemList.Cell_Empty.get(aInput2, new Object[0]); + } + return addElectrolyzerRecipe(aInput1, tInput2, GT_Values.NF, GT_Values.NF, aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6, null, aDuration, aEUt); + } + + @Override + public boolean addElectrolyzerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int[] aChances, int aDuration, int aEUt) { + if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput1 == null) && (aFluidOutput == null))) { + return false; + } + int tDuration = aDuration; + if (aInput1 != null) { + tDuration = GregTech_API.sRecipeFile.get("electrolyzer", aInput1, aDuration); + if (tDuration <= 0) { + return false; + } + } + if (aFluidInput != null) { + tDuration = GregTech_API.sRecipeFile.get("electrolyzer", aFluidInput.getFluid().getName(), aDuration); + if (tDuration <= 0) { + return false; + } + } + GT_RecipeMap.sElectrolyzerRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6}, null, aChances, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int aDuration) { + return addChemicalRecipe(aInput1, aInput2, GT_Values.NF, GT_Values.NF, aOutput, aDuration); + } + + @Override + public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration) { + return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aDuration, 30); + } + + @Override + public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration) { + return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aOutput2, aDuration, 30); + } + + @Override + public boolean addChemicalRecipeForBasicMachineOnly(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick) { + if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput == null) && (aOutput2 == null) && (aFluidOutput == null))) { + return false; + } + int tDuration = aDuration; + if (aOutput != null || aOutput2 != null) { + tDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aOutput, aDuration); + if (tDuration <= 0) { + return false; + } + } + if (aFluidOutput != null) { + tDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aFluidOutput.getFluid().getName(), aDuration); + if (tDuration <= 0) { + return false; + } + } + if (aEUtick <= 0) { + return false; + } + GT_RecipeMap.sChemicalRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUtick, 0); + return true; + } + + @Override + public void addDefaultPolymerizationRecipes(Fluid aBasicMaterial, ItemStack aBasicMaterialCell, Fluid aPolymer) { + //Oxygen/Titaniumtetrafluoride -> +50% Output each + addChemicalRecipe(ItemList.Cell_Air.get(1, new Object[0]), GT_Utility.getIntegratedCircuit(1), new GT_FluidStack(aBasicMaterial, 288), new GT_FluidStack(aPolymer, 288), Materials.Empty.getCells(1), 320); + addChemicalRecipe(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1), new GT_FluidStack(aBasicMaterial, 144), new GT_FluidStack(aPolymer, 216), Materials.Empty.getCells(1), 160); + addChemicalRecipe(aBasicMaterialCell, GT_Utility.getIntegratedCircuit(1), Materials.Air.getGas(14000), new GT_FluidStack(aPolymer, 1000), Materials.Empty.getCells(1), 1120); + addChemicalRecipe(aBasicMaterialCell, GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(7000), new GT_FluidStack(aPolymer, 1500), Materials.Empty.getCells(1), 1120); + addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, + new FluidStack[]{new GT_FluidStack(aBasicMaterial, 2160), Materials.Air.getGas(15000), Materials.Titaniumtetrachloride.getFluid(100)}, + new FluidStack[]{new GT_FluidStack(aPolymer, 3240)}, null, 800, 30); + addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, + new FluidStack[]{new GT_FluidStack(aBasicMaterial, 2160), Materials.Oxygen.getGas(7500), Materials.Titaniumtetrachloride.getFluid(100)}, + new FluidStack[]{new GT_FluidStack(aPolymer, 4320)}, null, 800, 30); + } + + @Override + public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUtick) { + return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, GT_Values.NI, aDuration, aEUtick); + } + + @Override + public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick) { + if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput == null) && (aOutput2 == null) && (aFluidOutput == null))) { + return false; + } + int tDuration = aDuration; + if (aOutput != null) { + tDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aOutput, aDuration); + if (tDuration <= 0) { + return false; + } + } + if (aFluidOutput != null) { + tDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aFluidOutput.getFluid().getName(), aDuration); + if (tDuration <= 0) { + return false; + } + } + if (aEUtick <= 0) { + return false; + } + GT_RecipeMap.sChemicalRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUtick, mAddingDeprecatedRecipes ? -300 : 0); + if (!(aInput1 != null && aInput1.getItem() instanceof GT_IntegratedCircuit_Item && aInput1.getItemDamage() >= 10) + && !(aInput2 != null && aInput2.getItem() instanceof GT_IntegratedCircuit_Item && aInput2.getItemDamage() >= 10)) { + GT_RecipeMap.sMultiblockChemicalRecipes.addRecipe(false, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUtick, mAddingDeprecatedRecipes ? -300 : 0); + } + return true; + } + + @Override + public boolean addMultiblockChemicalRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, ItemStack[] aOutputs, int aDuration, int aEUtick) { + if (areItemsAndFluidsBothNull(aInputs, aFluidInputs) || areItemsAndFluidsBothNull(aOutputs, aFluidOutputs)) { + return false; + } + if (aEUtick <= 0) { + return false; + } + GT_RecipeMap.sMultiblockChemicalRecipes.addRecipe(false, aInputs, aOutputs, null, null, aFluidInputs, aFluidOutputs, aDuration, aEUtick, 0); + return true; + } + + @Override + public boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt, int aLevel) { + return addBlastRecipe(aInput1, aInput2, GT_Values.NF, GT_Values.NF, aOutput1, aOutput2, aDuration, aEUt, aLevel); + } + + @Override + public boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt, int aLevel) { + if ((aInput1 == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("blastfurnace", aInput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1, aOutput2}, null, null, + new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, aLevel); + return true; + } + + @Override + public boolean addPrimitiveBlastRecipe(ItemStack aInput1, ItemStack aInput2, int aCoalAmount, ItemStack aOutput1, ItemStack aOutput2, int aDuration) { + if ((aInput1 == null && aInput2 == null) || (aOutput1 == null && aOutput2 == null)) { + return false; + } + if (aCoalAmount <= 0) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("primitiveblastfurnace", aInput1, aDuration); + if (tDuration <= 0) { + return false; + } + Materials[] coals = new Materials[]{Materials.Coal, Materials.Charcoal}; + for (Materials coal : coals) { + GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, coal.getGems(aCoalAmount)}, new ItemStack[]{aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount)}, null, null, null, null, tDuration, 0, 0); + GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, coal.getDust(aCoalAmount)}, new ItemStack[]{aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount)}, null, null, null, null, tDuration, 0, 0); + } + if (Loader.isModLoaded("Railcraft")) { + GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, RailcraftToolItems.getCoalCoke(aCoalAmount / 2)}, new ItemStack[]{aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount / 2)}, null, null, null, null, tDuration * 2 / 3, 0, 0); + } + if ((aInput1 == null || aInput1.stackSize <= 6) && (aInput2 == null || aInput2.stackSize <= 6) + && (aOutput1 == null || aOutput1.stackSize <= 6) && (aOutput2 == null || aOutput2.stackSize <= 6)) { + ItemStack tInput1 = aInput1 == null ? null : GT_Utility.copyAmount(aInput1.stackSize * 10, aInput1); + ItemStack tInput2 = aInput2 == null ? null : GT_Utility.copyAmount(aInput2.stackSize * 10, aInput2); + ItemStack tOutput1 = aOutput1 == null ? null : GT_Utility.copyAmount(aOutput1.stackSize * 10, aOutput1); + ItemStack tOutput2 = aOutput2 == null ? null : GT_Utility.copyAmount(aOutput2.stackSize * 10, aOutput2); + for (Materials coal : coals) { + GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{tInput1, tInput2, coal.getBlocks(aCoalAmount)}, new ItemStack[]{tOutput1, tOutput2, Materials.DarkAsh.getDust(aCoalAmount)}, null, null, null, null, tDuration * 10, 0, 0); + GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{tInput1, tInput2, coal.getBlocks(aCoalAmount)}, new ItemStack[]{tOutput1, tOutput2, Materials.DarkAsh.getDust(aCoalAmount)}, null, null, null, null, tDuration * 10, 0, 0); + } + if (Loader.isModLoaded("Railcraft")) { + GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{tInput1, tInput2, EnumCube.COKE_BLOCK.getItem(aCoalAmount / 2)}, new ItemStack[]{tOutput1, tOutput2, Materials.Ash.getDust(aCoalAmount / 2)}, null, null, null, null, tDuration * 20 / 3, 0, 0); + } + } + return true; + } + + @Override + public boolean addCannerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { + if ((aInput1 == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("canning", aInput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sCannerRecipes.addRecipe(false, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addAlloySmelterRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt) { + return addAlloySmelterRecipe(aInput1, aInput2, aOutput1, aDuration, aEUt, false); + } + + @Override + public boolean addAlloySmelterRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt, boolean hidden) { + if ((aInput1 == null) || (aOutput1 == null || Materials.Graphite.contains(aInput1))) { + return false; + } + if ((aInput2 == null) && ((OrePrefixes.ingot.contains(aInput1)) || (OrePrefixes.dust.contains(aInput1)) || (OrePrefixes.gem.contains(aInput1)))) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("alloysmelting", aInput2 == null ? aInput1 : aOutput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_MachineRecipe tRecipe = new GT_MachineRecipe(new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1}, new FluidStack[0], new FluidStack[0]).setDuration(tDuration).setEUt(aEUt).setHidden(hidden); + GT_RecipeMap.sAlloySmelterRecipes.addRecipe(tRecipe); + return true; + } + + @Override + @Deprecated + public boolean addCNCRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { + // relevant machine doesn't seem to actually exist, and old recipe map for it wasn't actually invoked. + return false; + } + + @Override + public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt) { + if ((aInput1 == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sAssemblerRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2 == null ? aInput1 : aInput2}, new ItemStack[]{aOutput1}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { + return addAssemblerRecipe(new ItemStack[]{aInput1, aInput2}, aFluidInput, aOutput1, aDuration, aEUt); + } + + @Override + public boolean addAssemblerRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { + if (areItemsAndFluidsBothNull(aInputs, new FluidStack[]{aFluidInput})) { + return false; + } + if (aOutput1 == null) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sAssemblerRecipes.addRecipe(true, aInputs, new ItemStack[]{aOutput1}, null, new FluidStack[]{aFluidInput}, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addAssemblerRecipe(ItemStack aInput1, Object aOreDict, int aAmount, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { + int tDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeInput[] tInputs = new GT_RecipeInput[]{new GT_RecipeInput(aInput1), new GT_RecipeInputOredict(aOreDict.toString(), aAmount)}; + GT_RecipeOutput[] tOutputs = new GT_RecipeOutput[]{new GT_RecipeOutput(aOutput1)}; + GT_RecipeMap.sAssemblerRecipes.addRecipe(new GT_MachineRecipe(tInputs, tOutputs, new FluidStack[]{aFluidInput}, new FluidStack[0]).setDuration(tDuration).setEUt(aEUt)); + return true; + } + + @Override + public boolean addAssemblerRecipe(ItemStack[] aInputs, Object aOreDict, int aAmount, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { + int tDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeInput[] tInputs = new GT_RecipeInput[aInputs.length + 1]; + for (int i = 0; i < aInputs.length; i++) { + tInputs[i] = new GT_RecipeInput(aInputs[i]); + } + tInputs[aInputs.length] = new GT_RecipeInputOredict(aOreDict.toString(), aAmount); + GT_RecipeOutput[] tOutputs = new GT_RecipeOutput[]{new GT_RecipeOutput(aOutput1)}; + GT_RecipeMap.sAssemblerRecipes.addRecipe(new GT_MachineRecipe(tInputs, tOutputs, new FluidStack[]{aFluidInput}, new FluidStack[0]).setDuration(tDuration).setEUt(aEUt)); + return true; + } + + @Override + public boolean addCircuitAssemblerRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput, int aDuration, int aEUt) { + if ((aInputs == null) || (aOutput == null) || aInputs.length > 6 || aInputs.length < 1) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("circuitassembler", aOutput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sCircuitAssemblerRecipes.addRecipe(true, aInputs, new ItemStack[]{aOutput}, null, null, new FluidStack[]{aFluidInput}, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addAssemblylineRecipe(ItemStack aResearchItem, int aResearchTime, ItemStack[] aInputs, FluidStack[] aFluidInputs, ItemStack aOutput1, int aDuration, int aEUt) { + return addAssemblylineRecipe(aResearchItem, aResearchTime, (Object[])aInputs, aFluidInputs, aOutput1, aDuration, aEUt); + } + + @Override + public boolean addAssemblylineRecipe(ItemStack aResearchItem, int aResearchTime, Object[] aInputs, FluidStack[] aFluidInputs, ItemStack aOutput, int aDuration, int aEUt) { + if ((aResearchItem==null)||(aResearchTime<=0)||(aInputs == null) || (aOutput == null) || aInputs.length>15 || aInputs.length<4) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("assemblingline", aOutput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeInput[] tInputs = new GT_RecipeInput[aInputs.length]; + for (int i = 0; i < aInputs.length; i++) { + if (aInputs[i] instanceof ItemStack) { + tInputs[i] = new GT_RecipeInput((ItemStack)aInputs[i]); + } else if (aInputs[i] instanceof ItemStack[]) { + ItemStack[] tStacks = (ItemStack[])aInputs[i]; + tInputs[i] = new GT_RecipeInputAlts(Arrays.copyOf(tStacks, tStacks.length)); + } else if (aInputs[i] instanceof Object[]) { + Object[] objs = (Object[])aInputs[i]; + if (objs.length == 2 && objs[1] instanceof Number) { + int tAmount = ((Number)objs[1]).intValue(); + tInputs[i] = new GT_RecipeInputOredict(objs[0].toString(), tAmount); + } + } else { + System.out.println("addAssemblingLineRecipe "+aResearchItem.getDisplayName()+" --> "+aOutput.getUnlocalizedName()+" there is some null item in that recipe"); + return false; + } + } + GT_AssemblyLineRecipe tRecipe = (GT_AssemblyLineRecipe) new GT_AssemblyLineRecipe(tInputs, new GT_RecipeOutput[]{new GT_RecipeOutput(aOutput)}, aFluidInputs, new FluidStack[0]).setDuration(tDuration).setEUt(aEUt).setSpecialItems(new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Reads Research result", new Object[0])}); + GT_AssemblyLineRecipe.sAssemblyLineRecipes.add(tRecipe); + GT_MachineRecipe tFakeRecipe = new GT_MachineRecipe(new ItemStack[]{aResearchItem}, new ItemStack[]{aOutput}, null, null).setSpecialItems(new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Writes Research result", new Object[0])}).setDuration(aResearchTime).setEUt(30).setSpecialValue(-201); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, tFakeRecipe); + GT_RecipeMap.sAssemblyLineVisualRecipes.addFakeRecipe(false,tRecipe); + return true; + } + + @Override + public boolean addForgeHammerRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { + if ((aInput1 == null) || (aOutput1 == null)) { + return false; + } + if (!GregTech_API.sRecipeFile.get("forgehammer", aOutput1, true)) { + return false; + } + GT_RecipeMap.sHammerRecipes.addRecipe(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1}, null, null, null, aDuration, aEUt, 0); + return true; + } + + @Override + public boolean addWiremillRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt) { + if ((aInput == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("wiremill", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sWiremillRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addPolarizerRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt) { + if ((aInput == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("polarizer", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sPolarizerRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addBenderRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt) { + if ((aInput == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("polarizer", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sBenderRecipes.addRecipe(true, new ItemStack[]{aInput, ItemList.Circuit_Integrated.getWithDamage(0, aInput.stackSize)}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addExtruderRecipe(ItemStack aInput, ItemStack aShape, ItemStack aOutput, int aDuration, int aEUt) { + if ((aInput == null) || (aShape == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("extruder", aOutput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sExtruderRecipes.addRecipe(true, new ItemStack[]{aInput, aShape}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addSlicerRecipe(ItemStack aInput, ItemStack aShape, ItemStack aOutput, int aDuration, int aEUt) { + if ((aInput == null) || (aShape == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("slicer", aOutput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sSlicerRecipes.addRecipe(true, new ItemStack[]{aInput, aShape}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addOreWasherRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, FluidStack aFluidInput, int aDuration, int aEUt) { + if ((aInput == null) || (aFluidInput == null) || ((aOutput1 == null) || (aOutput2 == null) || (aOutput3 == null))) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("orewasher", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sOreWasherRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2, aOutput3}, null, new FluidStack[]{aFluidInput}, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addImplosionRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2) { + if ((aInput1 == null) || (aOutput1 == null)) { + return false; + } + int tInput2 = GregTech_API.sRecipeFile.get("implosion", aInput1, aInput2); + if (tInput2 <= 0) { + return false; + } + int tExplosives = Math.max(1, Math.min(tInput2, 64)); + int tGunpowder = tExplosives * 2; + int tDynamite = Math.max(1, tExplosives / 2); + int tTNT = Math.max(1, tExplosives / 2); + int tITNT = Math.max(1, tExplosives / 4); + if(tGunpowder <= 64){ + GT_RecipeMap.sImplosionRecipes.addRecipe(true, new ItemStack[]{aInput1, ItemList.Block_Powderbarrel.get(tGunpowder, new Object[0])}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, null, 20, 30, 0); + } + if(tDynamite <= 16){ + GT_RecipeMap.sImplosionRecipes.addRecipe(true, new ItemStack[]{aInput1, GT_ModHandler.getIC2Item("dynamite", tDynamite, null)}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, null, 20, 30, 0); + } + GT_RecipeMap.sImplosionRecipes.addRecipe(true, new ItemStack[]{aInput1, new ItemStack(Blocks.tnt,tTNT)}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, null, 20, 30, 0); + GT_RecipeMap.sImplosionRecipes.addRecipe(true, new ItemStack[]{aInput1, GT_ModHandler.getIC2Item("industrialTnt", tITNT, null)}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, null, 20, 30, 0); + + return true; + } + + @Override + @Deprecated + public boolean addGrinderRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4) { + return false; + } + + @Override + public boolean addDistillationTowerRecipe(FluidStack aInput, FluidStack[] aOutputs, ItemStack aOutput2, int aDuration, int aEUt) { + if (aInput == null || aOutputs == null || aOutputs.length < 1 || aOutputs.length > 11) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("distillation", aInput.getUnlocalizedName(), aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sDistillationRecipes.addRecipe(false, null, new ItemStack[]{aOutput2}, null, new FluidStack[]{aInput}, aOutputs, tDuration, Math.max(1, aEUt), 0); + return true; + } + + @Override + public boolean addSimpleArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { + // Nothing in standard GT uses this, but GTTweaker allows recipes to be added to the Oxygen Arc Furnace while excluding the Plasma Arc Furnace. + if ((aInput == null) || (aOutputs == null) || aFluidInput == null) { + return false; + } + for (ItemStack tStack : aOutputs) { + if (tStack != null) { + int tDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{aFluidInput}, null, tDuration, Math.max(1, aEUt), 0); + return true; + } + } + return false; + } + + @Override + public boolean addPlasmaArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { + if ((aInput == null) || (aOutputs == null) || aFluidInput == null) { + return false; + } + for (ItemStack tStack : aOutputs) { + if (tStack != null) { + int tDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sPlasmaArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{aFluidInput}, null, tDuration, Math.max(1, aEUt), 0); + return true; + } + } + return false; + } + + @Override + public boolean addPlasmaArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, FluidStack aFluidOutput, int[] aChances, int aDuration, int aEUt) { + if ((aInput == null) || (aOutputs == null) || aFluidInput == null) { + return false; + } + for (ItemStack tStack : aOutputs) { + if (tStack != null) { + int tDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sPlasmaArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, Math.max(1, aEUt), 0); + return true; + } + } + return false; + } + + @Override + @Deprecated + public boolean addDistillationRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, int aDuration, int aEUt) { + return false; + } + + @Override + public boolean addLatheRecipe(ItemStack aInput1, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { + if ((aInput1 == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("lathe", aInput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sLatheRecipes.addRecipe(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[0], new FluidStack[0], tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addCutterRecipe(ItemStack aInput, FluidStack aLubricant, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { + if ((aInput == null) || (aLubricant == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("cutting", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sCutterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[]{aLubricant}, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addCutterRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { + if ((aInput == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("cutting", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sCutterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[]{Materials.Water.getFluid(Math.max(4, Math.min(1000, tDuration * aEUt / 320)))}, null, tDuration * 2, aEUt, 0); + GT_RecipeMap.sCutterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[]{GT_ModHandler.getDistilledWater(Math.max(3, Math.min(750, tDuration * aEUt / 426)))}, null, tDuration * 2, aEUt, 0); + GT_RecipeMap.sCutterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[]{Materials.Lubricant.getFluid(Math.max(1, Math.min(250, tDuration * aEUt / 1280)))}, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addBoxingRecipe(ItemStack aContainedItem, ItemStack aEmptyBox, ItemStack aFullBox, int aDuration, int aEUt) { + if ((aContainedItem == null) || (aFullBox == null)) { + return false; + } + if (!GregTech_API.sRecipeFile.get("boxing", aFullBox, true)) { + return false; + } + GT_RecipeMap.sBoxinatorRecipes.addRecipe(true, new ItemStack[]{aContainedItem, aEmptyBox}, new ItemStack[]{aFullBox}, null, null, null, aDuration, aEUt, 0); + return true; + } + + @Override + public boolean addThermalCentrifugeRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int aDuration, int aEUt) { + if ((aInput == null) || (aOutput1 == null)) { + return false; + } + if (!GregTech_API.sRecipeFile.get("thermalcentrifuge", aInput, true)) { + return false; + } + GT_RecipeMap.sThermalCentrifugeRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2, aOutput3}, null, null, null, aDuration, aEUt, 0); + return true; + } + + @Override + public boolean addUnboxingRecipe(ItemStack aFullBox, ItemStack aContainedItem, ItemStack aEmptyBox, int aDuration, int aEUt) { + if ((aFullBox == null) || (aContainedItem == null)) { + return false; + } + if (!GregTech_API.sRecipeFile.get("unboxing", aFullBox, true)) { + return false; + } + GT_RecipeMap.sUnboxinatorRecipes.addRecipe(true, new ItemStack[]{aFullBox}, new ItemStack[]{aContainedItem, aEmptyBox}, null, null, null, aDuration, aEUt, 0); + return true; + } + + @Override + public boolean addVacuumFreezerRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration) { + if ((aInput1 == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("vacuumfreezer", aInput1, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sVacuumRecipes.addRecipe(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1}, null, new FluidStack[0], new FluidStack[0], tDuration, 120, 0); + return true; + } + + @Override + public boolean addFuel(ItemStack aInput1, ItemStack aOutput1, int aEU, int aType) { + if (aInput1 == null || aEU <= 0) { + return false; + } + GT_RecipeMap[] tFuelTypeMaps = { + GT_RecipeMap.sDieselFuels, + GT_RecipeMap.sTurbineFuels, + GT_RecipeMap.sHotFuels, + GT_RecipeMap.sDenseLiquidFuels, + GT_RecipeMap.sPlasmaFuels, + GT_RecipeMap.sMagicFuels + }; + int tType = aType; + if (tType < 0 || tType > 5) { + tType = 3; + } + GT_MachineRecipe tRecipe = new GT_MachineRecipe( new ItemStack[]{aInput1}, new ItemStack[]{aOutput1}, new FluidStack[0], new FluidStack[0]).setSpecialValue(aEU); + tFuelTypeMaps[tType].addRecipe(tRecipe); + if (tType == 0) { + GT_RecipeMap.sLargeBoilerFakeFuels.addDieselRecipe(tRecipe); + } else if (tType == 3) { + GT_RecipeMap.sLargeBoilerFakeFuels.addDenseLiquidRecipe(tRecipe); + } + return true; + } + + @Override + public boolean addAmplifier(ItemStack aAmplifierItem, int aDuration, int aAmplifierAmountOutputted) { + if ((aAmplifierItem == null) || (aAmplifierAmountOutputted <= 0)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("amplifier", aAmplifierItem, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sAmplifiers.addRecipe(true, new ItemStack[]{aAmplifierItem}, null, null, null, new FluidStack[]{Materials.UUAmplifier.getFluid(aAmplifierAmountOutputted)}, tDuration, 32, 0); + return true; + } + + @Override + public boolean addBrewingRecipe(ItemStack aIngredient, Fluid aInput, Fluid aOutput, boolean aHidden) { + if ((aIngredient == null) || (aInput == null) || (aOutput == null)) { + return false; + } + if (!GregTech_API.sRecipeFile.get("brewing", aOutput.getUnlocalizedName(), true)) { + return false; + } + GT_MachineRecipe tRecipe = GT_RecipeMap.sBrewingRecipes.addRecipe(false, new ItemStack[]{aIngredient}, null, null, new FluidStack[]{new FluidStack(aInput, 750)}, new FluidStack[]{new FluidStack(aOutput, 750)}, 128, 4, 0); + if ((aHidden) && (tRecipe != null)) { + tRecipe.mHidden = true; + } + return true; + } + + @Override + public boolean addFermentingRecipe(FluidStack aInput, FluidStack aOutput, int aDuration, boolean aHidden) { + if ((aInput == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("fermenting", aOutput.getFluid().getUnlocalizedName(), aDuration); + if (tDuration <= 0) { + return false; + } + GT_MachineRecipe tRecipe = GT_RecipeMap.sFermentingRecipes.addRecipe(false, null, null, null, new FluidStack[]{aInput}, new FluidStack[]{aOutput}, tDuration, 2, 0); + if ((aHidden) && (tRecipe != null)) { + tRecipe.mHidden = true; + } + return true; + } + + @Override + public boolean addFluidHeaterRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt) { + if ((aInput == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("fluidheater", aOutput.getFluid().getUnlocalizedName(), aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sFluidHeaterRecipes.addRecipe(true, new ItemStack[]{aCircuit}, null, null, new FluidStack[]{aInput}, new FluidStack[]{aOutput}, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, ItemStack aSolidOutput, int aDuration, int aEUt, boolean aHidden) { + if ((aInput == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("distillery", aOutput.getFluid().getUnlocalizedName(), aDuration); + if (tDuration <= 0) { + return false; + } + //reduce the batch size if fluid amount is exceeding + int tScale = (Math.max(aInput.amount, aOutput.amount) + 999) / 1000; + if (tScale <= 0) { + tScale = 1; + } + FluidStack tInput = aInput; + FluidStack tOutput = aOutput; + ItemStack tSolidOutput = aSolidOutput; + if (tScale > 1){ + //trying to find whether there is a better factor + for (int i = tScale; i <= 5; i++) { + if (aInput.amount % i == 0 && tDuration % i == 0) { + tScale = i; + break; + } + } + for (int i = tScale; i <= 5; i++) { + if (aInput.amount % i == 0 && tDuration % i == 0 && aOutput.amount % i == 0) { + tScale = i; + break; + } + } + tInput = new FluidStack(aInput.getFluid(), (aInput.amount + tScale - 1) / tScale); + tOutput = new FluidStack(aOutput.getFluid(), aOutput.amount / tScale); + tSolidOutput = aSolidOutput; + if (tSolidOutput != null) { + ItemData tData = GT_OreDictUnificator.getItemData(tSolidOutput); + if (tData != null && (tData.mPrefix == OrePrefixes.dust || OrePrefixes.dust.mFamiliarPrefixes.contains(tData.mPrefix))) { + tSolidOutput = GT_OreDictUnificator.getDust(tData.mMaterial.mMaterial, tData.mMaterial.mAmount * tSolidOutput.stackSize / tScale); + } else { + if (tSolidOutput.stackSize / tScale == 0) { + tSolidOutput = GT_Values.NI; + } else { + tSolidOutput = new ItemStack(aSolidOutput.getItem(), aSolidOutput.stackSize / tScale); + } + } + } + tDuration = (tDuration + tScale - 1) / tScale; + } + GT_MachineRecipe tRecipe = GT_RecipeMap.sDistilleryRecipes.addRecipe(true, new ItemStack[]{aCircuit}, new ItemStack[]{tSolidOutput}, null, new FluidStack[]{tInput}, new FluidStack[]{tOutput}, tDuration, aEUt, 0); + if ((aHidden) && (tRecipe != null)) { + tRecipe.mHidden = true; + } + return true; + } + + @Override + public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden) { + return addDistilleryRecipe(aCircuit, aInput, aOutput, null, aDuration, aEUt, aHidden); + } + + @Override + public boolean addDistilleryRecipe(int circuitConfig, FluidStack aInput, FluidStack aOutput, ItemStack aSolidOutput, int aDuration, int aEUt, boolean aHidden) { + return addDistilleryRecipe(GT_Utility.getIntegratedCircuit(circuitConfig), aInput, aOutput, aSolidOutput, aDuration, aEUt, aHidden); + } + + @Override + public boolean addDistilleryRecipe(int circuitConfig, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden) { + return addDistilleryRecipe(GT_Utility.getIntegratedCircuit(circuitConfig), aInput, aOutput, aDuration, aEUt, aHidden); + } + + @Override + public boolean addFluidSolidifierRecipe(ItemStack aMold, FluidStack aInput, ItemStack aOutput, int aDuration, int aEUt) { + if ((aMold == null) || (aInput == null) || (aOutput == null)) { + return false; + } + FluidStack tInput = aInput; + if (aInput.isFluidEqual(Materials.PhasedGold.getMolten(144))) { + tInput = Materials.VibrantAlloy.getMolten(aInput.amount); + } + if (aInput.isFluidEqual(Materials.PhasedIron.getMolten(144))) { + tInput = Materials.PulsatingIron.getMolten(aInput.amount); + } + int tDuration = GregTech_API.sRecipeFile.get("fluidsolidifier", aOutput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sFluidSolidificationRecipes.addRecipe(true, new ItemStack[]{aMold}, new ItemStack[]{aOutput}, null, new FluidStack[]{tInput}, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addFluidSmelterRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt) { + return addFluidSmelterRecipe(aInput, aRemains, aOutput, aChance, aDuration, aEUt, false); + } + + @Override + public boolean addFluidSmelterRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt, boolean hidden) { + if ((aInput == null) || (aOutput == null)) { + return false; + } + FluidStack tOutput = aOutput; + if (aOutput.isFluidEqual(Materials.PhasedGold.getMolten(1))) { + tOutput = Materials.VibrantAlloy.getMolten(aOutput.amount); + } + if (aOutput.isFluidEqual(Materials.PhasedIron.getMolten(1))) { + tOutput = Materials.PulsatingIron.getMolten(aOutput.amount); + } + int tDuration = GregTech_API.sRecipeFile.get("fluidsmelter", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_MachineRecipe tRecipe = GT_RecipeMap.sFluidExtractionRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aRemains}, null, new int[]{aChance}, null, new FluidStack[]{tOutput}, tDuration, aEUt, 0); + if ((hidden) && (tRecipe != null)) { + tRecipe.mHidden = true; + } + return true; + } + + @Override + public boolean addFluidExtractionRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt) { + return addFluidSmelterRecipe(aInput, aRemains, aOutput, aChance, aDuration, aEUt, false); + } + + @Override + public boolean addFluidCannerRecipe(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput) { + if ((aInput != null) && (aOutput != null)) { + if ((aFluidInput == null) == (aFluidOutput == null)) { + return false; + } + } else { + return false; + } + if (!GregTech_API.sRecipeFile.get("fluidcanner", aOutput, true)) { + return false; + } + GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aFluidOutput == null ? aFluidInput.amount / 62 : aFluidOutput.amount / 62, 1, 0); + return true; + } + + @Override + public boolean addChemicalBathRecipe(ItemStack aInput, FluidStack aBathingFluid, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt) { + if ((aInput == null) || (aBathingFluid == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("chemicalbath", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sChemicalBathRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2, aOutput3}, null, aChances, new FluidStack[]{aBathingFluid}, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addElectromagneticSeparatorRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt) { + if ((aInput == null) || (aOutput1 == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("electromagneticseparator", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sElectroMagneticSeparatorRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2, aOutput3}, null, aChances, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addExtractorRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt) { + if ((aInput == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("extractor", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sExtractorRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addPrinterRecipe(ItemStack aInput, FluidStack aFluid, ItemStack aSpecialSlot, ItemStack aOutput, int aDuration, int aEUt) { + if ((aInput == null) || (aFluid == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("printer", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sPrinterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, aSpecialSlot, null, new FluidStack[]{aFluid}, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addAutoclaveRecipe(ItemStack aInput, FluidStack aFluid, ItemStack aOutput, int aChance, int aDuration, int aEUt) { + return addAutoclaveRecipe(aInput, aFluid, aOutput, aChance, aDuration, aEUt, false); + } + + @Override + public boolean addAutoclaveRecipe(ItemStack aInput, FluidStack aFluid, ItemStack aOutput, int aChance, int aDuration, int aEUt, boolean aCleanroom) { + if ((aInput == null) || (aFluid == null) || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("autoclave", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + boolean tCleanroom = aCleanroom; + if (!GT_Mod.gregtechproxy.mEnableCleanroom) { + tCleanroom = false; + } + GT_RecipeMap.sAutoclaveRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, new int[]{aChance}, new FluidStack[]{aFluid}, null, tDuration, aEUt, tCleanroom ? -100 : 0); + return true; + } + + @Override + public boolean addMixerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aInput3, ItemStack aInput4, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt) { + if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput == null) && (aFluidOutput == null))) { + return false; + } + int tDuration = aDuration; + if (aOutput != null) { + tDuration = GregTech_API.sRecipeFile.get("mixer", aOutput, aDuration); + if (tDuration <= 0) { + return false; + } + } + if (aFluidOutput != null) { + tDuration = GregTech_API.sRecipeFile.get("mixer", aFluidOutput.getFluid().getName(), aDuration); + if (tDuration <= 0) { + return false; + } + } + GT_RecipeMap.sMixerRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, aInput3, aInput4}, new ItemStack[]{aOutput}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addLaserEngraverRecipe(ItemStack aItemToEngrave, ItemStack aLens, ItemStack aEngravedItem, int aDuration, int aEUt) { + return addLaserEngraverRecipe( aItemToEngrave, aLens, aEngravedItem, aDuration, aEUt, false); + } + + @Override + public boolean addLaserEngraverRecipe(ItemStack aItemToEngrave, ItemStack aLens, ItemStack aEngravedItem, int aDuration, int aEUt, boolean aCleanroom) { + if ((aItemToEngrave == null) || (aLens == null) || (aEngravedItem == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("laserengraving", aEngravedItem, aDuration); + if (tDuration <= 0) { + return false; + } + boolean tCleanroom = aCleanroom; + if (!GT_Mod.gregtechproxy.mEnableCleanroom) { + tCleanroom = false; + } + GT_RecipeMap.sLaserEngraverRecipes.addRecipe(true, new ItemStack[]{aItemToEngrave, aLens}, new ItemStack[]{aEngravedItem}, null, null, null, tDuration, aEUt, tCleanroom ? -200 : 0); + return true; + } + + @Override + public boolean addFormingPressRecipe(ItemStack aItemToImprint, ItemStack aForm, ItemStack aImprintedItem, int aDuration, int aEUt) { + if ((aItemToImprint == null) || (aForm == null) || (aImprintedItem == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("press", aImprintedItem, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sPressRecipes.addRecipe(true, new ItemStack[]{aItemToImprint, aForm}, new ItemStack[]{aImprintedItem}, null, null, null, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addSifterRecipe(ItemStack aItemToSift, ItemStack[] aSiftedItems, int[] aChances, int aDuration, int aEUt) { + if ((aItemToSift == null) || (aSiftedItems == null)) { + return false; + } + for (ItemStack tStack : aSiftedItems) { + if (tStack != null) { + int tDuration = GregTech_API.sRecipeFile.get("sifter", aItemToSift, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sSifterRecipes.addRecipe(true, new ItemStack[]{aItemToSift}, aSiftedItems, null, aChances, null, null, tDuration, aEUt, 0); + return true; + } + } + return false; + } + + @Override + public boolean addArcFurnaceRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { + return addArcFurnaceRecipe(aInput, aOutputs, aChances, aDuration, aEUt, false); + } + + @Override + public boolean addArcFurnaceRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt, boolean hidden) { + if ((aInput == null) || (aOutputs == null)) { + return false; + } + for (ItemStack tStack : aOutputs) { + if (tStack != null) { + int tDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_MachineRecipe sRecipe = GT_RecipeMap.sArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{Materials.Oxygen.getGas(aDuration)}, null, tDuration, Math.max(1, aEUt), 0); + if ((hidden) && (sRecipe != null)) { + sRecipe.mHidden = true; + } + for (Materials tMaterial : new Materials[]{Materials.Argon, Materials.Nitrogen}) { + if (tMaterial.mPlasma != null) { + int tPlasmaAmount = (int) Math.max(1L, tDuration / (tMaterial.getMass() * 16L)); + GT_MachineRecipe tRecipe = GT_RecipeMap.sPlasmaArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{tMaterial.getPlasma(tPlasmaAmount)}, new FluidStack[]{tMaterial.getGas(tPlasmaAmount)}, Math.max(1, tDuration / 16), Math.max(1, aEUt / 3), 0); + if ((hidden) && (tRecipe != null)) { + tRecipe.mHidden = true; + } + } + } + return true; + } + } + return false; + } + + @Override + public boolean addPulveriserRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { + return addPulveriserRecipe(aInput, aOutputs, aChances, aDuration, aEUt, false); + } + + @Override + public boolean addPulveriserRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt, boolean hidden) { + if ((aInput == null) || (aOutputs == null)) { + return false; + } + for (ItemStack tStack : aOutputs) { + if (tStack != null) { + int tDuration = GregTech_API.sRecipeFile.get("pulveriser", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_MachineRecipe tRecipe = GT_RecipeMap.sMaceratorRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, null, null, tDuration, aEUt, 0); + if ((hidden) && (tRecipe != null)) { + tRecipe.mHidden = true; + } + return true; + } + } + return false; + } + + @Override + public boolean addUniversalDistillationRecipe(FluidStack aInput, FluidStack[] aOutputs, ItemStack aOutput2, int aDuration, int aEUt) { + for (int i = 0; i < Math.min(aOutputs.length, 11); i++) { + addDistilleryRecipe(i + 1, aInput, aOutputs[i], aOutput2, aDuration * 2, aEUt / 4, false); + } + return addDistillationTowerRecipe(aInput, aOutputs, aOutput2, aDuration, aEUt); + } + + @Override + public boolean addPyrolyseRecipe(ItemStack aInput, FluidStack aFluidInput, int intCircuit, ItemStack aOutput, FluidStack aFluidOutput, int aDuration, int aEUt) { + if (aInput == null) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("pyrolyse", aInput, aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sPyrolyseRecipes.addRecipe(false, new ItemStack[]{aInput, ItemList.Circuit_Integrated.getWithDamage(0L, intCircuit, new Object[0])}, new ItemStack[]{aOutput}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, 0); + return true; + } + + @Override + @Deprecated + public boolean addCrackingRecipe(FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt) { + return false; + } + + @Override + public boolean addCrackingRecipe(int circuitConfig, FluidStack aInput, FluidStack aInput2, FluidStack aOutput, int aDuration, int aEUt) { + if (aInput == null || aInput2 == null || (aOutput == null)) { + return false; + } + int tDuration = GregTech_API.sRecipeFile.get("cracking", aInput.getUnlocalizedName(), aDuration); + if (tDuration <= 0) { + return false; + } + GT_RecipeMap.sCrackingRecipes.addRecipe(false, new ItemStack[]{GT_Utility.getIntegratedCircuit(circuitConfig)}, null, null, null, + new FluidStack[]{aInput, aInput2}, new FluidStack[]{aOutput}, tDuration, aEUt, 0); + return true; + } + + @Override + public boolean addSonictronSound(ItemStack aItemStack, String aSoundName) { + // Unclear if this is fully implemented; no usages found. + if ((aItemStack == null) || (aSoundName == null) || (aSoundName.isEmpty())) { + return false; + } + GT_Mod.gregtechproxy.mSoundItems.add(aItemStack); + GT_Mod.gregtechproxy.mSoundNames.add(aSoundName); + if (aSoundName.startsWith("note.")) { + GT_Mod.gregtechproxy.mSoundCounts.add(25); + } else { + GT_Mod.gregtechproxy.mSoundCounts.add(1); + } + return true; + } + + private boolean mAddingDeprecatedRecipes = false; + + private boolean areItemsAndFluidsBothNull(ItemStack[] items, FluidStack[] fluids) { + boolean itemsNull = true; + if (items != null) { + for (ItemStack itemStack : items) { + if (itemStack != null) { + itemsNull = false; + break; + } + } + } + boolean fluidsNull = true; + if (fluids != null) { + for (FluidStack fluidStack : fluids) { + if (fluidStack != null) { + fluidsNull = false; + break; + } + } + } + return itemsNull && fluidsNull; + } + + @Override + public boolean isAddingDeprecatedRecipes() { + return mAddingDeprecatedRecipes; + } + + @Override + public void setIsAddingDeprecatedRecipes(boolean isAddingDeprecatedRecipes) { + mAddingDeprecatedRecipes = isAddingDeprecatedRecipes; + } + +} From 18077cc3a2b088a13e1c02cac159165825821505 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Wed, 4 Nov 2020 20:58:47 -0800 Subject: [PATCH 06/21] Migrated machines to new recipe system. --- .../GT_MetaTileEntity_BasicMachine.java | 26 +- ...MetaTileEntity_BasicMachine_GT_Recipe.java | 11 +- .../GT_MetaTileEntity_Hatch_Input.java | 4 +- .../GT_MetaTileEntity_Hatch_InputBus.java | 4 +- .../GT_MetaTileEntity_MultiBlockBase.java | 3 +- .../api/recipes/GT_MachineRecipe.java | 98 ++- .../gregtech/api/recipes/GT_RecipeMap.java | 27 +- .../api/util/GT_ProcessingArray_Manager.java | 9 +- .../basic/GT_MetaTileEntity_Boxinator.java | 5 +- .../GT_MetaTileEntity_Massfabricator.java | 5 +- .../GT_MetaTileEntity_OrganicReplicator.java | 5 +- .../basic/GT_MetaTileEntity_PotionBrewer.java | 5 +- .../basic/GT_MetaTileEntity_Replicator.java | 5 +- .../basic/GT_MetaTileEntity_RockBreaker.java | 5 +- .../basic/GT_MetaTileEntity_Scanner.java | 49 +- ...etaTileEntity_AdvancedProcessingArray.java | 16 +- .../multi/GT_MetaTileEntity_AssemblyLine.java | 3 +- .../multi/GT_MetaTileEntity_Charcoal_Pit.java | 3 +- .../multi/GT_MetaTileEntity_Cleanroom.java | 3 +- .../GT_MetaTileEntity_DistillationTower.java | 8 +- ...T_MetaTileEntity_ElectricBlastFurnace.java | 8 +- ...GT_MetaTileEntity_ImplosionCompressor.java | 8 +- .../multi/GT_MetaTileEntity_MultiFurnace.java | 5 +- .../GT_MetaTileEntity_ProcessingArray.java | 24 +- .../GT_MetaTileEntity_VacuumFreezer.java | 8 +- ...GT_MetaTileEntity_AlloySmelter_Bronze.java | 8 +- .../GT_MetaTileEntity_AlloySmelter_Steel.java | 8 +- .../GT_MetaTileEntity_Compressor_Bronze.java | 8 +- .../GT_MetaTileEntity_Compressor_Steel.java | 8 +- .../GT_MetaTileEntity_Extractor_Bronze.java | 8 +- .../GT_MetaTileEntity_Extractor_Steel.java | 8 +- .../GT_MetaTileEntity_ForgeHammer_Bronze.java | 8 +- .../GT_MetaTileEntity_ForgeHammer_Steel.java | 8 +- .../GT_MetaTileEntity_Macerator_Bronze.java | 6 +- .../GT_MetaTileEntity_Macerator_Steel.java | 6 +- .../GT_ProcessingArrayRecipeLoader.java | 88 +-- .../preload/GT_Loader_MetaTileEntities.java | 746 +++++++++--------- .../gregtech/nei/GT_NEI_DefaultHandler.java | 24 +- src/main/java/gregtech/nei/NEI_GT_Config.java | 3 +- 39 files changed, 689 insertions(+), 595 deletions(-) diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java index dbab45cedf..0baa777fd8 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java @@ -11,6 +11,8 @@ import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.objects.XSTR; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; @@ -54,7 +56,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B /** * Contains the Recipe which has been previously used, or null if there was no previous Recipe, which could have been buffered */ - protected GT_Recipe mLastRecipe = null; + protected GT_MachineRecipe mLastRecipe = null; private FluidStack mFluidOut; /** @@ -559,7 +561,7 @@ protected boolean drainEnergyForProcess(long aEUt) { return getBaseMetaTileEntity().decreaseStoredEnergyUnits(aEUt, false); } - protected void calculateOverclockedNess(GT_Recipe aRecipe) { + protected void calculateOverclockedNess(GT_MachineRecipe aRecipe) { calculateOverclockedNess(aRecipe.mEUt, aRecipe.mDuration); } @@ -591,8 +593,8 @@ protected ItemStack[] getAllOutputs() { return rOutputs; } - protected boolean canOutput(GT_Recipe aRecipe) { - return aRecipe != null && (aRecipe.mNeedsEmptyOutput ? isOutputEmpty() && getDrainableStack() == null : canOutput(aRecipe.getFluidOutput(0)) && canOutput(aRecipe.mOutputs)); + protected boolean canOutput(GT_MachineRecipe aRecipe) { + return aRecipe != null && (aRecipe.mNeedsEmptyOutput ? isOutputEmpty() && getDrainableStack() == null : canOutput(aRecipe.getFluidOutput(0)) && canOutput(GT_MachineRecipe.unwrapOutputs(aRecipe.mOutputs))); } protected boolean canOutput(ItemStack... aOutputs) { @@ -751,7 +753,7 @@ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex /** * @return the Recipe List which is used for this Machine, this is a useful Default Handler */ - public GT_Recipe_Map getRecipeList() { + public GT_RecipeMap getRecipeList() { return null; } @@ -768,7 +770,7 @@ public int checkRecipe() { return checkRecipe(false); } - public static boolean isValidForLowGravity(GT_Recipe tRecipe, int dimId){ + public static boolean isValidForLowGravity(GT_MachineRecipe tRecipe, int dimId){ return //TODO check or get a better solution DimensionManager.getProvider(dimId).getClass().getName().contains("Orbit") || DimensionManager.getProvider(dimId).getClass().getName().endsWith("Space") || @@ -784,9 +786,9 @@ public static boolean isValidForLowGravity(GT_Recipe tRecipe, int dimId){ * @return */ public int checkRecipe(boolean skipOC){ - GT_Recipe_Map tMap = getRecipeList(); + GT_RecipeMap tMap = getRecipeList(); if (tMap == null) return DID_NOT_FIND_RECIPE; - GT_Recipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[mTier], new FluidStack[]{getFillableStack()}, getSpecialSlot(), getAllInputs()); + GT_MachineRecipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[mTier], new FluidStack[]{getFillableStack()}, getSpecialSlot(), getAllInputs()); if (tRecipe == null) return DID_NOT_FIND_RECIPE; if (GT_Mod.gregtechproxy.mLowGravProcessing && tRecipe.mSpecialValue == -100 && @@ -801,9 +803,11 @@ public int checkRecipe(boolean skipOC){ return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS; if (!tRecipe.isRecipeInputEqual(true, new FluidStack[]{getFillableStack()}, getAllInputs())) return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS; - for (int i = 0; i < mOutputItems.length; i++) - if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(i)) - mOutputItems[i] = tRecipe.getOutput(i); + for (int i = 0; i < mOutputItems.length; i++) { + if (tRecipe.mOutputs[i] != null) { + mOutputItems[i] = tRecipe.mOutputs[i].getActualOutput(getBaseMetaTileEntity().getWorld().rand); + } + } if (tRecipe.mSpecialValue == -200) for (int i = 0; i < mOutputItems.length; i++) if (mOutputItems[i] != null && getBaseMetaTileEntity().getRandomNumber(10000) > mCleanroom.mEfficiency) diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java index 2162d5cf80..41393c7eb4 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java @@ -22,6 +22,7 @@ import java.util.Random; import cpw.mods.fml.common.Loader; +import gregtech.api.recipes.GT_RecipeMap; import static gregtech.api.enums.GT_Values.V; import static gregtech.api.enums.GT_Values.W; @@ -33,13 +34,13 @@ * Extend this class to make a simple Machine */ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_BasicMachine { - private final GT_Recipe_Map mRecipes; + private final GT_RecipeMap mRecipes; private final int mTankCapacity, mSpecialEffect; private final String mSound; private final boolean mSharedTank, mRequiresFluidForFiltering; private final byte mGUIParameterA, mGUIParameterB; - public GT_MetaTileEntity_BasicMachine_GT_Recipe(int aID, String aName, String aNameRegional, int aTier, String aDescription, GT_Recipe_Map aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aGUIParameterA, int aGUIParameterB, String aGUIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect, String aOverlays, Object[] aRecipe) { + public GT_MetaTileEntity_BasicMachine_GT_Recipe(int aID, String aName, String aNameRegional, int aTier, String aDescription, GT_RecipeMap aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aGUIParameterA, int aGUIParameterB, String aGUIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect, String aOverlays, Object[] aRecipe) { super(aID, aName, aNameRegional, aTier, aRecipes.mAmperage, aDescription, aInputSlots, aOutputSlots, aGUIName, aRecipes.mNEIName, new ITexture[]{new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_SIDE_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_SIDE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_FRONT_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_FRONT")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_TOP_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_TOP")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_BOTTOM_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_BOTTOM"))}); mSharedTank = aSharedTank; mTankCapacity = aTankCapacity; @@ -610,7 +611,7 @@ else if (mTier < 3) } } - public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String aDescription, GT_Recipe_Map aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aAmperage, int aGUIParameterA, int aGUIParameterB, ITexture[][][] aTextures, String aGUIName, String aNEIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect) { + public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String aDescription, GT_RecipeMap aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aAmperage, int aGUIParameterA, int aGUIParameterB, ITexture[][][] aTextures, String aGUIName, String aNEIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect) { super(aName, aTier, aAmperage, aDescription, aTextures, aInputSlots, aOutputSlots, aGUIName, aNEIName); mSharedTank = aSharedTank; mTankCapacity = aTankCapacity; @@ -622,7 +623,7 @@ public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String mGUIParameterB = (byte) aGUIParameterB; } - public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String[] aDescription, GT_Recipe_Map aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aAmperage, int aGUIParameterA, int aGUIParameterB, ITexture[][][] aTextures, String aGUIName, String aNEIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect) { + public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String[] aDescription, GT_RecipeMap aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aAmperage, int aGUIParameterA, int aGUIParameterB, ITexture[][][] aTextures, String aGUIName, String aNEIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect) { super(aName, aTier, aAmperage, aDescription, aTextures, aInputSlots, aOutputSlots, aGUIName, aNEIName); mSharedTank = aSharedTank; mTankCapacity = aTankCapacity; @@ -688,7 +689,7 @@ public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { } @Override - public GT_Recipe_Map getRecipeList() { + public GT_RecipeMap getRecipeList() { return mRecipes; } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java index 33430851c3..49b58b1d8f 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java @@ -5,14 +5,14 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; public class GT_MetaTileEntity_Hatch_Input extends GT_MetaTileEntity_Hatch { - public GT_Recipe_Map mRecipeMap = null; + public GT_RecipeMap mRecipeMap = null; public GT_MetaTileEntity_Hatch_Input(int aID, String aName, String aNameRegional, int aTier) { super(aID, aName, aNameRegional, aTier, 3, new String[]{"Fluid Input for Multiblocks", "Capacity: "+ 8000 * (aTier + 1) + "L"}); diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java index 4b81f39d93..9a528b6bb6 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java @@ -6,8 +6,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_LanguageManager; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; @@ -15,7 +15,7 @@ import net.minecraft.nbt.NBTTagCompound; public class GT_MetaTileEntity_Hatch_InputBus extends GT_MetaTileEntity_Hatch { - public GT_Recipe_Map mRecipeMap = null; + public GT_RecipeMap mRecipeMap = null; public boolean disableSort; public GT_MetaTileEntity_Hatch_InputBus(int aID, String aName, String aNameRegional, int aTier) { diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index 066851052d..0c26fb2130 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -12,6 +12,7 @@ import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_ItemStack; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; @@ -771,7 +772,7 @@ public ArrayList getStoredInputs() { return rList; } - public GT_Recipe_Map getRecipeMap() { + public GT_RecipeMap getRecipeMap() { return null; } diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index fb83134981..e259218e0e 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -5,6 +5,7 @@ import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import java.util.ArrayList; +import java.util.List; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; @@ -77,8 +78,8 @@ public GT_MachineRecipe(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, Fl if (mFluidInputs == null) mFluidInputs = new FluidStack[0]; if (mFluidOutputs == null) mFluidOutputs = new FluidStack[0]; - mInputs = GT_Utility.getArrayListWithoutTrailingNulls(mInputs).toArray(new GT_RecipeInput[0]); - mOutputs = GT_Utility.getArrayListWithoutTrailingNulls(mOutputs).toArray(new GT_RecipeOutput[0]); + mInputs = GT_Utility.getArrayListWithoutNulls(mInputs).toArray(new GT_RecipeInput[0]); + mOutputs = GT_Utility.getArrayListWithoutNulls(mOutputs).toArray(new GT_RecipeOutput[0]); mFluidInputs = GT_Utility.getArrayListWithoutNulls(mFluidInputs).toArray(new FluidStack[0]); mFluidOutputs = GT_Utility.getArrayListWithoutNulls(mFluidOutputs).toArray(new FluidStack[0]); @@ -86,20 +87,43 @@ public GT_MachineRecipe(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, Fl for (int i = 0; i < mFluidOutputs.length; i++) mFluidOutputs[i] = new GT_FluidStack(mFluidOutputs[i]); } - private static GT_RecipeInput[] wrapInputs(ItemStack[] aInputs) { - GT_RecipeInput[] tInputs = new GT_RecipeInput[aInputs.length]; + public static GT_RecipeInput[] wrapInputs(ItemStack[] aInputs) { + if (aInputs == null) { + return new GT_RecipeInput[0]; + } + GT_RecipeInput[] rInputs = new GT_RecipeInput[aInputs.length]; for (int i = 0; i < aInputs.length; i++) { - tInputs[i] = new GT_RecipeInput(aInputs[i]); + if (aInputs[i] != null) { + rInputs[i] = new GT_RecipeInput(aInputs[i]); + } + } + return rInputs; + } + + public static GT_RecipeOutput[] wrapOutputs(ItemStack[] aOutputs) { + if (aOutputs == null) { + return new GT_RecipeOutput[0]; + } + GT_RecipeOutput[] rOutputs = new GT_RecipeOutput[aOutputs.length]; + for (int i = 0; i < aOutputs.length; i++) { + if (aOutputs[i] != null) { + rOutputs[i] = new GT_RecipeOutput(aOutputs[i]); + } } - return tInputs; + return rOutputs; } - private static GT_RecipeOutput[] wrapOutputs(ItemStack[] aOutputs) { - GT_RecipeOutput[] tOutputs = new GT_RecipeOutput[aOutputs.length]; + public static ItemStack[] unwrapOutputs(GT_RecipeOutput[] aOutputs) { + if (aOutputs == null) { + return new ItemStack[0]; + } + ItemStack[] rOutputs = new ItemStack[aOutputs.length]; for (int i = 0; i < aOutputs.length; i++) { - tOutputs[i] = new GT_RecipeOutput(aOutputs[i]); + if (aOutputs[i] != null) { + rOutputs[i] = aOutputs[i].getShownOutput(); + } } - return tOutputs; + return rOutputs; } public GT_MachineRecipe(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { @@ -170,6 +194,34 @@ public String[] getNeiDesc() { return neiDesc; } + public List getRepresentativeInput(int aIndex) { + if (aIndex < 0 || aIndex >= mInputs.length || mInputs[aIndex] == null) { + return null; + } + return mInputs[aIndex].getInputStacks(); + } + + public FluidStack getFluidOutput(int aIndex) { + if (aIndex < 0 || aIndex >= mFluidOutputs.length || mFluidOutputs[aIndex] == null) { + return null; + } + return mFluidOutputs[aIndex].copy(); + } + + public ItemStack getOutput(int aIndex) { + if (aIndex < 0 || aIndex >= mOutputs.length || mOutputs[aIndex] == null) { + return null; + } + return mOutputs[aIndex].getShownOutput().copy(); + } + + public int getOutputChance(int aIndex) { + if (aIndex < 0 || aIndex >= mOutputs.length || mOutputs[aIndex] == null) { + return 0; + } + return (int) (mOutputs[aIndex].getChance() * 10000); + } + /** * Overriding this method and getOutputPositionedStacks allows for custom NEI stack placement * @return A list of input stacks @@ -221,19 +273,19 @@ public GT_MachineRecipe optimize() { for (int i = 0; i < mFluidOutputs.length && tDivisor > 1; i++) { tDivisor = gcd(tDivisor, mFluidOutputs[i].amount); } - } - if (tDivisor > 1) { - for (GT_RecipeInput tInput : mInputs) { - tInput.setCount(tInput.getCount() / tDivisor); - } - for (GT_RecipeOutput tOutput : mOutputs) { - tOutput.setCount(tOutput.getCount() / tDivisor); - } - for (FluidStack tFluidInput : mFluidInputs) { - tFluidInput.amount /= tDivisor; - } - for (FluidStack tFluidOutput : mFluidOutputs) { - tFluidOutput.amount /= tDivisor; + if (tDivisor > 1) { + for (GT_RecipeInput tInput : mInputs) { + tInput.setCount(tInput.getCount() / tDivisor); + } + for (GT_RecipeOutput tOutput : mOutputs) { + tOutput.setCount(tOutput.getCount() / tDivisor); + } + for (FluidStack tFluidInput : mFluidInputs) { + tFluidInput.amount /= tDivisor; + } + for (FluidStack tFluidOutput : mFluidOutputs) { + tFluidOutput.amount /= tDivisor; + } } } mOptimized = true; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index f3271fbcb6..db1490d022 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -67,7 +67,7 @@ public class GT_RecipeMap { public static final GT_RecipeMap sArcFurnaceRecipes = new GT_RecipeMap(new HashSet(10000)).setNames("gt.recipe.arcfurnace", "Arc Furnace").setNEIGUIPathBasic("ArcFurnace").setOutputSlots(4).setMinimalInputFluids(1).setAmperage(3); public static final GT_RecipeMap sPrinterRecipes = new GT_RecipeMapPrinter(new HashSet(100)).setNames("gt.recipe.printer", "Printer").setNEIGUIPathBasic("Printer").setMinimalInputFluids(1); public static final GT_RecipeMap sSifterRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.sifter", "Sifter").setNEIGUIPathBasic("Sifter").setOutputSlots(9); - public static final GT_RecipeMap sPressRecipes = new GT_RecipeMapFormingPress(new HashSet(100)).setNames("gt.recipe.press", "Forming Press").setNEIGUIPathBasic("FormingPress").setInputSlots(2).setMinimalInputItems(2); + public static final GT_RecipeMap sPressRecipes = new GT_RecipeMapFormingPress(new HashSet(100)).setNames("gt.recipe.press", "Forming Press").setNEIGUIPathBasic("Press").setInputSlots(2).setMinimalInputItems(2); public static final GT_RecipeMap sLaserEngraverRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.laserengraver", "Precision Laser Engraver").setNEIGUIPathBasic("LaserEngraver").setInputSlots(2).setMinimalInputItems(2); public static final GT_RecipeMap sMixerRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.mixer", "Mixer").setNEIGUIPathBasic("Mixer").setInputSlots(4).setMinimalTotalInputs(2); public static final GT_RecipeMap sAutoclaveRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.autoclave", "Autoclave").setNEIGUIPathBasic("Autoclave").setMinimalInputFluids(1); @@ -266,27 +266,18 @@ public final GT_RecipeMap setShowVoltageAmperageInNEI(boolean aShowVoltageAmpera } public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - GT_RecipeInput[] tInputs = new GT_RecipeInput[0]; - if (aInputs != null) { - tInputs = new GT_RecipeInput[aInputs.length]; - } - for (int i = 0; i < tInputs.length; i++) { - tInputs[i] = new GT_RecipeInput(aInputs[i]); - } - GT_RecipeOutput[] tOutputs = new GT_RecipeOutput[0]; - if (aOutputs != null) { - tOutputs = new GT_RecipeOutput[aOutputs.length]; - } + GT_RecipeInput[] tInputs = GT_MachineRecipe.wrapInputs(aInputs); + GT_RecipeOutput[] tOutputs = GT_MachineRecipe.wrapOutputs(aOutputs); if (aOutputChances != null) { for (int i = 0; i < aOutputChances.length && i < tOutputs.length; i++) { - tOutputs[i] = new GT_RecipeOutput(aOutputs[i], aOutputChances[i] / 10000f); + if (aOutputs[i] != null) { + tOutputs[i] = new GT_RecipeOutput(aOutputs[i], aOutputChances[i] / 10000f); + } } for (int i = aOutputChances.length; i < tOutputs.length; i++) { - tOutputs[i] = new GT_RecipeOutput(aOutputs[i]); - } - } else { - for (int i = 0; i < tOutputs.length; i++) { - tOutputs[i] = new GT_RecipeOutput(aOutputs[i]); + if (aOutputs[i] != null) { + tOutputs[i] = new GT_RecipeOutput(aOutputs[i]); + } } } GT_MachineRecipe tRecipe = new GT_MachineRecipe(tInputs, tOutputs, aFluidInputs, aFluidOutputs); diff --git a/src/main/java/gregtech/api/util/GT_ProcessingArray_Manager.java b/src/main/java/gregtech/api/util/GT_ProcessingArray_Manager.java index d048f1f8b5..57593ec896 100644 --- a/src/main/java/gregtech/api/util/GT_ProcessingArray_Manager.java +++ b/src/main/java/gregtech/api/util/GT_ProcessingArray_Manager.java @@ -1,15 +1,14 @@ package gregtech.api.util; +import gregtech.api.recipes.GT_RecipeMap; import java.util.HashMap; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; - public class GT_ProcessingArray_Manager { private static final HashMap mMetaKeyMap = new HashMap(); - private static final HashMap mRecipeCache = new HashMap(); + private static final HashMap mRecipeCache = new HashMap(); - public static boolean registerRecipeMapForMeta(int aMeta, GT_Recipe_Map aMap) { + public static boolean registerRecipeMapForMeta(int aMeta, GT_RecipeMap aMap) { if (aMeta < 0 || aMeta > Short.MAX_VALUE || aMap == null) { return false; } @@ -24,7 +23,7 @@ public static boolean registerRecipeMapForMeta(int aMeta, GT_Recipe_Map aMap) { return true; } - public static GT_Recipe_Map getRecipeMapForMeta(int aMeta) { + public static GT_RecipeMap getRecipeMapForMeta(int aMeta) { return mRecipeCache.get(mMetaKeyMap.get(aMeta)); } diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java index 865c31285b..f1beea9542 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java @@ -7,6 +7,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -30,8 +31,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_Boxinator(this.mName, this.mTier, this.mDescriptionArray, this.mTextures, this.mGUIName, this.mNEIName); } - public GT_Recipe.GT_Recipe_Map getRecipeList() { - return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes; + public GT_RecipeMap getRecipeList() { + return GT_RecipeMap.sBoxinatorRecipes; } public int checkRecipe() { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java index 9de7168cf4..1681f23e7b 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java @@ -9,6 +9,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Config; import gregtech.api.util.GT_Recipe; import net.minecraftforge.fluids.FluidStack; @@ -74,8 +75,8 @@ public int checkRecipe() { } @Override - public GT_Recipe.GT_Recipe_Map getRecipeList() { - return GT_Recipe.GT_Recipe_Map.sMassFabFakeRecipes; + public GT_RecipeMap getRecipeList() { + return GT_RecipeMap.sMassFabFakeRecipes; } public boolean isFluidInputAllowed(FluidStack aFluid) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_OrganicReplicator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_OrganicReplicator.java index 9cfb933cd2..00bd827b9b 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_OrganicReplicator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_OrganicReplicator.java @@ -7,6 +7,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Config; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -80,8 +81,8 @@ public void onConfigLoad(GT_Config aConfig){ } @Override - public GT_Recipe.GT_Recipe_Map getRecipeList() { - return GT_Recipe.GT_Recipe_Map.sOrganicReplicatorFakeRecipes; + public GT_RecipeMap getRecipeList() { + return GT_RecipeMap.sOrganicReplicatorFakeRecipes; } public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java index 0f3f618737..5ebb0db3c2 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java @@ -8,6 +8,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -34,8 +35,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_PotionBrewer(this.mName, this.mTier, this.mDescriptionArray, this.mTextures, this.mGUIName, this.mNEIName); } - public GT_Recipe.GT_Recipe_Map getRecipeList() { - return GT_Recipe.GT_Recipe_Map.sBrewingRecipes; + public GT_RecipeMap getRecipeList() { + return GT_RecipeMap.sBrewingRecipes; } public int checkRecipe() { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java index 591cf2f7b6..fd53468644 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java @@ -7,6 +7,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -80,8 +81,8 @@ public int checkRecipe() { } @Override - public GT_Recipe.GT_Recipe_Map getRecipeList() { - return GT_Recipe.GT_Recipe_Map.sReplicatorFakeRecipes; + public GT_RecipeMap getRecipeList() { + return GT_RecipeMap.sReplicatorFakeRecipes; } public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java index 2698d9efc4..46a4401a51 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java @@ -8,6 +8,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -32,8 +33,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_RockBreaker(this.mName, this.mTier, this.mDescriptionArray, this.mTextures, this.mGUIName, this.mNEIName); } - public GT_Recipe.GT_Recipe_Map getRecipeList() { - return GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes; + public GT_RecipeMap getRecipeList() { + return GT_RecipeMap.sRockBreakerFakeRecipes; } public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java index 355335a03d..3e48374e19 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java @@ -16,6 +16,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.objects.ItemData; +import gregtech.api.recipes.GT_AssemblyLineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Assemblyline_Server; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; @@ -161,14 +163,14 @@ public int checkRecipe() { } } if(ItemList.Tool_DataStick.isStackEqual(getSpecialSlot(), false, true)&& aStack !=null){ - for(GT_Recipe.GT_Recipe_AssemblyLine tRecipe:GT_Recipe.GT_Recipe_AssemblyLine.sAssemblylineRecipes){ + for(GT_AssemblyLineRecipe tRecipe:GT_AssemblyLineRecipe.sAssemblyLineRecipes){ if(GT_Utility.areStacksEqual(tRecipe.mResearchItem, aStack, true)){ - String s = tRecipe.mOutput.getDisplayName(); + String s = tRecipe.mOutputs[0].getShownOutput().getDisplayName(); if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { - s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mOutput.getDisplayName()); + s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mOutputs[0].getShownOutput().getDisplayName()); if (s==null) - s=tRecipe.mOutput.getDisplayName(); + s=tRecipe.mOutputs[0].getShownOutput().getDisplayName(); } this.mOutputItems[0] = GT_Utility.copyAmount(1L, new Object[]{getSpecialSlot()}); GT_Utility.ItemNBT.setBookTitle(this.mOutputItems[0], s+" Construction Data"); @@ -177,17 +179,17 @@ public int checkRecipe() { if (tNBT == null) { tNBT = new NBTTagCompound(); } - tNBT.setTag("output", tRecipe.mOutput.writeToNBT(new NBTTagCompound())); + tNBT.setTag("output", tRecipe.mOutputs[0].getShownOutput().writeToNBT(new NBTTagCompound())); tNBT.setInteger("time", tRecipe.mDuration); tNBT.setInteger("eu", tRecipe.mEUt); for(int i = 0 ; i < tRecipe.mInputs.length ; i++){ - tNBT.setTag(""+i, tRecipe.mInputs[i].writeToNBT(new NBTTagCompound())); + tNBT.setTag(""+i, tRecipe.mInputs[i].getInputStacks().get(0).writeToNBT(new NBTTagCompound())); } - for(int i = 0 ; i < tRecipe.mOreDictAlt.length ; i++){ - if (tRecipe.mOreDictAlt[i] != null && tRecipe.mOreDictAlt[i].length > 0) { - tNBT.setInteger("a" + i, tRecipe.mOreDictAlt[i].length); - for (int j = 0; j < tRecipe.mOreDictAlt[i].length; j++) { - tNBT.setTag("a" + i + ":" + j, tRecipe.mOreDictAlt[i][j].writeToNBT(new NBTTagCompound())); + for(int i = 0 ; i < tRecipe.mInputs.length ; i++){ + if (tRecipe.mInputs[i] != null && tRecipe.mInputs[i].getInputStacks().size() > 1) { + tNBT.setInteger("a" + i, tRecipe.mInputs[i].getInputStacks().size()); + for (int j = 0; j < tRecipe.mInputs[i].getInputStacks().size(); j++) { + tNBT.setTag("a" + i + ":" + j, tRecipe.mInputs[i].getInputStacks().get(j).writeToNBT(new NBTTagCompound())); } } } @@ -196,18 +198,18 @@ public int checkRecipe() { } tNBT.setString("author", "Assembling Line Recipe Generator"); NBTTagList tNBTList = new NBTTagList(); - s=tRecipe.mOutput.getDisplayName(); + s=tRecipe.mOutputs[0].getShownOutput().getDisplayName(); if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { - s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mOutput.getDisplayName()); + s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mOutputs[0].getShownOutput().getDisplayName()); if (s==null) - s=tRecipe.mOutput.getDisplayName(); + s=tRecipe.mOutputs[0].getShownOutput().getDisplayName(); } - tNBTList.appendTag(new NBTTagString("Construction plan for "+tRecipe.mOutput.stackSize+" "+s+". Needed EU/t: "+tRecipe.mEUt+" Production time: "+(tRecipe.mDuration/20))); + tNBTList.appendTag(new NBTTagString("Construction plan for "+tRecipe.mOutputs[0].getShownOutput().stackSize+" "+s+". Needed EU/t: "+tRecipe.mEUt+" Production time: "+(tRecipe.mDuration/20))); for(int i=0;i 1) { int count = 0; StringBuilder tBuilder = new StringBuilder("Input Bus "+(i+1)+": "); - for (ItemStack tStack : tRecipe.mOreDictAlt[i]) { + for (ItemStack tStack : tRecipe.mInputs[i].getInputStacks()) { if (tStack != null) { s=tStack.getDisplayName(); if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { @@ -216,20 +218,19 @@ public int checkRecipe() { s=tStack.getDisplayName(); } - tBuilder.append((count == 0 ? "" : "\nOr ") + tStack.stackSize+" "+s); count++; } } if (count > 0) tNBTList.appendTag(new NBTTagString(tBuilder.toString())); } else if(tRecipe.mInputs[i]!=null){ - s=tRecipe.mInputs[i].getDisplayName(); + s=tRecipe.mInputs[i].getInputStacks().get(0).getDisplayName(); if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { - s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mInputs[i].getDisplayName()); + s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mInputs[i].getInputStacks().get(0).getDisplayName()); if (s==null) - s=tRecipe.mInputs[i].getDisplayName(); + s=tRecipe.mInputs[i].getInputStacks().get(0).getDisplayName(); } - tNBTList.appendTag(new NBTTagString("Input Bus "+(i+1)+": "+tRecipe.mInputs[i].stackSize+" "+s)); + tNBTList.appendTag(new NBTTagString("Input Bus "+(i+1)+": "+tRecipe.mInputs[i].getInputStacks().get(0).stackSize+" "+s)); } } for(int i=0;i tInputList = getStoredInputs(); int tTier = 0; @@ -127,7 +130,7 @@ public boolean checkRecipe(ItemStack aStack) { FluidStack[] tFluids = (FluidStack[]) tFluidList.toArray(new FluidStack[tFluidList.size()]); if (tInputList.size() > 0 || tFluids.length > 0) { - GT_Recipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs); + GT_MachineRecipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, gregtech.api.enums.GT_Values.V[tTier], tFluids, null, tInputs); if (tRecipe != null) { if (GT_Mod.gregtechproxy.mLowGravProcessing && tRecipe.mSpecialValue == -100 && !isValidForLowGravity(tRecipe,getBaseMetaTileEntity().getWorld().provider.dimensionId)) @@ -171,8 +174,7 @@ public boolean checkRecipe(ItemStack aStack) { for (int f = 0; f < tOut.length; f++) { if (tRecipe.mOutputs[f] != null && tOut[f] != null) { for (int g = 0; g < i; g++) { - if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f)) - tOut[f].stackSize += tRecipe.mOutputs[f].stackSize; + tOut[f].stackSize += tRecipe.mOutputs[f].getActualOutput(getBaseMetaTileEntity().getWorld().rand).stackSize; } } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java index ae324dcb3a..6c777bf8f4 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java @@ -13,6 +13,7 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_DataAccess; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -63,7 +64,7 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "AssemblyLine.png"); } - public GT_Recipe.GT_Recipe_Map getRecipeMap() { + public GT_RecipeMap getRecipeMap() { return null; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java index ff3af18e53..38d87c36dc 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java @@ -8,6 +8,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.common.GT_Pollution; import net.minecraft.block.Block; @@ -55,7 +56,7 @@ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[10]}; } - public GT_Recipe.GT_Recipe_Map getRecipeMap() { + public GT_RecipeMap getRecipeMap() { return null; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java index 0949e65d07..6d6cdba669 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java @@ -10,6 +10,7 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import net.minecraft.block.Block; import net.minecraft.entity.player.InventoryPlayer; @@ -175,7 +176,7 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MultiblockDisplay.png"); } - public GT_Recipe.GT_Recipe_Map getRecipeMap() { + public GT_RecipeMap getRecipeMap() { return null; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java index 4105c2495b..ec634f8def 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java @@ -9,6 +9,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -64,8 +66,8 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "DistillationTower.png"); } - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sDistillationRecipes; + public GT_RecipeMap getRecipeMap() { + return GT_RecipeMap.sDistillationRecipes; } public boolean isCorrectMachinePart(ItemStack aStack) { @@ -97,7 +99,7 @@ public boolean checkRecipe(ItemStack aStack) { FluidStack[] tFluids = tFluidList.toArray(new FluidStack[tFluidList.size()]); if (tFluids.length > 0) { for(int i = 0;i 0) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sBlastRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs); + GT_MachineRecipe tRecipe = GT_RecipeMap.sBlastRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[tTier], tFluids, null, tInputs); if ((tRecipe != null) && (this.mHeatingCapacity >= tRecipe.mSpecialValue) && (tRecipe.isRecipeInputEqual(true, tFluids, tInputs))) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java index 631b311720..b2b2bdceb6 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java @@ -8,6 +8,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -55,8 +57,8 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "ImplosionCompressor.png"); } - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sImplosionRecipes; + public GT_RecipeMap getRecipeMap() { + return GT_RecipeMap.sImplosionRecipes; } public boolean isCorrectMachinePart(ItemStack aStack) { @@ -84,7 +86,7 @@ public boolean checkRecipe(ItemStack aStack) { } ItemStack[] tInputs = tInputList.toArray(new ItemStack[tInputList.size()]); if (tInputList.size() > 0) { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sImplosionRecipes.findRecipe(getBaseMetaTileEntity(), false, 9223372036854775807L, null, tInputs); + GT_MachineRecipe tRecipe = GT_RecipeMap.sImplosionRecipes.findRecipe(getBaseMetaTileEntity(), null, Long.MAX_VALUE, null, null, tInputs); if ((tRecipe != null) && (tRecipe.isRecipeInputEqual(true, null, tInputs))) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java index edd4696335..05ce7355f3 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java @@ -8,6 +8,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -60,8 +61,8 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MultiFurnace.png"); } - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sFurnaceRecipes; + public GT_RecipeMap getRecipeMap() { + return GT_RecipeMap.sFurnaceRecipes; } public boolean isCorrectMachinePart(ItemStack aStack) { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java index c4bdc065bb..98fc8dabda 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java @@ -9,9 +9,10 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ProcessingArray_Manager; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; @@ -28,7 +29,7 @@ public class GT_MetaTileEntity_ProcessingArray extends GT_MetaTileEntity_MultiBlockBase { - GT_Recipe mLastRecipe; + GT_MachineRecipe mLastRecipe; public GT_MetaTileEntity_ProcessingArray(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); @@ -66,9 +67,10 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "ProcessingArray.png"); } - public GT_Recipe_Map getRecipeMap() { + @Override + public GT_RecipeMap getRecipeMap() { if (isCorrectMachinePart(mInventory[1])) { - GT_Recipe_Map aTemp = GT_ProcessingArray_Manager.getRecipeMapForMeta(mInventory[1].getItemDamage()); + GT_RecipeMap aTemp = GT_ProcessingArray_Manager.getRecipeMapForMeta(mInventory[1].getItemDamage()); if (aTemp != null) { return aTemp; } @@ -92,7 +94,7 @@ public boolean checkRecipe(ItemStack aStack) { if (!isCorrectMachinePart(mInventory[1])) { return false; } - GT_Recipe.GT_Recipe_Map map = getRecipeMap(); + GT_RecipeMap map = getRecipeMap(); if (map == null) return false; ArrayList tInputList = getStoredInputs(); int tTier = 0; @@ -122,7 +124,7 @@ public boolean checkRecipe(ItemStack aStack) { FluidStack[] tFluids = (FluidStack[]) tFluidList.toArray(new FluidStack[tFluidList.size()]); if (tInputList.size() > 0 || tFluids.length > 0) { - GT_Recipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs); + GT_MachineRecipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, gregtech.api.enums.GT_Values.V[tTier], tFluids, null, tInputs); if (tRecipe != null) { if (GT_Mod.gregtechproxy.mLowGravProcessing && tRecipe.mSpecialValue == -100 && !isValidForLowGravity(tRecipe,getBaseMetaTileEntity().getWorld().provider.dimensionId)) @@ -162,17 +164,17 @@ public boolean checkRecipe(ItemStack aStack) { } ItemStack[] tOut = new ItemStack[tRecipe.mOutputs.length]; for (int h = 0; h < tRecipe.mOutputs.length; h++) { - if(tRecipe.getOutput(h)!=null){ - tOut[h] = tRecipe.getOutput(h).copy(); - tOut[h].stackSize = 0;} + if (tRecipe.getOutput(h) != null) { + tOut[h] = tRecipe.getOutput(h).copy(); + tOut[h].stackSize = 0; + } } FluidStack tFOut = null; if (tRecipe.getFluidOutput(0) != null) tFOut = tRecipe.getFluidOutput(0).copy(); for (int f = 0; f < tOut.length; f++) { if (tRecipe.mOutputs[f] != null && tOut[f] != null) { for (int g = 0; g < i; g++) { - if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f)) - tOut[f].stackSize += tRecipe.mOutputs[f].stackSize; + tOut[f].stackSize += tRecipe.mOutputs[f].getActualOutput(getBaseMetaTileEntity().getWorld().rand).stackSize; } } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java index d21503ef89..921753aa88 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java @@ -8,6 +8,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -53,8 +55,8 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "VacuumFreezer.png"); } - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sVacuumRecipes; + public GT_RecipeMap getRecipeMap() { + return GT_RecipeMap.sVacuumRecipes; } public boolean isCorrectMachinePart(ItemStack aStack) { @@ -71,7 +73,7 @@ public boolean checkRecipe(ItemStack aStack) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sVacuumRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], null, new ItemStack[]{tInput}); + GT_MachineRecipe tRecipe = GT_RecipeMap.sVacuumRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[tTier], null, null, new ItemStack[]{tInput}); if (tRecipe != null) { if (tRecipe.isRecipeInputEqual(true, null, new ItemStack[]{tInput})) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java index 0fbd7383a8..57ea951439 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -31,12 +33,12 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeAlloySmelter.png", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeAlloySmelter.png", GT_RecipeMap.sAlloySmelterRecipes.mUnlocalizedName); } public int checkRecipe() { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs()); - if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_MachineRecipe tRecipe = GT_RecipeMap.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); + if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = tRecipe.mEUt; this.mMaxProgresstime = (tRecipe.mDuration * 2); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java index 75a3f6447b..14c865f649 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -31,12 +33,12 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelAlloySmelter.png", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelAlloySmelter.png", GT_RecipeMap.sAlloySmelterRecipes.mUnlocalizedName); } public int checkRecipe() { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs()); - if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_MachineRecipe tRecipe = GT_RecipeMap.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); + if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = (tRecipe.mEUt * 3); this.mMaxProgresstime = tRecipe.mDuration; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java index 67bde86f16..eaef615920 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -27,7 +29,7 @@ public GT_MetaTileEntity_Compressor_Bronze(String aName, String[] aDescription, } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeCompressor.png", GT_Recipe.GT_Recipe_Map.sCompressorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeCompressor.png", GT_RecipeMap.sCompressorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -35,8 +37,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public int checkRecipe() { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs()); - if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_MachineRecipe tRecipe = GT_RecipeMap.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); + if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = tRecipe.mEUt; this.mMaxProgresstime = (tRecipe.mDuration * 2); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java index 10d1f71d0d..41649b3d84 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -27,7 +29,7 @@ public GT_MetaTileEntity_Compressor_Steel(String aName, String[] aDescription, I } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelCompressor.png", GT_Recipe.GT_Recipe_Map.sCompressorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelCompressor.png", GT_RecipeMap.sCompressorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -35,8 +37,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public int checkRecipe() { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs()); - if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_MachineRecipe tRecipe = GT_RecipeMap.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); + if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = (tRecipe.mEUt * 3); this.mMaxProgresstime = tRecipe.mDuration; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java index f1d4ae1b86..928e5903ee 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -27,7 +29,7 @@ public GT_MetaTileEntity_Extractor_Bronze(String aName, String[] aDescription, I } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeExtractor.png", GT_Recipe.GT_Recipe_Map.sExtractorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeExtractor.png", GT_RecipeMap.sExtractorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -35,8 +37,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public int checkRecipe() { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs()); - if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_MachineRecipe tRecipe = GT_RecipeMap.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); + if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = tRecipe.mEUt; this.mMaxProgresstime = (tRecipe.mDuration * 2); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java index 9aa892a4fc..748c6534c2 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -27,7 +29,7 @@ public GT_MetaTileEntity_Extractor_Steel(String aName, String[] aDescription, IT } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelExtractor.png", GT_Recipe.GT_Recipe_Map.sExtractorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelExtractor.png", GT_RecipeMap.sExtractorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -35,8 +37,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public int checkRecipe() { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs()); - if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_MachineRecipe tRecipe = GT_RecipeMap.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); + if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = (tRecipe.mEUt * 3); this.mMaxProgresstime = tRecipe.mDuration; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java index 7a24222701..5b932b0c03 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -31,12 +33,12 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeHammer.png", GT_Recipe.GT_Recipe_Map.sHammerRecipes.mUnlocalizedName, (byte) 6, (byte) 3); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeHammer.png", GT_RecipeMap.sHammerRecipes.mUnlocalizedName, (byte) 6, (byte) 3); } public int checkRecipe() { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs()); - if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_MachineRecipe tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); + if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = tRecipe.mEUt; this.mMaxProgresstime = (tRecipe.mDuration * 2); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java index 66c40990cf..ca409ca505 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -31,12 +33,12 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelHammer.png", GT_Recipe.GT_Recipe_Map.sHammerRecipes.mUnlocalizedName, (byte) 6, (byte) 3); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelHammer.png", GT_RecipeMap.sHammerRecipes.mUnlocalizedName, (byte) 6, (byte) 3); } public int checkRecipe() { - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs()); - if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_MachineRecipe tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); + if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = (tRecipe.mEUt * 3); this.mMaxProgresstime = tRecipe.mDuration; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java index 95d185227e..9c1283526f 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; @@ -50,9 +52,9 @@ public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { } public int checkRecipe() { - GT_Recipe_Map tMap = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; + GT_RecipeMap tMap = GT_RecipeMap.sMaceratorRecipes; if (tMap == null) return DID_NOT_FIND_RECIPE; - GT_Recipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs()); + GT_MachineRecipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs()); if (tRecipe == null) return DID_NOT_FIND_RECIPE; if (tRecipe.mCanBeBuffered) mLastRecipe = tRecipe; if (!canOutput(tRecipe)) { diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java index 0f7d98f72e..3d90a4c645 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java @@ -8,6 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; @@ -50,9 +52,9 @@ public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { } public int checkRecipe() { - GT_Recipe_Map tMap = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; + GT_RecipeMap tMap = GT_RecipeMap.sMaceratorRecipes; if (tMap == null) return DID_NOT_FIND_RECIPE; - GT_Recipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs()); + GT_MachineRecipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs()); if (tRecipe == null) return DID_NOT_FIND_RECIPE; if (tRecipe.mCanBeBuffered) mLastRecipe = tRecipe; if (!canOutput(tRecipe)) { diff --git a/src/main/java/gregtech/loaders/postload/GT_ProcessingArrayRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_ProcessingArrayRecipeLoader.java index 8ce9a82f98..67ad4d2689 100644 --- a/src/main/java/gregtech/loaders/postload/GT_ProcessingArrayRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_ProcessingArrayRecipeLoader.java @@ -2,141 +2,141 @@ import gregtech.api.util.GT_ProcessingArray_Manager; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; +import gregtech.api.recipes.GT_RecipeMap; public class GT_ProcessingArrayRecipeLoader { public static void registerDefaultGregtechMaps() { // Centrifuge - registerMapBetweenRange(361, 368, GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes); + registerMapBetweenRange(361, 368, GT_RecipeMap.sCentrifugeRecipes); // Electrolyzer - registerMapBetweenRange(371, 378, GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes); + registerMapBetweenRange(371, 378, GT_RecipeMap.sElectrolyzerRecipes); // Assembler - registerMapBetweenRange(211, 218, GT_Recipe.GT_Recipe_Map.sAssemblerRecipes); + registerMapBetweenRange(211, 218, GT_RecipeMap.sAssemblerRecipes); // Compressor - registerMapBetweenRange(241, 248, GT_Recipe.GT_Recipe_Map.sCompressorRecipes); + registerMapBetweenRange(241, 248, GT_RecipeMap.sCompressorRecipes); //Extractor - registerMapBetweenRange(271, 278, GT_Recipe.GT_Recipe_Map.sExtractorRecipes); + registerMapBetweenRange(271, 278, GT_RecipeMap.sExtractorRecipes); //Macerator - registerMapBetweenRange(301, 308, GT_Recipe.GT_Recipe_Map.sMaceratorRecipes); + registerMapBetweenRange(301, 308, GT_RecipeMap.sMaceratorRecipes); // Microwave (New) - registerMapBetweenRange(311, 318, GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes); + registerMapBetweenRange(311, 318, GT_RecipeMap.sMicrowaveRecipes); //Recycler - registerMapBetweenRange(331, 338, GT_Recipe.GT_Recipe_Map.sRecyclerRecipes); + registerMapBetweenRange(331, 338, GT_RecipeMap.sRecyclerRecipes); //Thermal Centrifuge - registerMapBetweenRange(381, 388, GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes); + registerMapBetweenRange(381, 388, GT_RecipeMap.sThermalCentrifugeRecipes); // Ore Washer - registerMapBetweenRange(391, 398, GT_Recipe.GT_Recipe_Map.sOreWasherRecipes); + registerMapBetweenRange(391, 398, GT_RecipeMap.sOreWasherRecipes); // Chemical Reactor - registerMapBetweenRange(421, 428, GT_Recipe.GT_Recipe_Map.sChemicalRecipes); + registerMapBetweenRange(421, 428, GT_RecipeMap.sChemicalRecipes); // Chemical Bath - registerMapBetweenRange(541, 548, GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes); + registerMapBetweenRange(541, 548, GT_RecipeMap.sChemicalBathRecipes); // Magnetic Seperator - registerMapBetweenRange(561, 568, GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes); + registerMapBetweenRange(561, 568, GT_RecipeMap.sElectroMagneticSeparatorRecipes); // Autoclave - registerMapBetweenRange(571, 578, GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes); + registerMapBetweenRange(571, 578, GT_RecipeMap.sAutoclaveRecipes); // Mixer - registerMapBetweenRange(581, 588, GT_Recipe.GT_Recipe_Map.sMixerRecipes); + registerMapBetweenRange(581, 588, GT_RecipeMap.sMixerRecipes); // Forge Hammer - registerMapBetweenRange(611, 618, GT_Recipe.GT_Recipe_Map.sHammerRecipes); + registerMapBetweenRange(611, 618, GT_RecipeMap.sHammerRecipes); // Sifter - registerMapBetweenRange(641, 648, GT_Recipe.GT_Recipe_Map.sSifterRecipes); + registerMapBetweenRange(641, 648, GT_RecipeMap.sSifterRecipes); // Extruder - registerMapBetweenRange(281, 288, GT_Recipe.GT_Recipe_Map.sExtruderRecipes); + registerMapBetweenRange(281, 288, GT_RecipeMap.sExtruderRecipes); // Laser Engraver - registerMapBetweenRange(591, 598, GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes); + registerMapBetweenRange(591, 598, GT_RecipeMap.sLaserEngraverRecipes); // Bender - registerMapBetweenRange(221, 228, GT_Recipe.GT_Recipe_Map.sBenderRecipes); + registerMapBetweenRange(221, 228, GT_RecipeMap.sBenderRecipes); // Wiremill - registerMapBetweenRange(351, 358, GT_Recipe.GT_Recipe_Map.sWiremillRecipes); + registerMapBetweenRange(351, 358, GT_RecipeMap.sWiremillRecipes); // Arc Furnace - registerMapBetweenRange(651, 658, GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes); + registerMapBetweenRange(651, 658, GT_RecipeMap.sArcFurnaceRecipes); // Plasma Arc Furnace - registerMapBetweenRange(661, 668, GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes); + registerMapBetweenRange(661, 668, GT_RecipeMap.sPlasmaArcFurnaceRecipes); // Brewery - registerMapBetweenRange(491, 498, GT_Recipe.GT_Recipe_Map.sBrewingRecipes); + registerMapBetweenRange(491, 498, GT_RecipeMap.sBrewingRecipes); // Canner - registerMapBetweenRange(231, 238, GT_Recipe.GT_Recipe_Map.sCannerRecipes); + registerMapBetweenRange(231, 238, GT_RecipeMap.sCannerRecipes); // Cutter - registerMapBetweenRange(251, 258, GT_Recipe.GT_Recipe_Map.sCutterRecipes); + registerMapBetweenRange(251, 258, GT_RecipeMap.sCutterRecipes); // Fermenter - registerMapBetweenRange(501, 508, GT_Recipe.GT_Recipe_Map.sFermentingRecipes); + registerMapBetweenRange(501, 508, GT_RecipeMap.sFermentingRecipes); // Fluid Extractor - registerMapBetweenRange(511, 518, GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes); + registerMapBetweenRange(511, 518, GT_RecipeMap.sFluidExtractionRecipes); // Fluid Solidifier - registerMapBetweenRange(521, 528, GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes); + registerMapBetweenRange(521, 528, GT_RecipeMap.sFluidSolidificationRecipes); // Lathe - registerMapBetweenRange(291, 298, GT_Recipe.GT_Recipe_Map.sLatheRecipes); + registerMapBetweenRange(291, 298, GT_RecipeMap.sLatheRecipes); // Boxinator - registerMapBetweenRange(401, 408, GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes); + registerMapBetweenRange(401, 408, GT_RecipeMap.sBoxinatorRecipes); // Unboxinator - registerMapBetweenRange(411, 408, GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes); + registerMapBetweenRange(411, 408, GT_RecipeMap.sUnboxinatorRecipes); // Polarizer - registerMapBetweenRange(551, 558, GT_Recipe.GT_Recipe_Map.sPolarizerRecipes); + registerMapBetweenRange(551, 558, GT_RecipeMap.sPolarizerRecipes); // Printer - registerMapBetweenRange(321, 328, GT_Recipe.GT_Recipe_Map.sPrinterRecipes); + registerMapBetweenRange(321, 328, GT_RecipeMap.sPrinterRecipes); // Fluid Canner - registerMapBetweenRange(431, 438, GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes); + registerMapBetweenRange(431, 438, GT_RecipeMap.sFluidCannerRecipes); // Fluid Heater - registerMapBetweenRange(621, 628, GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes); + registerMapBetweenRange(621, 628, GT_RecipeMap.sFluidHeaterRecipes); // Distillery - registerMapBetweenRange(531, 538, GT_Recipe.GT_Recipe_Map.sDistilleryRecipes); + registerMapBetweenRange(531, 538, GT_RecipeMap.sDistilleryRecipes); // Slicer - registerMapBetweenRange(631, 638, GT_Recipe.GT_Recipe_Map.sSlicerRecipes); + registerMapBetweenRange(631, 638, GT_RecipeMap.sSlicerRecipes); // Matter Amplifier - registerMapBetweenRange(471, 478, GT_Recipe.GT_Recipe_Map.sAmplifiers); + registerMapBetweenRange(471, 478, GT_RecipeMap.sAmplifiers); // Circuit Assembler - registerMapBetweenRange(1180, 1187, GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes); + registerMapBetweenRange(1180, 1187, GT_RecipeMap.sCircuitAssemblerRecipes); // Alloy Smelter - registerMapBetweenRange(201, 208, GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes); + registerMapBetweenRange(201, 208, GT_RecipeMap.sAlloySmelterRecipes); // Forming Press - registerMapBetweenRange(601, 608, GT_Recipe.GT_Recipe_Map.sPressRecipes); + registerMapBetweenRange(601, 608, GT_RecipeMap.sPressRecipes); } - private static final void registerMapBetweenRange(int aMin, int aMax, GT_Recipe_Map aMap) { + private static final void registerMapBetweenRange(int aMin, int aMax, GT_RecipeMap aMap) { for (int i=aMin; i<=aMax;i++) { GT_ProcessingArray_Manager.registerRecipeMapForMeta(i, aMap); } diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java b/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java index 2822b5111c..a7dfda4ea0 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java @@ -7,11 +7,11 @@ import gregtech.api.enums.*; import gregtech.api.interfaces.ITexture; import gregtech.api.metatileentity.implementations.*; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; import gregtech.common.tileentities.automation.*; import gregtech.common.tileentities.boilers.GT_MetaTileEntity_Boiler_Bronze; import gregtech.common.tileentities.boilers.GT_MetaTileEntity_Boiler_Lava; @@ -583,131 +583,131 @@ private static void run1() { private static void run2() { long bits = GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED; long bitsd = GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED; - ItemList.Machine_LV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(201, "basicmachine.alloysmelter.tier.01", "Basic Alloy Smelter", 1, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_MV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(202, "basicmachine.alloysmelter.tier.02", "Advanced Alloy Smelter", 2, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_HV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(203, "basicmachine.alloysmelter.tier.03", "Advanced Alloy Smelter II", 3, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_EV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(204, "basicmachine.alloysmelter.tier.04", "Advanced Alloy Smelter III", 4, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_IV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(205, "basicmachine.alloysmelter.tier.05", "Advanced Alloy Smelter IV", 5, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_LuV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(206, "basicmachine.alloysmelter.tier.06", "Advanced Alloy Smelter V", 6, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_ZPM_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(207, "basicmachine.alloysmelter.tier.07", "Advanced Alloy Smelter VI", 7, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_UV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(208, "basicmachine.alloysmelter.tier.08", "Advanced Alloy Smelter VII", 8, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - - ItemList.Machine_LV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(211, "basicmachine.assembler.tier.01", "Basic Assembling Machine", 1, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(212, "basicmachine.assembler.tier.02", "Advanced Assembling Machine", 2, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(213, "basicmachine.assembler.tier.03", "Advanced Assembling Machine II", 3, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(214, "basicmachine.assembler.tier.04", "Advanced Assembling Machine III", 4, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(215, "basicmachine.assembler.tier.05", "Advanced Assembling Machine IV", 5, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(216, "basicmachine.assembler.tier.06", "Advanced Assembling Machine V", 6, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(217, "basicmachine.assembler.tier.07", "Advanced Assembling Machine VI", 7, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(218, "basicmachine.assembler.tier.08", "Advanced Assembling Machine VII", 8, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(221, "basicmachine.bender.tier.01", "Basic Bending Machine", 1, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(222, "basicmachine.bender.tier.02", "Advanced Bending Machine", 2, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(223, "basicmachine.bender.tier.03", "Advanced Bending Machine II", 3, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(224, "basicmachine.bender.tier.04", "Advanced Bending Machine III", 4, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(225, "basicmachine.bender.tier.05", "Advanced Bending Machine IV", 5, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(226, "basicmachine.bender.tier.06", "Advanced Bending Machine V", 6, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(227, "basicmachine.bender.tier.07", "Advanced Bending Machine VI", 7, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(228, "basicmachine.bender.tier.08", "Advanced Bending Machine VII", 8, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(231, "basicmachine.canner.tier.01", "Basic Canning Machine", 1, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(232, "basicmachine.canner.tier.02", "Advanced Canning Machine", 2, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(233, "basicmachine.canner.tier.03", "Advanced Canning Machine II", 3, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(234, "basicmachine.canner.tier.04", "Advanced Canning Machine III", 4, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(235, "basicmachine.canner.tier.05", "Advanced Canning Machine IV", 5, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(236, "basicmachine.canner.tier.06", "Advanced Canning Machine V", 6, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(237, "basicmachine.canner.tier.07", "Advanced Canning Machine VI", 7, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(238, "basicmachine.canner.tier.08", "Advanced Canning Machine VII", 8, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(241, "basicmachine.compressor.tier.01", "Basic Compressor", 1, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(242, "basicmachine.compressor.tier.02", "Advanced Compressor", 2, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(243, "basicmachine.compressor.tier.03", "Advanced Compressor II", 3, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(244, "basicmachine.compressor.tier.04", "Advanced Compressor III", 4, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(245, "basicmachine.compressor.tier.05", "Singularity Compressor", 5, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(246, "basicmachine.compressor.tier.06", "Singularity Compressor", 6, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(247, "basicmachine.compressor.tier.07", "Singularity Compressor", 7, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(248, "basicmachine.compressor.tier.08", "Singularity Compressor", 8, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(251, "basicmachine.cutter.tier.01", "Basic Cutting Machine", 1, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_MV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(252, "basicmachine.cutter.tier.02", "Advanced Cutting Machine", 2, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_HV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(253, "basicmachine.cutter.tier.03", "Advanced Cutting Machine II", 3, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_EV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(254, "basicmachine.cutter.tier.04", "Advanced Cutting Machine III", 4, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_IV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(255, "basicmachine.cutter.tier.05", "Advanced Cutting Machine IV", 5, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_LuV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(256, "basicmachine.cutter.tier.06", "Advanced Cutting Machine V", 6, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_ZPM_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(257, "basicmachine.cutter.tier.07", "Advanced Cutting Machine VI", 7, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_UV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(258, "basicmachine.cutter.tier.08", "Advanced Cutting Machine VII", 8, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - - ItemList.Machine_LV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(261, "basicmachine.e_furnace.tier.01", "Basic Electric Furnace", 1, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_MV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(262, "basicmachine.e_furnace.tier.02", "Advanced Electric Furnace", 2, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_HV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(263, "basicmachine.e_furnace.tier.03", "Advanced Electric Furnace II", 3, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_EV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(264, "basicmachine.e_furnace.tier.04", "Advanced Electric Furnace III", 4, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_IV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(265, "basicmachine.e_furnace.tier.05", "Electron Exitement Processor", 5, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_LuV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(266, "basicmachine.e_furnace.tier.06", "Electron Exitement Processor", 6, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_ZPM_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(267, "basicmachine.e_furnace.tier.07", "Electron Exitement Processor", 7, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_UV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(268, "basicmachine.e_furnace.tier.08", "Electron Exitement Processor", 8, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - - ItemList.Machine_LV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(271, "basicmachine.extractor.tier.01", "Basic Extractor", 1, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(272, "basicmachine.extractor.tier.02", "Advanced Extractor", 2, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(273, "basicmachine.extractor.tier.03", "Advanced Extractor II", 3, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(274, "basicmachine.extractor.tier.04", "Advanced Extractor III", 4, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(275, "basicmachine.extractor.tier.05", "Vacuum Extractor", 5, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(276, "basicmachine.extractor.tier.06", "Vacuum Extractor", 6, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(277, "basicmachine.extractor.tier.07", "Vacuum Extractor", 7, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(278, "basicmachine.extractor.tier.08", "Vacuum Extractor", 8, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(281, "basicmachine.extruder.tier.01", "Basic Extruder", 1, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_MV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(282, "basicmachine.extruder.tier.02", "Advanced Extruder", 2, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_HV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(283, "basicmachine.extruder.tier.03", "Advanced Extruder II", 3, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_EV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(284, "basicmachine.extruder.tier.04", "Advanced Extruder III", 4, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_IV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(285, "basicmachine.extruder.tier.05", "Advanced Extruder IV", 5, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_LuV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(286, "basicmachine.extruder.tier.06", "Advanced Extruder V", 6, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_ZPM_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(287, "basicmachine.extruder.tier.07", "Advanced Extruder VI", 7, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_UV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(288, "basicmachine.extruder.tier.08", "Advanced Extruder VII", 8, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - - ItemList.Machine_LV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(291, "basicmachine.lathe.tier.01", "Basic Lathe", 1, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OrePrefixes.gem.get(Materials.Diamond)}).getStackForm(1L)); - ItemList.Machine_MV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(292, "basicmachine.lathe.tier.02", "Advanced Lathe", 2, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_HV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(293, "basicmachine.lathe.tier.03", "Advanced Lathe II", 3, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_EV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(294, "basicmachine.lathe.tier.04", "Advanced Lathe III", 4, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_IV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(295, "basicmachine.lathe.tier.05", "Advanced Lathe IV", 5, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_LuV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(296, "basicmachine.lathe.tier.06", "Advanced Lathe V", 6, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_ZPM_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(297, "basicmachine.lathe.tier.07", "Advanced Lathe VI", 7, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_UV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(298, "basicmachine.lathe.tier.08", "Advanced Lathe VII", 8, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - - ItemList.Machine_LV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(301, "basicmachine.macerator.tier.01", "Basic Macerator", 1, "Schreddering your Ores", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 1, 0, 0, 1, "Macerator1.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "MACERATOR", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.gem.get(Materials.Diamond)}).getStackForm(1L)); - ItemList.Machine_MV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(302, "basicmachine.macerator.tier.02", "Advanced Macerator", 2, "Schreddering your Ores", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 1, 0, 0, 1, "Macerator1.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "MACERATOR", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_HV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(303, "basicmachine.macerator.tier.03", "Universal Macerator", 3, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 2, 0, 0, 1, "Macerator2.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_EV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(304, "basicmachine.macerator.tier.04", "Universal Pulverizer", 4, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 3, 0, 0, 1, "Macerator3.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_IV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(305, "basicmachine.macerator.tier.05", "Blend-O-Matic 9001", 5, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_LuV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(306, "basicmachine.macerator.tier.06", "Blend-O-Matic 9001", 6, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_ZPM_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(307, "basicmachine.macerator.tier.07", "Blend-O-Matic 9001", 7, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_UV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(308, "basicmachine.macerator.tier.08", "Blend-O-Matic 9001", 8, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - - ItemList.Machine_LV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(311, "basicmachine.microwave.tier.01", "Basic Microwave", 1, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_MV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(312, "basicmachine.microwave.tier.02", "Advanced Microwave", 2, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_HV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(313, "basicmachine.microwave.tier.03", "Advanced Microwave II", 3, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_EV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(314, "basicmachine.microwave.tier.04", "Advanced Microwave III", 4, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_IV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(315, "basicmachine.microwave.tier.05", "Advanced Microwave IV", 5, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_LuV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(316, "basicmachine.microwave.tier.06", "Advanced Microwave V", 6, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_ZPM_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(317, "basicmachine.microwave.tier.07", "Advanced Microwave VI", 7, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_UV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(318, "basicmachine.microwave.tier.08", "Advanced Microwave VII", 8, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - - ItemList.Machine_LV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(321, "basicmachine.printer.tier.01", "Basic Printer", 1, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(322, "basicmachine.printer.tier.02", "Advanced Printer", 2, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(323, "basicmachine.printer.tier.03", "Advanced Printer II", 3, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(324, "basicmachine.printer.tier.04", "Advanced Printer III", 4, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(325, "basicmachine.printer.tier.05", "Advanced Printer IV", 5, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(326, "basicmachine.printer.tier.06", "Advanced Printer V", 6, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(327, "basicmachine.printer.tier.07", "Advanced Printer VI", 7, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(328, "basicmachine.printer.tier.08", "Advanced Printer VII", 8, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(331, "basicmachine.recycler.tier.01", "Basic Recycler", 1, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_MV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(332, "basicmachine.recycler.tier.02", "Advanced Recycler", 2, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_HV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(333, "basicmachine.recycler.tier.03", "Advanced Recycler II", 3, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_EV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(334, "basicmachine.recycler.tier.04", "Advanced Recycler III", 4, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_IV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(335, "basicmachine.recycler.tier.05", "The Oblitterator", 5, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_LuV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(336, "basicmachine.recycler.tier.06", "The Oblitterator", 6, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_ZPM_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(337, "basicmachine.recycler.tier.07", "The Oblitterator", 7, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_UV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(338, "basicmachine.recycler.tier.08", "The Oblitterator", 8, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_LV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(201, "basicmachine.alloysmelter.tier.01", "Basic Alloy Smelter", 1, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_MV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(202, "basicmachine.alloysmelter.tier.02", "Advanced Alloy Smelter", 2, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_HV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(203, "basicmachine.alloysmelter.tier.03", "Advanced Alloy Smelter II", 3, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_EV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(204, "basicmachine.alloysmelter.tier.04", "Advanced Alloy Smelter III", 4, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_IV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(205, "basicmachine.alloysmelter.tier.05", "Advanced Alloy Smelter IV", 5, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_LuV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(206, "basicmachine.alloysmelter.tier.06", "Advanced Alloy Smelter V", 6, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_ZPM_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(207, "basicmachine.alloysmelter.tier.07", "Advanced Alloy Smelter VI", 7, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_UV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(208, "basicmachine.alloysmelter.tier.08", "Advanced Alloy Smelter VII", 8, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + + ItemList.Machine_LV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(211, "basicmachine.assembler.tier.01", "Basic Assembling Machine", 1, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(212, "basicmachine.assembler.tier.02", "Advanced Assembling Machine", 2, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(213, "basicmachine.assembler.tier.03", "Advanced Assembling Machine II", 3, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(214, "basicmachine.assembler.tier.04", "Advanced Assembling Machine III", 4, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(215, "basicmachine.assembler.tier.05", "Advanced Assembling Machine IV", 5, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(216, "basicmachine.assembler.tier.06", "Advanced Assembling Machine V", 6, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(217, "basicmachine.assembler.tier.07", "Advanced Assembling Machine VI", 7, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(218, "basicmachine.assembler.tier.08", "Advanced Assembling Machine VII", 8, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(221, "basicmachine.bender.tier.01", "Basic Bending Machine", 1, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(222, "basicmachine.bender.tier.02", "Advanced Bending Machine", 2, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(223, "basicmachine.bender.tier.03", "Advanced Bending Machine II", 3, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(224, "basicmachine.bender.tier.04", "Advanced Bending Machine III", 4, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(225, "basicmachine.bender.tier.05", "Advanced Bending Machine IV", 5, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(226, "basicmachine.bender.tier.06", "Advanced Bending Machine V", 6, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(227, "basicmachine.bender.tier.07", "Advanced Bending Machine VI", 7, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(228, "basicmachine.bender.tier.08", "Advanced Bending Machine VII", 8, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(231, "basicmachine.canner.tier.01", "Basic Canning Machine", 1, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(232, "basicmachine.canner.tier.02", "Advanced Canning Machine", 2, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(233, "basicmachine.canner.tier.03", "Advanced Canning Machine II", 3, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(234, "basicmachine.canner.tier.04", "Advanced Canning Machine III", 4, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(235, "basicmachine.canner.tier.05", "Advanced Canning Machine IV", 5, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(236, "basicmachine.canner.tier.06", "Advanced Canning Machine V", 6, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(237, "basicmachine.canner.tier.07", "Advanced Canning Machine VI", 7, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(238, "basicmachine.canner.tier.08", "Advanced Canning Machine VII", 8, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(241, "basicmachine.compressor.tier.01", "Basic Compressor", 1, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(242, "basicmachine.compressor.tier.02", "Advanced Compressor", 2, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(243, "basicmachine.compressor.tier.03", "Advanced Compressor II", 3, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(244, "basicmachine.compressor.tier.04", "Advanced Compressor III", 4, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(245, "basicmachine.compressor.tier.05", "Singularity Compressor", 5, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(246, "basicmachine.compressor.tier.06", "Singularity Compressor", 6, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(247, "basicmachine.compressor.tier.07", "Singularity Compressor", 7, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(248, "basicmachine.compressor.tier.08", "Singularity Compressor", 8, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(251, "basicmachine.cutter.tier.01", "Basic Cutting Machine", 1, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_MV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(252, "basicmachine.cutter.tier.02", "Advanced Cutting Machine", 2, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_HV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(253, "basicmachine.cutter.tier.03", "Advanced Cutting Machine II", 3, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_EV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(254, "basicmachine.cutter.tier.04", "Advanced Cutting Machine III", 4, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_IV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(255, "basicmachine.cutter.tier.05", "Advanced Cutting Machine IV", 5, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_LuV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(256, "basicmachine.cutter.tier.06", "Advanced Cutting Machine V", 6, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_ZPM_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(257, "basicmachine.cutter.tier.07", "Advanced Cutting Machine VI", 7, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_UV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(258, "basicmachine.cutter.tier.08", "Advanced Cutting Machine VII", 8, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + + ItemList.Machine_LV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(261, "basicmachine.e_furnace.tier.01", "Basic Electric Furnace", 1, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_MV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(262, "basicmachine.e_furnace.tier.02", "Advanced Electric Furnace", 2, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_HV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(263, "basicmachine.e_furnace.tier.03", "Advanced Electric Furnace II", 3, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_EV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(264, "basicmachine.e_furnace.tier.04", "Advanced Electric Furnace III", 4, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_IV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(265, "basicmachine.e_furnace.tier.05", "Electron Exitement Processor", 5, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_LuV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(266, "basicmachine.e_furnace.tier.06", "Electron Exitement Processor", 6, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_ZPM_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(267, "basicmachine.e_furnace.tier.07", "Electron Exitement Processor", 7, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_UV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(268, "basicmachine.e_furnace.tier.08", "Electron Exitement Processor", 8, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + + ItemList.Machine_LV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(271, "basicmachine.extractor.tier.01", "Basic Extractor", 1, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(272, "basicmachine.extractor.tier.02", "Advanced Extractor", 2, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(273, "basicmachine.extractor.tier.03", "Advanced Extractor II", 3, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(274, "basicmachine.extractor.tier.04", "Advanced Extractor III", 4, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(275, "basicmachine.extractor.tier.05", "Vacuum Extractor", 5, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(276, "basicmachine.extractor.tier.06", "Vacuum Extractor", 6, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(277, "basicmachine.extractor.tier.07", "Vacuum Extractor", 7, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(278, "basicmachine.extractor.tier.08", "Vacuum Extractor", 8, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(281, "basicmachine.extruder.tier.01", "Basic Extruder", 1, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_MV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(282, "basicmachine.extruder.tier.02", "Advanced Extruder", 2, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_HV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(283, "basicmachine.extruder.tier.03", "Advanced Extruder II", 3, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_EV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(284, "basicmachine.extruder.tier.04", "Advanced Extruder III", 4, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_IV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(285, "basicmachine.extruder.tier.05", "Advanced Extruder IV", 5, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_LuV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(286, "basicmachine.extruder.tier.06", "Advanced Extruder V", 6, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_ZPM_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(287, "basicmachine.extruder.tier.07", "Advanced Extruder VI", 7, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_UV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(288, "basicmachine.extruder.tier.08", "Advanced Extruder VII", 8, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + + ItemList.Machine_LV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(291, "basicmachine.lathe.tier.01", "Basic Lathe", 1, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OrePrefixes.gem.get(Materials.Diamond)}).getStackForm(1L)); + ItemList.Machine_MV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(292, "basicmachine.lathe.tier.02", "Advanced Lathe", 2, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_HV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(293, "basicmachine.lathe.tier.03", "Advanced Lathe II", 3, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_EV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(294, "basicmachine.lathe.tier.04", "Advanced Lathe III", 4, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_IV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(295, "basicmachine.lathe.tier.05", "Advanced Lathe IV", 5, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_LuV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(296, "basicmachine.lathe.tier.06", "Advanced Lathe V", 6, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_ZPM_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(297, "basicmachine.lathe.tier.07", "Advanced Lathe VI", 7, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_UV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(298, "basicmachine.lathe.tier.08", "Advanced Lathe VII", 8, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + + ItemList.Machine_LV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(301, "basicmachine.macerator.tier.01", "Basic Macerator", 1, "Schreddering your Ores", GT_RecipeMap.sMaceratorRecipes, 1, 1, 0, 0, 1, "Macerator1.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "MACERATOR", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.gem.get(Materials.Diamond)}).getStackForm(1L)); + ItemList.Machine_MV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(302, "basicmachine.macerator.tier.02", "Advanced Macerator", 2, "Schreddering your Ores", GT_RecipeMap.sMaceratorRecipes, 1, 1, 0, 0, 1, "Macerator1.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "MACERATOR", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_HV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(303, "basicmachine.macerator.tier.03", "Universal Macerator", 3, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 2, 0, 0, 1, "Macerator2.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_EV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(304, "basicmachine.macerator.tier.04", "Universal Pulverizer", 4, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 3, 0, 0, 1, "Macerator3.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_IV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(305, "basicmachine.macerator.tier.05", "Blend-O-Matic 9001", 5, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_LuV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(306, "basicmachine.macerator.tier.06", "Blend-O-Matic 9001", 6, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_ZPM_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(307, "basicmachine.macerator.tier.07", "Blend-O-Matic 9001", 7, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_UV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(308, "basicmachine.macerator.tier.08", "Blend-O-Matic 9001", 8, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + + ItemList.Machine_LV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(311, "basicmachine.microwave.tier.01", "Basic Microwave", 1, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_MV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(312, "basicmachine.microwave.tier.02", "Advanced Microwave", 2, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_HV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(313, "basicmachine.microwave.tier.03", "Advanced Microwave II", 3, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_EV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(314, "basicmachine.microwave.tier.04", "Advanced Microwave III", 4, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_IV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(315, "basicmachine.microwave.tier.05", "Advanced Microwave IV", 5, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_LuV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(316, "basicmachine.microwave.tier.06", "Advanced Microwave V", 6, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_ZPM_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(317, "basicmachine.microwave.tier.07", "Advanced Microwave VI", 7, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_UV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(318, "basicmachine.microwave.tier.08", "Advanced Microwave VII", 8, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + + ItemList.Machine_LV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(321, "basicmachine.printer.tier.01", "Basic Printer", 1, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(322, "basicmachine.printer.tier.02", "Advanced Printer", 2, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(323, "basicmachine.printer.tier.03", "Advanced Printer II", 3, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(324, "basicmachine.printer.tier.04", "Advanced Printer III", 4, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(325, "basicmachine.printer.tier.05", "Advanced Printer IV", 5, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(326, "basicmachine.printer.tier.06", "Advanced Printer V", 6, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(327, "basicmachine.printer.tier.07", "Advanced Printer VI", 7, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(328, "basicmachine.printer.tier.08", "Advanced Printer VII", 8, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(331, "basicmachine.recycler.tier.01", "Basic Recycler", 1, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_MV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(332, "basicmachine.recycler.tier.02", "Advanced Recycler", 2, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_HV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(333, "basicmachine.recycler.tier.03", "Advanced Recycler II", 3, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_EV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(334, "basicmachine.recycler.tier.04", "Advanced Recycler III", 4, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_IV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(335, "basicmachine.recycler.tier.05", "The Oblitterator", 5, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_LuV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(336, "basicmachine.recycler.tier.06", "The Oblitterator", 6, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_ZPM_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(337, "basicmachine.recycler.tier.07", "The Oblitterator", 7, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_UV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(338, "basicmachine.recycler.tier.08", "The Oblitterator", 8, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); ItemList.Machine_LV_Scanner.set(new GT_MetaTileEntity_Scanner(341, "basicmachine.scanner.tier.01", "Basic Scanner", 1).getStackForm(1L)); ItemList.Machine_MV_Scanner.set(new GT_MetaTileEntity_Scanner(342, "basicmachine.scanner.tier.02", "Advanced Scanner", 2).getStackForm(1L)); @@ -727,50 +727,50 @@ private static void run2() { GT_ModHandler.addCraftingRecipe(ItemList.Machine_ZPM_Scanner.get(1L, new Object[0]), bitsd, new Object[]{"CTC", aTextWireHull, "CRC", 'M', ItemList.Hull_ZPM, 'T', ItemList.Emitter_ZPM, 'R', ItemList.Sensor_ZPM, 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'W', OrePrefixes.cableGt01.get(Materials.Naquadah)}); GT_ModHandler.addCraftingRecipe(ItemList.Machine_UV_Scanner.get(1L, new Object[0]), bitsd, new Object[]{"CTC", aTextWireHull, "CRC", 'M', ItemList.Hull_UV, 'T', ItemList.Emitter_UV, 'R', ItemList.Sensor_UV, 'C', OrePrefixes.circuit.get(Materials.Infinite), 'W', OrePrefixes.cableGt01.get(Materials.NaquadahAlloy)}); - ItemList.Machine_LV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(351, "basicmachine.wiremill.tier.01", "Basic Wiremill", 1, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(352, "basicmachine.wiremill.tier.02", "Advanced Wiremill", 2, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(353, "basicmachine.wiremill.tier.03", "Advanced Wiremill II", 3, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(354, "basicmachine.wiremill.tier.04", "Advanced Wiremill III", 4, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(355, "basicmachine.wiremill.tier.05", "Advanced Wiremill IV", 5, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(356, "basicmachine.wiremill.tier.06", "Advanced Wiremill V", 6, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(357, "basicmachine.wiremill.tier.07", "Advanced Wiremill VI", 7, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(358, "basicmachine.wiremill.tier.08", "Advanced Wiremill VII", 8, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(361, "basicmachine.centrifuge.tier.01", "Basic Centrifuge", 1, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(362, "basicmachine.centrifuge.tier.02", "Advanced Centrifuge", 2, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(363, "basicmachine.centrifuge.tier.03", "Turbo Centrifuge", 3, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(364, "basicmachine.centrifuge.tier.04", "Molecular Separator", 4, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(365, "basicmachine.centrifuge.tier.05", "Molecular Cyclone", 5, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(366, "basicmachine.centrifuge.tier.06", "Molecular Cyclone", 6, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(367, "basicmachine.centrifuge.tier.07", "Molecular Cyclone", 7, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(368, "basicmachine.centrifuge.tier.08", "Molecular Cyclone", 8, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(371, "basicmachine.electrolyzer.tier.01", "Basic Electrolyzer", 1, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Gold), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(372, "basicmachine.electrolyzer.tier.02", "Advanced Electrolyzer", 2, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Silver), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(373, "basicmachine.electrolyzer.tier.03", "Advanced Electrolyzer II", 3, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Electrum), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(374, "basicmachine.electrolyzer.tier.04", "Advanced Electrolyzer III", 4, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Platinum), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(375, "basicmachine.electrolyzer.tier.05", "Molecular Disintegrator E-4908", 5, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(376, "basicmachine.electrolyzer.tier.06", "Molecular Disintegrator E-4908", 6, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(377, "basicmachine.electrolyzer.tier.07", "Molecular Disintegrator E-4908", 7, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(378, "basicmachine.electrolyzer.tier.08", "Molecular Disintegrator E-4908", 8, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(381, "basicmachine.thermalcentrifuge.tier.01", "Basic Thermal Centrifuge", 1, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_MV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(382, "basicmachine.thermalcentrifuge.tier.02", "Advanced Thermal Centrifuge", 2, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_HV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(383, "basicmachine.thermalcentrifuge.tier.03", "Advanced Thermal Centrifuge II", 3, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_EV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(384, "basicmachine.thermalcentrifuge.tier.04", "Advanced Thermal Centrifuge III", 4, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_IV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(385, "basicmachine.thermalcentrifuge.tier.05", "Blaze Sweatshop T-6350", 5, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_LuV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(386, "basicmachine.thermalcentrifuge.tier.06", "Blaze Sweatshop T-6350", 6, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_ZPM_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(387, "basicmachine.thermalcentrifuge.tier.07", "Blaze Sweatshop T-6350", 7, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_UV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(388, "basicmachine.thermalcentrifuge.tier.08", "Blaze Sweatshop T-6350", 8, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - - ItemList.Machine_LV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(391, "basicmachine.orewasher.tier.01", "Basic Ore Washing Plant", 1, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(392, "basicmachine.orewasher.tier.02", "Advanced Ore Washing Plant", 2, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(393, "basicmachine.orewasher.tier.03", "Advanced Ore Washing Plant II", 3, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(394, "basicmachine.orewasher.tier.04", "Advanced Ore Washing Plant III", 4, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(395, "basicmachine.orewasher.tier.05", "Repurposed Laundry-Washer I-360", 5, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(396, "basicmachine.orewasher.tier.06", "Repurposed Laundry-Washer I-360", 6, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(397, "basicmachine.orewasher.tier.07", "Repurposed Laundry-Washer I-360", 7, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(398, "basicmachine.orewasher.tier.08", "Repurposed Laundry-Washer I-360", 8, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(351, "basicmachine.wiremill.tier.01", "Basic Wiremill", 1, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(352, "basicmachine.wiremill.tier.02", "Advanced Wiremill", 2, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(353, "basicmachine.wiremill.tier.03", "Advanced Wiremill II", 3, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(354, "basicmachine.wiremill.tier.04", "Advanced Wiremill III", 4, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(355, "basicmachine.wiremill.tier.05", "Advanced Wiremill IV", 5, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(356, "basicmachine.wiremill.tier.06", "Advanced Wiremill V", 6, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(357, "basicmachine.wiremill.tier.07", "Advanced Wiremill VI", 7, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(358, "basicmachine.wiremill.tier.08", "Advanced Wiremill VII", 8, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(361, "basicmachine.centrifuge.tier.01", "Basic Centrifuge", 1, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(362, "basicmachine.centrifuge.tier.02", "Advanced Centrifuge", 2, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(363, "basicmachine.centrifuge.tier.03", "Turbo Centrifuge", 3, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(364, "basicmachine.centrifuge.tier.04", "Molecular Separator", 4, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(365, "basicmachine.centrifuge.tier.05", "Molecular Cyclone", 5, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(366, "basicmachine.centrifuge.tier.06", "Molecular Cyclone", 6, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(367, "basicmachine.centrifuge.tier.07", "Molecular Cyclone", 7, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(368, "basicmachine.centrifuge.tier.08", "Molecular Cyclone", 8, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(371, "basicmachine.electrolyzer.tier.01", "Basic Electrolyzer", 1, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Gold), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(372, "basicmachine.electrolyzer.tier.02", "Advanced Electrolyzer", 2, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Silver), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(373, "basicmachine.electrolyzer.tier.03", "Advanced Electrolyzer II", 3, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Electrum), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(374, "basicmachine.electrolyzer.tier.04", "Advanced Electrolyzer III", 4, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Platinum), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(375, "basicmachine.electrolyzer.tier.05", "Molecular Disintegrator E-4908", 5, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(376, "basicmachine.electrolyzer.tier.06", "Molecular Disintegrator E-4908", 6, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(377, "basicmachine.electrolyzer.tier.07", "Molecular Disintegrator E-4908", 7, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(378, "basicmachine.electrolyzer.tier.08", "Molecular Disintegrator E-4908", 8, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(381, "basicmachine.thermalcentrifuge.tier.01", "Basic Thermal Centrifuge", 1, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_MV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(382, "basicmachine.thermalcentrifuge.tier.02", "Advanced Thermal Centrifuge", 2, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_HV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(383, "basicmachine.thermalcentrifuge.tier.03", "Advanced Thermal Centrifuge II", 3, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_EV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(384, "basicmachine.thermalcentrifuge.tier.04", "Advanced Thermal Centrifuge III", 4, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_IV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(385, "basicmachine.thermalcentrifuge.tier.05", "Blaze Sweatshop T-6350", 5, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_LuV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(386, "basicmachine.thermalcentrifuge.tier.06", "Blaze Sweatshop T-6350", 6, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_ZPM_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(387, "basicmachine.thermalcentrifuge.tier.07", "Blaze Sweatshop T-6350", 7, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_UV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(388, "basicmachine.thermalcentrifuge.tier.08", "Blaze Sweatshop T-6350", 8, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + + ItemList.Machine_LV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(391, "basicmachine.orewasher.tier.01", "Basic Ore Washing Plant", 1, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(392, "basicmachine.orewasher.tier.02", "Advanced Ore Washing Plant", 2, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(393, "basicmachine.orewasher.tier.03", "Advanced Ore Washing Plant II", 3, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(394, "basicmachine.orewasher.tier.04", "Advanced Ore Washing Plant III", 4, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(395, "basicmachine.orewasher.tier.05", "Repurposed Laundry-Washer I-360", 5, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(396, "basicmachine.orewasher.tier.06", "Repurposed Laundry-Washer I-360", 6, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(397, "basicmachine.orewasher.tier.07", "Repurposed Laundry-Washer I-360", 7, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(398, "basicmachine.orewasher.tier.08", "Repurposed Laundry-Washer I-360", 8, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); ItemList.Machine_LV_Boxinator.set(new GT_MetaTileEntity_Boxinator(401, "basicmachine.boxinator.tier.01", "Basic Packager", 1).getStackForm(1L)); ItemList.Machine_MV_Boxinator.set(new GT_MetaTileEntity_Boxinator(402, "basicmachine.boxinator.tier.02", "Advanced Packager", 2).getStackForm(1L)); @@ -790,32 +790,32 @@ private static void run2() { GT_ModHandler.addCraftingRecipe(ItemList.Machine_ZPM_Boxinator.get(1L, new Object[0]), bitsd, new Object[]{"BCB", "RMV", aTextWireCoil, 'M', ItemList.Hull_ZPM, 'R', ItemList.Robot_Arm_ZPM, 'V', ItemList.Conveyor_Module_ZPM, 'C', OrePrefixes.circuit.get(Materials.Ultimate), 'W', OrePrefixes.cableGt01.get(Materials.Naquadah), 'B', OreDictNames.craftingChest}); GT_ModHandler.addCraftingRecipe(ItemList.Machine_UV_Boxinator.get(1L, new Object[0]), bitsd, new Object[]{"BCB", "RMV", aTextWireCoil, 'M', ItemList.Hull_UV, 'R', ItemList.Robot_Arm_UV, 'V', ItemList.Conveyor_Module_UV, 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'W', OrePrefixes.cableGt01.get(Materials.NaquadahAlloy), 'B', OreDictNames.craftingChest}); - ItemList.Machine_LV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(411, "basicmachine.unboxinator.tier.01", "Basic Unpackager", 1, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_MV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(412, "basicmachine.unboxinator.tier.02", "Advanced Unpackager", 2, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_HV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(413, "basicmachine.unboxinator.tier.03", "Advanced Unpackager II", 3, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_EV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(414, "basicmachine.unboxinator.tier.04", "Advanced Unpackager III", 4, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_IV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(415, "basicmachine.unboxinator.tier.05", "Unboxinator", 5, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_LuV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(416, "basicmachine.unboxinator.tier.06", "Unboxinator", 6, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_ZPM_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(417, "basicmachine.unboxinator.tier.07", "Unboxinator", 7, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_UV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(418, "basicmachine.unboxinator.tier.08", "Unboxinator", 8, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - - ItemList.Machine_LV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(421, "basicmachine.chemicalreactor.tier.01", "Basic Chemical Reactor", 1, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(422, "basicmachine.chemicalreactor.tier.02", "Advanced Chemical Reactor", 2, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(423, "basicmachine.chemicalreactor.tier.03", "Advanced Chemical Reactor II", 3, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeMedium.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_EV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(424, "basicmachine.chemicalreactor.tier.04", "Advanced Chemical Reactor III", 4, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeLarge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_IV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(425, "basicmachine.chemicalreactor.tier.05", "Advanced Chemical Reactor IV", 5, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_LuV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(426, "basicmachine.chemicalreactor.tier.06", "Advanced Chemical Reactor V", 6, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_ZPM_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(427, "basicmachine.chemicalreactor.tier.07", "Advanced Chemical Reactor VI", 7, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_UV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(428, "basicmachine.chemicalreactor.tier.08", "Advanced Chemical Reactor VII", 8, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - - ItemList.Machine_LV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(431, "basicmachine.fluidcanner.tier.01", "Basic Fluid Canner", 1, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 16000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(432, "basicmachine.fluidcanner.tier.02", "Advanced Fluid Canner", 2, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 32000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(433, "basicmachine.fluidcanner.tier.03", "Quick Fluid Canner", 3, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 48000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(434, "basicmachine.fluidcanner.tier.04", "Turbo Fluid Canner", 4, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 64000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(435, "basicmachine.fluidcanner.tier.05", "Instant Fluid Canner", 5, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(436, "basicmachine.fluidcanner.tier.06", "Instant Fluid Canner", 6, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(437, "basicmachine.fluidcanner.tier.07", "Instant Fluid Canner", 7, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(438, "basicmachine.fluidcanner.tier.08", "Instant Fluid Canner", 8, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(411, "basicmachine.unboxinator.tier.01", "Basic Unpackager", 1, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_MV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(412, "basicmachine.unboxinator.tier.02", "Advanced Unpackager", 2, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_HV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(413, "basicmachine.unboxinator.tier.03", "Advanced Unpackager II", 3, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_EV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(414, "basicmachine.unboxinator.tier.04", "Advanced Unpackager III", 4, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_IV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(415, "basicmachine.unboxinator.tier.05", "Unboxinator", 5, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_LuV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(416, "basicmachine.unboxinator.tier.06", "Unboxinator", 6, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_ZPM_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(417, "basicmachine.unboxinator.tier.07", "Unboxinator", 7, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_UV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(418, "basicmachine.unboxinator.tier.08", "Unboxinator", 8, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + + ItemList.Machine_LV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(421, "basicmachine.chemicalreactor.tier.01", "Basic Chemical Reactor", 1, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(422, "basicmachine.chemicalreactor.tier.02", "Advanced Chemical Reactor", 2, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(423, "basicmachine.chemicalreactor.tier.03", "Advanced Chemical Reactor II", 3, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeMedium.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_EV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(424, "basicmachine.chemicalreactor.tier.04", "Advanced Chemical Reactor III", 4, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeLarge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_IV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(425, "basicmachine.chemicalreactor.tier.05", "Advanced Chemical Reactor IV", 5, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_LuV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(426, "basicmachine.chemicalreactor.tier.06", "Advanced Chemical Reactor V", 6, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_ZPM_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(427, "basicmachine.chemicalreactor.tier.07", "Advanced Chemical Reactor VI", 7, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_UV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(428, "basicmachine.chemicalreactor.tier.08", "Advanced Chemical Reactor VII", 8, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + + ItemList.Machine_LV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(431, "basicmachine.fluidcanner.tier.01", "Basic Fluid Canner", 1, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 16000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(432, "basicmachine.fluidcanner.tier.02", "Advanced Fluid Canner", 2, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 32000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(433, "basicmachine.fluidcanner.tier.03", "Quick Fluid Canner", 3, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 48000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(434, "basicmachine.fluidcanner.tier.04", "Turbo Fluid Canner", 4, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 64000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(435, "basicmachine.fluidcanner.tier.05", "Instant Fluid Canner", 5, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(436, "basicmachine.fluidcanner.tier.06", "Instant Fluid Canner", 6, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(437, "basicmachine.fluidcanner.tier.07", "Instant Fluid Canner", 7, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(438, "basicmachine.fluidcanner.tier.08", "Instant Fluid Canner", 8, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); ItemList.Machine_LV_RockBreaker.set(new GT_MetaTileEntity_RockBreaker(441, "basicmachine.rockbreaker.tier.01", "Basic Rock Breaker", 1).getStackForm(1L)); ItemList.Machine_MV_RockBreaker.set(new GT_MetaTileEntity_RockBreaker(442, "basicmachine.rockbreaker.tier.02", "Advanced Rock Breaker", 2).getStackForm(1L)); @@ -871,14 +871,14 @@ private static void run2() { GT_ModHandler.addCraftingRecipe(ItemList.Machine_ZPM_Massfab.get(1L, new Object[0]), bitsd, new Object[]{"CFC", aTextWireHull, "CFC", 'M', ItemList.Hull_ZPM, 'F', ItemList.Field_Generator_ZPM, 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'W', OrePrefixes.cableGt04.get(Materials.Naquadah)}); GT_ModHandler.addCraftingRecipe(ItemList.Machine_UV_Massfab.get(1L, new Object[0]), bitsd, new Object[]{"CFC", aTextWireHull, "CFC", 'M', ItemList.Hull_UV, 'F', ItemList.Field_Generator_UV, 'C', OrePrefixes.circuit.get(Materials.Infinite), 'W', OrePrefixes.cableGt04.get(Materials.NaquadahAlloy)}); - ItemList.Machine_LV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(471, "basicmachine.amplifab.tier.01", "Basic Amplifabricator", 1, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_MV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(472, "basicmachine.amplifab.tier.02", "Advanced Amplifabricator", 2, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_HV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(473, "basicmachine.amplifab.tier.03", "Advanced Amplifabricator II", 3, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_EV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(474, "basicmachine.amplifab.tier.04", "Advanced Amplifabricator III", 4, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_IV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(475, "basicmachine.amplifab.tier.05", "Advanced Amplifabricator IV", 5, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_LuV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(476, "basicmachine.amplifab.tier.06", "Advanced Amplifabricator IV", 6, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_ZPM_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(477, "basicmachine.amplifab.tier.07", "Advanced Amplifabricator IV", 7, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_UV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(478, "basicmachine.amplifab.tier.08", "Advanced Amplifabricator IV", 8, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_LV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(471, "basicmachine.amplifab.tier.01", "Basic Amplifabricator", 1, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_MV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(472, "basicmachine.amplifab.tier.02", "Advanced Amplifabricator", 2, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_HV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(473, "basicmachine.amplifab.tier.03", "Advanced Amplifabricator II", 3, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_EV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(474, "basicmachine.amplifab.tier.04", "Advanced Amplifabricator III", 4, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_IV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(475, "basicmachine.amplifab.tier.05", "Advanced Amplifabricator IV", 5, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_LuV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(476, "basicmachine.amplifab.tier.06", "Advanced Amplifabricator IV", 6, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_ZPM_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(477, "basicmachine.amplifab.tier.07", "Advanced Amplifabricator IV", 7, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_UV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(478, "basicmachine.amplifab.tier.08", "Advanced Amplifabricator IV", 8, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); ItemList.Machine_LV_Replicator.set(new GT_MetaTileEntity_Replicator(481, "basicmachine.replicator.tier.01", "Basic Replicator", 1).getStackForm(1L)); ItemList.Machine_MV_Replicator.set(new GT_MetaTileEntity_Replicator(482, "basicmachine.replicator.tier.02", "Advanced Replicator", 2).getStackForm(1L)); @@ -916,167 +916,167 @@ private static void run2() { GT_ModHandler.addCraftingRecipe(ItemList.Machine_ZPM_Brewery.get(1L, new Object[0]), bitsd, new Object[]{"GPG", aTextWireHull, "CBC", 'M', ItemList.Hull_ZPM, 'P', ItemList.Electric_Pump_ZPM, 'B', OrePrefixes.stick.get(Materials.Blaze), 'C', OrePrefixes.circuit.get(Materials.Ultimate), 'W', OrePrefixes.cableGt01.get(Materials.Naquadah), 'G', Ic2Items.reinforcedGlass}); GT_ModHandler.addCraftingRecipe(ItemList.Machine_UV_Brewery.get(1L, new Object[0]), bitsd, new Object[]{"GPG", aTextWireHull, "CBC", 'M', ItemList.Hull_UV, 'P', ItemList.Electric_Pump_UV, 'B', OrePrefixes.stick.get(Materials.Blaze), 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'W', OrePrefixes.cableGt01.get(Materials.NaquadahAlloy), 'G', Ic2Items.reinforcedGlass}); - ItemList.Machine_LV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(501, "basicmachine.fermenter.tier.01", "Basic Fermenter", 1, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(502, "basicmachine.fermenter.tier.02", "Advanced Fermenter", 2, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(503, "basicmachine.fermenter.tier.03", "Advanced Fermenter II", 3, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(504, "basicmachine.fermenter.tier.04", "Advanced Fermenter III", 4, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(505, "basicmachine.fermenter.tier.05", "Advanced Fermenter IV", 5, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(506, "basicmachine.fermenter.tier.06", "Advanced Fermenter V", 6, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(507, "basicmachine.fermenter.tier.07", "Advanced Fermenter VI", 7, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(508, "basicmachine.fermenter.tier.08", "Advanced Fermenter VII", 8, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(511, "basicmachine.fluidextractor.tier.01", "Basic Fluid Extractor", 1, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(512, "basicmachine.fluidextractor.tier.02", "Advanced Fluid Extractor", 2, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(513, "basicmachine.fluidextractor.tier.03", "Advanced Fluid Extractor II", 3, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(514, "basicmachine.fluidextractor.tier.04", "Advanced Fluid Extractor III", 4, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(515, "basicmachine.fluidextractor.tier.05", "Advanced Fluid Extractor IV", 5, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(516, "basicmachine.fluidextractor.tier.06", "Advanced Fluid Extractor V", 6, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(517, "basicmachine.fluidextractor.tier.07", "Advanced Fluid Extractor VI", 7, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(518, "basicmachine.fluidextractor.tier.08", "Advanced Fluid Extractor VII", 8, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(521, "basicmachine.fluidsolidifier.tier.01", "Basic Fluid Solidifier", 1, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_MV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(522, "basicmachine.fluidsolidifier.tier.02", "Advanced Fluid Solidifier", 2, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_HV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(523, "basicmachine.fluidsolidifier.tier.03", "Advanced Fluid Solidifier II", 3, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_EV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(524, "basicmachine.fluidsolidifier.tier.04", "Advanced Fluid Solidifier III", 4, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_IV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(525, "basicmachine.fluidsolidifier.tier.05", "Advanced Fluid Solidifier IV", 5, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_LuV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(526, "basicmachine.fluidsolidifier.tier.06", "Advanced Fluid Solidifier V", 6, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_ZPM_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(527, "basicmachine.fluidsolidifier.tier.07", "Advanced Fluid Solidifier VI", 7, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_UV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(528, "basicmachine.fluidsolidifier.tier.08", "Advanced Fluid Solidifier VII", 8, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - - ItemList.Machine_LV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(531, "basicmachine.distillery.tier.01", "Basic Distillery", 1, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(532, "basicmachine.distillery.tier.02", "Advanced Distillery", 2, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(533, "basicmachine.distillery.tier.03", "Advanced Distillery II", 3, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(534, "basicmachine.distillery.tier.04", "Advanced Distillery III", 4, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(535, "basicmachine.distillery.tier.05", "Advanced Distillery IV", 5, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(536, "basicmachine.distillery.tier.06", "Advanced Distillery V", 6, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(537, "basicmachine.distillery.tier.07", "Advanced Distillery VI", 7, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(538, "basicmachine.distillery.tier.08", "Advanced Distillery VII", 8, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(541, "basicmachine.chemicalbath.tier.01", "Basic Chemical Bath", 1, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(542, "basicmachine.chemicalbath.tier.02", "Advanced Chemical Bath", 2, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(543, "basicmachine.chemicalbath.tier.03", "Advanced Chemical Bath II", 3, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(544, "basicmachine.chemicalbath.tier.04", "Advanced Chemical Bath III", 4, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(545, "basicmachine.chemicalbath.tier.05", "Advanced Chemical Bath IV", 5, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(546, "basicmachine.chemicalbath.tier.06", "Advanced Chemical Bath V", 6, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(547, "basicmachine.chemicalbath.tier.07", "Advanced Chemical Bath VI", 7, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(548, "basicmachine.chemicalbath.tier.08", "Advanced Chemical Bath VII", 8, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(551, "basicmachine.polarizer.tier.01", "Basic Polarizer", 1, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(552, "basicmachine.polarizer.tier.02", "Advanced Polarizer", 2, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(553, "basicmachine.polarizer.tier.03", "Advanced Polarizer II", 3, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(554, "basicmachine.polarizer.tier.04", "Advanced Polarizer III", 4, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(555, "basicmachine.polarizer.tier.05", "Advanced Polarizer IV", 5, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(556, "basicmachine.polarizer.tier.06", "Advanced Polarizer V", 6, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(557, "basicmachine.polarizer.tier.07", "Advanced Polarizer VI", 7, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(558, "basicmachine.polarizer.tier.08", "Advanced Polarizer VII", 8, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(561, "basicmachine.electromagneticseparator.tier.01", "Basic Electromagnetic Separator", 1, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(562, "basicmachine.electromagneticseparator.tier.02", "Advanced Electromagnetic Separator", 2, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(563, "basicmachine.electromagneticseparator.tier.03", "Advanced Electromagnetic Separator II", 3, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(564, "basicmachine.electromagneticseparator.tier.04", "Advanced Electromagnetic Separator III", 4, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(565, "basicmachine.electromagneticseparator.tier.05", "Advanced Electromagnetic Separator IV", 5, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(566, "basicmachine.electromagneticseparator.tier.06", "Advanced Electromagnetic Separator V", 6, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(567, "basicmachine.electromagneticseparator.tier.07", "Advanced Electromagnetic Separator VI", 7, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(568, "basicmachine.electromagneticseparator.tier.08", "Advanced Electromagnetic Separator VII", 8, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(571, "basicmachine.autoclave.tier.01", "Basic Autoclave", 1, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(572, "basicmachine.autoclave.tier.02", "Advanced Autoclave", 2, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(573, "basicmachine.autoclave.tier.03", "Advanced Autoclave II", 3, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(574, "basicmachine.autoclave.tier.04", "Advanced Autoclave III", 4, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(575, "basicmachine.autoclave.tier.05", "Advanced Autoclave IV", 5, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(576, "basicmachine.autoclave.tier.06", "Advanced Autoclave V", 6, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(577, "basicmachine.autoclave.tier.07", "Advanced Autoclave VI", 7, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(578, "basicmachine.autoclave.tier.08", "Advanced Autoclave VII", 8, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(581, "basicmachine.mixer.tier.01", "Basic Mixer", 1, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(582, "basicmachine.mixer.tier.02", "Advanced Mixer", 2, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(583, "basicmachine.mixer.tier.03", "Advanced Mixer II", 3, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(584, "basicmachine.mixer.tier.04", "Advanced Mixer III", 4, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(585, "basicmachine.mixer.tier.05", "Advanced Mixer IV", 5, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(586, "basicmachine.mixer.tier.06", "Advanced Mixer V", 6, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(587, "basicmachine.mixer.tier.07", "Advanced Mixer VI", 7, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(588, "basicmachine.mixer.tier.08", "Advanced Mixer VII", 8, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(591, "basicmachine.laserengraver.tier.01", "Basic Precision Laser Engraver", 1, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(592, "basicmachine.laserengraver.tier.02", "Advanced Precision Laser Engraver", 2, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(593, "basicmachine.laserengraver.tier.03", "Advanced Precision Laser Engraver II", 3, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(594, "basicmachine.laserengraver.tier.04", "Advanced Precision Laser Engraver III", 4, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(595, "basicmachine.laserengraver.tier.05", "Advanced Precision Laser Engraver IV", 5, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(596, "basicmachine.laserengraver.tier.06", "Advanced Precision Laser Engraver V", 6, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(597, "basicmachine.laserengraver.tier.07", "Advanced Precision Laser Engraver VI", 7, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(598, "basicmachine.laserengraver.tier.08", "Advanced Precision Laser Engraver VII", 8, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(601, "basicmachine.press.tier.01", "Basic Forming Press", 1, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(602, "basicmachine.press.tier.02", "Advanced Forming Press", 2, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(603, "basicmachine.press.tier.03", "Advanced Forming Press II", 3, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(604, "basicmachine.press.tier.04", "Advanced Forming Press III", 4, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(605, "basicmachine.press.tier.05", "Advanced Forming Press IV", 5, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(606, "basicmachine.press.tier.06", "Advanced Forming Press V", 6, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(607, "basicmachine.press.tier.07", "Advanced Forming Press VI", 7, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(608, "basicmachine.press.tier.08", "Advanced Forming Press VII", 8, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(611, "basicmachine.hammer.tier.01", "Basic Forge Hammer", 1, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_MV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(612, "basicmachine.hammer.tier.02", "Advanced Forge Hammer", 2, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_HV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(613, "basicmachine.hammer.tier.03", "Advanced Forge Hammer II", 3, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_EV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(614, "basicmachine.hammer.tier.04", "Advanced Forge Hammer III", 4, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_IV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(615, "basicmachine.hammer.tier.05", "Advanced Forge Hammer IV", 5, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_LuV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(616, "basicmachine.hammer.tier.06", "Advanced Forge Hammer V", 6, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_ZPM_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(617, "basicmachine.hammer.tier.07", "Advanced Forge Hammer VI", 7, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_UV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(618, "basicmachine.hammer.tier.08", "Advanced Forge Hammer VII", 8, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - - ItemList.Machine_LV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(621, "basicmachine.fluidheater.tier.01", "Basic Fluid Heater", 1, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(622, "basicmachine.fluidheater.tier.02", "Advanced Fluid Heater", 2, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(623, "basicmachine.fluidheater.tier.03", "Advanced Fluid Heater II", 3, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(624, "basicmachine.fluidheater.tier.04", "Advanced Fluid Heater III", 4, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(625, "basicmachine.fluidheater.tier.05", "Advanced Fluid Heater IV", 5, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(626, "basicmachine.fluidheater.tier.06", "Advanced Fluid Heater V", 6, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(627, "basicmachine.fluidheater.tier.07", "Advanced Fluid Heater VI", 7, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(628, "basicmachine.fluidheater.tier.08", "Advanced Fluid Heater VII", 8, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(631, "basicmachine.slicer.tier.01", "Basic Slicing Machine", 1, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(632, "basicmachine.slicer.tier.02", "Advanced Slicing Machine", 2, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(633, "basicmachine.slicer.tier.03", "Advanced Slicing Machine II", 3, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(634, "basicmachine.slicer.tier.04", "Advanced Slicing Machine III", 4, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(635, "basicmachine.slicer.tier.05", "Advanced Slicing Machine IV", 5, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(636, "basicmachine.slicer.tier.06", "Advanced Slicing Machine V", 6, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(637, "basicmachine.slicer.tier.07", "Advanced Slicing Machine VI", 7, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(638, "basicmachine.slicer.tier.08", "Advanced Slicing Machine VII", 8, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(641, "basicmachine.sifter.tier.01", "Basic Sifting Machine", 1, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(642, "basicmachine.sifter.tier.02", "Advanced Sifting Machine", 2, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(643, "basicmachine.sifter.tier.03", "Advanced Sifting Machine II", 3, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(644, "basicmachine.sifter.tier.04", "Advanced Sifting Machine III", 4, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(645, "basicmachine.sifter.tier.05", "Advanced Sifting Machine IV", 5, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(646, "basicmachine.sifter.tier.06", "Advanced Sifting Machine V", 6, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(647, "basicmachine.sifter.tier.07", "Advanced Sifting Machine VI", 7, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(648, "basicmachine.sifter.tier.08", "Advanced Sifting Machine VII", 8, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(651, "basicmachine.arcfurnace.tier.01", "Basic Arc Furnace", 1, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_MV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(652, "basicmachine.arcfurnace.tier.02", "Advanced Arc Furnace", 2, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_HV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(653, "basicmachine.arcfurnace.tier.03", "Advanced Arc Furnace II", 3, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_EV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(654, "basicmachine.arcfurnace.tier.04", "Advanced Arc Furnace III", 4, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_IV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(655, "basicmachine.arcfurnace.tier.05", "Advanced Arc Furnace IV", 5, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_LuV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(656, "basicmachine.arcfurnace.tier.06", "Advanced Arc Furnace V", 6, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_ZPM_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(657, "basicmachine.arcfurnace.tier.07", "Advanced Arc Furnace VI", 7, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_UV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(658, "basicmachine.arcfurnace.tier.08", "Advanced Arc Furnace VII", 8, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - - ItemList.Machine_LV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(661, "basicmachine.plasmaarcfurnace.tier.01", "Basic Plasma Arc Furnace", 1, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_MV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(662, "basicmachine.plasmaarcfurnace.tier.02", "Advanced Plasma Arc Furnace", 2, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_HV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(663, "basicmachine.plasmaarcfurnace.tier.03", "Advanced Plasma Arc Furnace II", 3, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_EV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(664, "basicmachine.plasmaarcfurnace.tier.04", "Advanced Plasma Arc Furnace III", 4, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_IV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(665, "basicmachine.plasmaarcfurnace.tier.05", "Advanced Plasma Arc Furnace IV", 5, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_LuV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(666, "basicmachine.plasmaarcfurnace.tier.06", "Advanced Plasma Arc Furnace V", 6, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_ZPM_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(667, "basicmachine.plasmaarcfurnace.tier.07", "Advanced Plasma Arc Furnace VI", 7, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_UV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(668, "basicmachine.plasmaarcfurnace.tier.08", "Advanced Plasma Arc Furnace VII", 8, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - - ItemList.Machine_LV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(671, "basicmachine.e_oven.tier.01", "Basic Electric Oven", 1, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_MV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(672, "basicmachine.e_oven.tier.02", "Advanced Electric Oven", 2, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_HV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(673, "basicmachine.e_oven.tier.03", "Advanced Electric Oven II", 3, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_EV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(674, "basicmachine.e_oven.tier.04", "Advanced Electric Oven III", 4, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_IV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(675, "basicmachine.e_oven.tier.05", "Advanced Electric Oven IV", 5, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_LuV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(676, "basicmachine.e_oven.tier.06", "Advanced Electric Oven V", 6, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_ZPM_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(677, "basicmachine.e_oven.tier.07", "Advanced Electric Oven VI", 7, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_UV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(678, "basicmachine.e_oven.tier.08", "Advanced Electric Oven VII", 8, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_LV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(501, "basicmachine.fermenter.tier.01", "Basic Fermenter", 1, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(502, "basicmachine.fermenter.tier.02", "Advanced Fermenter", 2, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(503, "basicmachine.fermenter.tier.03", "Advanced Fermenter II", 3, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(504, "basicmachine.fermenter.tier.04", "Advanced Fermenter III", 4, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(505, "basicmachine.fermenter.tier.05", "Advanced Fermenter IV", 5, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(506, "basicmachine.fermenter.tier.06", "Advanced Fermenter V", 6, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(507, "basicmachine.fermenter.tier.07", "Advanced Fermenter VI", 7, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(508, "basicmachine.fermenter.tier.08", "Advanced Fermenter VII", 8, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(511, "basicmachine.fluidextractor.tier.01", "Basic Fluid Extractor", 1, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(512, "basicmachine.fluidextractor.tier.02", "Advanced Fluid Extractor", 2, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(513, "basicmachine.fluidextractor.tier.03", "Advanced Fluid Extractor II", 3, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(514, "basicmachine.fluidextractor.tier.04", "Advanced Fluid Extractor III", 4, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(515, "basicmachine.fluidextractor.tier.05", "Advanced Fluid Extractor IV", 5, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(516, "basicmachine.fluidextractor.tier.06", "Advanced Fluid Extractor V", 6, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(517, "basicmachine.fluidextractor.tier.07", "Advanced Fluid Extractor VI", 7, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(518, "basicmachine.fluidextractor.tier.08", "Advanced Fluid Extractor VII", 8, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(521, "basicmachine.fluidsolidifier.tier.01", "Basic Fluid Solidifier", 1, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_MV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(522, "basicmachine.fluidsolidifier.tier.02", "Advanced Fluid Solidifier", 2, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_HV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(523, "basicmachine.fluidsolidifier.tier.03", "Advanced Fluid Solidifier II", 3, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_EV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(524, "basicmachine.fluidsolidifier.tier.04", "Advanced Fluid Solidifier III", 4, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_IV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(525, "basicmachine.fluidsolidifier.tier.05", "Advanced Fluid Solidifier IV", 5, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_LuV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(526, "basicmachine.fluidsolidifier.tier.06", "Advanced Fluid Solidifier V", 6, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_ZPM_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(527, "basicmachine.fluidsolidifier.tier.07", "Advanced Fluid Solidifier VI", 7, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_UV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(528, "basicmachine.fluidsolidifier.tier.08", "Advanced Fluid Solidifier VII", 8, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + + ItemList.Machine_LV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(531, "basicmachine.distillery.tier.01", "Basic Distillery", 1, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(532, "basicmachine.distillery.tier.02", "Advanced Distillery", 2, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(533, "basicmachine.distillery.tier.03", "Advanced Distillery II", 3, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(534, "basicmachine.distillery.tier.04", "Advanced Distillery III", 4, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(535, "basicmachine.distillery.tier.05", "Advanced Distillery IV", 5, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(536, "basicmachine.distillery.tier.06", "Advanced Distillery V", 6, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(537, "basicmachine.distillery.tier.07", "Advanced Distillery VI", 7, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(538, "basicmachine.distillery.tier.08", "Advanced Distillery VII", 8, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(541, "basicmachine.chemicalbath.tier.01", "Basic Chemical Bath", 1, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(542, "basicmachine.chemicalbath.tier.02", "Advanced Chemical Bath", 2, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(543, "basicmachine.chemicalbath.tier.03", "Advanced Chemical Bath II", 3, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(544, "basicmachine.chemicalbath.tier.04", "Advanced Chemical Bath III", 4, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(545, "basicmachine.chemicalbath.tier.05", "Advanced Chemical Bath IV", 5, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(546, "basicmachine.chemicalbath.tier.06", "Advanced Chemical Bath V", 6, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(547, "basicmachine.chemicalbath.tier.07", "Advanced Chemical Bath VI", 7, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(548, "basicmachine.chemicalbath.tier.08", "Advanced Chemical Bath VII", 8, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(551, "basicmachine.polarizer.tier.01", "Basic Polarizer", 1, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(552, "basicmachine.polarizer.tier.02", "Advanced Polarizer", 2, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(553, "basicmachine.polarizer.tier.03", "Advanced Polarizer II", 3, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(554, "basicmachine.polarizer.tier.04", "Advanced Polarizer III", 4, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(555, "basicmachine.polarizer.tier.05", "Advanced Polarizer IV", 5, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(556, "basicmachine.polarizer.tier.06", "Advanced Polarizer V", 6, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(557, "basicmachine.polarizer.tier.07", "Advanced Polarizer VI", 7, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(558, "basicmachine.polarizer.tier.08", "Advanced Polarizer VII", 8, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(561, "basicmachine.electromagneticseparator.tier.01", "Basic Electromagnetic Separator", 1, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(562, "basicmachine.electromagneticseparator.tier.02", "Advanced Electromagnetic Separator", 2, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(563, "basicmachine.electromagneticseparator.tier.03", "Advanced Electromagnetic Separator II", 3, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(564, "basicmachine.electromagneticseparator.tier.04", "Advanced Electromagnetic Separator III", 4, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(565, "basicmachine.electromagneticseparator.tier.05", "Advanced Electromagnetic Separator IV", 5, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(566, "basicmachine.electromagneticseparator.tier.06", "Advanced Electromagnetic Separator V", 6, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(567, "basicmachine.electromagneticseparator.tier.07", "Advanced Electromagnetic Separator VI", 7, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(568, "basicmachine.electromagneticseparator.tier.08", "Advanced Electromagnetic Separator VII", 8, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(571, "basicmachine.autoclave.tier.01", "Basic Autoclave", 1, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(572, "basicmachine.autoclave.tier.02", "Advanced Autoclave", 2, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(573, "basicmachine.autoclave.tier.03", "Advanced Autoclave II", 3, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(574, "basicmachine.autoclave.tier.04", "Advanced Autoclave III", 4, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(575, "basicmachine.autoclave.tier.05", "Advanced Autoclave IV", 5, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(576, "basicmachine.autoclave.tier.06", "Advanced Autoclave V", 6, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(577, "basicmachine.autoclave.tier.07", "Advanced Autoclave VI", 7, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(578, "basicmachine.autoclave.tier.08", "Advanced Autoclave VII", 8, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(581, "basicmachine.mixer.tier.01", "Basic Mixer", 1, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(582, "basicmachine.mixer.tier.02", "Advanced Mixer", 2, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(583, "basicmachine.mixer.tier.03", "Advanced Mixer II", 3, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(584, "basicmachine.mixer.tier.04", "Advanced Mixer III", 4, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(585, "basicmachine.mixer.tier.05", "Advanced Mixer IV", 5, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(586, "basicmachine.mixer.tier.06", "Advanced Mixer V", 6, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(587, "basicmachine.mixer.tier.07", "Advanced Mixer VI", 7, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(588, "basicmachine.mixer.tier.08", "Advanced Mixer VII", 8, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(591, "basicmachine.laserengraver.tier.01", "Basic Precision Laser Engraver", 1, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(592, "basicmachine.laserengraver.tier.02", "Advanced Precision Laser Engraver", 2, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(593, "basicmachine.laserengraver.tier.03", "Advanced Precision Laser Engraver II", 3, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(594, "basicmachine.laserengraver.tier.04", "Advanced Precision Laser Engraver III", 4, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(595, "basicmachine.laserengraver.tier.05", "Advanced Precision Laser Engraver IV", 5, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(596, "basicmachine.laserengraver.tier.06", "Advanced Precision Laser Engraver V", 6, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(597, "basicmachine.laserengraver.tier.07", "Advanced Precision Laser Engraver VI", 7, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(598, "basicmachine.laserengraver.tier.08", "Advanced Precision Laser Engraver VII", 8, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(601, "basicmachine.press.tier.01", "Basic Forming Press", 1, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(602, "basicmachine.press.tier.02", "Advanced Forming Press", 2, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(603, "basicmachine.press.tier.03", "Advanced Forming Press II", 3, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(604, "basicmachine.press.tier.04", "Advanced Forming Press III", 4, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(605, "basicmachine.press.tier.05", "Advanced Forming Press IV", 5, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(606, "basicmachine.press.tier.06", "Advanced Forming Press V", 6, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(607, "basicmachine.press.tier.07", "Advanced Forming Press VI", 7, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(608, "basicmachine.press.tier.08", "Advanced Forming Press VII", 8, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(611, "basicmachine.hammer.tier.01", "Basic Forge Hammer", 1, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_MV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(612, "basicmachine.hammer.tier.02", "Advanced Forge Hammer", 2, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_HV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(613, "basicmachine.hammer.tier.03", "Advanced Forge Hammer II", 3, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_EV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(614, "basicmachine.hammer.tier.04", "Advanced Forge Hammer III", 4, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_IV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(615, "basicmachine.hammer.tier.05", "Advanced Forge Hammer IV", 5, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_LuV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(616, "basicmachine.hammer.tier.06", "Advanced Forge Hammer V", 6, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_ZPM_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(617, "basicmachine.hammer.tier.07", "Advanced Forge Hammer VI", 7, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_UV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(618, "basicmachine.hammer.tier.08", "Advanced Forge Hammer VII", 8, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + + ItemList.Machine_LV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(621, "basicmachine.fluidheater.tier.01", "Basic Fluid Heater", 1, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(622, "basicmachine.fluidheater.tier.02", "Advanced Fluid Heater", 2, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(623, "basicmachine.fluidheater.tier.03", "Advanced Fluid Heater II", 3, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(624, "basicmachine.fluidheater.tier.04", "Advanced Fluid Heater III", 4, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(625, "basicmachine.fluidheater.tier.05", "Advanced Fluid Heater IV", 5, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(626, "basicmachine.fluidheater.tier.06", "Advanced Fluid Heater V", 6, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(627, "basicmachine.fluidheater.tier.07", "Advanced Fluid Heater VI", 7, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(628, "basicmachine.fluidheater.tier.08", "Advanced Fluid Heater VII", 8, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(631, "basicmachine.slicer.tier.01", "Basic Slicing Machine", 1, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(632, "basicmachine.slicer.tier.02", "Advanced Slicing Machine", 2, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(633, "basicmachine.slicer.tier.03", "Advanced Slicing Machine II", 3, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(634, "basicmachine.slicer.tier.04", "Advanced Slicing Machine III", 4, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(635, "basicmachine.slicer.tier.05", "Advanced Slicing Machine IV", 5, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(636, "basicmachine.slicer.tier.06", "Advanced Slicing Machine V", 6, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(637, "basicmachine.slicer.tier.07", "Advanced Slicing Machine VI", 7, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(638, "basicmachine.slicer.tier.08", "Advanced Slicing Machine VII", 8, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(641, "basicmachine.sifter.tier.01", "Basic Sifting Machine", 1, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(642, "basicmachine.sifter.tier.02", "Advanced Sifting Machine", 2, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(643, "basicmachine.sifter.tier.03", "Advanced Sifting Machine II", 3, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(644, "basicmachine.sifter.tier.04", "Advanced Sifting Machine III", 4, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(645, "basicmachine.sifter.tier.05", "Advanced Sifting Machine IV", 5, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(646, "basicmachine.sifter.tier.06", "Advanced Sifting Machine V", 6, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(647, "basicmachine.sifter.tier.07", "Advanced Sifting Machine VI", 7, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(648, "basicmachine.sifter.tier.08", "Advanced Sifting Machine VII", 8, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(651, "basicmachine.arcfurnace.tier.01", "Basic Arc Furnace", 1, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_MV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(652, "basicmachine.arcfurnace.tier.02", "Advanced Arc Furnace", 2, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_HV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(653, "basicmachine.arcfurnace.tier.03", "Advanced Arc Furnace II", 3, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_EV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(654, "basicmachine.arcfurnace.tier.04", "Advanced Arc Furnace III", 4, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_IV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(655, "basicmachine.arcfurnace.tier.05", "Advanced Arc Furnace IV", 5, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_LuV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(656, "basicmachine.arcfurnace.tier.06", "Advanced Arc Furnace V", 6, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_ZPM_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(657, "basicmachine.arcfurnace.tier.07", "Advanced Arc Furnace VI", 7, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_UV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(658, "basicmachine.arcfurnace.tier.08", "Advanced Arc Furnace VII", 8, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + + ItemList.Machine_LV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(661, "basicmachine.plasmaarcfurnace.tier.01", "Basic Plasma Arc Furnace", 1, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_MV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(662, "basicmachine.plasmaarcfurnace.tier.02", "Advanced Plasma Arc Furnace", 2, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_HV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(663, "basicmachine.plasmaarcfurnace.tier.03", "Advanced Plasma Arc Furnace II", 3, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_EV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(664, "basicmachine.plasmaarcfurnace.tier.04", "Advanced Plasma Arc Furnace III", 4, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_IV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(665, "basicmachine.plasmaarcfurnace.tier.05", "Advanced Plasma Arc Furnace IV", 5, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_LuV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(666, "basicmachine.plasmaarcfurnace.tier.06", "Advanced Plasma Arc Furnace V", 6, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_ZPM_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(667, "basicmachine.plasmaarcfurnace.tier.07", "Advanced Plasma Arc Furnace VI", 7, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_UV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(668, "basicmachine.plasmaarcfurnace.tier.08", "Advanced Plasma Arc Furnace VII", 8, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + + ItemList.Machine_LV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(671, "basicmachine.e_oven.tier.01", "Basic Electric Oven", 1, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_MV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(672, "basicmachine.e_oven.tier.02", "Advanced Electric Oven", 2, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_HV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(673, "basicmachine.e_oven.tier.03", "Advanced Electric Oven II", 3, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_EV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(674, "basicmachine.e_oven.tier.04", "Advanced Electric Oven III", 4, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_IV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(675, "basicmachine.e_oven.tier.05", "Advanced Electric Oven IV", 5, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_LuV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(676, "basicmachine.e_oven.tier.06", "Advanced Electric Oven V", 6, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_ZPM_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(677, "basicmachine.e_oven.tier.07", "Advanced Electric Oven VI", 7, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_UV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(678, "basicmachine.e_oven.tier.08", "Advanced Electric Oven VII", 8, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); ItemList.Machine_LV_Miner.set(new GT_MetaTileEntity_Miner(679, "basicmachine.miner.tier.01", "Basic Miner", 1).getStackForm(1L)); ItemList.Machine_MV_Miner.set(new GT_MetaTileEntity_Miner(680, "basicmachine.miner.tier.02", "Advanced Miner", 2).getStackForm(1L)); @@ -1334,14 +1334,14 @@ private static void run3() { } } - ItemList.Machine_LV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1180, "basicmachine.circuitassembler.tier.01", "Basic Circuit Assembling Machine", 1, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_MV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1181, "basicmachine.circuitassembler.tier.02", "Advanced Circuit Assembling Machine", 2, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_HV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1182, "basicmachine.circuitassembler.tier.03", "Advanced Circuit Assembling Machine II", 3, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_EV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1183, "basicmachine.circuitassembler.tier.04", "Advanced Circuit Assembling Machine III", 4, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_IV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1184, "basicmachine.circuitassembler.tier.05", "Advanced Circuit Assembling Machine IV", 5, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_LuV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(1185, "basicmachine.circuitassembler.tier.06", "Advanced Circuit Assembling Machine V", 6, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_ZPM_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(1186, "basicmachine.circuitassembler.tier.07", "Advanced Circuit Assembling Machine VI", 7, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_UV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1187, "basicmachine.circuitassembler.tier.08", "Advanced Circuit Assembling Machine VII", 8, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_LV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1180, "basicmachine.circuitassembler.tier.01", "Basic Circuit Assembling Machine", 1, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_MV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1181, "basicmachine.circuitassembler.tier.02", "Advanced Circuit Assembling Machine", 2, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_HV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1182, "basicmachine.circuitassembler.tier.03", "Advanced Circuit Assembling Machine II", 3, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_EV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1183, "basicmachine.circuitassembler.tier.04", "Advanced Circuit Assembling Machine III", 4, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_IV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1184, "basicmachine.circuitassembler.tier.05", "Advanced Circuit Assembling Machine IV", 5, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_LuV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(1185, "basicmachine.circuitassembler.tier.06", "Advanced Circuit Assembling Machine V", 6, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_ZPM_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(1186, "basicmachine.circuitassembler.tier.07", "Advanced Circuit Assembling Machine VI", 7, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_UV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1187, "basicmachine.circuitassembler.tier.08", "Advanced Circuit Assembling Machine VII", 8, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); ItemList.Machine_HV_LightningRod.set(new GT_MetaTileEntity_LightningRod(1174, "basicgenerator.lightningrod.03", "Lightning Rod", 3).getStackForm(1)); GT_ModHandler.addCraftingRecipe(ItemList.Machine_HV_LightningRod.get(1L, new Object[0]), bitsd, new Object[]{"LTL", "TMT", "LTL", 'M', ItemList.Hull_LuV, 'L', ItemList.Energy_LapotronicOrb, 'T', ItemList.Transformer_ZPM_LuV}); diff --git a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java index e0c616759f..61424c314a 100644 --- a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java +++ b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java @@ -15,6 +15,8 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.gui.GT_GUIContainer_BasicMachine; import gregtech.api.objects.ItemData; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -45,9 +47,9 @@ public class GT_NEI_DefaultHandler GuiContainerManager.addTooltipHandler(new GT_RectHandler()); } - protected final GT_Recipe.GT_Recipe_Map mRecipeMap; + protected final GT_RecipeMap mRecipeMap; - public GT_NEI_DefaultHandler(GT_Recipe.GT_Recipe_Map aRecipeMap) { + public GT_NEI_DefaultHandler(GT_RecipeMap aRecipeMap) { this.mRecipeMap = aRecipeMap; this.transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(65, 13, 36, 18), getOverlayIdentifier(), new Object[0])); if (!NEI_GT_Config.sIsAdded) { @@ -57,8 +59,8 @@ public GT_NEI_DefaultHandler(GT_Recipe.GT_Recipe_Map aRecipeMap) { } } - public List getSortedRecipes() { - List result = new ArrayList<>(this.mRecipeMap.mRecipeList); + public List getSortedRecipes() { + List result = new ArrayList<>(this.mRecipeMap.mRecipeList); Collections.sort(result); return result; } @@ -73,7 +75,7 @@ public TemplateRecipeHandler newInstance() { public void loadCraftingRecipes(String outputId, Object... results) { if (outputId.equals(getOverlayIdentifier())) { - for (GT_Recipe tRecipe : getSortedRecipes()) { + for (GT_MachineRecipe tRecipe : getSortedRecipes()) { if (!tRecipe.mHidden) { this.arecipes.add(new CachedDefaultRecipe(tRecipe)); } @@ -103,7 +105,7 @@ public void loadCraftingRecipes(ItemStack aResult) { } } } - for (GT_Recipe tRecipe : getSortedRecipes()) { + for (GT_MachineRecipe tRecipe : getSortedRecipes()) { if (!tRecipe.mHidden) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tResults) { @@ -137,7 +139,7 @@ public void loadUsageRecipes(ItemStack aInput) { } } } - for (GT_Recipe tRecipe : getSortedRecipes()) { + for (GT_MachineRecipe tRecipe : getSortedRecipes()) { if (!tRecipe.mHidden) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tInputs) { @@ -371,11 +373,11 @@ public void generatePermutations() { public class CachedDefaultRecipe extends TemplateRecipeHandler.CachedRecipe { - public final GT_Recipe mRecipe; + public final GT_MachineRecipe mRecipe; public final List mOutputs; public final List mInputs; - public CachedDefaultRecipe(GT_Recipe aRecipe) { + public CachedDefaultRecipe(GT_MachineRecipe aRecipe) { super(); this.mRecipe = aRecipe; @@ -389,7 +391,7 @@ public CachedDefaultRecipe(GT_Recipe aRecipe) { mInputs = new ArrayList(); int tStartIndex = 0; - switch (GT_NEI_DefaultHandler.this.mRecipeMap.mUsualInputCount) { + switch (GT_NEI_DefaultHandler.this.mRecipeMap.mInputSlots) { case 0: break; case 1: @@ -594,7 +596,7 @@ public CachedDefaultRecipe(GT_Recipe aRecipe) { this.mInputs.add(new FixedPositionedStack(aRecipe.mSpecialItems, 120, 52)); } tStartIndex = 0; - switch (GT_NEI_DefaultHandler.this.mRecipeMap.mUsualOutputCount) { + switch (GT_NEI_DefaultHandler.this.mRecipeMap.mOutputSlots) { case 0: break; case 1: diff --git a/src/main/java/gregtech/nei/NEI_GT_Config.java b/src/main/java/gregtech/nei/NEI_GT_Config.java index 3caaaa0911..e65aac8083 100644 --- a/src/main/java/gregtech/nei/NEI_GT_Config.java +++ b/src/main/java/gregtech/nei/NEI_GT_Config.java @@ -2,6 +2,7 @@ import codechicken.nei.api.IConfigureNEI; import cpw.mods.fml.common.FMLCommonHandler; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class NEI_GT_Config @@ -11,7 +12,7 @@ public class NEI_GT_Config public void loadConfig() { sIsAdded = false; - for (GT_Recipe.GT_Recipe_Map tMap : GT_Recipe.GT_Recipe_Map.sMappings) { + for (GT_RecipeMap tMap : GT_RecipeMap.sMappings) { if (tMap.mNEIAllowed) { new GT_NEI_DefaultHandler(tMap); } From 9ed64abd901ed11a82d3ee10edb3b3e91fe5ae16 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Thu, 5 Nov 2020 22:43:21 -0800 Subject: [PATCH 07/21] Migrated the rest of the machines to the new recipe system. --- src/main/java/gregtech/GT_Mod.java | 89 ++++++++++--------- .../GT_MetaTileEntity_BasicGenerator.java | 15 ++-- .../GT_MetaTileEntity_BasicMachine.java | 5 +- ...MetaTileEntity_BasicMachine_GT_Recipe.java | 1 - .../GT_MetaTileEntity_MultiBlockBase.java | 1 - .../api/recipes/GT_MachineRecipe.java | 10 ++- .../gregtech/api/recipes/GT_RecipeInput.java | 20 +++-- .../api/recipes/GT_RecipeInputAlts.java | 7 ++ .../api/recipes/GT_RecipeInputOredict.java | 7 +- .../gregtech/api/recipes/GT_RecipeMap.java | 28 +++++- .../gregtech/api/recipes/GT_RecipeOutput.java | 25 ++++-- .../java/gregtech/api/util/GT_ModHandler.java | 5 +- src/main/java/gregtech/common/GT_Client.java | 4 +- .../common/GT_MachineRecipeAdder.java | 2 +- src/main/java/gregtech/common/GT_Proxy.java | 3 +- .../items/GT_MetaGenerated_Item_01.java | 6 +- .../GT_MetaTileEntity_DieselGenerator.java | 5 +- ...T_MetaTileEntity_FluidNaquadahReactor.java | 5 +- .../GT_MetaTileEntity_GasTurbine.java | 5 +- ...T_MetaTileEntity_MagicEnergyConverter.java | 5 +- ..._MetaTileEntity_MagicalEnergyAbsorber.java | 5 +- .../GT_MetaTileEntity_PlasmaGenerator.java | 5 +- ...T_MetaTileEntity_SolidNaquadahReactor.java | 5 +- .../GT_MetaTileEntity_SteamTurbine.java | 3 +- .../basic/GT_MetaTileEntity_Boxinator.java | 7 +- .../basic/GT_MetaTileEntity_Printer.java | 3 +- ...etaTileEntity_AdvancedProcessingArray.java | 5 +- .../multi/GT_MetaTileEntity_DieselEngine.java | 8 +- .../GT_MetaTileEntity_FusionComputer.java | 8 +- .../multi/GT_MetaTileEntity_LargeBoiler.java | 10 ++- ...T_MetaTileEntity_LargeChemicalReactor.java | 8 +- .../GT_MetaTileEntity_LargeTurbine_Gas.java | 11 +-- ...GT_MetaTileEntity_LargeTurbine_Plasma.java | 11 +-- .../multi/GT_MetaTileEntity_OilCracker.java | 6 +- ...T_MetaTileEntity_OreDrillingPlantBase.java | 6 +- ..._MetaTileEntity_PrimitiveBlastFurnace.java | 8 +- .../GT_MetaTileEntity_ProcessingArray.java | 4 +- .../multi/GT_MetaTileEntity_PyrolyseOven.java | 4 +- .../GT_MetaTileEntity_Macerator_Bronze.java | 5 +- .../GT_MetaTileEntity_Macerator_Steel.java | 5 +- .../common/tools/GT_Tool_HardHammer.java | 8 +- .../common/tools/GT_Tool_JackHammer.java | 6 +- .../gregtech/loaders/load/GT_FuelLoader.java | 16 +++- .../loaders/misc/GT_Achievements.java | 10 ++- .../loaders/oreprocessing/ProcessingOre.java | 2 +- .../gregtech/nei/GT_NEI_AssLineHandler.java | 18 ++-- src/main/java/gregtech/nei/NEI_GT_Config.java | 2 +- 47 files changed, 272 insertions(+), 165 deletions(-) diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index 6ad084226f..743570717a 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -14,6 +14,7 @@ import gregtech.api.objects.ItemData; import gregtech.api.objects.MaterialStack; import gregtech.api.objects.XSTR; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import gregtech.common.GT_DummyWorld; import gregtech.common.GT_MachineRecipeAdder; @@ -666,11 +667,11 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { //GT_Log.out.println("GT_Mod: sRodMaterialList cycles: " + GT_RecipeRegistrator.sRodMaterialList_cycles); //Add default IC2 recipe to GT - GT_ModHandler.addIC2RecipesToGT(aMaceratorRecipeList, GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(aCompressorRecipeList, GT_Recipe.GT_Recipe_Map.sCompressorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(aExtractorRecipeList, GT_Recipe.GT_Recipe_Map.sExtractorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(aOreWashingRecipeList, GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, false, true, true); - GT_ModHandler.addIC2RecipesToGT(aThermalCentrifugeRecipeList, GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(aMaceratorRecipeList, GT_RecipeMap.sMaceratorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(aCompressorRecipeList, GT_RecipeMap.sCompressorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(aExtractorRecipeList, GT_RecipeMap.sExtractorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(aOreWashingRecipeList, GT_RecipeMap.sOreWasherRecipes, false, true, true); + GT_ModHandler.addIC2RecipesToGT(aThermalCentrifugeRecipeList, GT_RecipeMap.sThermalCentrifugeRecipes, true, true, true); if (GT_Values.D1) { IRecipe tRecipe; @@ -688,11 +689,11 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { ItemStack ILdata0 = ItemList.Bottle_Empty.get(1L, new Object[0]); for (FluidContainerRegistry.FluidContainerData tData : FluidContainerRegistry.getRegisteredFluidContainerData()) { if ((tData.filledContainer.getItem() == Items.potionitem) && (tData.filledContainer.getItemDamage() == 0)) { - GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{ILdata0}, new ItemStack[]{ISdata0}, null, new FluidStack[]{Materials.Water.getFluid(250L)}, null, 4, 1, 0); - GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{ISdata0}, new ItemStack[]{ILdata0}, null, null, null, 4, 1, 0); + GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{ILdata0}, new ItemStack[]{ISdata0}, null, new FluidStack[]{Materials.Water.getFluid(250L)}, null, 4, 1, 0); + GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{ISdata0}, new ItemStack[]{ILdata0}, null, null, null, 4, 1, 0); } else { - GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{tData.emptyContainer}, new ItemStack[]{tData.filledContainer}, null, new FluidStack[]{tData.fluid}, null, tData.fluid.amount / 62, 1, 0); - GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{tData.filledContainer}, new ItemStack[]{GT_Utility.getContainerItem(tData.filledContainer, true)}, null, null, new FluidStack[]{tData.fluid}, tData.fluid.amount / 62, 1, 0); + GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{tData.emptyContainer}, new ItemStack[]{tData.filledContainer}, null, new FluidStack[]{tData.fluid}, null, tData.fluid.amount / 62, 1, 0); + GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{tData.filledContainer}, new ItemStack[]{GT_Utility.getContainerItem(tData.filledContainer, true)}, null, null, new FluidStack[]{tData.fluid}, tData.fluid.amount / 62, 1, 0); } } try { @@ -706,7 +707,7 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { tOutputs[i] = entry.getKey().copy(); i++; } - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe(true, new ItemStack[]{tRecipe.getInput()}, tOutputs, null, tChances, null, null, 128, 5, 0); + GT_RecipeMap.sCentrifugeRecipes.addRecipe(true, new ItemStack[]{tRecipe.getInput()}, tOutputs, null, tChances, null, null, 128, 5, 0); } } catch (Throwable e) { if (GT_Values.D1) { @@ -716,7 +717,7 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { try { for (ISqueezerRecipe tRecipe : RecipeManagers.squeezerManager.recipes()) { if ((tRecipe.getResources().length == 1) && (tRecipe.getFluidOutput() != null)) { - GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(true, new ItemStack[]{tRecipe.getResources()[0]}, new ItemStack[]{tRecipe.getRemnants()}, null, new int[]{(int) (tRecipe.getRemnantsChance() * 10000)}, null, new FluidStack[]{tRecipe.getFluidOutput()}, 400, 2, 0); + GT_RecipeMap.sFluidExtractionRecipes.addRecipe(true, new ItemStack[]{tRecipe.getResources()[0]}, new ItemStack[]{tRecipe.getRemnants()}, null, new int[]{(int) (tRecipe.getRemnantsChance() * 10000)}, null, new FluidStack[]{tRecipe.getFluidOutput()}, 400, 2, 0); } } } catch (Throwable e) { @@ -826,40 +827,40 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { } catch (Throwable e) {e.printStackTrace(GT_Log.err);} GT_Log.out.println("GT_Mod: Adding Fake Recipes for NEI"); if (ItemList.FR_Bee_Drone.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Drone.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Drone.getWithName(1L, "Scanned Drone", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Drone.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Drone.getWithName(1L, "Scanned Drone", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Bee_Princess.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Princess.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Princess.getWithName(1L, "Scanned Princess", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Princess.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Princess.getWithName(1L, "Scanned Princess", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Bee_Queen.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Queen.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Queen.getWithName(1L, "Scanned Queen", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Queen.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Queen.getWithName(1L, "Scanned Queen", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Tree_Sapling.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Tree_Sapling.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Tree_Sapling.getWithName(1L, "Scanned Sapling", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Tree_Sapling.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Tree_Sapling.getWithName(1L, "Scanned Sapling", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Butterfly.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Butterfly.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Butterfly.getWithName(1L, "Scanned Butterfly", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Butterfly.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Butterfly.getWithName(1L, "Scanned Butterfly", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Larvae.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Larvae.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Larvae.getWithName(1L, "Scanned Larvae", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Larvae.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Larvae.getWithName(1L, "Scanned Larvae", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Serum.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Serum.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Serum.getWithName(1L, "Scanned Serum", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Serum.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Serum.getWithName(1L, "Scanned Serum", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Caterpillar.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Caterpillar.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Caterpillar.getWithName(1L, "Scanned Caterpillar", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Caterpillar.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Caterpillar.getWithName(1L, "Scanned Caterpillar", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_PollenFertile.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_PollenFertile.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_PollenFertile.getWithName(1L, "Scanned Pollen", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_PollenFertile.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_PollenFertile.getWithName(1L, "Scanned Pollen", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.IC2_Crop_Seeds.get(1L, new Object[0]) != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.IC2_Crop_Seeds.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1L, "Scanned Seeds", new Object[0])}, null, null, null, 160, 8, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.IC2_Crop_Seeds.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1L, "Scanned Seeds", new Object[0])}, null, null, null, 160, 8, 0); } - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{new ItemStack(Items.written_book, 1, 32767)}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Scanned Book Data", new Object[0])}, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0); - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{new ItemStack(Items.filled_map, 1, 32767)}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Scanned Map Data", new Object[0])}, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0); - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataOrb.getWithName(1L, "Orb to overwrite", new Object[0])}, new ItemStack[]{ItemList.Tool_DataOrb.getWithName(1L, "Copy of the Orb", new Object[0])}, ItemList.Tool_DataOrb.getWithName(0L, "Orb to copy", new Object[0]), null, null, 512, 32, 0); - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Stick to overwrite", new Object[0])}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Copy of the Stick", new Object[0])}, ItemList.Tool_DataStick.getWithName(0L, "Stick to copy", new Object[0]), null, null, 128, 32, 0); - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Raw Prospection Data", new Object[0])}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Analyzed Prospection Data", new Object[0])}, null, null, null, 1000, 32, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{new ItemStack(Items.written_book, 1, 32767)}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Scanned Book Data", new Object[0])}, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{new ItemStack(Items.filled_map, 1, 32767)}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Scanned Map Data", new Object[0])}, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataOrb.getWithName(1L, "Orb to overwrite", new Object[0])}, new ItemStack[]{ItemList.Tool_DataOrb.getWithName(1L, "Copy of the Orb", new Object[0])}, ItemList.Tool_DataOrb.getWithName(0L, "Orb to copy", new Object[0]), null, null, 512, 32, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Stick to overwrite", new Object[0])}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Copy of the Stick", new Object[0])}, ItemList.Tool_DataStick.getWithName(0L, "Stick to copy", new Object[0]), null, null, 128, 32, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Raw Prospection Data", new Object[0])}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Analyzed Prospection Data", new Object[0])}, null, null, null, 1000, 32, 0); for (Materials tMaterial : Materials.values()) { if ((tMaterial.mElement != null) && (!tMaterial.mElement.mIsIsotope) && (tMaterial != Materials.Magic) && (tMaterial.getMass() > 0L)) { ItemStack tOutput = ItemList.Tool_DataOrb.get(1L, new Object[0]); @@ -869,25 +870,25 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { ItemStack[] ISmat0 = new ItemStack[]{tInput}; ItemStack[] ISmat1 = new ItemStack[]{tOutput}; if (tInput != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, ISmat0, ISmat1, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int) (tMaterial.getMass() * 8192L), 32, 0); - GT_Recipe.GT_Recipe_Map.sReplicatorFakeRecipes.addFakeRecipe(false, null, ISmat0, ISmat1, new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int) (tMaterial.getMass() * 512L), 32, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, ISmat0, ISmat1, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int) (tMaterial.getMass() * 8192L), 32, 0); + GT_RecipeMap.sReplicatorFakeRecipes.addFakeRecipe(false, null, ISmat0, ISmat1, new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int) (tMaterial.getMass() * 512L), 32, 0); } tInput = GT_OreDictUnificator.get(OrePrefixes.cell, tMaterial, 1L); ISmat0 = new ItemStack[]{tInput}; if (tInput != null) { - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, ISmat0, ISmat1, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int) (tMaterial.getMass() * 8192L), 32, 0); - GT_Recipe.GT_Recipe_Map.sReplicatorFakeRecipes.addFakeRecipe(false, null, ISmat0, ISmat1, new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int) (tMaterial.getMass() * 512L), 32, 0); + GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, ISmat0, ISmat1, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int) (tMaterial.getMass() * 8192L), 32, 0); + GT_RecipeMap.sReplicatorFakeRecipes.addFakeRecipe(false, null, ISmat0, ISmat1, new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int) (tMaterial.getMass() * 512L), 32, 0); } } } - GT_Recipe.GT_Recipe_Map.sOrganicReplicatorFakeRecipes.addFakeRecipe(false,(new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1,"Instance seeds to duplicate(does not get consumed in progress)",new Object[0])}),(new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1,"Duplicated seeds; Chance equals efficiency")}),null, (new FluidStack[]{Materials.UUMatter.getFluid(1L)}),null,200,32,0); - if (!GT_MetaTileEntity_Massfabricator.sRequiresUUA) GT_Recipe.GT_Recipe_Map.sMassFabFakeRecipes.addFakeRecipe(false, null, null, null, null, new FluidStack[]{Materials.UUMatter.getFluid(1L)}, GT_MetaTileEntity_Massfabricator.sDurationMultiplier, 256, 0); - GT_Recipe.GT_Recipe_Map.sMassFabFakeRecipes.addFakeRecipe(false, null, null, null, new FluidStack[]{Materials.UUAmplifier.getFluid(GT_MetaTileEntity_Massfabricator.sUUAperUUM)}, new FluidStack[]{Materials.UUMatter.getFluid(1L)}, GT_MetaTileEntity_Massfabricator.sDurationMultiplier / GT_MetaTileEntity_Massfabricator.sUUASpeedBonus, 256, 0); - GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Side", new Object[0])}, new ItemStack[]{new ItemStack(Blocks.cobblestone, 1)}, null, null, null, 16, 32, 0); - GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Top", new Object[0])}, new ItemStack[]{new ItemStack(Blocks.stone, 1)}, null, null, null, 16, 32, 0); - GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)}, new ItemStack[]{new ItemStack(Blocks.obsidian, 1)}, null, null, null, 128, 32, 0); + GT_RecipeMap.sOrganicReplicatorFakeRecipes.addFakeRecipe(false,(new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1,"Instance seeds to duplicate(does not get consumed in progress)",new Object[0])}),(new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1,"Duplicated seeds; Chance equals efficiency")}),null, (new FluidStack[]{Materials.UUMatter.getFluid(1L)}),null,200,32,0); + if (!GT_MetaTileEntity_Massfabricator.sRequiresUUA) GT_RecipeMap.sMassFabFakeRecipes.addFakeRecipe(false, null, null, null, null, new FluidStack[]{Materials.UUMatter.getFluid(1L)}, GT_MetaTileEntity_Massfabricator.sDurationMultiplier, 256, 0); + GT_RecipeMap.sMassFabFakeRecipes.addFakeRecipe(false, null, null, null, new FluidStack[]{Materials.UUAmplifier.getFluid(GT_MetaTileEntity_Massfabricator.sUUAperUUM)}, new FluidStack[]{Materials.UUMatter.getFluid(1L)}, GT_MetaTileEntity_Massfabricator.sDurationMultiplier / GT_MetaTileEntity_Massfabricator.sUUASpeedBonus, 256, 0); + GT_RecipeMap.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Side", new Object[0])}, new ItemStack[]{new ItemStack(Blocks.cobblestone, 1)}, null, null, null, 16, 32, 0); + GT_RecipeMap.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Top", new Object[0])}, new ItemStack[]{new ItemStack(Blocks.stone, 1)}, null, null, null, 16, 32, 0); + GT_RecipeMap.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)}, new ItemStack[]{new ItemStack(Blocks.obsidian, 1)}, null, null, null, 128, 32, 0); if(GregTech_API.mOutputRF||GregTech_API.mInputRF){ GT_Utility.checkAvailabilities(); @@ -918,11 +919,11 @@ public void onServerStarting(FMLServerStartingEvent aEvent) { } catch (Throwable e) {e.printStackTrace(GT_Log.err);} gregtechproxy.onServerStarting(); //Check for more IC2 recipes on ServerStart to also catch MineTweaker additions - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getMaceratorRecipeList(), GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getCompressorRecipeList(), GT_Recipe.GT_Recipe_Map.sCompressorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getExtractorRecipeList(), GT_Recipe.GT_Recipe_Map.sExtractorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getOreWashingRecipeList(), GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, false, true, true); - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getThermalCentrifugeRecipeList(), GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getMaceratorRecipeList(), GT_RecipeMap.sMaceratorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getCompressorRecipeList(), GT_RecipeMap.sCompressorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getExtractorRecipeList(), GT_RecipeMap.sExtractorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getOreWashingRecipeList(), GT_RecipeMap.sOreWasherRecipes, false, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getThermalCentrifugeRecipeList(), GT_RecipeMap.sThermalCentrifugeRecipes, true, true, true); GT_Log.out.println("GT_Mod: Unificating outputs of all known Recipe Types."); ArrayList tStacks = new ArrayList(10000); GT_Log.out.println("GT_Mod: IC2 Machines"); @@ -1070,7 +1071,7 @@ public void onServerStarted(FMLServerStartedEvent aEvent) { @Mod.EventHandler public void onIDChangingEvent(FMLModIdMappingEvent aEvent) { GT_Utility.reInit(); - GT_Recipe.reInit(); + GT_RecipeMap.reInitAll(); try { for (Iterator i$ = GregTech_API.sItemStackMappings.iterator(); i$.hasNext(); ) { Map tMap = (Map) i$.next(); @@ -1195,7 +1196,7 @@ public void doSonictronSound(ItemStack aStack, World aWorld, double aX, double a } private void addSolidFakeLargeBoilerFuels(){ - GT_Recipe.GT_Recipe_Map.sLargeBoilerFakeFuels.addSolidRecipes( + GT_RecipeMap.sLargeBoilerFakeFuels.addSolidRecipes( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Charcoal, 1), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 1), GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 1), @@ -1220,7 +1221,7 @@ private void addSolidFakeLargeBoilerFuels(){ GT_OreDictUnificator.get(ItemList.Block_MSSFUEL.get(1, new Object[0])), GT_OreDictUnificator.get(OrePrefixes.rod, Materials.Blaze, 1)); if (Loader.isModLoaded("Thaumcraft")) { - GT_Recipe.GT_Recipe_Map.sLargeBoilerFakeFuels.addSolidRecipe(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1)); + GT_RecipeMap.sLargeBoilerFakeFuels.addSolidRecipe(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1)); } } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java index 81c513a921..cbe3db4aed 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java @@ -3,8 +3,9 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Pollution; import net.minecraft.entity.player.EntityPlayer; @@ -226,7 +227,7 @@ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { public abstract int getPollution(); - public abstract GT_Recipe_Map getRecipes(); + public abstract GT_RecipeMap getRecipes(); public abstract int getEfficiency(); @@ -237,9 +238,9 @@ public int consumedFluidPerOperation(FluidStack aLiquid) { public int getFuelValue(FluidStack aLiquid) { if (aLiquid == null || getRecipes() == null) return 0; FluidStack tLiquid; - Collection tRecipeList = getRecipes().mRecipeList; - if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList) - if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null) + Collection tRecipeList = getRecipes().mRecipeList; + if (tRecipeList != null) for (GT_MachineRecipe tFuel : tRecipeList) + if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0).get(0), true)) != null) if (aLiquid.isFluidEqual(tLiquid)) return (int) (((long) tFuel.mSpecialValue * getEfficiency() * consumedFluidPerOperation(tLiquid)) / 100); return 0; @@ -247,14 +248,14 @@ public int getFuelValue(FluidStack aLiquid) { public int getFuelValue(ItemStack aStack) { if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return 0; - GT_Recipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack); + GT_MachineRecipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), null, false, Long.MAX_VALUE, null, aStack); if (tFuel != null) return (int) ((tFuel.mSpecialValue * 1000L * getEfficiency()) / 100); return 0; } public ItemStack getEmptyContainer(ItemStack aStack) { if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return null; - GT_Recipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack); + GT_MachineRecipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), null, false, Long.MAX_VALUE, null, aStack); if (tFuel != null) return GT_Utility.copy(tFuel.getOutput(0)); return GT_Utility.getContainerItem(aStack, true); } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java index 0baa777fd8..57a022f645 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java @@ -15,7 +15,6 @@ import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; @@ -804,8 +803,8 @@ public int checkRecipe(boolean skipOC){ if (!tRecipe.isRecipeInputEqual(true, new FluidStack[]{getFillableStack()}, getAllInputs())) return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS; for (int i = 0; i < mOutputItems.length; i++) { - if (tRecipe.mOutputs[i] != null) { - mOutputItems[i] = tRecipe.mOutputs[i].getActualOutput(getBaseMetaTileEntity().getWorld().rand); + if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(i)) { + mOutputItems[i] = tRecipe.getOutput(i); } } if (tRecipe.mSpecialValue == -200) diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java index 41393c7eb4..1e9bec31dd 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java @@ -9,7 +9,6 @@ import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_ModHandler.RecipeBits; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.api.util.GT_OreDictUnificator; import ic2.core.Ic2Items; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index 0c26fb2130..68e5507521 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -15,7 +15,6 @@ import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Pollution; import gregtech.common.items.GT_MetaGenerated_Tool_01; diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index e259218e0e..0d207c16fc 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -2,15 +2,16 @@ import codechicken.nei.PositionedStack; import gregtech.api.objects.GT_FluidStack; -import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; + /** * Heavily modified version of GT_Recipe, which will eventually allow oredicted input and output as well as checking NBT tags, * and loading of XML (or maybe other format) recipes. @@ -219,7 +220,7 @@ public int getOutputChance(int aIndex) { if (aIndex < 0 || aIndex >= mOutputs.length || mOutputs[aIndex] == null) { return 0; } - return (int) (mOutputs[aIndex].getChance() * 10000); + return mOutputs[aIndex].getChance(); } /** @@ -447,4 +448,9 @@ public int compareTo(GT_MachineRecipe aRecipe) { return 0; } + @Override + public String toString() { + return String.format("Inputs: %s, Fluid Inputs: %s, Outputs: %s, Fluid Outputs: %s", Arrays.toString(mInputs), Arrays.toString(mFluidInputs), Arrays.toString(mOutputs), Arrays.toString(mFluidOutputs)); + } + } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java index 00fcc1a384..228fc6b01b 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -1,5 +1,7 @@ package gregtech.api.recipes; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; import java.util.Collections; import java.util.List; import net.minecraft.item.ItemStack; @@ -12,17 +14,11 @@ public class GT_RecipeInput { private final ItemStack mItemStack; - private final boolean mUseMeta; public GT_RecipeInput(ItemStack aItemStack) { - this(aItemStack, true); - } - - public GT_RecipeInput(ItemStack aItemStack, boolean aUseMeta) { mItemStack = aItemStack; - mUseMeta = aUseMeta; } - + public boolean inputMatches(ItemStack aItemStack) { return inputMatches(aItemStack, true); } @@ -30,8 +26,9 @@ public boolean inputMatches(ItemStack aItemStack) { public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { if (aItemStack == null) return false; if (!aIgnoreCount && aItemStack.stackSize < mItemStack.stackSize) return false; - if (aItemStack.getItem() != mItemStack.getItem()) return false; - if (mUseMeta && aItemStack.getItemDamage() != mItemStack.getItemDamage()) return false; + if (!GT_Utility.areStacksEqual(aItemStack, mItemStack, true)) { + return false; + } // Now check for NBT tags specified in recipe input. Extra tags specified on provided item but not in recipe can be ignored. if (mItemStack.stackTagCompound != null) { if (aItemStack.stackTagCompound == null) return false; @@ -58,6 +55,11 @@ public String getInputDescription() { return mItemStack.stackSize + " " + mItemStack.getDisplayName(); } + @Override + public String toString() { + return getInputDescription(); + } + public int getCount() { return mItemStack.stackSize; } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java index 356b4c91e7..9f291b74eb 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java @@ -64,12 +64,19 @@ public List getInputStacks() { public String getInputDescription() { StringBuilder rDescription = new StringBuilder(100); for (ItemStack tItem : mItems) { + rDescription.append(tItem.stackSize); + rDescription.append(' '); rDescription.append(tItem.getDisplayName()); rDescription.append(" or "); } return rDescription.substring(0, rDescription.length() - 4); } + @Override + public String toString() { + return getInputDescription(); + } + @Override public int getCount() { return mCount; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java index 7bc2ab3536..6b53bf394d 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java @@ -15,7 +15,7 @@ public class GT_RecipeInputOredict extends GT_RecipeInput { private int mCount; public GT_RecipeInputOredict(String aOredictName, int aCount) { - super(null, false); + super(null); mOredictName = aOredictName; mCount = aCount; } @@ -43,6 +43,11 @@ public String getInputDescription() { return mCount + " " + mOredictName; } + @Override + public String toString() { + return getInputDescription(); + } + @Override public int getCount() { return mCount; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index db1490d022..430ef9d03e 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -16,6 +16,7 @@ import gregtech.api.objects.ItemData; import gregtech.api.objects.MaterialStack; import gregtech.api.util.GT_LanguageManager; +import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -160,6 +161,8 @@ public class GT_RecipeMap { public GT_RecipeMap(Collection aRecipeList) { mRecipeList = aRecipeList; + GregTech_API.sFluidMappings.add(mRecipeFluidMap); + GregTech_API.sItemStackMappings.add(mRecipeItemMap); sMappings.add(this); } @@ -294,7 +297,7 @@ public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemSt public GT_MachineRecipe addRecipe(int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { return addRecipe(false, new ItemStack[0], new ItemStack[0], null, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); } - + public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); } @@ -335,6 +338,18 @@ public GT_MachineRecipe addFakeRecipe(boolean aCheckForCollisions, GT_MachineRec return addRecipe(aRecipe, aCheckForCollisions, true, hidden); } + public GT_MachineRecipe addFakeRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue).setFakeRecipe(true); + } + + public GT_MachineRecipe addFakeRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addFakeRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); + } + + public GT_MachineRecipe addFakeRecipe(int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addFakeRecipe(false, new ItemStack[0], new ItemStack[0], null, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); + } + public GT_MachineRecipe add(GT_MachineRecipe aRecipe) { mRecipeList.add(aRecipe); addToFluidMap(aRecipe); @@ -405,7 +420,7 @@ public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_Mach int tFluidCount = 0; int tItemCount = 0; if (GregTech_API.sPostloadFinished) { - if (mMinimalInputFluids > 0) { + if (mMinimalInputFluids > 0 || mMinimalTotalInputs > 0) { if (aFluids == null) { return null; } @@ -418,7 +433,7 @@ public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_Mach return null; } } - if (mMinimalInputItems > 0) { + if (mMinimalInputItems > 0 || mMinimalTotalInputs > 0) { if (aInputs == null) { return null; } @@ -520,6 +535,13 @@ public boolean containsInput(Fluid aFluid) { return aFluid != null && mRecipeFluidMap.containsKey(aFluid); } + public static void reInitAll() { + GT_Log.out.println("GT_Mod: Re-Unificating Recipes."); + for (GT_RecipeMap tMapEntry : GT_RecipeMap.sMappings) { + tMapEntry.reInit(); + } + } + public void reInit() { Map> tMap = mRecipeItemMap; if (tMap != null) { diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java index 06a1507cc2..a124b9870b 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java @@ -15,7 +15,7 @@ public class GT_RecipeOutput { private final ItemStack mItemStack; - private final float mChance; + private final int mChance; public GT_RecipeOutput(Block aBlock) { this(new ItemStack(aBlock, 1)); @@ -71,21 +71,22 @@ public GT_RecipeOutput(ItemStack aItemStack) { public GT_RecipeOutput(ItemStack aItemStack, float aChance) { mItemStack = aItemStack; - mChance = Math.min(1.0f, Math.max(aChance, 0.0f)); + mChance = Math.min(10000, Math.max((int)(aChance * 10000), 0)); } /** * Get the actual output, considering chances. * @param aRandom - the pseudo-random number generator object to use. * If the chance is 0 or 1 the random state will be unchanged. + * @return a stack of items, considering the chances. */ public ItemStack getActualOutput(Random aRandom) { int tCount = 0; - if (mChance == 1.0f) { + if (mChance == 10000) { tCount = mItemStack.stackSize; } else if (mChance > 0.0f) { for (int i = 0; i < mItemStack.stackSize; i++) { - if (aRandom.nextFloat() < mChance) { + if (aRandom.nextInt(10000) < mChance) { tCount++; } } @@ -102,7 +103,7 @@ public ItemStack getShownOutput() { return mItemStack.copy(); } - public float getChance() { + public int getChance() { return mChance; } @@ -113,4 +114,18 @@ public int getCount() { public void setCount(int aCount) { mItemStack.stackSize = aCount; } + + public String getOutputDescription() { + String rDescription = mItemStack.stackSize + " " + mItemStack.getDisplayName(); + if (mChance > 0 && mChance < 10000) { + rDescription += String.format(" (Chance: %d.%2d)", mChance / 100, mChance % 100); + } + return rDescription; + } + + @Override + public String toString() { + return getOutputDescription(); + } + } \ No newline at end of file diff --git a/src/main/java/gregtech/api/util/GT_ModHandler.java b/src/main/java/gregtech/api/util/GT_ModHandler.java index 1419ed562d..583fb45245 100644 --- a/src/main/java/gregtech/api/util/GT_ModHandler.java +++ b/src/main/java/gregtech/api/util/GT_ModHandler.java @@ -37,6 +37,7 @@ import gregtech.api.objects.GT_HashSet; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.ItemData; +import gregtech.api.recipes.GT_RecipeMap; import ic2.api.item.IBoxable; import ic2.api.item.IC2Items; import ic2.api.item.IElectricItem; @@ -773,14 +774,14 @@ public static boolean addOreToIngotSmeltingRecipe(ItemStack aInput, ItemStack aO /** * Adds GT versions of the IC2 recipes from the supplied IC2RecipeList. */ - public static void addIC2RecipesToGT(Map aIC2RecipeList, GT_Recipe.GT_Recipe_Map aGTRecipeMap, boolean aAddGTRecipe, boolean aRemoveIC2Recipe, boolean aExcludeGTIC2Items) { + public static void addIC2RecipesToGT(Map aIC2RecipeList, GT_RecipeMap aGTRecipeMap, boolean aAddGTRecipe, boolean aRemoveIC2Recipe, boolean aExcludeGTIC2Items) { Map aRecipesToRemove = new HashMap<>(); for (Iterator i$ = aIC2RecipeList.entrySet().iterator(); i$.hasNext(); ) { Entry tRecipe = (Map.Entry) i$.next(); if (((RecipeOutput) tRecipe.getValue()).items.size() > 0) { for (ItemStack tStack : ((IRecipeInput) tRecipe.getKey()).getInputs()) { if (GT_Utility.isStackValid(tStack)) { - if (aAddGTRecipe && (aGTRecipeMap.findRecipe(null, false, Long.MAX_VALUE, null, tStack) == null)) { + if (aAddGTRecipe && (aGTRecipeMap.findRecipe(null, null, false, Long.MAX_VALUE, null, tStack) == null)) { try{ if (aExcludeGTIC2Items && ((tStack.getUnlocalizedName().contains("gt.metaitem.01") || tStack.getUnlocalizedName().contains("gt.blockores") || tStack.getUnlocalizedName().contains("ic2.itemCrushed") || tStack.getUnlocalizedName().contains("ic2.itemPurifiedCrushed")))) continue; switch (aGTRecipeMap.mUnlocalizedName) { diff --git a/src/main/java/gregtech/common/GT_Client.java b/src/main/java/gregtech/common/GT_Client.java index 17336e7f0e..7540de0aa9 100644 --- a/src/main/java/gregtech/common/GT_Client.java +++ b/src/main/java/gregtech/common/GT_Client.java @@ -18,6 +18,8 @@ import gregtech.api.metatileentity.BaseMetaPipeEntity; import gregtech.api.metatileentity.BaseTileEntity; import gregtech.api.objects.GT_ItemStack; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_PlayedSound; import gregtech.api.util.GT_Recipe; @@ -372,7 +374,7 @@ public void onPlayerTickEventClient(TickEvent.PlayerTickEvent aEvent) { afterSomeTime=0; StatFileWriter sfw= Minecraft.getMinecraft().thePlayer.getStatFileWriter(); try { - for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList){ + for(GT_MachineRecipe recipe: GT_RecipeMap.sAssemblyLineVisualRecipes.mRecipeList){ recipe.mHidden=!sfw.hasAchievementUnlocked(GT_Mod.achievements.getAchievement(recipe.getOutput(0).getUnlocalizedName())); } }catch (Exception e){} diff --git a/src/main/java/gregtech/common/GT_MachineRecipeAdder.java b/src/main/java/gregtech/common/GT_MachineRecipeAdder.java index 88c1c0f26f..e438113d64 100644 --- a/src/main/java/gregtech/common/GT_MachineRecipeAdder.java +++ b/src/main/java/gregtech/common/GT_MachineRecipeAdder.java @@ -435,7 +435,7 @@ public boolean addAssemblylineRecipe(ItemStack aResearchItem, int aResearchTime, return false; } } - GT_AssemblyLineRecipe tRecipe = (GT_AssemblyLineRecipe) new GT_AssemblyLineRecipe(tInputs, new GT_RecipeOutput[]{new GT_RecipeOutput(aOutput)}, aFluidInputs, new FluidStack[0]).setDuration(tDuration).setEUt(aEUt).setSpecialItems(new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Reads Research result", new Object[0])}); + GT_AssemblyLineRecipe tRecipe = (GT_AssemblyLineRecipe) new GT_AssemblyLineRecipe(tInputs, new GT_RecipeOutput[]{new GT_RecipeOutput(aOutput)}, aFluidInputs, new FluidStack[0]).setResearchItem(aResearchItem).setResearchTime(aResearchTime).setDuration(tDuration).setEUt(aEUt).setSpecialItems(new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Reads Research result", new Object[0])}); GT_AssemblyLineRecipe.sAssemblyLineRecipes.add(tRecipe); GT_MachineRecipe tFakeRecipe = new GT_MachineRecipe(new ItemStack[]{aResearchItem}, new ItemStack[]{aOutput}, null, null).setSpecialItems(new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Writes Research result", new Object[0])}).setDuration(aResearchTime).setEUt(30).setSpecialValue(-201); GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, tFakeRecipe); diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java index 2d0f4e287e..9b293ec357 100644 --- a/src/main/java/gregtech/common/GT_Proxy.java +++ b/src/main/java/gregtech/common/GT_Proxy.java @@ -21,6 +21,7 @@ import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.net.GT_Packet_Pollution; import gregtech.api.objects.*; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import gregtech.common.entities.GT_Entity_Arrow; import gregtech.common.gui.GT_ContainerVolumetricFlask; @@ -1767,7 +1768,7 @@ public void registerUnificationEntries() { } GregTech_API.sUnificationEntriesRegistered = true; GregTech_API.sUnification.mConfig.save(); - GT_Recipe.reInit(); + GT_RecipeMap.reInitAll(); } public void activateOreDictHandler() { diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java index 4881773279..87aff9ce73 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java @@ -11,6 +11,8 @@ import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.objects.ItemData; import gregtech.api.objects.MaterialStack; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import gregtech.common.covers.*; import gregtech.common.items.behaviors.*; @@ -860,9 +862,9 @@ protected void addAdditionalToolTips(List aList, ItemStack aStack, EntityPlayer } public boolean isPlasmaCellUsed(OrePrefixes aPrefix, Materials aMaterial) { - Collection fusionRecipes = GT_Recipe.GT_Recipe_Map.sFusionRecipes.mRecipeList; + Collection fusionRecipes = GT_RecipeMap.sFusionRecipes.mRecipeList; if(aPrefix == OrePrefixes.cellPlasma && aMaterial.getPlasma(1L) != null) { //Materials has a plasma fluid - for(GT_Recipe recipe : fusionRecipes) { //Loop through fusion recipes + for(GT_MachineRecipe recipe : fusionRecipes) { //Loop through fusion recipes if(recipe.getFluidOutput(0) != null) { //Make sure fluid output can't be null (not sure if possible) if (recipe.getFluidOutput(0).isFluidEqual(aMaterial.getPlasma(1L))) return true; //Fusion recipe output matches current plasma cell fluid diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java index 503a1f7efb..a7a8081672 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java @@ -10,6 +10,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -47,8 +48,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_DieselGenerator(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GT_Recipe.GT_Recipe_Map.sDieselFuels; + public GT_RecipeMap getRecipes() { + return GT_RecipeMap.sDieselFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_FluidNaquadahReactor.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_FluidNaquadahReactor.java index 504b511de1..a54642a872 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_FluidNaquadahReactor.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_FluidNaquadahReactor.java @@ -9,6 +9,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_FluidNaquadahReactor @@ -38,8 +39,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_FluidNaquadahReactor(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GT_Recipe.GT_Recipe_Map.sFluidNaquadahReactorFuels; + public GT_RecipeMap getRecipes() { + return GT_RecipeMap.sFluidNaquadahReactorFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java index 293669094b..69ab800c90 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java @@ -8,6 +8,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_GasTurbine @@ -43,8 +44,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_GasTurbine(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GT_Recipe.GT_Recipe_Map.sTurbineFuels; + public GT_RecipeMap getRecipes() { + return GT_RecipeMap.sTurbineFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java index eda960bf2b..3aeb74ab1e 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java @@ -8,6 +8,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_MagicEnergyConverter @@ -38,8 +39,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_MagicEnergyConverter(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GT_Recipe.GT_Recipe_Map.sMagicFuels; + public GT_RecipeMap getRecipes() { + return GT_RecipeMap.sMagicFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java index 2ca0a3d7bc..2f008d8aef 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java @@ -10,6 +10,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import net.minecraft.block.Block; import net.minecraft.block.BlockDragonEgg; @@ -286,8 +287,8 @@ public int getPollution() { } @Override - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GT_Recipe.GT_Recipe_Map.sMagicFuels; + public GT_RecipeMap getRecipes() { + return GT_RecipeMap.sMagicFuels; } @Override diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java index a8c0908ca4..653aecae9b 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java @@ -8,6 +8,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_PlasmaGenerator @@ -38,8 +39,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_PlasmaGenerator(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GT_Recipe.GT_Recipe_Map.sPlasmaFuels; + public GT_RecipeMap getRecipes() { + return GT_RecipeMap.sPlasmaFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SolidNaquadahReactor.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SolidNaquadahReactor.java index 422901c850..d3602ac1fc 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SolidNaquadahReactor.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SolidNaquadahReactor.java @@ -8,6 +8,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_SolidNaquadahReactor @@ -37,8 +38,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_SolidNaquadahReactor(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GT_Recipe.GT_Recipe_Map.sSmallNaquadahReactorFuels; + public GT_RecipeMap getRecipes() { + return GT_RecipeMap.sSmallNaquadahReactorFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java index e63fbe0579..31625b32dd 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java @@ -8,6 +8,7 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import net.minecraftforge.fluids.FluidStack; @@ -41,7 +42,7 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_SteamTurbine(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_Recipe.GT_Recipe_Map getRecipes() { + public GT_RecipeMap getRecipes() { return null; } diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java index f1beea9542..010ff94ae5 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java @@ -84,11 +84,12 @@ public int checkRecipe() { public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { if (super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) { if ((ItemList.Schematic_1by1.isStackEqual(getInputAt(1))) || (ItemList.Schematic_2by2.isStackEqual(getInputAt(1))) || (ItemList.Schematic_3by3.isStackEqual(getInputAt(1)))) { - if (GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.findRecipe(getBaseMetaTileEntity(), true, gregtech.api.enums.GT_Values.V[this.mTier], null, new ItemStack[]{GT_Utility.copyAmount(64L, new Object[]{aStack}), getInputAt(1)}) != null) { + if (GT_RecipeMap.sBoxinatorRecipes.findRecipe(getBaseMetaTileEntity(), null, true, gregtech.api.enums.GT_Values.V[this.mTier], null, null, new ItemStack[]{GT_Utility.copyAmount(64L, new Object[]{aStack}), getInputAt(1)}) != null) { return true; } - if (ItemList.Schematic_1by1.isStackEqual(getInputAt(1)) && GT_ModHandler.getRecipeOutput(new ItemStack[]{aStack}) != null) + if (ItemList.Schematic_1by1.isStackEqual(getInputAt(1)) && GT_ModHandler.getRecipeOutput(new ItemStack[]{aStack}) != null) { return true; + } if (ItemList.Schematic_2by2.isStackEqual(getInputAt(1)) && GT_ModHandler.getRecipeOutput(new ItemStack[]{aStack, aStack, null, aStack, aStack}) != null) { return true; } @@ -96,7 +97,7 @@ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex return true; } } else { - return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.containsInput(aStack); + return GT_RecipeMap.sBoxinatorRecipes.containsInput(aStack); } } return false; diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Printer.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Printer.java index 2f1eecdd91..6bdeecb733 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Printer.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Printer.java @@ -5,6 +5,7 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -15,7 +16,7 @@ public class GT_MetaTileEntity_Printer extends GT_MetaTileEntity_BasicMachine { public GT_MetaTileEntity_Printer(int aID, String aName, String aNameRegional, int aTier) { - super(aID, aName, aNameRegional, aTier, 1, "It can copy Books and paint Stuff", 1, 1, "Printer.png", GT_Recipe.GT_Recipe_Map.sPrinterRecipes.mNEIName, new ITexture[0]); + super(aID, aName, aNameRegional, aTier, 1, "It can copy Books and paint Stuff", 1, 1, "Printer.png", GT_RecipeMap.sPrinterRecipes.mNEIName, new ITexture[0]); } public GT_MetaTileEntity_Printer(String aName, int aTier, String aDescription, ITexture[][][] aTextures, String aGUIName, String aNEIName) { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AdvancedProcessingArray.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AdvancedProcessingArray.java index 583fb3af6c..9b85c0f658 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AdvancedProcessingArray.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AdvancedProcessingArray.java @@ -13,7 +13,6 @@ import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ProcessingArray_Manager; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; @@ -174,7 +173,9 @@ public boolean checkRecipe(ItemStack aStack) { for (int f = 0; f < tOut.length; f++) { if (tRecipe.mOutputs[f] != null && tOut[f] != null) { for (int g = 0; g < i; g++) { - tOut[f].stackSize += tRecipe.mOutputs[f].getActualOutput(getBaseMetaTileEntity().getWorld().rand).stackSize; + if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f)) { + tOut[f].stackSize += tRecipe.mOutputs[f].getShownOutput().stackSize; + } } } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java index 1bdf46de40..8ed9a22c2c 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java @@ -11,6 +11,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Dynamo; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -74,13 +76,13 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT @Override public boolean checkRecipe(ItemStack aStack) { ArrayList tFluids = getStoredFluids(); - Collection tRecipeList = GT_Recipe.GT_Recipe_Map.sDieselFuels.mRecipeList; + Collection tRecipeList = GT_RecipeMap.sDieselFuels.mRecipeList; if(tFluids.size() > 0 && tRecipeList != null) { //Does input hatch have a diesel fuel? for (FluidStack hatchFluid1 : tFluids) { //Loops through hatches - for(GT_Recipe aFuel : tRecipeList) { //Loops through diesel fuel recipes + for(GT_MachineRecipe aFuel : tRecipeList) { //Loops through diesel fuel recipes FluidStack tLiquid; - if ((tLiquid = GT_Utility.getFluidForFilledItem(aFuel.getRepresentativeInput(0), true)) != null) { //Create fluidstack from current recipe + if ((tLiquid = GT_Utility.getFluidForFilledItem(aFuel.getRepresentativeInput(0).get(0), true)) != null) { //Create fluidstack from current recipe if (hatchFluid1.isFluidEqual(tLiquid)) { //Has a diesel fluid fuelConsumption = tLiquid.amount = boostEu ? (4096 / aFuel.mSpecialValue) : (2048 / aFuel.mSpecialValue); //Calc fuel consumption if(depleteInput(tLiquid)) { //Deplete that amount diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java index f435ec8999..1d20f853a5 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java @@ -15,6 +15,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.gui.GT_GUIContainer_FusionReactor; @@ -29,7 +31,7 @@ public abstract class GT_MetaTileEntity_FusionComputer extends GT_MetaTileEntity_MultiBlockBase { - public GT_Recipe mLastRecipe; + public GT_MachineRecipe mLastRecipe; public int mEUStore; public GT_MetaTileEntity_FusionComputer(int aID, String aName, String aNameRegional, int tier) { @@ -51,7 +53,7 @@ public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT @Override public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_FusionReactor(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "FusionComputer.png", GT_Recipe.GT_Recipe_Map.sFusionRecipes.mNEIName); + return new GT_GUIContainer_FusionReactor(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "FusionComputer.png", GT_RecipeMap.sFusionRecipes.mNEIName); } public abstract MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity); @@ -254,7 +256,7 @@ public boolean checkRecipe(ItemStack aStack) { } if (tFluidList.size() > 1) { FluidStack[] tFluids = tFluidList.toArray(new FluidStack[tFluidList.size()]); - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sFusionRecipes.findRecipe(this.getBaseMetaTileEntity(), this.mLastRecipe, false, GT_Values.V[8], tFluids, new ItemStack[]{}); + GT_MachineRecipe tRecipe = GT_RecipeMap.sFusionRecipes.findRecipe(this.getBaseMetaTileEntity(), this.mLastRecipe, false, GT_Values.V[8], tFluids, null, new ItemStack[]{}); if ((tRecipe == null && !mRunningOnLoad) || (maxEUStore() < tRecipe.mSpecialValue)) { turnCasingActive(false); this.mLastRecipe = null; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java index 476496eb05..b10dd326b9 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java @@ -9,6 +9,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -113,8 +115,8 @@ public boolean checkRecipe(ItemStack aStack) { } this.mSuperEfficencyIncrease = 0; - for (GT_Recipe tRecipe : GT_Recipe.GT_Recipe_Map.sDieselFuels.mRecipeList) { - FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0), true); + for (GT_MachineRecipe tRecipe : GT_RecipeMap.sDieselFuels.mRecipeList) { + FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0).get(0), true); if (tFluid != null && tRecipe.mSpecialValue > 1) { tFluid.amount = 1000; if (depleteInput(tFluid)) { @@ -125,8 +127,8 @@ public boolean checkRecipe(ItemStack aStack) { } } } - for (GT_Recipe tRecipe : GT_Recipe.GT_Recipe_Map.sDenseLiquidFuels.mRecipeList) { - FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0), true); + for (GT_MachineRecipe tRecipe : GT_RecipeMap.sDenseLiquidFuels.mRecipeList) { + FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0).get(0), true); if (tFluid != null) { tFluid.amount = 1000; if (depleteInput(tFluid)) { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java index d053693e42..30820402ba 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java @@ -8,6 +8,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -117,8 +119,8 @@ public boolean checkRecipe(ItemStack aStack) { if (inputs.length > 0 || fluids.length > 0) { long voltage = getMaxInputVoltage(); byte tier = (byte) Math.max(1, GT_Utility.getTier(voltage)); - GT_Recipe recipe = GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes.findRecipe(getBaseMetaTileEntity(), false, - false, gregtech.api.enums.GT_Values.V[tier], fluids, inputs); + GT_MachineRecipe recipe = GT_RecipeMap.sMultiblockChemicalRecipes.findRecipe(getBaseMetaTileEntity(), null, + false, gregtech.api.enums.GT_Values.V[tier], fluids, null, inputs); if (recipe != null && recipe.isRecipeInputEqual(true, fluids, inputs)) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; @@ -137,7 +139,7 @@ public boolean checkRecipe(ItemStack aStack) { this.mEUt = -EUt; this.mMaxProgresstime = maxProgresstime; - this.mOutputItems = recipe.mOutputs; + this.mOutputItems = GT_MachineRecipe.unwrapOutputs(recipe.mOutputs); this.mOutputFluids = recipe.mFluidOutputs; this.updateSlots(); return true; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java index 14dec4e8e2..bd101c9dec 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java @@ -6,8 +6,9 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; @@ -47,11 +48,11 @@ public String[] getDescription() { } public int getFuelValue(FluidStack aLiquid) { - if (aLiquid == null || GT_Recipe_Map.sTurbineFuels == null) return 0; + if (aLiquid == null || GT_RecipeMap.sTurbineFuels == null) return 0; FluidStack tLiquid; - Collection tRecipeList = GT_Recipe_Map.sTurbineFuels.mRecipeList; - if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList) - if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null) + Collection tRecipeList = GT_RecipeMap.sTurbineFuels.mRecipeList; + if (tRecipeList != null) for (GT_MachineRecipe tFuel : tRecipeList) + if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0).get(0), true)) != null) if (aLiquid.isFluidEqual(tLiquid)) return tFuel.mSpecialValue; return 0; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java index 548cb0c677..be823291e1 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java @@ -6,8 +6,9 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; @@ -46,11 +47,11 @@ public String[] getDescription() { } public int getFuelValue(FluidStack aLiquid) { - if (aLiquid == null || GT_Recipe_Map.sTurbineFuels == null) return 0; + if (aLiquid == null || GT_RecipeMap.sTurbineFuels == null) return 0; FluidStack tLiquid; - Collection tRecipeList = GT_Recipe_Map.sPlasmaFuels.mRecipeList; - if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList) - if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null) + Collection tRecipeList = GT_RecipeMap.sPlasmaFuels.mRecipeList; + if (tRecipeList != null) for (GT_MachineRecipe tFuel : tRecipeList) + if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0).get(0), true)) != null) if (aLiquid.isFluidEqual(tLiquid)) return tFuel.mSpecialValue; return 0; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java index 540f2a32f3..fd0c76489c 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java @@ -10,6 +10,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -66,8 +68,8 @@ public boolean checkRecipe(ItemStack aStack) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCrakingRecipes.findRecipe( - getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs ,new ItemStack[]{mInventory[1]}); + GT_MachineRecipe tRecipe = GT_RecipeMap.sCrackingRecipes.findRecipe( + getBaseMetaTileEntity(), null, false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs, null, new ItemStack[]{mInventory[1]}); if (tRecipe != null && tRecipe.isRecipeInputEqual(true, tFluidInputs, new ItemStack[]{mInventory[1]})) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java index 4e963d53ca..585df95435 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java @@ -10,6 +10,8 @@ import gregtech.api.gui.GT_GUIContainer_MultiMachine; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.objects.ItemData; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -103,14 +105,14 @@ private ItemStack[] getOutputByDrops(ArrayList oreBlockDrops) { continue; } - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.findRecipe(getBaseMetaTileEntity(), false, voltage, null, currentItem); + GT_MachineRecipe tRecipe = GT_RecipeMap.sMaceratorRecipes.findRecipe(getBaseMetaTileEntity(), null, false, voltage, null, currentItem); if (tRecipe == null) { outputItems.add(currentItem); continue; } for (int i = 0; i < tRecipe.mOutputs.length; i++) { - ItemStack recipeOutput = tRecipe.mOutputs[i].copy(); + ItemStack recipeOutput = tRecipe.getOutput(i); if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(i)) multiplyStackSize(recipeOutput); outputItems.add(recipeOutput); diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java index f89e749d38..1bb8b5adf8 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java @@ -6,6 +6,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.XSTR; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Pollution; @@ -139,7 +141,7 @@ public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_PrimitiveBlastFurnace(aPlayerInventory, aBaseMetaTileEntity, getName(), GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.mNEIName); + return new GT_GUIContainer_PrimitiveBlastFurnace(aPlayerInventory, aBaseMetaTileEntity, getName(), GT_RecipeMap.sPrimitiveBlastRecipes.mNEIName); } private boolean checkMachine() { @@ -277,7 +279,7 @@ private boolean checkRecipe() { } ItemStack[] inputs = new ItemStack[INPUT_SLOTS]; System.arraycopy(mInventory, 0, inputs, 0, INPUT_SLOTS); - GT_Recipe recipe = GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.findRecipe(getBaseMetaTileEntity(), false, 0, null, inputs); + GT_MachineRecipe recipe = GT_RecipeMap.sPrimitiveBlastRecipes.findRecipe(getBaseMetaTileEntity(), null, false, 0, null, null, inputs); if (recipe == null) { this.mOutputItems = null; return false; @@ -300,7 +302,7 @@ private boolean checkRecipe() { } this.mMaxProgresstime = recipe.mDuration; - this.mOutputItems = recipe.mOutputs; + this.mOutputItems = GT_MachineRecipe.unwrapOutputs(recipe.mOutputs); return true; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java index 98fc8dabda..a6de66d446 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java @@ -174,7 +174,9 @@ public boolean checkRecipe(ItemStack aStack) { for (int f = 0; f < tOut.length; f++) { if (tRecipe.mOutputs[f] != null && tOut[f] != null) { for (int g = 0; g < i; g++) { - tOut[f].stackSize += tRecipe.mOutputs[f].getActualOutput(getBaseMetaTileEntity().getWorld().rand).stackSize; + if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f)) { + tOut[f].stackSize += tRecipe.mOutputs[f].getShownOutput().stackSize; + } } } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java index 6f3d3e9a47..c838ec43c2 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java @@ -11,6 +11,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_CopiedBlockTexture; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -72,7 +74,7 @@ public boolean checkRecipe(ItemStack aStack) { for (ItemStack tInput : tInputList) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sPyrolyseRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs.isEmpty() ? null : new FluidStack[]{tFluidInputs.get(0)}, new ItemStack[]{mInventory[1], tInput}); + GT_MachineRecipe tRecipe = GT_RecipeMap.sPyrolyseRecipes.findRecipe(getBaseMetaTileEntity(), null, false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs.isEmpty() ? null : new FluidStack[]{tFluidInputs.get(0)}, null, new ItemStack[]{mInventory[1], tInput}); if (tRecipe != null) { if (tRecipe.isRecipeInputEqual(true, tFluidInputs.isEmpty() ? null : new FluidStack[]{tFluidInputs.get(0)}, new ItemStack[]{tInput, mInventory[1]})) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java index 9c1283526f..100bbf107b 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java @@ -11,7 +11,6 @@ import gregtech.api.recipes.GT_MachineRecipe; import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; @@ -36,7 +35,7 @@ public GT_MetaTileEntity_Macerator_Bronze(String aName, String[] aDescription, I } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeMacerator.png", GT_Recipe_Map.sMaceratorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeMacerator.png", GT_RecipeMap.sMaceratorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -73,7 +72,7 @@ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex if (!super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) { return false; } - return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64L, new Object[]{aStack})); + return GT_RecipeMap.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64L, new Object[]{aStack})); } public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) { diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java index 3d90a4c645..0e3a075bce 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java @@ -11,7 +11,6 @@ import gregtech.api.recipes.GT_MachineRecipe; import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; @@ -36,7 +35,7 @@ public GT_MetaTileEntity_Macerator_Steel(String aName, String[] aDescription, IT } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelMacerator.png", GT_Recipe_Map.sMaceratorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelMacerator.png", GT_RecipeMap.sMaceratorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -73,7 +72,7 @@ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex if (!super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) { return false; } - return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64L, new Object[]{aStack})); + return GT_RecipeMap.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64L, new Object[]{aStack})); } public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) { diff --git a/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java b/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java index e7558fb432..6ab93c1dbd 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java @@ -4,6 +4,8 @@ import gregtech.api.GregTech_API; import gregtech.api.interfaces.IIconContainer; import gregtech.api.items.GT_MetaGenerated_Tool; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.items.behaviors.Behaviour_Prospecting; @@ -98,15 +100,15 @@ public boolean isWeapon() { public boolean isMinableBlock(Block aBlock, byte aMetaData) { String tTool = aBlock.getHarvestTool(aMetaData); - return ((tTool != null) && ((tTool.equals("hammer")) || (tTool.equals("pickaxe")))) || (aBlock.getMaterial() == Material.rock) || (aBlock.getMaterial() == Material.glass) || (aBlock.getMaterial() == Material.ice) || (aBlock.getMaterial() == Material.packedIce) || (GT_Recipe.GT_Recipe_Map.sHammerRecipes.containsInput(new ItemStack(aBlock, 1, aMetaData))); + return ((tTool != null) && ((tTool.equals("hammer")) || (tTool.equals("pickaxe")))) || (aBlock.getMaterial() == Material.rock) || (aBlock.getMaterial() == Material.glass) || (aBlock.getMaterial() == Material.ice) || (aBlock.getMaterial() == Material.packedIce) || (GT_RecipeMap.sHammerRecipes.containsInput(new ItemStack(aBlock, 1, aMetaData))); } public int convertBlockDrops(List aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) { int rConversions = 0; - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); + GT_MachineRecipe tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(null, null, true, 2147483647L, null, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); if ((tRecipe == null) || (aBlock.hasTileEntity(aMetaData))) { for (ItemStack tDrop : aDrops) { - tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); + tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(null, null, true, 2147483647L, null, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); if (tRecipe != null) { ItemStack tHammeringOutput = tRecipe.getOutput(0); if (tHammeringOutput != null) { diff --git a/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java b/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java index a1ad88c69f..e6f655b814 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java @@ -3,6 +3,8 @@ import gregtech.GT_Mod; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -58,10 +60,10 @@ public boolean isMinableBlock(Block aBlock, byte aMetaData) { public int convertBlockDrops(List aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) { int rConversions = 0; - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); + GT_MachineRecipe tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(null, null, true, 2147483647L, null, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); if ((tRecipe == null) || (aBlock.hasTileEntity(aMetaData))) { for (ItemStack tDrop : aDrops) { - tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); + tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(null, null, true, 2147483647L, null, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); if (tRecipe != null) { ItemStack tHammeringOutput = tRecipe.getOutput(0); if (tHammeringOutput != null) { diff --git a/src/main/java/gregtech/loaders/load/GT_FuelLoader.java b/src/main/java/gregtech/loaders/load/GT_FuelLoader.java index 188a6590b9..09ef7fdea4 100644 --- a/src/main/java/gregtech/loaders/load/GT_FuelLoader.java +++ b/src/main/java/gregtech/loaders/load/GT_FuelLoader.java @@ -7,6 +7,8 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -25,11 +27,17 @@ public void run() { ItemList.sIndiumConcentrate = GT_Mod.gregtechproxy.addFluid("indiumconcentrate", "Indium Concentrate", null, 1, 295); ItemList.sLeadZincSolution = GT_Mod.gregtechproxy.addFluid("leadzincsolution", "Lead-Zinc solution", null, 1, 295); ItemList.sRocketFuel = GT_Mod.gregtechproxy.addFluid("rocket_fuel", "Rocket Fuel", null, 1, 295); - new GT_Recipe(new ItemStack(Items.lava_bucket), new ItemStack(Blocks.obsidian), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Electrum, 1L), 30, 2); + GT_RecipeMap.sHotFuels.addRecipe(false, + new ItemStack[]{new ItemStack(Items.lava_bucket)}, + new ItemStack[]{new ItemStack(Blocks.obsidian), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), + GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Electrum, 1L)}, + null, null, null, 0, 0, 30); - GT_Recipe.GT_Recipe_Map.sSmallNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 25000); - GT_Recipe.GT_Recipe_Map.sLargeNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 200000); - GT_Recipe.GT_Recipe_Map.sFluidNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 1400000); + GT_RecipeMap.sSmallNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 25000); + GT_RecipeMap.sLargeNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 200000); + GT_RecipeMap.sFluidNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 1400000); GT_Values.RA.addFuel(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1L, 4), null, 4, 5); GT_Values.RA.addFuel(new ItemStack(Items.experience_bottle, 1), null, 10, 5); diff --git a/src/main/java/gregtech/loaders/misc/GT_Achievements.java b/src/main/java/gregtech/loaders/misc/GT_Achievements.java index 5c73296a77..71792f49dc 100644 --- a/src/main/java/gregtech/loaders/misc/GT_Achievements.java +++ b/src/main/java/gregtech/loaders/misc/GT_Achievements.java @@ -13,6 +13,8 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.objects.ItemData; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -78,7 +80,7 @@ public GT_Achievements() { } } - for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList) + for(GT_MachineRecipe recipe: GT_RecipeMap.sAssemblyLineVisualRecipes.mRecipeList) registerAssAchievement(recipe); registerAchievement("flintpick", 0, 0, GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.PICKAXE, 1, Materials.Flint, Materials.Wood, null), "", false); @@ -283,7 +285,7 @@ public Achievement registerOreAchievement(Materials aMaterial) { return null; } - public Achievement registerAssAchievement(GT_Recipe recipe) { + public Achievement registerAssAchievement(GT_MachineRecipe recipe) { if (this.achievementList.get(recipe.getOutput(0).getUnlocalizedName()) == null) { assReg++; return registerAchievement(recipe.getOutput(0).getUnlocalizedName(), -(11 + assReg % 5), ((assReg) / 5) - 8, recipe.getOutput(0) @@ -637,12 +639,12 @@ public void onItemPickup(EntityItemPickupEvent event) { issueAchievement(player, "stepforward"); } if(player.capabilities.isCreativeMode && stack.getUnlocalizedName().equals("gt.metaitem.01.32761")){//Debug Scanner pickup shows all assline recipes. - for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList) { + for(GT_MachineRecipe recipe: GT_RecipeMap.sAssemblyLineVisualRecipes.mRecipeList) { issueAchievement(player, recipe.getOutput(0).getUnlocalizedName()); recipe.mHidden=false; } } - for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList){ + for(GT_MachineRecipe recipe: GT_RecipeMap.sAssemblyLineVisualRecipes.mRecipeList){ if(recipe.getOutput(0).getUnlocalizedName().equals(stack.getUnlocalizedName())) { issueAchievement(player, recipe.getOutput(0).getUnlocalizedName()); recipe.mHidden=false; diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java index a9528ae872..d98f2cc014 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java @@ -68,7 +68,7 @@ private boolean registerStandardOreRecipes(OrePrefixes aPrefix, Materials aMater } if ((!tByProductStacks.isEmpty()) && (!this.mAlreadyListedOres.contains(aMaterial))) { this.mAlreadyListedOres.add(aMaterial); - gregtech.api.util.GT_Recipe.GT_Recipe_Map.sByProductList.addFakeRecipe(false, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ore, aMaterial, aOreStack, 1L)}, (ItemStack[]) tByProductStacks.toArray(new ItemStack[tByProductStacks.size()]), null, null, null, null, 0, 0, 0); + gregtech.api.recipes.GT_RecipeMap.sByproductList.addFakeRecipe(false, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ore, aMaterial, aOreStack, 1L)}, (ItemStack[]) tByProductStacks.toArray(new ItemStack[tByProductStacks.size()]), null, null, null, null, 0, 0, 0); } if (tPrimaryByMaterial == null) tPrimaryByMaterial = tMaterial; diff --git a/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java b/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java index 9dcc507f14..7d8f4d93f3 100644 --- a/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java +++ b/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java @@ -15,6 +15,8 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.gui.GT_GUIContainer_BasicMachine; import gregtech.api.objects.ItemData; +import gregtech.api.recipes.GT_MachineRecipe; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -45,9 +47,9 @@ public class GT_NEI_AssLineHandler GuiContainerManager.addTooltipHandler(new GT_RectHandler()); } - protected final GT_Recipe.GT_Recipe_Map mRecipeMap; + protected final GT_RecipeMap mRecipeMap; - public GT_NEI_AssLineHandler(GT_Recipe.GT_Recipe_Map aRecipeMap) {//this is called when recipes should be shown + public GT_NEI_AssLineHandler(GT_RecipeMap aRecipeMap) {//this is called when recipes should be shown this.mRecipeMap = aRecipeMap; this.transferRects.add(new RecipeTransferRect(new Rectangle(138, 18, 18, 18), getOverlayIdentifier(), new Object[0])); if (!NEI_GT_Config.sIsAdded) { @@ -68,7 +70,7 @@ public TemplateRecipeHandler newInstance() { public void loadCraftingRecipes(String outputId, Object... results) { if (outputId.equals(getOverlayIdentifier())) { - for (GT_Recipe tRecipe : this.mRecipeMap.mRecipeList) { + for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { if (!tRecipe.mHidden) { this.arecipes.add(new CachedDefaultRecipe(tRecipe)); }else{ @@ -100,7 +102,7 @@ public void loadCraftingRecipes(ItemStack aResult) { } } } - for (GT_Recipe tRecipe : this.mRecipeMap.mRecipeList) { + for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { if (!tRecipe.mHidden) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tResults) { @@ -142,7 +144,7 @@ public void loadUsageRecipes(ItemStack aInput) { } } } - for (GT_Recipe tRecipe : this.mRecipeMap.mRecipeList) { + for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { if (!tRecipe.mHidden) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tInputs) { @@ -368,16 +370,16 @@ public void generatePermutations() { public class CachedDefaultRecipe extends CachedRecipe { - public final GT_Recipe mRecipe; + public final GT_MachineRecipe mRecipe; public final List mOutputs = new ArrayList(); public final List mInputs = new ArrayList(); - public CachedDefaultRecipe(GT_Recipe aRecipe) { + public CachedDefaultRecipe(GT_MachineRecipe aRecipe) { super(); this.mRecipe = aRecipe; for (int i = 0; i < 16; i++) { - Object obj = aRecipe instanceof GT_Recipe_WithAlt ? ((GT_Recipe_WithAlt) aRecipe).getAltRepresentativeInput(i) : aRecipe.getRepresentativeInput(i); + Object obj = aRecipe.getRepresentativeInput(i); if (obj != null) { this.mInputs.add(new FixedPositionedStack(obj, 18 * (i % 4) + 12, 18 * (i / 4))); } diff --git a/src/main/java/gregtech/nei/NEI_GT_Config.java b/src/main/java/gregtech/nei/NEI_GT_Config.java index e65aac8083..5dfb4eb366 100644 --- a/src/main/java/gregtech/nei/NEI_GT_Config.java +++ b/src/main/java/gregtech/nei/NEI_GT_Config.java @@ -18,7 +18,7 @@ public void loadConfig() { } } if(FMLCommonHandler.instance().getEffectiveSide().isClient()) - ALH=new GT_NEI_AssLineHandler(GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes); + ALH=new GT_NEI_AssLineHandler(GT_RecipeMap.sAssemblyLineVisualRecipes); sIsAdded = true; } From 072f15b5a65999ff2d5db4c6af1f4525a8080a09 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Fri, 6 Nov 2020 13:18:18 -0800 Subject: [PATCH 08/21] Fixed temporary issue with cutting machine --- src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java | 6 ++---- src/main/java/gregtech/api/recipes/GT_RecipeMap.java | 4 ++-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java index 9f291b74eb..89e7c28d39 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java @@ -1,5 +1,6 @@ package gregtech.api.recipes; +import gregtech.api.util.GT_Utility; import java.util.Arrays; import java.util.List; import net.minecraft.item.ItemStack; @@ -32,13 +33,10 @@ public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { return false; } for (ItemStack tItemStack : mItems) { - if (tItemStack.getItem() == aItemStack.getItem()) { + if (GT_Utility.areStacksEqual(tItemStack, aItemStack)) { if (!aIgnoreCount && aItemStack.stackSize < tItemStack.stackSize) { return false; } - if (tItemStack.getItemDamage() != aItemStack.getItemDamage()) { - return false; - } if (tItemStack.stackTagCompound != null) { if (aItemStack.stackTagCompound == null) { return false; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index 430ef9d03e..377a53ae43 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -56,7 +56,7 @@ public class GT_RecipeMap { public static final GT_RecipeMap sExtractorRecipes = new GT_RecipeMap(new HashSet(30)).setNames("gt.recipe.extractor", "Extractor").setNEIGUIPathBasic("Extractor"); public static final GT_RecipeMap sRecyclerRecipes = new GT_RecipeMapRecycler(new HashSet(0)).setNames("ic.recipe.recycler", "Recycler").setNEIName("ic2.recycler").setNEIGUIPathBasic("Recycler").setNEIAllowed(false); public static final GT_RecipeMap sFurnaceRecipes = new GT_RecipeMapFurnace(new HashSet(0)).setNames("mc.recipe.furnace", "Furnace").setNEIName("smelting").setNEIGUIPathBasic("E_Furnace").setNEIAllowed(false); - public static final GT_RecipeMap sMicrowaveRecipes = new GT_RecipeMapMicrowave(new HashSet(0)).setNames("gt.recipe.microwave", "Microwave").setNEIName("smelting").setNEIGUIPathBasic("E_Furance").setNEIAllowed(false); + public static final GT_RecipeMap sMicrowaveRecipes = new GT_RecipeMapMicrowave(new HashSet(0)).setNames("gt.recipe.microwave", "Microwave").setNEIName("smelting").setNEIGUIPathBasic("E_Furnace").setNEIAllowed(false); public static final GT_RecipeMap sScannerFakeRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.scanner", "Scanner").setNEIGUIPathBasic("Scanner"); public static final GT_RecipeMap sRockBreakerFakeRecipes = new GT_RecipeMap(new HashSet(3)).setNames("gt.recipe.rockbreaker", "Rock Breaker").setNEIGUIPathBasic("RockBreaker").setMinimalInputItems(0); @@ -105,7 +105,7 @@ public class GT_RecipeMap { public static final GT_RecipeMap sCircuitAssemblerRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.circuitassembler", "Circuit Assembler").setNEIGUIPathBasic("CircuitAssembler").setInputSlots(6).setMinimalInputItems(3).setMinimalInputFluids(1); public static final GT_RecipeMap sCannerRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.canner", "Canning Machine").setNEIGUIPathBasic("Canner").setInputSlots(2).setMinimalInputItems(2); public static final GT_RecipeMap sLatheRecipes = new GT_RecipeMap(new HashSet(400)).setNames("gt.recipe.lathe", "Lathe").setNEIGUIPathBasic("Lathe").setOutputSlots(2); - public static final GT_RecipeMap sCutterRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.cuttingsaw", "Cutting Saw").setNEIGUIPathBasic("Cutter").setOutputSlots(2).setMinimalInputFluids(2); + public static final GT_RecipeMap sCutterRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.cuttingsaw", "Cutting Saw").setNEIGUIPathBasic("Cutter").setOutputSlots(2).setMinimalInputFluids(1); public static final GT_RecipeMap sSlicerRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.slicer", "Slicer").setNEIGUIPathBasic("Slicer").setInputSlots(2).setMinimalInputItems(2); public static final GT_RecipeMap sExtruderRecipes = new GT_RecipeMap(new HashSet(1000)).setNames("gt.recipe.extruder", "Extruder").setNEIGUIPathBasic("Extruder").setInputSlots(2).setMinimalInputItems(2); public static final GT_RecipeMap sHammerRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.hammer", "Hammer").setNEIGUIPathBasic("Hammer"); From 14cbba4f535fbd406066b5468a72dd773784c0fc Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Fri, 6 Nov 2020 20:10:54 -0800 Subject: [PATCH 09/21] Fixed temporary issues with microwave, printer, recycler, and large chemical reactor. --- .../GT_MetaTileEntity_BasicMachine.java | 2 +- .../api/recipes/GT_MachineRecipe.java | 16 ++++++--- .../api/recipes/GT_RecipeInputAlts.java | 16 ++++----- .../gregtech/api/recipes/GT_RecipeMap.java | 34 +++++++++---------- 4 files changed, 38 insertions(+), 30 deletions(-) diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java index 57a022f645..12c3142c64 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java @@ -787,7 +787,7 @@ public static boolean isValidForLowGravity(GT_MachineRecipe tRecipe, int dimId){ public int checkRecipe(boolean skipOC){ GT_RecipeMap tMap = getRecipeList(); if (tMap == null) return DID_NOT_FIND_RECIPE; - GT_MachineRecipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[mTier], new FluidStack[]{getFillableStack()}, getSpecialSlot(), getAllInputs()); + GT_MachineRecipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, V[mTier], new FluidStack[]{getFillableStack()}, getSpecialSlot(), getAllInputs()); if (tRecipe == null) return DID_NOT_FIND_RECIPE; if (GT_Mod.gregtechproxy.mLowGravProcessing && tRecipe.mSpecialValue == -100 && diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index 0d207c16fc..cb4efd8dd9 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -351,11 +351,19 @@ public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, boolean a for (GT_RecipeInput tInput : mInputs) { if (tInput != null) { + amt = tInput.getCount(); boolean temp = true; for (ItemStack tStack : aInputs) { - if (tInput.inputMatches(tStack, aIgnoreCounts)) { - temp = false; - break; + if (tInput.inputMatches(tStack)) { + if (aIgnoreCounts) { + temp = false; + break; + } + amt -= tStack.stackSize; + if (amt < 1) { + temp = false; + break; + } } } if (temp) { @@ -393,7 +401,7 @@ public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, boolean a if (tInput != null) { amt = tInput.getCount(); for (ItemStack aStack : aInputs) { - if (tInput.inputMatches(aStack, aIgnoreCounts)) { + if (tInput.inputMatches(aStack)) { if (aIgnoreCounts) { aStack.stackSize -= amt; break; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java index 89e7c28d39..8d4243f477 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java @@ -6,8 +6,7 @@ import net.minecraft.item.ItemStack; /** - * Represents a choice of several item stacks for use in a recipe (most likely an assembly line) - * which don't even have to use the same stack size. + * Represents a choice of several item stacks for use in a recipe (most likely an assembly line). */ public class GT_RecipeInputAlts extends GT_RecipeInput { @@ -16,9 +15,10 @@ public class GT_RecipeInputAlts extends GT_RecipeInput { public GT_RecipeInputAlts(ItemStack[] aItems) { super(null); - this.mItems = aItems; - for (ItemStack aItem : aItems) { - mCount = Math.min(mCount, aItem.stackSize); + this.mItems = Arrays.copyOf(aItems, aItems.length); + this.mCount = mItems[0].stackSize; + for (ItemStack mItem : mItems) { + mItem.stackSize = mCount; } } @@ -32,11 +32,11 @@ public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { if (aItemStack == null) { return false; } + if (!aIgnoreCount && aItemStack.stackSize < mCount) { + return false; + } for (ItemStack tItemStack : mItems) { if (GT_Utility.areStacksEqual(tItemStack, aItemStack)) { - if (!aIgnoreCount && aItemStack.stackSize < tItemStack.stackSize) { - return false; - } if (tItemStack.stackTagCompound != null) { if (aItemStack.stackTagCompound == null) { return false; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index 377a53ae43..b639f53d46 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -607,8 +607,8 @@ public GT_RecipeMapAssembler(Collection aRecipeList) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || rRecipe == null || !GregTech_API.sPostloadFinished) { return rRecipe; } @@ -694,8 +694,8 @@ public GT_RecipeMapFluidCanner(Collection aRecipeList) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || rRecipe != null || !GregTech_API.sPostloadFinished) { return rRecipe; } @@ -741,8 +741,8 @@ public GT_RecipeMapFormingPress(Collection aRecipeList) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); if (aInputs == null || aInputs.length < 2 || aInputs[0] == null || aInputs[1] == null || !GregTech_API.sPostloadFinished) { return rRecipe; } @@ -821,7 +821,7 @@ public GT_RecipeMapFurnace(Collection aRecipeList) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aNotUnificated, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { return null; } @@ -980,7 +980,7 @@ public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemSt if (aOptimize) { rRecipe.optimize(); } - return rRecipe; + return addRecipe(rRecipe); } @@ -1043,10 +1043,10 @@ private List getRockCrusherOutputs(ItemStack aStack) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || !GregTech_API.sPostloadFinished) - return super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + return super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); if (rRecipe != null) return rRecipe; if (Loader.isModLoaded("Railcraft")) { @@ -1080,7 +1080,7 @@ public GT_RecipeMapMicrowave(Collection aRecipeList) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { return null; } @@ -1172,8 +1172,8 @@ public GT_RecipeMapPrinter(Collection aRecipeList) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || aFluids == null || aFluids.length <= 0 || aFluids[0] == null || !GregTech_API.sPostloadFinished) { return rRecipe; } @@ -1277,7 +1277,7 @@ public GT_RecipeMapRecycler(Collection aRecipeList) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { return null; } @@ -1300,9 +1300,9 @@ public GT_RecipeMapUnboxinator(Collection aRecipeList) { } @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { if (aInputs == null || aInputs.length <= 0 || !ItemList.IC2_Scrapbox.isStackEqual(aInputs[0], false, true)) { - return super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); + return super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); } ItemStack tOutput = GT_ModHandler.getRandomScrapboxDrop(); if (tOutput == null) { From 692f34a663dc3557068b2105f2ea15bf67a39130 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Sun, 8 Nov 2020 20:52:55 -0800 Subject: [PATCH 10/21] Added JSON recipe loading. Also migrated some fluid extractor and mixer recipes to json assets. --- .../api/recipes/GT_MachineRecipe.java | 10 +- .../api/recipes/GT_RecipeConditions.java | 27 ++ .../gregtech/api/recipes/GT_RecipeInput.java | 1 - .../api/recipes/GT_RecipeListJsonReader.java | 331 ++++++++++++++++++ .../gregtech/api/recipes/GT_RecipeMap.java | 14 +- .../postload/GT_MachineRecipeLoader.java | 49 +-- .../gregtech/recipes/fluid_extractor.json | 18 + .../assets/gregtech/recipes/mixer.json | 278 +++++++++++++++ 8 files changed, 688 insertions(+), 40 deletions(-) create mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeConditions.java create mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java create mode 100644 src/main/resources/assets/gregtech/recipes/fluid_extractor.json create mode 100644 src/main/resources/assets/gregtech/recipes/mixer.json diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index cb4efd8dd9..fecc6df997 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -32,10 +32,9 @@ public class GT_MachineRecipe implements Comparable { /** * Use this to just disable a specific Recipe, but the Configuration enables that already for every single Recipe. */ - public boolean mEnabled = true; + private boolean mEnabled = true; /** * Use this to make a recipe enabled depending on a certain config setting. - * TODO: implement map for looking up said config settings. */ public String mEnableCondition = null; /** @@ -156,6 +155,13 @@ public GT_MachineRecipe setEnabled(boolean aEnabled) { return this; } + public boolean isEnabled() { + if (mEnableCondition != null) { + return GT_RecipeConditions.getConditionValue(mEnableCondition) ^ mInvertCondition; + } + return mEnabled; + } + public GT_MachineRecipe setEnableCondition(String aEnableCondition) { mEnableCondition = aEnableCondition; return this; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java new file mode 100644 index 0000000000..9633332606 --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java @@ -0,0 +1,27 @@ +package gregtech.api.recipes; + +import java.lang.reflect.Field; +import java.util.HashMap; +import java.util.Map; + +/** + * + * Maps the conditions that certain recipes might need to be enabled or disabled based on. + * These are boolean fields in other classes. + */ +public class GT_RecipeConditions { + private final static Map sConditionMap = new HashMap<>(100); + + private GT_RecipeConditions() { + // Utility class + } + + public static boolean getConditionValue(String aConditionName) { + try { + return sConditionMap.get(aConditionName).getBoolean(null); + } catch (IllegalArgumentException | IllegalAccessException e) { + // ignore exceptions + } + return false; + } +} diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java index 228fc6b01b..b5249dc7e0 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -1,6 +1,5 @@ package gregtech.api.recipes; -import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import java.util.Collections; import java.util.List; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java new file mode 100644 index 0000000000..a483506a96 --- /dev/null +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -0,0 +1,331 @@ +package gregtech.api.recipes; + +import com.google.gson.stream.JsonReader; +import cpw.mods.fml.common.registry.GameRegistry; +import gregtech.api.enums.GT_Values; +import gregtech.api.util.GT_Log; +import gregtech.api.util.GT_OreDictUnificator; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.JsonToNBT; +import net.minecraft.nbt.NBTException; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fluids.FluidStack; + +/** + * + * Reads a list of GregTech machine recipes from JSON. + */ +public class GT_RecipeListJsonReader { + + private GT_RecipeListJsonReader() { + // Utility class, private constructor. + } + + public static List readRecipes(JsonReader aReader) { + List rList = new ArrayList<>(100); + try { + aReader.beginArray(); + while (aReader.hasNext()) { + rList.add(readRecipe(aReader)); + } + aReader.endArray(); + } catch (IOException e) { + e.printStackTrace(GT_Log.err); + } + return rList; + } + + private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOException { + List tInputs = new ArrayList<>(10); + List tOutputs = new ArrayList<>(10); + List tFluidInputs = new ArrayList<>(10); + List tFluidOutputs = new ArrayList<>(10); + int tDuration = 0; + int tEUt = 0; + int tSpecialValue = 0; + boolean tEnabled = true; + String tEnableCondition = null; + boolean tInvertCondition = false; + boolean tHidden = false; + aReader.beginObject(); + while (aReader.hasNext()) { + String tName = aReader.nextName(); + switch (tName) { + case "inputs": + aReader.beginArray(); + while (aReader.hasNext()) { + tInputs.add(readInput(aReader)); + } + aReader.endArray(); + break; + case "outputs": + aReader.beginArray(); + while (aReader.hasNext()) { + tOutputs.add(readOutput(aReader)); + } + aReader.endArray(); + break; + case "inputFluids": + case "fluidInputs": + aReader.beginArray(); + while (aReader.hasNext()) { + String tFluidName = null; + int tFluidAmount = 0; + aReader.beginObject(); + while (aReader.hasNext()) { + String tSubName = aReader.nextName(); + if ("fluid".equals(tSubName)) { + tFluidName = aReader.nextString(); + } else if ("amount".equals(tSubName)) { + tFluidAmount = aReader.nextInt(); + } + } + aReader.endObject(); + if (FluidRegistry.isFluidRegistered(tFluidName)) { + tFluidInputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); + } else { + GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); + } + } + aReader.endArray(); + break; + case "outputFluids": + case "fluidOutputs": + aReader.beginArray(); + while (aReader.hasNext()) { + String tFluidName = null; + int tFluidAmount = 0; + aReader.beginObject(); + while (aReader.hasNext()) { + String tSubName = aReader.nextName(); + if ("fluid".equals(tSubName)) { + tFluidName = aReader.nextString(); + } else if ("amount".equals(tSubName)) { + tFluidAmount = aReader.nextInt(); + } + } + aReader.endObject(); + if (FluidRegistry.isFluidRegistered(tFluidName)) { + tFluidOutputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); + } else { + GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); + } + } + aReader.endArray(); + break; + case "duration": + tDuration = aReader.nextInt(); + break; + case "EUt": + tEUt = aReader.nextInt(); + break; + case "specialValue": + String tSpecialValueString = aReader.nextString(); + if ("lowgravity".equals(tSpecialValueString)) { + tSpecialValue = -100; + } else if ("cleanroom".equals(tSpecialValueString)) { + tSpecialValue = -200; + } else { + tSpecialValue = Integer.valueOf(tSpecialValueString); + } + break; + case "enabled": + tEnabled = aReader.nextBoolean(); + break; + case "enableCondition": + tEnableCondition = aReader.nextString(); + if (tEnableCondition.startsWith("!")) { + tInvertCondition = true; + tEnableCondition = tEnableCondition.substring(1); + } + break; + case "hidden": + tHidden = aReader.nextBoolean(); + break; + default: + throw new AssertionError(); + } + } + aReader.endObject(); + if (!tOutputs.isEmpty() || !tFluidOutputs.isEmpty()) { + GT_MachineRecipe rRecipe = new GT_MachineRecipe(tInputs.toArray(new GT_RecipeInput[0]), tOutputs.toArray(new GT_RecipeOutput[0]), + tFluidInputs.toArray(new FluidStack[0]), tFluidOutputs.toArray(new FluidStack[0])); + rRecipe.setDuration(tDuration); + rRecipe.setEUt(tEUt); + rRecipe.setSpecialValue(tSpecialValue); + rRecipe.setEnabled(tEnabled); + rRecipe.setEnableCondition(tEnableCondition); + rRecipe.setInvertCondition(tInvertCondition); + rRecipe.setHidden(tHidden); + return rRecipe; + } + return null; + } + + private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { + ItemStack tStack = null; + List tAlts = new ArrayList<>(5); + String tOreName = null; + int tCount = -1; + String tNbtData = null; + aReader.beginObject(); + while (aReader.hasNext()) { + String tEntryName = aReader.nextName(); + switch (tEntryName) { + case "item": + String tItemFullName = aReader.nextString(); + tStack = StringtoItemStack(tItemFullName); + break; + case "ore": + case "oredict": + tOreName = aReader.nextString(); + break; + case "count": + tCount = aReader.nextInt(); + break; + case "nbt": + tNbtData = aReader.nextString(); + break; + case "alts": + aReader.beginArray(); + while (aReader.hasNext()) { + ItemStack tAltStack = null; + String tAltNbtData = null; + String tAltOreName = null; + aReader.beginObject(); + while (aReader.hasNext()) { + String tAltEntryName = aReader.nextName(); + if ("item".equals(tAltEntryName)) { + tAltStack = StringtoItemStack(aReader.nextString()); + } else if ("ore".equals(tAltEntryName)) { + tAltOreName = aReader.nextString(); + }else if ("nbt".equals(tAltEntryName)) { + tAltNbtData = aReader.nextString(); + } + } + aReader.endObject(); + if (tAltStack != null && tAltNbtData != null) { + try { + tAltStack.setTagCompound((NBTTagCompound) JsonToNBT.func_150315_a(tAltNbtData)); + } catch (NBTException e) { + e.printStackTrace(GT_Log.err); + } + } + if (tAltOreName != null) { + tAlts.addAll(GT_OreDictUnificator.getOres(tAltOreName)); + } else { + tAlts.add(tAltStack); + } + } + aReader.endArray(); + break; + case "displayName": + case "comment": + aReader.nextString(); + // cosmetic, to make recipe more readable, in case item's internal name is something like + // gregtech:gt.metaitem.02:30500 + break; + default: + throw new AssertionError(); + } + } + aReader.endObject(); + if (tCount >= 0) { + if (tOreName != null) { + return new GT_RecipeInputOredict(tOreName, tCount); + } else if (!tAlts.isEmpty()) { + tAlts.get(0).stackSize = tCount; + return new GT_RecipeInputAlts(tAlts.toArray(new ItemStack[0])); + } else if (tStack != null) { + tStack.stackSize = tCount; + if (tNbtData != null) { + try { + tStack.setTagCompound((NBTTagCompound) JsonToNBT.func_150315_a(tNbtData)); + } catch (NBTException e) { + e.printStackTrace(GT_Log.err); + } + } + return new GT_RecipeInput(tStack); + } + } + return null; + } + + private static ItemStack StringtoItemStack(String aItemString) { + String[] tPieces = aItemString.split(":"); + int tMeta = 0; + if (tPieces.length >= 3) { + if ("*".equals(tPieces[2])) { + tMeta = GT_Values.W; + } else { + tMeta = Integer.valueOf(tPieces[2]); + } + } + if (tPieces.length >= 2) { + ItemStack rStack = GameRegistry.findItemStack(tPieces[0], tPieces[1], 1); + rStack.setItemDamage(tMeta); + return rStack; + } + return null; + } + + private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException { + ItemStack tStack = null; + String tOreName = null; + int tCount = -1; + float tChance = 1.0f; + String tNbtData = null; + aReader.beginObject(); + while (aReader.hasNext()) { + String tEntryName = aReader.nextName(); + switch (tEntryName) { + case "item": + String tItemFullName = aReader.nextString(); + tStack = StringtoItemStack(tItemFullName); + break; + case "ore": + case "oredict": + tOreName = aReader.nextString(); + break; + case "count": + tCount = aReader.nextInt(); + break; + case "nbt": + tNbtData = aReader.nextString(); + break; + case "chance": + tChance = (float) aReader.nextDouble(); + break; + case "displayName": + case "comment": + // cosmetic, to make recipe more readable, in case item's internal name is something like + // gregtech:gt.metaitem.02:30500 + break; + default: + throw new AssertionError(); + } + } + aReader.endObject(); + if (tCount >= 0) { + if (tOreName != null) { + return new GT_RecipeOutput(tOreName, tCount); + } else if (tStack != null) { + tStack.stackSize = tCount; + if (tNbtData != null) { + try { + tStack.setTagCompound((NBTTagCompound) JsonToNBT.func_150315_a(tNbtData)); + } catch (NBTException e) { + e.printStackTrace(GT_Log.err); + } + } + return new GT_RecipeOutput(tStack, tChance); + } + } + return null; + } + +} diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index b639f53d46..6aab5c66b4 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -356,6 +356,12 @@ public GT_MachineRecipe add(GT_MachineRecipe aRecipe) { return addToItemMap(aRecipe); } + public void addAll(Collection aRecipeList) { + for (GT_MachineRecipe tRecipe : aRecipeList) { + add(tRecipe); + } + } + protected GT_MachineRecipe addToFluidMap(GT_MachineRecipe aRecipe) { for (FluidStack aFluid : aRecipe.mFluidInputs) { if (aFluid != null) { @@ -454,7 +460,7 @@ public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_Mach // Check the Recipe which has been used last time in order to not have to search for it again, if possible. if (aRecipe != null) { if (!aRecipe.mFakeRecipe && aRecipe.mCanBeBuffered && aRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { - if (aRecipe.mEnabled && aVoltage * mAmperage >= aRecipe.mEUt) { + if (aRecipe.isEnabled() && aVoltage * mAmperage >= aRecipe.mEUt) { return aRecipe; } return null; @@ -469,7 +475,7 @@ public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_Mach if (tRecipes != null) { for (GT_MachineRecipe tRecipe : tRecipes) { if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { - if (tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt) { + if (tRecipe.isEnabled() && aVoltage * mAmperage >= tRecipe.mEUt) { return tRecipe; } return null; @@ -480,7 +486,7 @@ public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_Mach if (tRecipes != null) { for (GT_MachineRecipe tRecipe : tRecipes) { if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { - if (tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt) { + if (tRecipe.isEnabled() && aVoltage * mAmperage >= tRecipe.mEUt) { return tRecipe; } return null; @@ -499,7 +505,7 @@ public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_Mach if (tRecipes != null) { for (GT_MachineRecipe tRecipe : tRecipes) { if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { - if (tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt) { + if (tRecipe.isEnabled() && aVoltage * mAmperage >= tRecipe.mEUt) { return tRecipe; } return null; diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index d43482306d..a55b0ea2e0 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -1,18 +1,22 @@ package gregtech.loaders.postload; import codechicken.nei.api.API; +import com.google.gson.stream.JsonReader; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.registry.GameRegistry; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.*; import gregtech.api.objects.MaterialStack; +import gregtech.api.recipes.GT_RecipeListJsonReader; +import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import gregtech.common.GT_DummyWorld; import gregtech.common.items.GT_MetaGenerated_Item_03; import ic2.api.recipe.ILiquidHeatExchangerManager.HeatExchangeProperty; import ic2.api.recipe.Recipes; import ic2.core.Ic2Items; +import java.io.InputStreamReader; import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; import mods.railcraft.common.items.RailcraftToolItems; import net.minecraft.init.Blocks; @@ -66,10 +70,12 @@ public void run() { GT_Utility.removeIC2BottleRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("UranFuel", 1), ic2.api.recipe.Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorUraniumSimple", 1, 1)); GT_Utility.removeIC2BottleRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("MOXFuel", 1), ic2.api.recipe.Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorMOXSimple", 1, 1)); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.wheat_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(10), 10000, 32, 2); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.melon_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(10), 10000, 32, 2); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.pumpkin_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(10), 10000, 32, 2); - GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_Rape.get(1, new Object[0]), null, Materials.SeedOil.getFluid(50), 10000, 32, 2); + try { + GT_RecipeMap.sFluidExtractionRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fluid_extractor.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } try { GT_DummyWorld tWorld = (GT_DummyWorld) GT_Values.DW; while (tWorld.mRandom.mIterationStep > 0) { @@ -92,36 +98,13 @@ public void run() { GT_Values.RA.addPrinterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), FluidRegistry.getFluidStack("squidink", 144), ItemList.Tool_DataStick.getWithName(0L, "With Scanned Book Data", new Object[0]), ItemList.Paper_Printed_Pages.get(1L, new Object[0]), 400, 2); GT_Values.RA.addPrinterRecipe(new ItemStack(Items.map, 1, 32767), FluidRegistry.getFluidStack("squidink", 144), ItemList.Tool_DataStick.getWithName(0L, "With Scanned Map Data", new Object[0]), new ItemStack(Items.filled_map, 1, 0), 400, 2); GT_Values.RA.addPrinterRecipe(new ItemStack(Items.book, 1, 32767), FluidRegistry.getFluidStack("squidink", 144), GT_Values.NI, GT_Utility.getWrittenBook("Manual_Printer", ItemList.Book_Written_01.get(1L, new Object[0])), 400, 2); - for (OrePrefixes tPrefix : Arrays.asList(new OrePrefixes[]{OrePrefixes.dust, OrePrefixes.dustSmall, OrePrefixes.dustTiny})) { - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.EnderPearl, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Blaze, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.EnderEye, 1L * tPrefix.mMaterialAmount), (int) (100L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Gold, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Silver, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Electrum, 2L * tPrefix.mMaterialAmount), (int) (200L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Iron, 2L), GT_OreDictUnificator.get(tPrefix, Materials.Nickel, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Invar, 3L * tPrefix.mMaterialAmount), (int) (300L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Iron, 4L), GT_OreDictUnificator.get(tPrefix, Materials.Invar, 3L), GT_OreDictUnificator.get(tPrefix, Materials.Manganese, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Chrome, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.StainlessSteel, 9L * tPrefix.mMaterialAmount), (int) (900L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Iron, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Aluminium, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Chrome, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Kanthal, 3L * tPrefix.mMaterialAmount), (int) (300L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Copper, 3L), GT_OreDictUnificator.get(tPrefix, Materials.Barium, 2L), GT_OreDictUnificator.get(tPrefix, Materials.Yttrium, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.YttriumBariumCuprate, 6L * tPrefix.mMaterialAmount), (int) (600L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Copper, 3L), GT_OreDictUnificator.get(tPrefix, Materials.Zinc, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Brass, 4L * tPrefix.mMaterialAmount), (int) (400L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Copper, 3L), GT_OreDictUnificator.get(tPrefix, Materials.Tin, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Bronze, 4L * tPrefix.mMaterialAmount), (int) (400L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Copper, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Nickel, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Cupronickel, 2L * tPrefix.mMaterialAmount), (int) (200L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Copper, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Gold, 4L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.RoseGold, 5L * tPrefix.mMaterialAmount), (int) (500L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Copper, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Silver, 4L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.SterlingSilver, 5L * tPrefix.mMaterialAmount), (int) (500L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Copper, 3L), GT_OreDictUnificator.get(tPrefix, Materials.Electrum, 2L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.BlackBronze, 5L * tPrefix.mMaterialAmount), (int) (500L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Bismuth, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Brass, 4L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.BismuthBronze, 5L * tPrefix.mMaterialAmount), (int) (500L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.BlackBronze, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Nickel, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Steel, 3L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.BlackSteel, 5L * tPrefix.mMaterialAmount), (int) (500L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.SterlingSilver, 1L), GT_OreDictUnificator.get(tPrefix, Materials.BismuthBronze, 1L), GT_OreDictUnificator.get(tPrefix, Materials.BlackSteel, 4L), GT_OreDictUnificator.get(tPrefix, Materials.Steel, 2L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.RedSteel, 8L * tPrefix.mMaterialAmount), (int) (800L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.RoseGold, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Brass, 1L), GT_OreDictUnificator.get(tPrefix, Materials.BlackSteel, 4L), GT_OreDictUnificator.get(tPrefix, Materials.Steel, 2L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.BlueSteel, 8L * tPrefix.mMaterialAmount), (int) (800L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Cobalt, 5L), GT_OreDictUnificator.get(tPrefix, Materials.Chrome, 2L), GT_OreDictUnificator.get(tPrefix, Materials.Nickel, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Molybdenum, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Ultimet, 9L * tPrefix.mMaterialAmount), (int) (900L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Brass, 7L), GT_OreDictUnificator.get(tPrefix, Materials.Aluminium, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Cobalt, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.CobaltBrass, 9L * tPrefix.mMaterialAmount), (int) (900L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Saltpeter, 2L), GT_OreDictUnificator.get(tPrefix, Materials.Sulfur, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Coal, 3L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * tPrefix.mMaterialAmount), (int) (600L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Saltpeter, 2L), GT_OreDictUnificator.get(tPrefix, Materials.Sulfur, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Charcoal, 3L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * tPrefix.mMaterialAmount), (int) (600L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Saltpeter, 2L), GT_OreDictUnificator.get(tPrefix, Materials.Sulfur, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Carbon, 3L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * tPrefix.mMaterialAmount), (int) (600L * tPrefix.mMaterialAmount / 3628800L), 8); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Indium, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Gallium, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Phosphorus, 1L), null, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.IndiumGalliumPhosphide, 3L * tPrefix.mMaterialAmount), (int) (200L * tPrefix.mMaterialAmount / 3628800L), 8); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Brick, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Clay, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Fireclay, 2L * tPrefix.mMaterialAmount), (int) (200L * tPrefix.mMaterialAmount / 3628800L), 8); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Nickel, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Zinc, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Iron, 4L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.FerriteMixture, 6L * tPrefix.mMaterialAmount), (int) (200L * tPrefix.mMaterialAmount / 3628800L), 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Boron, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Glass, 7L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.BorosilicateGlass, 8L * tPrefix.mMaterialAmount), (int) (200L * tPrefix.mMaterialAmount / 3628800L), 8); + try { + GT_RecipeMap.sMixerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/mixer.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); } + GT_Values.RA.addMixerRecipe(new ItemStack(Items.rotten_flesh, 1, 0), new ItemStack(Items.fermented_spider_eye, 1, 0), ItemList.IC2_Scrap.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 1L), FluidRegistry.getFluidStack("potion.purpledrink", 750), FluidRegistry.getFluidStack("sludge", 1000), ItemList.Food_Chum.get(4L, new Object[0]), 128, 24); GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(1000L), GT_Values.NF, ItemList.Food_Dough.get(2L, new Object[0]), 32, 8); GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), ItemList.Food_PotatoChips.get(1L, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.Food_ChiliChips.get(1L, new Object[0]), 32, 8); diff --git a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json new file mode 100644 index 0000000000..6cd6cb1ac0 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json @@ -0,0 +1,18 @@ +[ +{"inputs":[{"item": "minecraft:wheat_seeds", "count": 1}], +"fluidOutputs":[{"fluid": "seedoil", "amount": 10}], +"duration": 32, +"EUt": 2}, +{"inputs":[{"item": "minecraft:melon_seeds", "count": 1}], +"fluidOutputs":[{"fluid": "seedoil", "amount": 10}], +"duration": 32, +"EUt": 2}, +{"inputs":[{"item": "minecraft:pumpkin_seeds", "count": 1}], +"fluidOutputs":[{"fluid": "seedoil", "amount": 10}], +"duration": 32, +"EUt": 2}, +{"inputs":[{"item": "gregtech:gt.metaitem.02:32557", "comment": "rapeseed", "count": 1}], +"fluidOutputs":[{"fluid": "seedoil", "amount": 50}], +"duration": 32, +"EUt": 2} +] diff --git a/src/main/resources/assets/gregtech/recipes/mixer.json b/src/main/resources/assets/gregtech/recipes/mixer.json new file mode 100644 index 0000000000..f4b34b92e2 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/mixer.json @@ -0,0 +1,278 @@ +[ +{"inputs":[{"ore": "dustEnderPearl", "count": 1}, {"ore": "dustBlaze", "count": 1}], +"outputs":[{"ore": "dustEnderEye", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallEnderPearl", "count": 1}, {"ore": "dustSmallBlaze", "count": 1}], +"outputs":[{"ore": "dustSmallEnderEye", "count": 1}], +"duration": 25, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyEnderPearl", "count": 1}, {"ore": "dustTinyBlaze", "count": 1}], +"outputs":[{"ore": "dustTinyEnderEye", "count": 1}], +"duration": 11, +"EUt": 8}, +{"inputs":[{"ore": "dustGold", "count": 1}, {"ore": "dustSilver", "count": 1}], +"outputs":[{"ore": "dustElectrum", "count": 2}], +"duration": 200, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallGold", "count": 1}, {"ore": "dustSmallSilver", "count": 1}], +"outputs":[{"ore": "dustSmallElectrum", "count": 2}], +"duration": 50, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyGold", "count": 1}, {"ore": "dustTinySilver", "count": 1}], +"outputs":[{"ore": "dustTinyElectrum", "count": 2}], +"duration": 22, +"EUt": 8}, +{"inputs":[{"ore": "dustIron", "count": 2}, {"ore": "dustNickel", "count": 1}], +"outputs":[{"ore": "dustInvar", "count": 3}], +"duration": 300, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallIron", "count": 2}, {"ore": "dustSmallNickel", "count": 1}], +"outputs":[{"ore": "dustSmallInvar", "count": 3}], +"duration": 75, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyIron", "count": 2}, {"ore": "dustTinyNickel", "count": 1}], +"outputs":[{"ore": "dustTinyInvar", "count": 3}], +"duration": 33, +"EUt": 8}, +{"inputs":[{"ore": "dustIron", "count": 4}, {"ore": "dustInvar", "count": 3}, {"ore": "dustManganese", "count": 1}, {"ore": "dustChrome", "count": 1}], +"outputs":[{"ore": "dustStainlessSteel", "count": 9}], +"duration": 900, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallIron", "count": 4}, {"ore": "dustSmallInvar", "count": 3}, {"ore": "dustSmallManganese", "count": 1}, {"ore": "dustSmallChrome", "count": 1}], +"outputs":[{"ore": "dustSmallStainlessSteel", "count": 9}], +"duration": 225, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyIron", "count": 4}, {"ore": "dustTinyInvar", "count": 3}, {"ore": "dustTinyManganese", "count": 1}, {"ore": "dustTinyChrome", "count": 1}], +"outputs":[{"ore": "dustTinyStainlessSteel", "count": 9}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustIron", "count": 1}, {"ore": "dustAluminium", "count": 1}, {"ore": "dustChrome", "count": 1}], +"outputs":[{"ore": "dustKanthal", "count": 3}], +"duration": 300, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallIron", "count": 1}, {"ore": "dustSmallAluminium", "count": 1}, {"ore": "dustSmallChrome", "count": 1}], +"outputs":[{"ore": "dustSmallKanthal", "count": 3}], +"duration": 75, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyIron", "count": 1}, {"ore": "dustTinyAluminium", "count": 1}, {"ore": "dustTinyChrome", "count": 1}], +"outputs":[{"ore": "dustTinyKanthal", "count": 3}], +"duration": 33, +"EUt": 8}, +{"inputs":[{"ore": "dustCopper", "count": 3}, {"ore": "dustBarium", "count": 2}, {"ore": "dustYttrium", "count": 1}], +"outputs":[{"ore": "dustYttriumBariumCuprate", "count": 6}], +"duration": 600, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallCopper", "count": 3}, {"ore": "dustSmallBarium", "count": 2}, {"ore": "dustSmallYttrium", "count": 1}], +"outputs":[{"ore": "dustSmallYttriumBariumCuprate", "count": 6}], +"duration": 150, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyCopper", "count": 3}, {"ore": "dustTinyBarium", "count": 2}, {"ore": "dustTinyYttrium", "count": 1}], +"outputs":[{"ore": "dustTinyYttriumBariumCuprate", "count": 6}], +"duration": 66, +"EUt": 8}, +{"inputs":[{"ore": "dustCopper", "count": 3}, {"ore": "dustZinc", "count": 1}], +"outputs":[{"ore": "dustBrass", "count": 4}], +"duration": 400, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallCopper", "count": 3}, {"ore": "dustSmallZinc", "count": 1}], +"outputs":[{"ore": "dustSmallBrass", "count": 4}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyCopper", "count": 3}, {"ore": "dustTinyZinc", "count": 1}], +"outputs":[{"ore": "dustTinyBrass", "count": 4}], +"duration": 44, +"EUt": 8}, +{"inputs":[{"ore": "dustCopper", "count": 3}, {"ore": "dustTin", "count": 1}], +"outputs":[{"ore": "dustBronze", "count": 4}], +"duration": 400, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallCopper", "count": 3}, {"ore": "dustSmallTin", "count": 1}], +"outputs":[{"ore": "dustSmallBronze", "count": 4}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyCopper", "count": 3}, {"ore": "dustTinyTin", "count": 1}], +"outputs":[{"ore": "dustTinyBronze", "count": 4}], +"duration": 44, +"EUt": 8}, +{"inputs":[{"ore": "dustCopper", "count": 1}, {"ore": "dustNickel", "count": 1}], +"outputs":[{"ore": "dustCupronickel", "count": 2}], +"duration": 200, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallCopper", "count": 1}, {"ore": "dustSmallNickel", "count": 1}], +"outputs":[{"ore": "dustSmallCupronickel", "count": 2}], +"duration": 50, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyCopper", "count": 1}, {"ore": "dustTinyNickel", "count": 1}], +"outputs":[{"ore": "dustTinyCupronickel", "count": 2}], +"duration": 22, +"EUt": 8}, +{"inputs":[{"ore": "dustCopper", "count": 1}, {"ore": "dustGold", "count": 4}], +"outputs":[{"ore": "dustRoseGold", "count": 5}], +"duration": 500, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallCopper", "count": 1}, {"ore": "dustSmallGold", "count": 4}], +"outputs":[{"ore": "dustSmallRoseGold", "count": 5}], +"duration": 125, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyCopper", "count": 1}, {"ore": "dustTinyGold", "count": 4}], +"outputs":[{"ore": "dustTinyRoseGold", "count": 5}], +"duration": 55, +"EUt": 8}, +{"inputs":[{"ore": "dustCopper", "count": 1}, {"ore": "dustSilver", "count": 4}], +"outputs":[{"ore": "dustSterlingSilver", "count": 5}], +"duration": 500, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallCopper", "count": 1}, {"ore": "dustSmallSilver", "count": 4}], +"outputs":[{"ore": "dustSmallSterlingSilver", "count": 5}], +"duration": 125, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyCopper", "count": 1}, {"ore": "dustTinyGold", "count": 4}], +"outputs":[{"ore": "dustTinySterlingSilver", "count": 5}], +"duration": 55, +"EUt": 8}, +{"inputs":[{"ore": "dustCopper", "count": 3}, {"ore": "dustElectrum", "count": 2}], +"outputs":[{"ore": "dustBlackBronze", "count": 5}], +"duration": 500, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallCopper", "count": 3}, {"ore": "dustSmallElectrum", "count": 2}], +"outputs":[{"ore": "dustSmallBlackBronze", "count": 5}], +"duration": 125, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyCopper", "count": 3}, {"ore": "dustTinyElectrum", "count": 2}], +"outputs":[{"ore": "dustTinyBlackBronze", "count": 5}], +"duration": 55, +"EUt": 8}, +{"inputs":[{"ore": "dustBismuth", "count": 1}, {"ore": "dustBrass", "count": 4}], +"outputs":[{"ore": "dustBismuthBronze", "count": 5}], +"duration": 500, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallBismuth", "count": 1}, {"ore": "dustSmallBrass", "count": 4}], +"outputs":[{"ore": "dustSmallBismuthBronze", "count": 5}], +"duration": 125, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyBismuth", "count": 1}, {"ore": "dustTinyBrass", "count": 4}], +"outputs":[{"ore": "dustTinyBismuthBronze", "count": 5}], +"duration": 55, +"EUt": 8}, +{"inputs":[{"ore": "dustBlackBronze", "count": 1}, {"ore": "dustNickel", "count": 1}, {"ore": "dustSteel", "count": 3}], +"outputs":[{"ore": "dustBlackSteel", "count": 5}], +"duration": 500, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallBlackBronze", "count": 1}, {"ore": "dustSmallNickel", "count": 1}, {"ore": "dustSmallSteel", "count": 3}], +"outputs":[{"ore": "dustSmallBlackSteel", "count": 5}], +"duration": 125, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyBlackBronze", "count": 1}, {"ore": "dustTinyNickel", "count": 1}, {"ore": "dustTinySteel", "count": 3}], +"outputs":[{"ore": "dustTinyBlackSteel", "count": 5}], +"duration": 55, +"EUt": 8}, +{"inputs":[{"ore": "dustSterlingSilver", "count": 1}, {"ore": "dustBismuthBronze", "count": 1}, {"ore": "dustBlackSteel", "count": 4}, {"ore": "dustSteel", "count": 2}], +"outputs":[{"ore": "dustRedSteel", "count": 8}], +"duration": 800, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallSterlingSilver", "count": 1}, {"ore": "dustSmallBismuthBronze", "count": 1}, {"ore": "dustSmallBlackSteel", "count": 4}, {"ore": "dustSmallSteel", "count": 2}], +"outputs":[{"ore": "dustSmallRedSteel", "count": 8}], +"duration": 200, +"EUt": 8}, +{"inputs":[{"ore": "dustTinySterlingSilver", "count": 4}, {"ore": "dustTinyBismuthBronze", "count": 3}, {"ore": "dustTinyBlackSteel", "count": 4}, {"ore": "dustTinySteel", "count": 2}], +"outputs":[{"ore": "dustTinyRedSteel", "count": 8}], +"duration": 88, +"EUt": 8}, +{"inputs":[{"ore": "dustRoseGold", "count": 1}, {"ore": "dustBrass", "count": 1}, {"ore": "dustBlackSteel", "count": 4}, {"ore": "dustSteel", "count": 2}], +"outputs":[{"ore": "dustBlueSteel", "count": 8}], +"duration": 800, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallRoseGold", "count": 1}, {"ore": "dustSmallBrass", "count": 1}, {"ore": "dustSmallBlackSteel", "count": 4}, {"ore": "dustSmallSteel", "count": 2}], +"outputs":[{"ore": "dustSmallBlueSteel", "count": 8}], +"duration": 200, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyRoseGold", "count": 4}, {"ore": "dustTinyBrass", "count": 3}, {"ore": "dustTinyBlackSteel", "count": 4}, {"ore": "dustTinySteel", "count": 2}], +"outputs":[{"ore": "dustTinyBlueSteel", "count": 8}], +"duration": 88, +"EUt": 8}, +{"inputs":[{"ore": "dustCobalt", "count": 5}, {"ore": "dustChrome", "count": 2}, {"ore": "dustNickel", "count": 1}, {"ore": "dustMolybdenum", "count": 1}], +"outputs":[{"ore": "dustUltimet", "count": 9}], +"duration": 900, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallCobalt", "count": 5}, {"ore": "dustSmallChrome", "count": 2}, {"ore": "dustSmallNickel", "count": 1}, {"ore": "dustSmallMolybdenum", "count": 1}], +"outputs":[{"ore": "dustSmallUltimet", "count": 9}], +"duration": 225, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyCobalt", "count": 5}, {"ore": "dustTinyChrome", "count": 2}, {"ore": "dustTinyNickel", "count": 1}, {"ore": "dustTinyMolybdenum", "count": 1}], +"outputs":[{"ore": "dustTinyUltimet", "count": 9}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustBrass", "count": 7}, {"ore": "dustAluminium", "count": 1}, {"ore": "dustCobalt", "count": 1}], +"outputs":[{"ore": "dustCobaltBrass", "count": 9}], +"duration": 900, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallBrass", "count": 7}, {"ore": "dustSmallAluminium", "count": 1}, {"ore": "dustSmallCobalt", "count": 1}], +"outputs":[{"ore": "dustSmallCobaltBrass", "count": 9}], +"duration": 225, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyBrass", "count": 7}, {"ore": "dustTinyAluminium", "count": 1}, {"ore": "dustTinyCobalt", "count": 1}], +"outputs":[{"ore": "dustTinyCobaltBrass", "count": 9}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustSaltpeter", "count": 2}, {"ore": "dustSulfur", "count": 1}, {"alts": [{"ore": "dustCoal"}, {"ore": "dustCharcoal"}, {"ore": "dustCarbon"}], "count": 3}], +"outputs":[{"ore": "dustGunpowder", "count": 6}], +"duration": 600, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallSaltpeter", "count": 2}, {"ore": "dustSmallSulfur", "count": 1}, {"alts": [{"ore": "dustSmallCoal"}, {"ore": "dustSmallCharcoal"}, {"ore": "dustSmallCarbon"}], "count": 3}], +"outputs":[{"ore": "dustSmallGunpowder", "count": 6}], +"duration": 150, +"EUt": 8}, +{"inputs":[{"ore": "dustTinySaltpeter", "count": 2}, {"ore": "dustTinySulfur", "count": 1}, {"alts": [{"ore": "dustTinyCoal"}, {"ore": "dustTinyCharcoal"}, {"ore": "dustTinyCarbon"}], "count": 3}], +"outputs":[{"ore": "dustTinyGunpowder", "count": 6}], +"duration": 66, +"EUt": 8}, +{"inputs":[{"ore": "dustIndium", "count": 1}, {"ore": "dustGallium", "count": 1}, {"ore": "dustPhosphorus", "count": 1}], +"outputs":[{"ore": "dustIndiumGalliumPhosphide", "count": 3}], +"duration": 200, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallIndium", "count": 1}, {"ore": "dustSmallGallium", "count": 1}, {"ore": "dustSmallPhosphorus", "count": 1}], +"outputs":[{"ore": "dustSmallIndiumGalliumPhosphide", "count": 3}], +"duration": 50, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyIndium", "count": 1}, {"ore": "dustTinyGallium", "count": 1}, {"ore": "dustTinyPhosphorus", "count": 1}], +"outputs":[{"ore": "dustTinyIndiumGalliumPhosphide", "count": 3}], +"duration": 22, +"EUt": 8}, +{"inputs":[{"ore": "dustBrick", "count": 1}, {"ore": "dustClay", "count": 1}], +"outputs":[{"ore": "dustFireclay", "count": 2}], +"duration": 200, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallBrick", "count": 1}, {"ore": "dustSmallClay", "count": 1}], +"outputs":[{"ore": "dustSmallFireclay", "count": 2}], +"duration": 50, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyBrick", "count": 1}, {"ore": "dustTinyClay", "count": 1}], +"outputs":[{"ore": "dustTinyFireclay", "count": 2}], +"duration": 22, +"EUt": 8}, +{"inputs":[{"ore": "dustNickel", "count": 1}, {"ore": "dustZinc", "count": 1}, {"ore": "dustIron", "count": 4}], +"outputs":[{"ore": "dustFerriteMixture", "count": 6}], +"duration": 200, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallNickel", "count": 1}, {"ore": "dustSmallZinc", "count": 1}, {"ore": "dustSmallIron", "count": 4}], +"outputs":[{"ore": "dustSmallFerriteMixture", "count": 6}], +"duration": 50, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyNickel", "count": 1}, {"ore": "dustTinyZinc", "count": 1}, {"ore": "dustTinyIron", "count": 4}], +"outputs":[{"ore": "dustTinyFerriteMixture", "count": 6}], +"duration": 22, +"EUt": 8}, +{"inputs":[{"ore": "dustBoron", "count": 1}, {"ore": "dustGlass", "count": 7}], +"outputs":[{"ore": "dustBorosilicateGlass", "count": 8}], +"duration": 200, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallBoron", "count": 1}, {"ore": "dustSmallGlass", "count": 7}], +"outputs":[{"ore": "dustSmallBorosilicateGlass", "count": 8}], +"duration": 50, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyBoron", "count": 1}, {"ore": "dustTinyGlass", "count": 7}], +"outputs":[{"ore": "dustTinyBorosilicateGlass", "count": 8}], +"duration": 22, +"EUt": 8} +] From b9f3cbc15ef0c78d44db67859a452a78412e0890 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Mon, 9 Nov 2020 22:10:30 -0800 Subject: [PATCH 11/21] Transferred more mixer recipes to json. Also fixed some temporary issues that appeared during testing. --- .../api/recipes/GT_MachineRecipe.java | 11 + .../api/recipes/GT_RecipeConditions.java | 25 +- .../gregtech/api/recipes/GT_RecipeInput.java | 10 +- .../api/recipes/GT_RecipeInputAlts.java | 6 +- .../api/recipes/GT_RecipeInputOredict.java | 1 - .../api/recipes/GT_RecipeListJsonReader.java | 40 +- .../gregtech/api/recipes/GT_RecipeOutput.java | 16 +- .../postload/GT_MachineRecipeLoader.java | 112 ---- .../gregtech/recipes/fluid_extractor.json | 12 +- .../assets/gregtech/recipes/mixer.json | 485 +++++++++++++++++- 10 files changed, 582 insertions(+), 136 deletions(-) diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index fecc6df997..c091e48e5a 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -257,6 +257,17 @@ public boolean isValidRecipe() { if (mEUt <= 0) return false; if (mInputs.length == 0 && mFluidInputs.length == 0) return false; if (mOutputs.length == 0 && mFluidOutputs.length == 0) return false; + // Ore dictionary inputs/outputs that refer to un-registered entries can be considered invalid. + for (GT_RecipeInput mInput : mInputs) { + if (mInput.getInputStacks().isEmpty()) { + return false; + } + } + for (GT_RecipeOutput mOutput : mOutputs) { + if (mOutput.getShownOutput() == null) { + return false; + } + } return true; } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java index 9633332606..d67554cc87 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java @@ -1,13 +1,20 @@ package gregtech.api.recipes; +import cpw.mods.fml.common.Loader; import java.lang.reflect.Field; import java.util.HashMap; import java.util.Map; +import net.minecraftforge.fluids.FluidRegistry; /** * * Maps the conditions that certain recipes might need to be enabled or disabled based on. - * These are boolean fields in other classes. + * These are mostly boolean fields in other classes.
+ * Plus a few special cases: + *
  • ModLoaded(ModName) - Checks if the named mod is loaded + *
  • ModsLoaded(ModName, ModName, ...) - Checks if all the mods in the comma separated list are loaded. + *
  • FluidExists(FluidName) - Checks if the named fluid has been registered. + *
*/ public class GT_RecipeConditions { private final static Map sConditionMap = new HashMap<>(100); @@ -17,6 +24,22 @@ private GT_RecipeConditions() { } public static boolean getConditionValue(String aConditionName) { + String tModLoadedPattern = "ModLoaded\\(([A-Za-z]+)\\)"; + String tModsLoadedPattern = "ModsLoaded\\(([A-Za-z, ]+)\\)"; + String tFluidExistsPattern = "FluidExists\\(([A-Za-z]+)\\)"; + if (aConditionName.matches(tModLoadedPattern)) { + return Loader.isModLoaded(aConditionName.replaceFirst(tModLoadedPattern, "$1")); + } else if (aConditionName.matches(tModsLoadedPattern)) { + String[] tModNames = aConditionName.replaceFirst(tModsLoadedPattern, "$1").split(", *"); + for (String tModName : tModNames) { + if (!Loader.isModLoaded(tModName)) { + return false; + } + } + return true; + } else if (aConditionName.matches(tFluidExistsPattern)) { + return FluidRegistry.isFluidRegistered(aConditionName.replaceFirst(tFluidExistsPattern, "$1")); + } try { return sConditionMap.get(aConditionName).getBoolean(null); } catch (IllegalArgumentException | IllegalAccessException e) { diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java index b5249dc7e0..21f7322809 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -13,9 +13,14 @@ public class GT_RecipeInput { private final ItemStack mItemStack; + // GT_RecipeInputAlts showed that stack sizes can sometimes be reset to one between recipe creation and viewing in NEI, so keeping a separate field for the count. + protected int mCount; public GT_RecipeInput(ItemStack aItemStack) { mItemStack = aItemStack; + if (mItemStack != null) { + mCount = aItemStack.stackSize; + } } public boolean inputMatches(ItemStack aItemStack) { @@ -43,6 +48,7 @@ public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { * @return either a singleton list of the item stack or list of interchangeable item stacks usable as input for the current recipe. */ public List getInputStacks() { + mItemStack.stackSize = mCount; return Collections.singletonList(mItemStack.copy()); } @@ -60,10 +66,12 @@ public String toString() { } public int getCount() { - return mItemStack.stackSize; + mItemStack.stackSize = mCount; + return mCount; } public void setCount(int aCount) { mItemStack.stackSize = aCount; + mCount = aCount; } } \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java index 8d4243f477..6ba501869e 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java @@ -11,7 +11,6 @@ public class GT_RecipeInputAlts extends GT_RecipeInput { private final ItemStack[] mItems; - private int mCount = Integer.MAX_VALUE; public GT_RecipeInputAlts(ItemStack[] aItems) { super(null); @@ -55,6 +54,9 @@ public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { @Override public List getInputStacks() { + for (ItemStack tItem : mItems) { + tItem.stackSize = mCount; + } return Arrays.asList(mItems); } @@ -83,7 +85,7 @@ public int getCount() { @Override public void setCount(int aCount) { for (ItemStack tItem : mItems) { - tItem.stackSize = tItem.stackSize * aCount / mCount; + tItem.stackSize = aCount; } mCount = aCount; } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java index 6b53bf394d..ed5f4f6df6 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java @@ -12,7 +12,6 @@ public class GT_RecipeInputOredict extends GT_RecipeInput { private final String mOredictName; - private int mCount; public GT_RecipeInputOredict(String aOredictName, int aCount) { super(null); diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java index a483506a96..d296e3fc35 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -3,6 +3,7 @@ import com.google.gson.stream.JsonReader; import cpw.mods.fml.common.registry.GameRegistry; import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_OreDictUnificator; import java.io.IOException; @@ -26,11 +27,15 @@ private GT_RecipeListJsonReader() { } public static List readRecipes(JsonReader aReader) { + aReader.setLenient(true); List rList = new ArrayList<>(100); try { aReader.beginArray(); while (aReader.hasNext()) { - rList.add(readRecipe(aReader)); + GT_MachineRecipe tRecipe = readRecipe(aReader); + if (tRecipe != null) { + rList.add(tRecipe); + } } aReader.endArray(); } catch (IOException e) { @@ -161,7 +166,9 @@ private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOExceptio rRecipe.setEnableCondition(tEnableCondition); rRecipe.setInvertCondition(tInvertCondition); rRecipe.setHidden(tHidden); - return rRecipe; + if (rRecipe.isValidRecipe()) { + return rRecipe; + } } return null; } @@ -238,8 +245,14 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { if (tOreName != null) { return new GT_RecipeInputOredict(tOreName, tCount); } else if (!tAlts.isEmpty()) { - tAlts.get(0).stackSize = tCount; - return new GT_RecipeInputAlts(tAlts.toArray(new ItemStack[0])); + for (ItemStack tAlt : tAlts) { + tAlt.stackSize = tCount; + } + GT_RecipeInputAlts rInput = new GT_RecipeInputAlts(tAlts.toArray(new ItemStack[0])); + System.out.println("Input with alts, before setCount: " + rInput); + rInput.setCount(tCount); + System.out.println("Input with alts, after setCount: " + rInput); + return rInput; } else if (tStack != null) { tStack.stackSize = tCount; if (tNbtData != null) { @@ -266,8 +279,20 @@ private static ItemStack StringtoItemStack(String aItemString) { } } if (tPieces.length >= 2) { - ItemStack rStack = GameRegistry.findItemStack(tPieces[0], tPieces[1], 1); - rStack.setItemDamage(tMeta); + ItemStack rStack = null; + if ("GTItemList".equals(tPieces[0])) { + try { + rStack = ItemList.valueOf(tPieces[1]).get(1, new Object[0]); + return rStack; + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + } else { + rStack = GameRegistry.findItemStack(tPieces[0], tPieces[1], 1); + } + if (rStack != null) { + rStack.setItemDamage(tMeta); + } return rStack; } return null; @@ -302,6 +327,7 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException break; case "displayName": case "comment": + aReader.nextString(); // cosmetic, to make recipe more readable, in case item's internal name is something like // gregtech:gt.metaitem.02:30500 break; @@ -312,7 +338,7 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException aReader.endObject(); if (tCount >= 0) { if (tOreName != null) { - return new GT_RecipeOutput(tOreName, tCount); + return new GT_RecipeOutput(tOreName, tCount, tChance); } else if (tStack != null) { tStack.stackSize = tCount; if (tNbtData != null) { diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java index a124b9870b..3cc3b1625c 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java @@ -81,6 +81,9 @@ public GT_RecipeOutput(ItemStack aItemStack, float aChance) { * @return a stack of items, considering the chances. */ public ItemStack getActualOutput(Random aRandom) { + if (mItemStack == null) { + return null; + } int tCount = 0; if (mChance == 10000) { tCount = mItemStack.stackSize; @@ -100,6 +103,9 @@ public ItemStack getActualOutput(Random aRandom) { * Get the output to show, e.g. for an NEI recipe. */ public ItemStack getShownOutput() { + if (mItemStack == null) { + return null; + } return mItemStack.copy(); } @@ -108,14 +114,22 @@ public int getChance() { } public int getCount() { + if (mItemStack == null) { + return 0; + } return mItemStack.stackSize; } public void setCount(int aCount) { - mItemStack.stackSize = aCount; + if (mItemStack != null) { + mItemStack.stackSize = aCount; + } } public String getOutputDescription() { + if (mItemStack == null) { + return null; + } String rDescription = mItemStack.stackSize + " " + mItemStack.getDisplayName(); if (mChance > 0 && mChance < 10000) { rDescription += String.format(" (Chance: %d.%2d)", mChance / 100, mChance % 100); diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index a55b0ea2e0..81f9f14375 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -105,118 +105,6 @@ public void run() { e.printStackTrace(GT_Log.err); } - GT_Values.RA.addMixerRecipe(new ItemStack(Items.rotten_flesh, 1, 0), new ItemStack(Items.fermented_spider_eye, 1, 0), ItemList.IC2_Scrap.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 1L), FluidRegistry.getFluidStack("potion.purpledrink", 750), FluidRegistry.getFluidStack("sludge", 1000), ItemList.Food_Chum.get(4L, new Object[0]), 128, 24); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(1000L), GT_Values.NF, ItemList.Food_Dough.get(2L, new Object[0]), 32, 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), ItemList.Food_PotatoChips.get(1L, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.Food_ChiliChips.get(1L, new Object[0]), 32, 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 3L), GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(500L), Materials.Concrete.getMolten(576L), GT_Values.NI, 20, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Redstone, 5L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ruby, 4L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.IC2_Energium_Dust.get(1L, new Object[0]), 100, 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 5L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ruby, 4L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.IC2_Energium_Dust.get(9L, new Object[0]), 900, 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), new ItemStack(Blocks.brown_mushroom, 1), new ItemStack(Items.spider_eye, 1), GT_Values.NI, GT_Values.NF, GT_Values.NF, new ItemStack(Items.fermented_spider_eye, 1), 100, 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.LiveRoot, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IronWood, 2L), 100, 8); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 9L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.LiveRoot, 9L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IronWood, 18L), 900, 8); - GT_Values.RA.addMixerRecipe(GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 1L), GT_Values.NI, Materials.Water.getFluid(500L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Fluix, 2L), 20, 16); - GT_Values.RA.addMixerRecipe(GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 1L), GT_Values.NI, GT_ModHandler.getDistilledWater(500L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Fluix, 2L), 20, 16); - GT_Values.RA.addMixerRecipe(ItemList.IC2_Fertilizer.get(1L, new Object[0]), new ItemStack(Blocks.dirt, 8, 32767), GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(1000L), GT_Values.NF, GT_ModHandler.getModItem(aTextForestry, "soil", 8L, 0), 64, 16); - GT_Values.RA.addMixerRecipe(ItemList.FR_Fertilizer.get(1L, new Object[0]), new ItemStack(Blocks.dirt, 8, 32767), GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(1000L), GT_Values.NF, GT_ModHandler.getModItem(aTextForestry, "soil", 8L, 0), 64, 16); - GT_Values.RA.addMixerRecipe(ItemList.FR_Compost.get(1L, new Object[0]), new ItemStack(Blocks.dirt, 8, 32767), GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(1000L), GT_Values.NF, GT_ModHandler.getModItem(aTextForestry, "soil", 8L, 0), 64, 16); - GT_Values.RA.addMixerRecipe(ItemList.FR_Mulch.get(1L, new Object[0]), new ItemStack(Blocks.dirt, 8, 32767), GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(1000L), GT_Values.NF, GT_ModHandler.getModItem(aTextForestry, "soil", 9L, 0), 64, 16); - GT_Values.RA.addMixerRecipe(new ItemStack(Blocks.sand, 1, 32767), new ItemStack(Blocks.dirt, 1, 32767), GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(250L), GT_Values.NF, GT_ModHandler.getModItem(aTextForestry, "soil", 2L, 1), 16, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 5L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 1L), null, null, null, null, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 6L), 16, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 5L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), null, null, Materials.Lubricant.getFluid(20), new FluidStack(ItemList.sDrillingFluid, 5000), ItemList.Cell_Empty.get(5, new Object[0]), 64, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lapis, 1L), null, null, null, Materials.Water.getFluid(125), FluidRegistry.getFluidStack("ic2coolant", 125), null, 256, 48); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lapis, 1L), null, null, null, GT_ModHandler.getDistilledWater(1000), FluidRegistry.getFluidStack("ic2coolant", 1000), null, 256, 48); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Creosote.getFluid(1000), null, ItemList.SFMixture.get(8, new Object[]{}), 1600, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Creosote.getFluid(1000), null, ItemList.SFMixture.get(8, new Object[]{}), 1600, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Caesium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Creosote.getFluid(1000), null, ItemList.SFMixture.get(12, new Object[]{}), 1600, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Lubricant.getFluid(300), null, ItemList.SFMixture.get(8, new Object[]{}), 1200, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Lubricant.getFluid(300), null, ItemList.SFMixture.get(8, new Object[]{}), 1200, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Caesium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Lubricant.getFluid(300), null, ItemList.SFMixture.get(12, new Object[]{}), 1200, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Glue.getFluid(333), null, ItemList.SFMixture.get(8, new Object[]{}), 800, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Glue.getFluid(333), null, ItemList.SFMixture.get(8, new Object[]{}), 800, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Caesium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.Glue.getFluid(333), null, ItemList.SFMixture.get(12, new Object[]{}), 800, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.McGuffium239.getFluid(10), null, ItemList.SFMixture.get(64, new Object[]{}), 400, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.McGuffium239.getFluid(10), null, ItemList.SFMixture.get(64, new Object[]{}), 400, 16); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Caesium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 4L), null, Materials.McGuffium239.getFluid(10), null, ItemList.SFMixture.get(64, new Object[]{}), 400, 16); - - - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.EnderEye, 1L), null, null, Materials.Mercury.getFluid(50), null, ItemList.MSFMixture.get(2, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Blaze, 1L), null, null, Materials.Mercury.getFluid(50), null, ItemList.MSFMixture.get(2, new Object[]{}), 100, 64); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Diamond, 1L), null, Materials.NitroFuel.getFluid(1000), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Diamond, 1L), null, Materials.NitroFuel.getFluid(800), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Diamond, 1L), null, Materials.NitroFuel.getFluid(500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Emerald, 1L), null, Materials.NitroFuel.getFluid(1000), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Emerald, 1L), null, Materials.NitroFuel.getFluid(800), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Emerald, 1L), null, Materials.NitroFuel.getFluid(500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Sapphire, 1L), null, Materials.NitroFuel.getFluid(1000), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Sapphire, 1L), null, Materials.NitroFuel.getFluid(800), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Sapphire, 1L), null, Materials.NitroFuel.getFluid(500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.GreenSapphire, 1L), null, Materials.NitroFuel.getFluid(1000), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.GreenSapphire, 1L), null, Materials.NitroFuel.getFluid(800), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.GreenSapphire, 1L), null, Materials.NitroFuel.getFluid(500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - - - if(Loader.isModLoaded("Thaumcraft")){ - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedAir, 1L), null, null, Materials.FierySteel.getFluid(10), null, ItemList.MSFMixture.get(4, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedEarth, 1L), null, null, Materials.FierySteel.getFluid(10), null, ItemList.MSFMixture.get(4, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedEntropy, 1L), null, null, Materials.FierySteel.getFluid(10), null, ItemList.MSFMixture.get(4, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedFire, 1L), null, null, Materials.FierySteel.getFluid(10), null, ItemList.MSFMixture.get(4, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedOrder, 1L), null, null, Materials.FierySteel.getFluid(10), null, ItemList.MSFMixture.get(4, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(4, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedWater, 1L), null, null, Materials.FierySteel.getFluid(10), null, ItemList.MSFMixture.get(4, new Object[]{}), 100, 64); - - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedAir, 1L), null, null, Materials.Mercury.getFluid(50), null, ItemList.MSFMixture.get(2, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedEarth, 1L), null, null, Materials.Mercury.getFluid(50), null, ItemList.MSFMixture.get(2, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedEntropy, 1L), null, null, Materials.Mercury.getFluid(50), null, ItemList.MSFMixture.get(2, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedFire, 1L), null, null, Materials.Mercury.getFluid(50), null, ItemList.MSFMixture.get(2, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedOrder, 1L), null, null, Materials.Mercury.getFluid(50), null, ItemList.MSFMixture.get(2, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(2, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedWater, 1L), null, null, Materials.Mercury.getFluid(50), null, ItemList.MSFMixture.get(2, new Object[]{}), 100, 64); - - FluidStack tFD = FluidRegistry.getFluidStack("fluiddeath", 10); - if(tFD!=null&&tFD.getFluid()!=null&&tFD.amount>0){ - - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(8, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedAir, 1L), null, null,tFD , null, ItemList.MSFMixture.get(8, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(8, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedEarth, 1L), null, null, tFD, null, ItemList.MSFMixture.get(8, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(8, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedEntropy, 1L), null, null, tFD, null, ItemList.MSFMixture.get(8, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(8, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedFire, 1L), null, null, tFD, null, ItemList.MSFMixture.get(8, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(8, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedOrder, 1L), null, null, tFD, null, ItemList.MSFMixture.get(8, new Object[]{}), 100, 64); - GT_Values.RA.addMixerRecipe(ItemList.SFMixture.get(8, new Object[]{}), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.InfusedWater, 1L), null, null, tFD, null, ItemList.MSFMixture.get(8, new Object[]{}), 100, 64); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.NitroFuel.getFluid(1000), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.NitroFuel.getFluid(800), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.NitroFuel.getFluid(500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.HeavyFuel.getFluid(1500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.HeavyFuel.getFluid(1200), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.HeavyFuel.getFluid(750), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(1500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(1200), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(750), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - - }} - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.SFMixture.get(6, new Object[]{}), null, null, Materials.NitroFuel.getFluid(1000), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.SFMixture.get(4, new Object[]{}), null, null, Materials.NitroFuel.getFluid(800), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.SFMixture.get(2, new Object[]{}), null, null, Materials.NitroFuel.getFluid(500), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.SFMixture.get(6, new Object[]{}), null, null, Materials.HeavyFuel.getFluid(1500), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.SFMixture.get(4, new Object[]{}), null, null, Materials.HeavyFuel.getFluid(1200), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.SFMixture.get(2, new Object[]{}), null, null, Materials.HeavyFuel.getFluid(750), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.SFMixture.get(6, new Object[]{}), null, null, Materials.LPG.getFluid(1500), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.SFMixture.get(4, new Object[]{}), null, null, Materials.LPG.getFluid(1200), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.SFMixture.get(2, new Object[]{}), null, null, Materials.LPG.getFluid(750), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - - if(Loader.isModLoaded("Railcraft")){ - GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.SFMixture.get(1, new Object[]{}), null, null, Materials.NitroFuel.getFluid(250), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.SFMixture.get(1, new Object[]{}), null, null, Materials.HeavyFuel.getFluid(375), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.SFMixture.get(1, new Object[]{}), null, null, Materials.LPG.getFluid(375), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - if(Loader.isModLoaded("Thaumcraft")){ - GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.MSFMixture.get(1, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.NitroFuel.getFluid(250), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.MSFMixture.get(1, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.HeavyFuel.getFluid(375), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.MSFMixture.get(1, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(375), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - }} GT_Values.RA.addExtruderRecipe(ItemList.FR_Wax.get(1L, new Object[0]), ItemList.Shape_Extruder_Cell.get(0L, new Object[0]), ItemList.FR_WaxCapsule.get(1L, new Object[0]), 64, 16); GT_Values.RA.addExtruderRecipe(ItemList.FR_RefractoryWax.get(1L, new Object[0]), ItemList.Shape_Extruder_Cell.get(0L, new Object[0]), ItemList.FR_RefractoryCapsule.get(1L, new Object[0]), 128, 16); diff --git a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json index 6cd6cb1ac0..c54d73c3e3 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json @@ -1,14 +1,6 @@ [ -{"inputs":[{"item": "minecraft:wheat_seeds", "count": 1}], -"fluidOutputs":[{"fluid": "seedoil", "amount": 10}], -"duration": 32, -"EUt": 2}, -{"inputs":[{"item": "minecraft:melon_seeds", "count": 1}], -"fluidOutputs":[{"fluid": "seedoil", "amount": 10}], -"duration": 32, -"EUt": 2}, -{"inputs":[{"item": "minecraft:pumpkin_seeds", "count": 1}], -"fluidOutputs":[{"fluid": "seedoil", "amount": 10}], +{"inputs":[{"alts": [{"item": "minecraft:wheat_seeds"}, {"item": "minecraft:melon_seeds"}, {"item": "minecraft:pumpkin_seeds"}], "count": 1}], +"outputFluids":[{"fluid": "seedoil", "amount": 10}], "duration": 32, "EUt": 2}, {"inputs":[{"item": "gregtech:gt.metaitem.02:32557", "comment": "rapeseed", "count": 1}], diff --git a/src/main/resources/assets/gregtech/recipes/mixer.json b/src/main/resources/assets/gregtech/recipes/mixer.json index f4b34b92e2..cf1e323b4e 100644 --- a/src/main/resources/assets/gregtech/recipes/mixer.json +++ b/src/main/resources/assets/gregtech/recipes/mixer.json @@ -274,5 +274,488 @@ {"inputs":[{"ore": "dustTinyBoron", "count": 1}, {"ore": "dustTinyGlass", "count": 7}], "outputs":[{"ore": "dustTinyBorosilicateGlass", "count": 8}], "duration": 22, -"EUt": 8} +"EUt": 8}, +{"inputs":[{"item": "minecraft:rotten_flesh", "count": 1}, {"item": "minecraft:fermented_spider_eye", "count": 1}, {"item": "IC2:itemScrap", "count": 1}, {"ore": "dustMeatRaw", "count": 1}], +"inputFluids":[{"fluid": "potion.purpledrink", "amount": 750}], +"outputFluids":[{"fluid": "sludge", "amount": 1000}], +"outputs":[{"item": "GTItemList:Food_Chum", "count": 4}], +"duration": 32, +"EUt": 8}, +{"inputs":[{"ore": "dustWheat", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:Food_Dough", "count": 2}], +"duration": 32, +"EUt": 8}, +{"inputs":[{"ore": "dustChili", "count": 1}, {"item": "GTItemList:Food_PotatoChips", "count": 1}], +"outputs":[{"item": "GTItemList:Food_ChiliChips", "count": 1}], +"duration": 32, +"EUt": 8}, +{"inputs":[{"ore": "dustClay", "count": 1}, {"ore": "dustStone", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 500}], +"outputFluids":[{"fluid": "molten.concrete", "amount": 576}], +"duration": 20, +"EUt": 16}, +{"inputs":[{"ore": "dustTinyRedstone", "count": 5}, {"ore": "dustTinyRuby", "count": 4}], +"outputs":[{"item": "IC2:itemDust2:2", "comment": "Energium Dust", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustRedstone", "count": 5}, {"ore": "dustRuby", "count": 4}], +"outputs":[{"item": "IC2:itemDust2:2", "comment": "Energium Dust", "count": 9}], +"duration": 900, +"EUt": 8}, +{"inputs":[{"ore": "dustSugar", "count": 1}, {"item": "minecraft:brown_mushroom", "count": 1}, {"item": "minecraft:spider_eye", "count": 1}], +"outputs":[{"item": "minecraft:fermented_spider_eye", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustTinyGold", "count": 1}, {"ore": "dustIron", "count": 1}, {"ore": "dustLiveRoot", "count": 1}], +"outputs":[{"ore": "dustIronWood", "count": 2}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustGold", "count": 1}, {"ore": "dustIron", "count": 9}, {"ore": "dustLiveRoot", "count": 9}], +"outputs":[{"ore": "dustIronWood", "count": 18}], +"duration": 900, +"EUt": 8}, +{"inputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:1", "comment": "charged certus quartz", "count": 1}, {"ore": "dustRedstone", "count": 1}, {"ore": "gemNetherQuartz", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 500}], +"outputs":[{"ore": "gemFluix", "count": 2}], +"duration": 20, +"EUt": 16}, +{"inputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:1", "comment": "charged certus quartz", "count": 1}, {"ore": "dustRedstone", "count": 1}, {"ore": "gemNetherQuartz", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 500}], +"outputs":[{"ore": "gemFluix", "count": 2}], +"duration": 20, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}, {"item": "minecraft:dirt:*", "count": 8}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:soil:0", "comment": "humus", "count": 8}], +"duration": 64, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:FR_Fertilizer", "count": 1}, {"item": "minecraft:dirt:*", "count": 8}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:soil:0", "comment": "humus", "count": 8}], +"duration": 64, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:FR_Compost", "count": 1}, {"item": "minecraft:dirt:*", "count": 8}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:soil:0", "comment": "humus", "count": 8}], +"duration": 64, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:FR_Mulch", "count": 1}, {"item": "minecraft:dirt:*", "count": 8}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:soil:0", "comment": "humus", "count": 9}], +"duration": 64, +"EUt": 16}, +{"inputs":[{"item": "minecraft:sand:*", "count": 1}, {"item": "minecraft:dirt:*", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 250}], +"outputs":[{"item": "Forestry:soil:1", "comment": "bog earth", "count": 2}], +"duration": 16, +"EUt": 16}, +{"inputs":[{"ore": "cellLightFuel", "count": 5}, {"ore": "cellHeavyFuel", "count": 1}], +"outputs":[{"ore": "cellFuel", "count": 6}], +"duration": 16, +"EUt": 16}, +{"inputs":[{"ore": "cellWater", "count": 5}, {"ore": "dustStone", "count": 1}], +"inputFluids":[{"fluid": "Lubricant", "amount": 20}], +"outputFluids":[{"fluid": "liquid_drillingfluid", "amount": 5000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 5}], +"duration": 64, +"EUt": 16}, +{"inputs":[{"ore": "dustLapis", "count": 1}], +"inputFluids":[{"fluid": "Water", "amount": 125}], +"outputFluids":[{"fluid": "ic2coolant", "amount": 125}], +"duration": 256, +"EUt": 48}, +{"inputs":[{"ore": "dustLapis", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputFluids":[{"fluid": "ic2coolant", "amount": 1000}], +"duration": 256, +"EUt": 48}, + +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustSodium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "Creosote", "amount": 1000}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 8}], +"duration": 1600, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustLithium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "creosote", "amount": 1000}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 8}], +"duration": 1600, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustCaesium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "creosote", "amount": 1000}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 12}], +"duration": 1600, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustSodium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "lubricant", "amount": 300}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 8}], +"duration": 1200, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustLithium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "lubricant", "amount": 300}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 8}], +"duration": 1200, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustCaesium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "lubricant", "amount": 300}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 12}], +"duration": 1200, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustSodium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "glue", "amount": 333}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 8}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustLithium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "glue", "amount": 333}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 8}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustCaesium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "glue", "amount": 333}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 12}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustSodium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "mcguffium", "amount": 10}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 64}], +"duration": 400, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustLithium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "mcguffium", "amount": 10}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 64}], +"duration": 400, +"EUt": 16}, +{"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustCaesium", "count": 1}, {"ore": "dustWood", "count": 4}], +"inputFluids":[{"fluid": "mcguffium", "amount": 10}], +"outputs":[{"item": "GTItemList:SFMixture", "count": 64}], +"duration": 400, +"EUt": 16}, + + +{"inputs":[{"item": "GTItemList:SFMixture", "count": 2}, {"ore": "dustTinyEnderEye", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 50}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 2}], +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 2}, {"ore": "dustSmallBlaze", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 50}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 2}], +"duration": 100, +"EUt": 64}, + +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 6}, {"ore": "dustTinyDiamond", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 1000}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 4}, {"ore": "dustTinyDiamond", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 800}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 2}, {"ore": "dustTinyDiamond", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 500}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 6}, {"ore": "dustTinyEmerald", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 1000}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 4}, {"ore": "dustTinyEmerald", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 800}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 2}, {"ore": "dustTinyEmerald", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 500}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 6}, {"ore": "dustTinySapphire", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 1000}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 4}, {"ore": "dustTinySapphire", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 800}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 2}, {"ore": "dustTinySapphire", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 500}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 6}, {"ore": "dustTinyGreenSapphire", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 1000}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 4}, {"ore": "dustTinyGreenSapphire", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 800}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 2}, {"ore": "dustTinyGreenSapphire", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 500}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, + +{"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedAir", "count": 1}], +"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedEarth", "count": 1}], +"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedEntropy", "count": 1}], +"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedFire", "count": 1}], +"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedOrder", "count": 1}], +"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedWater", "count": 1}], +"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, + +{"inputs":[{"item": "GTItemList:SFMixture", "count": 2}, {"ore": "dustTinyInfusedAir", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 50}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 2}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 2}, {"ore": "dustTinyInfusedEarth", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 50}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 2}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 2}, {"ore": "dustTinyInfusedEntropy", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 50}], +"enableCondition": "ModLoaded(Thaumcraft)", +"outputs":[{"item": "GTItemList:MSFMixture", "count": 2}], +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 2}, {"ore": "dustTinyInfusedFire", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 50}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 2}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 2}, {"ore": "dustTinyInfusedOrder", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 50}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 2}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 2}, {"ore": "dustTinyInfusedWater", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 50}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 2}], +"enableCondition": "ModLoaded(Thaumcraft)", +"duration": 100, +"EUt": 64}, + +{"inputs":[{"item": "GTItemList:SFMixture", "count": 8}, {"ore": "dustTinyInfusedAir", "count": 1}], +"inputFluids":[{"fluid": "fluiddeath", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 8}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 8}, {"ore": "dustTinyInfusedEarth", "count": 1}], +"inputFluids":[{"fluid": "fluiddeath", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 8}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 8}, {"ore": "dustTinyInfusedEntropy", "count": 1}], +"inputFluids":[{"fluid": "fluiddeath", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 8}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 8}, {"ore": "dustTinyInfusedFire", "count": 1}], +"inputFluids":[{"fluid": "fluiddeath", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 8}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 8}, {"ore": "dustTinyInfusedOrder", "count": 1}], +"inputFluids":[{"fluid": "fluiddeath", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 8}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 100, +"EUt": 64}, +{"inputs":[{"item": "GTItemList:SFMixture", "count": 8}, {"ore": "dustTinyInfusedWater", "count": 1}], +"inputFluids":[{"fluid": "fluiddeath", "amount": 10}], +"outputs":[{"item": "GTItemList:MSFMixture", "count": 8}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 100, +"EUt": 64}, + +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 6}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 1000}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 4}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 800}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 2}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 500}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"item": "Railcraft:cube", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 1}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 250}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "ModsLoaded(Thaumcraft, Railcraft)", +"duration": 120, +"EUt": 96}, + +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 6}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 1500}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 4}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 1200}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 2}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 750}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"item": "Railcraft:cube", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 1}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 375}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "ModsLoaded(Thaumcraft, Railcraft)", +"duration": 120, +"EUt": 96}, + +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 6}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "liquid_lpg", "amount": 1500}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 4}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "liquid_lpg", "amount": 1200}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 2}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "liquid_lpg", "amount": 750}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "FluidExists(fluiddeath)", +"duration": 120, +"EUt": 96}, +{"inputs":[{"item": "Railcraft:cube", "count": 1}, {"item": "GTItemList:MSFMixture", "count": 1}, {"item": "Thaumcraft:ItemResource", "count": 4}], +"inputFluids":[{"fluid": "liquid_lpg", "amount": 375}], +"outputs":[{"item": "GTItemList:Block_MSSFUEL", "count": 1}], +"enableCondition": "ModsLoaded(Thaumcraft, Railcraft)", +"duration": 120, +"EUt": 96}, + + +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:SFMixture", "count": 6}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 1000}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:SFMixture", "count": 4}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 800}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:SFMixture", "count": 2}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 500}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"item": "Railcraft:cube", "count": 1}, {"item": "GTItemList:SFMixture", "count": 1}], +"inputFluids":[{"fluid": "nitrofuel", "amount": 250}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"enableCondition": "ModLoaded(Railcraft)", +"duration": 120, +"EUt": 96}, + +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:SFMixture", "count": 6}], +"inputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 1500}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:SFMixture", "count": 4}], +"inputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 1200}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:SFMixture", "count": 2}], +"inputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 750}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"item": "Railcraft:cube", "count": 1}, {"item": "GTItemList:SFMixture", "count": 1}], +"inputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 375}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"enableCondition": "ModLoaded(Railcraft)", +"duration": 120, +"EUt": 96}, + +{"inputs":[{"ore": "blockLignite", "count": 1}, {"item": "GTItemList:SFMixture", "count": 6}], +"inputFluids":[{"fluid": "liquid_lpg", "amount": 1500}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCharcoal", "count": 1}, {"item": "GTItemList:SFMixture", "count": 4}], +"inputFluids":[{"fluid": "liquid_lpg", "amount": 1200}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"ore": "blockCoal", "count": 1}, {"item": "GTItemList:SFMixture", "count": 2}], +"inputFluids":[{"fluid": "liquid_lpg", "amount": 750}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"duration": 120, +"EUt": 96}, +{"inputs":[{"item": "Railcraft:cube", "count": 1}, {"item": "GTItemList:SFMixture", "count": 1}], +"inputFluids":[{"fluid": "liquid_lpg", "amount": 375}], +"outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], +"enableCondition": "ModLoaded(Railcraft)", +"duration": 120, +"EUt": 96} + ] From d24c44f4423ec70c2cd8b2f7b093d1e83cdc9c85 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Tue, 10 Nov 2020 22:31:16 -0800 Subject: [PATCH 12/21] More recipe files. --- .../api/recipes/GT_RecipeListJsonReader.java | 103 +++-- .../postload/GT_MachineRecipeLoader.java | 351 +++++------------- .../gregtech/recipes/alloy_smelter.json | 6 + .../assets/gregtech/recipes/assembler.json | 186 ++++++++++ .../assets/gregtech/recipes/autoclave.json | 83 +++++ .../assets/gregtech/recipes/centrifuge.json | 12 + .../gregtech/recipes/chemical_bath.json | 178 +++++++++ .../gregtech/recipes/chemical_reactor.json | 82 ++++ .../assets/gregtech/recipes/electrolyzer.json | 19 + .../assets/gregtech/recipes/extruder.json | 15 + .../assets/gregtech/recipes/fluid_canner.json | 43 +++ .../gregtech/recipes/fluid_extractor.json | 94 ++++- .../assets/gregtech/recipes/fluid_heater.json | 12 + .../gregtech/recipes/fluid_solidifier.json | 128 +++++++ .../gregtech/recipes/forming_press.json | 60 +++ .../gregtech/recipes/laser_engraver.json | 18 + .../assets/gregtech/recipes/mixer.json | 9 +- .../assets/gregtech/recipes/slicer.json | 18 + 18 files changed, 1119 insertions(+), 298 deletions(-) create mode 100644 src/main/resources/assets/gregtech/recipes/alloy_smelter.json create mode 100644 src/main/resources/assets/gregtech/recipes/assembler.json create mode 100644 src/main/resources/assets/gregtech/recipes/autoclave.json create mode 100644 src/main/resources/assets/gregtech/recipes/centrifuge.json create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_bath.json create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_reactor.json create mode 100644 src/main/resources/assets/gregtech/recipes/electrolyzer.json create mode 100644 src/main/resources/assets/gregtech/recipes/extruder.json create mode 100644 src/main/resources/assets/gregtech/recipes/fluid_canner.json create mode 100644 src/main/resources/assets/gregtech/recipes/fluid_heater.json create mode 100644 src/main/resources/assets/gregtech/recipes/fluid_solidifier.json create mode 100644 src/main/resources/assets/gregtech/recipes/forming_press.json create mode 100644 src/main/resources/assets/gregtech/recipes/laser_engraver.json create mode 100644 src/main/resources/assets/gregtech/recipes/slicer.json diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java index d296e3fc35..9167b44ebe 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -10,8 +10,6 @@ import java.util.ArrayList; import java.util.List; import net.minecraft.item.ItemStack; -import net.minecraft.nbt.JsonToNBT; -import net.minecraft.nbt.NBTException; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; @@ -138,6 +136,8 @@ private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOExceptio tSpecialValue = Integer.valueOf(tSpecialValueString); } break; + case "blastTemp": + tSpecialValue = aReader.nextInt(); case "enabled": tEnabled = aReader.nextBoolean(); break; @@ -152,7 +152,7 @@ private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOExceptio tHidden = aReader.nextBoolean(); break; default: - throw new AssertionError(); + throw new AssertionError("Invalid recipe specifier"); } } aReader.endObject(); @@ -178,7 +178,7 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { List tAlts = new ArrayList<>(5); String tOreName = null; int tCount = -1; - String tNbtData = null; + NBTTagCompound tNbtData = null; aReader.beginObject(); while (aReader.hasNext()) { String tEntryName = aReader.nextName(); @@ -195,13 +195,13 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { tCount = aReader.nextInt(); break; case "nbt": - tNbtData = aReader.nextString(); + tNbtData = readNbt(aReader); break; case "alts": aReader.beginArray(); while (aReader.hasNext()) { ItemStack tAltStack = null; - String tAltNbtData = null; + NBTTagCompound tAltNbtData = null; String tAltOreName = null; aReader.beginObject(); while (aReader.hasNext()) { @@ -211,16 +211,12 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { } else if ("ore".equals(tAltEntryName)) { tAltOreName = aReader.nextString(); }else if ("nbt".equals(tAltEntryName)) { - tAltNbtData = aReader.nextString(); + tAltNbtData = readNbt(aReader); } } aReader.endObject(); if (tAltStack != null && tAltNbtData != null) { - try { - tAltStack.setTagCompound((NBTTagCompound) JsonToNBT.func_150315_a(tAltNbtData)); - } catch (NBTException e) { - e.printStackTrace(GT_Log.err); - } + tAltStack.setTagCompound(tAltNbtData); } if (tAltOreName != null) { tAlts.addAll(GT_OreDictUnificator.getOres(tAltOreName)); @@ -237,7 +233,7 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { // gregtech:gt.metaitem.02:30500 break; default: - throw new AssertionError(); + throw new AssertionError("Invalid input specifier"); } } aReader.endObject(); @@ -256,11 +252,7 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { } else if (tStack != null) { tStack.stackSize = tCount; if (tNbtData != null) { - try { - tStack.setTagCompound((NBTTagCompound) JsonToNBT.func_150315_a(tNbtData)); - } catch (NBTException e) { - e.printStackTrace(GT_Log.err); - } + tStack.setTagCompound(tNbtData); } return new GT_RecipeInput(tStack); } @@ -303,7 +295,7 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException String tOreName = null; int tCount = -1; float tChance = 1.0f; - String tNbtData = null; + NBTTagCompound tNbtData = null; aReader.beginObject(); while (aReader.hasNext()) { String tEntryName = aReader.nextName(); @@ -320,7 +312,7 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException tCount = aReader.nextInt(); break; case "nbt": - tNbtData = aReader.nextString(); + tNbtData = readNbt(aReader); break; case "chance": tChance = (float) aReader.nextDouble(); @@ -332,7 +324,7 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException // gregtech:gt.metaitem.02:30500 break; default: - throw new AssertionError(); + throw new AssertionError("Invalid output specifier"); } } aReader.endObject(); @@ -342,11 +334,7 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException } else if (tStack != null) { tStack.stackSize = tCount; if (tNbtData != null) { - try { - tStack.setTagCompound((NBTTagCompound) JsonToNBT.func_150315_a(tNbtData)); - } catch (NBTException e) { - e.printStackTrace(GT_Log.err); - } + tStack.setTagCompound(tNbtData); } return new GT_RecipeOutput(tStack, tChance); } @@ -354,4 +342,67 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException return null; } + private static NBTTagCompound readNbt(JsonReader aReader) throws IOException { + NBTTagCompound rNBT = new NBTTagCompound(); + aReader.beginArray(); + while (aReader.hasNext()) { + String tTagName = null; + String tType = null; + String tValue = null; + aReader.beginObject(); + while (aReader.hasNext()) { + String tEntryName = aReader.nextName(); + switch (tEntryName) { + case "tag": + case "tagName": + case "name": + case "key": + tTagName = aReader.nextString(); + break; + case "type": + tType = aReader.nextString(); + break; + case "value": + tValue = aReader.nextString(); + break; + default: + throw new AssertionError("Invalid NBT specifier"); + } + } + aReader.endObject(); + if (tTagName != null && tType != null && tValue != null) { + switch (tType.toLowerCase()) { + case "boolean": + rNBT.setBoolean(tTagName, Boolean.valueOf(tValue)); + break; + case "byte": + rNBT.setByte(tTagName, Byte.valueOf(tValue)); + break; + case "double": + rNBT.setDouble(tTagName, Double.valueOf(tValue)); + break; + case "float": + rNBT.setFloat(tTagName, Float.valueOf(tValue)); + break; + case "int": + rNBT.setInteger(tTagName, Integer.valueOf(tValue)); + break; + case "long": + rNBT.setLong(tTagName, Long.valueOf(tValue)); + break; + case "short": + rNBT.setShort(tTagName, Short.valueOf(tValue)); + break; + case "string": + rNBT.setString(tTagName, tValue); + break; + default: + throw new AssertionError(); + } + } + } + aReader.endArray(); + return rNBT; + } + } diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index 81f9f14375..94a47147b6 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -104,137 +104,42 @@ public void run() { } catch (Throwable e) { e.printStackTrace(GT_Log.err); } - - GT_Values.RA.addExtruderRecipe(ItemList.FR_Wax.get(1L, new Object[0]), ItemList.Shape_Extruder_Cell.get(0L, new Object[0]), ItemList.FR_WaxCapsule.get(1L, new Object[0]), 64, 16); - GT_Values.RA.addExtruderRecipe(ItemList.FR_RefractoryWax.get(1L, new Object[0]), ItemList.Shape_Extruder_Cell.get(0L, new Object[0]), ItemList.FR_RefractoryCapsule.get(1L, new Object[0]), 128, 16); - - GT_Values.RA.addFluidCannerRecipe(ItemList.Battery_Hull_LV.get(1L, new Object[0]), ItemList.IC2_ReBattery.get(1L, new Object[0]), Materials.Redstone.getMolten(288L), GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe(ItemList.Battery_Hull_LV.get(1L, new Object[0]), ItemList.Battery_SU_LV_Mercury.getWithCharge(1L, Integer.MAX_VALUE, new Object[0]), Materials.Mercury.getFluid(1000L), GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe(ItemList.Battery_Hull_MV.get(1L, new Object[0]), ItemList.Battery_SU_MV_Mercury.getWithCharge(1L, Integer.MAX_VALUE, new Object[0]), Materials.Mercury.getFluid(4000L), GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe(ItemList.Battery_Hull_HV.get(1L, new Object[0]), ItemList.Battery_SU_HV_Mercury.getWithCharge(1L, Integer.MAX_VALUE, new Object[0]), Materials.Mercury.getFluid(16000L), GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe(ItemList.Battery_Hull_LV.get(1L, new Object[0]), ItemList.Battery_SU_LV_SulfuricAcid.getWithCharge(1L, Integer.MAX_VALUE, new Object[0]), Materials.SulfuricAcid.getFluid(1000L), GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe(ItemList.Battery_Hull_MV.get(1L, new Object[0]), ItemList.Battery_SU_MV_SulfuricAcid.getWithCharge(1L, Integer.MAX_VALUE, new Object[0]), Materials.SulfuricAcid.getFluid(4000L), GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe(ItemList.Battery_Hull_HV.get(1L, new Object[0]), ItemList.Battery_SU_HV_SulfuricAcid.getWithCharge(1L, Integer.MAX_VALUE, new Object[0]), Materials.SulfuricAcid.getFluid(16000L), GT_Values.NF); - GT_Values.RA.addFluidCannerRecipe(ItemList.TF_Vial_FieryTears.get(1L, new Object[0]), ItemList.Bottle_Empty.get(1L, new Object[0]), GT_Values.NF, Materials.FierySteel.getFluid(250L)); - - Materials tMaterial = Materials.Iron; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Iron.get(1L, new Object[0]), 16, 8); - } - tMaterial = Materials.WroughtIron; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Iron.get(1L, new Object[0]), 16, 8); - } - tMaterial = Materials.Gold; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Gold.get(1L, new Object[0]), 16, 8); - } - tMaterial = Materials.Bronze; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Bronze.get(1L, new Object[0]), 16, 8); + try { + GT_RecipeMap.sExtruderRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/extruder.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); } - tMaterial = Materials.Copper; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Copper.get(1L, new Object[0]), 16, 8); + try { + GT_RecipeMap.sFluidCannerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fluid_canner.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); } - tMaterial = Materials.AnnealedCopper; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Copper.get(1L, new Object[0]), 16, 8); + try { + GT_RecipeMap.sFluidSolidificationRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fluid_solidifier.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); } - tMaterial = Materials.Tin; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Tin.get(1L, new Object[0]), 16, 8); + try { + GT_RecipeMap.sChemicalBathRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_bath.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); } - tMaterial = Materials.Lead; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Lead.get(1L, new Object[0]), 16, 8); + try { + GT_RecipeMap.sChemicalRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_reactor.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); } - tMaterial = Materials.Steel; - if (tMaterial.mStandardMoltenFluid != null) { - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Casing.get(0L, new Object[0]), tMaterial.getMolten(72L), ItemList.IC2_Item_Casing_Steel.get(1L, new Object[0]), 16, 8); + try { + GT_RecipeMap.sAssemblerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/assembler.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); } - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ball.get(0L, new Object[0]), Materials.Mercury.getFluid(1000L), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1, 3), 128, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ball.get(0L, new Object[0]), Materials.Mercury.getFluid(1000L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Mercury, 1L), 128, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ball.get(0L, new Object[0]), Materials.Water.getFluid(250L), new ItemStack(Items.snowball, 1, 0), 128, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ball.get(0L, new Object[0]), GT_ModHandler.getDistilledWater(250L), new ItemStack(Items.snowball, 1, 0), 128, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Block.get(0L, new Object[0]), Materials.Water.getFluid(1000L), new ItemStack(Blocks.snow, 1, 0), 512, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Block.get(0L, new Object[0]), GT_ModHandler.getDistilledWater(1000L), new ItemStack(Blocks.snow, 1, 0), 512, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Block.get(0L, new Object[0]), Materials.Lava.getFluid(1000L), new ItemStack(Blocks.obsidian, 1, 0), 1024, 16); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Block.get(0L, new Object[0]), Materials.Concrete.getMolten(144L), new ItemStack(GregTech_API.sBlockConcretes, 1, 8), 12, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Block.get(0L, new Object[0]), Materials.Glowstone.getMolten(576L), new ItemStack(Blocks.glowstone, 1, 0), 12, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Block.get(0L, new Object[0]), Materials.Glass.getMolten(144L), new ItemStack(Blocks.glass, 1, 0), 12, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Plate.get(0L, new Object[0]), Materials.Glass.getMolten(144L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Glass, 1L), 12, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Bottle.get(0L, new Object[0]), Materials.Glass.getMolten(144L), ItemList.Bottle_Empty.get(1L, new Object[0]), 12, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Cylinder.get(0L, new Object[0]), Materials.Milk.getFluid(250L), ItemList.Food_Cheese.get(1L, new Object[0]), 1024, 4); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Cylinder.get(0L, new Object[0]), Materials.Cheese.getMolten(144L), ItemList.Food_Cheese.get(1L, new Object[0]), 64, 8); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Anvil.get(0L, new Object[0]), Materials.Iron.getMolten(4464L), new ItemStack(Blocks.anvil, 1, 0), 128, 16); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Anvil.get(0L, new Object[0]), Materials.WroughtIron.getMolten(4464L), new ItemStack(Blocks.anvil, 1, 0), 128, 16); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Anvil.get(0L, new Object[0]), Materials.Steel.getMolten(4464L), GT_ModHandler.getModItem("Railcraft", "tile.railcraft.anvil", 1L, 0), 128, 16); - - GT_Values.RA.addChemicalBathRecipe(ItemList.Food_Raw_Fries.get(1L, new Object[0]), Materials.FryingOilHot.getFluid(10L), ItemList.Food_Fries.get(1L, new Object[0]), GT_Values.NI, GT_Values.NI, null, 16, 4); - GT_Values.RA.addChemicalBathRecipe(GT_ModHandler.getIC2Item("dynamite", 1L), Materials.Glue.getFluid(10L), GT_ModHandler.getIC2Item("stickyDynamite", 1L), GT_Values.NI, GT_Values.NI, null, 16, 4); - GT_Values.RA.addChemicalRecipe(new ItemStack(Items.paper,1), new ItemStack(Items.string,1), Materials.Glyceryl.getFluid(500), GT_Values.NF, GT_ModHandler.getIC2Item("dynamite", 1L), 160, 4); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1L), Materials.Concrete.getMolten(144L), GT_ModHandler.getIC2Item("reinforcedStone", 1L), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), Materials.Water.getFluid(125L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L), GT_Values.NI, GT_Values.NI, null, 12, 4); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), Materials.Water.getFluid(100L), new ItemStack(Items.paper, 1, 0), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Paper, 1L), Materials.Water.getFluid(100L), new ItemStack(Items.paper, 1, 0), GT_Values.NI, GT_Values.NI, null, 100, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Items.reeds, 1, 32767), Materials.Water.getFluid(100L), new ItemStack(Items.paper, 1, 0), GT_Values.NI, GT_Values.NI, null, 100, 8); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), GT_ModHandler.getDistilledWater(125L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L), GT_Values.NI, GT_Values.NI, null, 12, 4); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), GT_ModHandler.getDistilledWater(100L), new ItemStack(Items.paper, 1, 0), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Paper, 1L), GT_ModHandler.getDistilledWater(100L), new ItemStack(Items.paper, 1, 0), GT_Values.NI, GT_Values.NI, null, 100, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Items.reeds, 1, 32767), GT_ModHandler.getDistilledWater(100L), new ItemStack(Items.paper, 1, 0), GT_Values.NI, GT_Values.NI, null, 100, 8); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 1), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 2), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 3), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 4), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 5), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 6), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 7), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 8), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 9), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 10), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 11), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 12), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 13), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 14), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.wool, 1, 15), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.wool, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 1), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 2), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 3), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 4), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 5), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 6), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 7), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 8), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 9), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 10), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 11), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 12), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 13), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 14), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.carpet, 1, 15), Materials.Chlorine.getGas(25L), new ItemStack(Blocks.carpet, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.stained_hardened_clay, 1, 32767), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.hardened_clay, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.stained_glass, 1, 32767), Materials.Chlorine.getGas(50L), new ItemStack(Blocks.glass, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.stained_glass_pane, 1, 32767), Materials.Chlorine.getGas(20L), new ItemStack(Blocks.glass_pane, 1, 0), GT_Values.NI, GT_Values.NI, null, 400, 2); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 8), Materials.Water.getFluid(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 0), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 9), Materials.Water.getFluid(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 1), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 10), Materials.Water.getFluid(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 2), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 11), Materials.Water.getFluid(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 3), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 12), Materials.Water.getFluid(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 4), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 13), Materials.Water.getFluid(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 5), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 14), Materials.Water.getFluid(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 6), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 15), Materials.Water.getFluid(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 7), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 8), GT_ModHandler.getDistilledWater(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 0), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 9), GT_ModHandler.getDistilledWater(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 1), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 10), GT_ModHandler.getDistilledWater(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 2), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 11), GT_ModHandler.getDistilledWater(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 3), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 12), GT_ModHandler.getDistilledWater(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 4), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 13), GT_ModHandler.getDistilledWater(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 5), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 14), GT_ModHandler.getDistilledWater(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 6), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addChemicalBathRecipe(new ItemStack(GregTech_API.sBlockConcretes, 1, 15), GT_ModHandler.getDistilledWater(250L), new ItemStack(GregTech_API.sBlockConcretes, 1, 7), GT_Values.NI, GT_Values.NI, null, 200, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Plastic, 1L), Materials.Concrete.getMolten(144L), ItemList.Block_Plascrete.get(1L, new Object[0]), 200, 48); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1L), Materials.Concrete.getMolten(144L), ItemList.Block_TungstenSteelReinforced.get(1L, new Object[0]), GT_Values.NI, GT_Values.NI, null, 200, 4); - for (int j = 0; j < Dyes.dyeRed.getSizeOfFluidList(); j++) { GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1L), Dyes.dyeRed.getFluidDye(j, 72L), GT_ModHandler.getModItem("BuildCraft|Transport", "pipeWire", 4L, 0), GT_Values.NI, GT_Values.NI, null, 32, 16); @@ -258,138 +163,74 @@ public void run() { GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.hardened_clay, 1, 0), Dyes.VALUES[i].getFluidDye(j, 18L), new ItemStack(Blocks.stained_hardened_clay, 1, 15 - i), GT_Values.NI, GT_Values.NI, null, 64, 2); } } - GT_Values.RA.addFluidExtractionRecipe(ItemList.Dye_SquidInk.get(1L, new Object[0]), GT_Values.NI, FluidRegistry.getFluidStack("squidink", 144), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(ItemList.Dye_Indigo.get(1L, new Object[0]), GT_Values.NI, FluidRegistry.getFluidStack("indigo", 144), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_Indigo.get(1L, new Object[0]), GT_Values.NI, FluidRegistry.getFluidStack("indigo", 144), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_MilkWart.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Milk, 1L), GT_ModHandler.getMilk(150L), 1000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_OilBerry.get(1L, new Object[0]), GT_Values.NI, Materials.Oil.getFluid(100L), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_UUMBerry.get(1L, new Object[0]), GT_Values.NI, Materials.UUMatter.getFluid(4L), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_UUABerry.get(1L, new Object[0]), GT_Values.NI, Materials.UUAmplifier.getFluid(4L), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 0), GT_Values.NI, Materials.FishOil.getFluid(40), 10000, 16, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 1), GT_Values.NI, Materials.FishOil.getFluid(60), 10000, 16, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 2), GT_Values.NI, Materials.FishOil.getFluid(70), 10000, 16, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 3), GT_Values.NI, Materials.FishOil.getFluid(30), 10000, 16, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.coal, 1, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L), Materials.WoodTar.getFluid(100L), 1000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), ItemList.IC2_Plantball.get(1L, new Object[0]), Materials.Creosote.getFluid(5L), 100, 16, 4); - GT_Values.RA.addFluidExtractionRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), Materials.Water.getFluid(100L), 10000, 32, 4); - GT_Values.RA.addFluidExtractionRecipe(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1, 3), GT_Values.NI, Materials.Mercury.getFluid(1000L), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Mercury, 1L), GT_Values.NI, Materials.Mercury.getFluid(1000L), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Monazite, 1L), GT_Values.NI, Materials.Helium.getGas(200L), 10000, 64, 64); - - GT_Values.RA.addFluidSmelterRecipe(new ItemStack(Items.snowball, 1, 0), GT_Values.NI, Materials.Water.getFluid(250L), 10000, 32, 4); - GT_Values.RA.addFluidSmelterRecipe(new ItemStack(Blocks.snow, 1, 0), GT_Values.NI, Materials.Water.getFluid(1000L), 10000, 128, 4); - GT_Values.RA.addFluidSmelterRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), GT_Values.NI, Materials.Ice.getSolid(1000L), 10000, 128, 4); - GT_Values.RA.addFluidSmelterRecipe(GT_ModHandler.getModItem(aTextForestry, "Phosphorus", 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphorus, 1L), Materials.Lava.getFluid(800L), 1000, 256, 128); - - GT_Values.RA.addAutoclaveRecipe(ItemList.IC2_Energium_Dust.get(9L, new Object[0]), Materials.Water.getFluid(1000L), ItemList.IC2_EnergyCrystal.get(1L, new Object[0]), 10000, 500, 256); - GT_Values.RA.addAutoclaveRecipe(GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 1L, 0), Materials.Water.getFluid(200L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 10), 10000, 2000, 24); - GT_Values.RA.addAutoclaveRecipe(GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 1L, 600), Materials.Water.getFluid(200L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 11), 10000, 2000, 24); - GT_Values.RA.addAutoclaveRecipe(GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 1L, 1200), Materials.Water.getFluid(200L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 12), 10000, 2000, 24); - GT_Values.RA.addAutoclaveRecipe(ItemList.IC2_Energium_Dust.get(9L, new Object[0]), GT_ModHandler.getDistilledWater(1000L), ItemList.IC2_EnergyCrystal.get(1L, new Object[0]), 10000, 250, 256); - GT_Values.RA.addAutoclaveRecipe(GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 1L, 0), GT_ModHandler.getDistilledWater(200L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 10), 10000, 1000, 24); - GT_Values.RA.addAutoclaveRecipe(GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 1L, 600), GT_ModHandler.getDistilledWater(200L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 11), 10000, 1000, 24); - GT_Values.RA.addAutoclaveRecipe(GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 1L, 1200), GT_ModHandler.getDistilledWater(200L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 12), 10000, 1000, 24); - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 16), Materials.Palladium.getMolten(4), GT_ModHandler.getIC2Item("carbonFiber", 8L), 9000, 600, 5); - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 16), Materials.Platinum.getMolten(4), GT_ModHandler.getIC2Item("carbonFiber", 8L), 5000, 600, 5); - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 16), Materials.Lutetium.getMolten(4), GT_ModHandler.getIC2Item("carbonFiber", 8L), 3333, 600, 5); - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherStar, 1), Materials.UUMatter.getFluid(576), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1), 3333, 72000, 480); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride,1),ItemList.Paper_Printed_Pages.get(1L, new Object[0]),Materials.Glue.getFluid(20L), new ItemStack(Items.written_book,1,0), 32, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride,1), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3), Materials.Glue.getFluid(20L), new ItemStack(Items.book,1,0),20,16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderPearl, 1), OrePrefixes.circuit.get(Materials.Basic), 4, Materials.Osmium.getMolten(288), ItemList.Field_Generator_LV.get(1, new Object[0]), 1800, 30); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderEye, 1), OrePrefixes.circuit.get(Materials.Good), 4, Materials.Osmium.getMolten(576), ItemList.Field_Generator_MV.get(1, new Object[0]), 1800, 120); - GT_Values.RA.addAssemblerRecipe(ItemList.QuantumEye.get(1, new Object[]{}), OrePrefixes.circuit.get(Materials.Advanced), 4, Materials.Osmium.getMolten(1152), ItemList.Field_Generator_HV.get(1, new Object[0]), 1800, 480); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherStar, 1), OrePrefixes.circuit.get(Materials.Data), 4, Materials.Osmium.getMolten(2304), ItemList.Field_Generator_EV.get(1, new Object[0]), 1800, 1920); - GT_Values.RA.addAssemblerRecipe(ItemList.QuantumStar.get(1, new Object[]{}), OrePrefixes.circuit.get(Materials.Elite), 4, Materials.Osmium.getMolten(4608), ItemList.Field_Generator_IV.get(1, new Object[0]), 1800, 7680); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Steel, 64), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Zinc, 16), null, ItemList.Component_Filter.get(1, new Object[0]), 1600, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 8), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Silicon, 1), Materials.Glue.getFluid(250L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Graphene, 1), 480, 240); - GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_LV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Basic), 2, GT_Values.NF, ItemList.FluidRegulator_LV.get(1L, new Object[0]), 800, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_MV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Good), 2, GT_Values.NF, ItemList.FluidRegulator_MV.get(1L, new Object[0]), 800, 8); - GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_HV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Advanced), 2, GT_Values.NF,ItemList.FluidRegulator_HV.get(1L, new Object[0]), 800, 16); - GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_EV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Data), 2, GT_Values.NF, ItemList.FluidRegulator_EV.get(1L, new Object[0]), 800, 32); - GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_IV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Elite), 2, GT_Values.NF, ItemList.FluidRegulator_IV.get(1L, new Object[0]), 800, 64); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2L), OrePrefixes.circuit.get(Materials.Good), 4,GT_Values.NF, ItemList.Schematic.get(1L, new Object[0]), 3200, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Cover_Shutter.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Advanced), 2,GT_Values.NF, ItemList.FluidFilter.get(1L, new Object[0]), 800, 4); - - GT_Values.RA.addCentrifugeRecipe(ItemList.Cell_Empty.get(1, new Object[0]), null, Materials.Air.getGas(10000), Materials.Nitrogen.getGas(3900), GT_OreDictUnificator.get(OrePrefixes.cell,Materials.Oxygen,1), null, null, null, null, null, null, 1600, 8); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Galena, 3), GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Sphalerite, 1), Materials.SulfuricAcid.getFluid(4000), new FluidStack(ItemList.sIndiumConcentrate, 8000), null, 60, 150); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4), null, new FluidStack(ItemList.sIndiumConcentrate, 8000), new FluidStack(ItemList.sLeadZincSolution, 8000), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Indium, 1), 50, 600); - GT_Values.RA.addElectrolyzerRecipe(null, null, new FluidStack(ItemList.sLeadZincSolution, 8000), Materials.Water.getFluid(2000), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lead, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Zinc, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 3), null, null, null, 300, 192); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.crushedPurified,Materials.Pentlandite,1), null, new FluidStack(ItemList.sNitricAcid,1000), new FluidStack(ItemList.sNickelSulfate,9000), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.PlatinumGroupSludge, 1), 50, 30); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.crushedPurified,Materials.Chalcopyrite,1), null, new FluidStack(ItemList.sNitricAcid,1000), new FluidStack(ItemList.sBlueVitriol,9000), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.PlatinumGroupSludge, 1), 50, 30); - GT_Values.RA.addElectrolyzerRecipe(ItemList.Cell_Empty.get(1, new Object[0]), null, new FluidStack(ItemList.sBlueVitriol,9000), Materials.SulfuricAcid.getFluid(8000), GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Copper,1), GT_OreDictUnificator.get(OrePrefixes.cell,Materials.Oxygen,1), null, null, null, null, null, 900, 30); - GT_Values.RA.addElectrolyzerRecipe(ItemList.Cell_Empty.get(1, new Object[0]), null, new FluidStack(ItemList.sNickelSulfate,9000), Materials.SulfuricAcid.getFluid(8000), GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Nickel,1), GT_OreDictUnificator.get(OrePrefixes.cell,Materials.Oxygen,1), null, null, null, null, null, 900, 30); - GT_Values.RA.addCentrifugeRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.PlatinumGroupSludge, 1), null, null, null, GT_OreDictUnificator.get(OrePrefixes.dust,Materials.SiliconDioxide,1), GT_OreDictUnificator.get(OrePrefixes.dustTiny,Materials.Gold,1), GT_OreDictUnificator.get(OrePrefixes.dustTiny,Materials.Platinum,1), GT_OreDictUnificator.get(OrePrefixes.dustTiny,Materials.Palladium,1), GT_OreDictUnificator.get(OrePrefixes.dustTiny,Materials.Iridium,1), GT_OreDictUnificator.get(OrePrefixes.dustTiny,Materials.Osmium,1), new int[]{10000,10000,10000,8000,6000,6000}, 900, 30); - - GT_Values.RA.addSlicerRecipe(ItemList.Food_Dough_Chocolate.get(1L, new Object[0]), ItemList.Shape_Slicer_Flat.get(0L, new Object[0]), ItemList.Food_Raw_Cookie.get(4L, new Object[0]), 128, 4); - GT_Values.RA.addSlicerRecipe(ItemList.Food_Baked_Bun.get(1L, new Object[0]), ItemList.Shape_Slicer_Flat.get(0L, new Object[0]), ItemList.Food_Sliced_Bun.get(2L, new Object[0]), 128, 4); - GT_Values.RA.addSlicerRecipe(ItemList.Food_Baked_Bread.get(1L, new Object[0]), ItemList.Shape_Slicer_Flat.get(0L, new Object[0]), ItemList.Food_Sliced_Bread.get(2L, new Object[0]), 128, 4); - GT_Values.RA.addSlicerRecipe(ItemList.Food_Baked_Baguette.get(1L, new Object[0]), ItemList.Shape_Slicer_Flat.get(0L, new Object[0]), ItemList.Food_Sliced_Baguette.get(2L, new Object[0]), 128, 4); + + try { + GT_RecipeMap.sAutoclaveRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/autoclave.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sCentrifugeRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/centrifuge.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sElectrolyzerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/electrolyzer.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sSlicerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/slicer.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sFluidHeaterRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fluid_heater.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sAlloySmelterRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/alloy_smelter.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sLaserEngraverRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/laser_engraver.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sPressRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/forming_press.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + //Circuit Recipes!!! Object[] o = new Object[0]; GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Board_Coated.get(3, o), new Object[]{" R ","PPP"," R ",'P',GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Wood, 1),'R',ItemList.IC2_Resin.get(1, o)}); - GT_Values.RA.addAssemblerRecipe(Materials.Wood.getPlates(8), ItemList.IC2_Resin.get(1, o), Materials.Glue.getFluid(100), ItemList.Circuit_Board_Coated.get(8, o), 160, 8); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Board_Phenolic.get(8, o), new Object[]{"PRP","PPP","PPP",'P',GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1),'R',GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glue, 1)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Board_Phenolic.get(32, o), new Object[]{"PRP","PPP","PPP",'P',GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1),'R',GT_OreDictUnificator.get(OrePrefixes.cell, Materials.BisphenolA, 1)}); - GT_Values.RA.addAssemblerRecipe(Materials.Wood.getDust(1), ItemList.Shape_Mold_Plate.get(0, o), Materials.Glue.getFluid(100), ItemList.Circuit_Board_Phenolic.get(1, o), 30, 8); - GT_Values.RA.addAssemblerRecipe(Materials.Wood.getDust(1), ItemList.Shape_Mold_Plate.get(0, o), Materials.BisphenolA.getFluid(100), ItemList.Circuit_Board_Phenolic.get(4, o), 30, 8); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Plastic, 1), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Copper, 1), Materials.SulfuricAcid.getFluid(125), null, ItemList.Circuit_Board_Plastic.get(1, o), 500, 10); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.PolyvinylChloride, 1), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Copper, 1), Materials.SulfuricAcid.getFluid(125), null, ItemList.Circuit_Board_Plastic.get(2, o), 500, 10); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Polytetrafluoroethylene, 1), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Copper, 1), Materials.SulfuricAcid.getFluid(125), null, ItemList.Circuit_Board_Plastic.get(4, o), 500, 10); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Epoxid, 1), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Copper, 1), Materials.SulfuricAcid.getFluid(125), null, ItemList.Circuit_Board_Epoxy.get(1, o), 500, 10); - GT_Values.RA.addChemicalBathRecipe(ItemList.Circuit_Parts_GlassFiber.get(1, o), Materials.Epoxid.getMolten(144), Materials.EpoxidFiberReinforced.getPlates(1), GT_Values.NI, GT_Values.NI, null, 240, 16); - GT_Values.RA.addChemicalBathRecipe(GT_ModHandler.getIC2Item("carbonFiber", 1), Materials.Epoxid.getMolten(144), Materials.EpoxidFiberReinforced.getPlates(1), GT_Values.NI, GT_Values.NI, null, 240, 16); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.EpoxidFiberReinforced, 1), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Copper, 1), Materials.SulfuricAcid.getFluid(125), null, ItemList.Circuit_Board_Fiberglass.get(1, o), 500, 10); - GT_Values.RA.addChemicalRecipe(ItemList.Circuit_Board_Fiberglass.get(1, o), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 16), Materials.SulfuricAcid.getFluid(250), null, ItemList.Circuit_Board_Multifiberglass.get(1, o), 100, 480); - - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Cylinder.get(0, o), Materials.Polytetrafluoroethylene.getMolten(36), ItemList.Circuit_Parts_PetriDish.get(1, o), 160, 16); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Cylinder.get(0, o), Materials.Polystyrene.getMolten(36), ItemList.Circuit_Parts_PetriDish.get(1, o), 160, 16); - GT_Values.RA.addMixerRecipe(Materials.Sugar.getDust(4), Materials.MeatRaw.getDust(1), Materials.Salt.getDustTiny(1), GT_Values.NI, GT_ModHandler.getDistilledWater(4000), Materials.GrowthMediumRaw.getFluid(4000), GT_Values.NI, 160, 16); - GT_Values.RA.addFluidHeaterRecipe(GT_Utility.getIntegratedCircuit(1), Materials.GrowthMediumRaw.getFluid(1000), Materials.GrowthMediumSterilized.getFluid(1000), 60, 24); - GT_Values.RA.addFluidHeaterRecipe(GT_Utility.getIntegratedCircuit(1), FluidRegistry.getFluidStack("potion.dragonblood", 1000), Materials.GrowthMediumSterilized.getFluid(1000), 60, 24); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Multifiberglass.get(1, o), ItemList.Circuit_Parts_PetriDish.get(1, o), ItemList.Electric_Pump_LV.get(1,o), ItemList.Sensor_LV.get(1,o)}, - OrePrefixes.circuit.get(Materials.Good), 1, Materials.GrowthMediumSterilized.getFluid(250), ItemList.Circuit_Board_Wetware.get(1, o), 400, 480); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Resistor.get(3, o), new Object[]{" P ","FCF"," P ",'P',new ItemStack(Items.paper),'F',OrePrefixes.wireFine.get(Materials.Copper),'C',OrePrefixes.dust.get(Materials.Coal)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Resistor.get(3, o), new Object[]{" P ","FCF"," P ",'P',new ItemStack(Items.paper),'F',OrePrefixes.wireFine.get(Materials.Copper),'C',OrePrefixes.dust.get(Materials.Charcoal)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Resistor.get(3, o), new Object[]{" P ","FCF"," P ",'P',new ItemStack(Items.paper),'F',OrePrefixes.wireFine.get(Materials.Copper),'C',OrePrefixes.dust.get(Materials.Carbon)}); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 4), ItemList.Circuit_Parts_Resistor.get(12, o), 160, 6); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Charcoal, 1), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 4), ItemList.Circuit_Parts_Resistor.get(12, o), 160, 6); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 4), ItemList.Circuit_Parts_Resistor.get(12, o), 160, 6); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 4),Materials.Plastic.getMolten(144), ItemList.Circuit_Parts_ResistorSMD.get(24, o), 80, 96); - GT_Values.RA.addAlloySmelterRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1), ItemList.Shape_Mold_Ball.get(0, o), ItemList.Circuit_Parts_Glass_Tube.get(1,o), 160, 8); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Vacuum_Tube.get(1, o), new Object[]{"PGP","FFF",'G',ItemList.Circuit_Parts_Glass_Tube,'P',new ItemStack(Items.paper),'F',OrePrefixes.wireFine.get(Materials.Copper)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Vacuum_Tube.get(1, o), new Object[]{"PGP","FFF",'G',ItemList.Circuit_Parts_Glass_Tube,'P',new ItemStack(Items.paper),'F',OrePrefixes.wireGt01.get(Materials.Copper)}); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Parts_Glass_Tube.get(1, o), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2), Materials.Paper.getPlates(2)}, GT_Values.NF, ItemList.Circuit_Parts_Vacuum_Tube.get(1, o), 120, 8); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Parts_Glass_Tube.get(1, o), GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Copper, 2), Materials.Paper.getPlates(2)}, GT_Values.NF, ItemList.Circuit_Parts_Vacuum_Tube.get(1, o), 120, 8); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Diode.get(1,o), new Object[]{"BG ","WDW","BG ",'B',OrePrefixes.dye.get(Materials.Black),'G',new ItemStack(Blocks.glass_pane),'D',ItemList.Circuit_Silicon_Wafer.get(1, new Object[0]),'W',OrePrefixes.wireGt01.get(Materials.Tin)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Diode.get(1,o), new Object[]{"BG ","WDW","BG ",'B',OrePrefixes.dye.get(Materials.Black),'G',new ItemStack(Blocks.glass_pane),'D',ItemList.Circuit_Silicon_Wafer.get(1, new Object[0]),'W',OrePrefixes.wireFine.get(Materials.Tin)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Diode.get(4,o), new Object[]{"BG ","WDW","BG ",'B',OrePrefixes.dye.get(Materials.Black),'G',new ItemStack(Blocks.glass_pane),'D',GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gallium, 1),'W',OrePrefixes.wireGt01.get(Materials.Tin)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Diode.get(4,o), new Object[]{"BG ","WDW","BG ",'B',OrePrefixes.dye.get(Materials.Black),'G',new ItemStack(Blocks.glass_pane),'D',GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gallium, 1),'W',OrePrefixes.wireFine.get(Materials.Tin)}); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.AnnealedCopper, 4), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Gallium, 1), Materials.Plastic.getMolten(288), ItemList.Circuit_Parts_Diode.get(16, o), 400, 48); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 4), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Gallium, 1), Materials.Plastic.getMolten(288), ItemList.Circuit_Parts_DiodeSMD.get(32, o), 400, 120); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Coil.get(2,o), new Object[]{"WWW","WDW","WWW",'G',new ItemStack(Blocks.glass_pane),'D',OrePrefixes.bolt.get(Materials.Steel),'W',OrePrefixes.wireFine.get(Materials.Copper)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Coil.get(4,o), new Object[]{"WWW","WDW","WWW",'G',new ItemStack(Blocks.glass_pane),'D',OrePrefixes.bolt.get(Materials.NickelZincFerrite),'W',OrePrefixes.wireFine.get(Materials.Copper)}); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 8), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Steel, 1), ItemList.Circuit_Parts_Coil.get(2,o), 80, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 8), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.NickelZincFerrite, 1), ItemList.Circuit_Parts_Coil.get(4,o), 80, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.AnnealedCopper, 8), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Steel, 1), ItemList.Circuit_Parts_Coil.get(2,o), 80, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.AnnealedCopper, 8), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.NickelZincFerrite, 1), ItemList.Circuit_Parts_Coil.get(4,o), 80, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Silicon, 1), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Tin, 6),Materials.Plastic.getMolten(144), ItemList.Circuit_Parts_Transistor.get(8, o), 80, 24); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gallium, 1), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.AnnealedCopper, 6),Materials.Plastic.getMolten(288), ItemList.Circuit_Parts_TransistorSMD.get(32, o), 80, 96); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Plastic, 1), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 2), ItemList.Circuit_Parts_Capacitor.get(2, o), 80, 96); - //SMD Capacitor - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Silicone, 8), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 2),Materials.Plastic.getMolten(72), ItemList.Circuit_Parts_CapacitorSMD.get(32, o), 120, 120); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride, 8), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 2),Materials.Plastic.getMolten(72), ItemList.Circuit_Parts_CapacitorSMD.get(32, o), 100, 120); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Silicone, 8), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Tantalum, 2),Materials.Plastic.getMolten(72), ItemList.Circuit_Parts_CapacitorSMD.get(64, o), 120, 120); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride, 8), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Tantalum, 2),Materials.Plastic.getMolten(72), ItemList.Circuit_Parts_CapacitorSMD.get(64, o), 100, 120); - - GT_Values.RA.addExtruderRecipe(Materials.BorosilicateGlass.getIngots(1), ItemList.Shape_Extruder_Wire.get(0, new Object[0]), ItemList.Circuit_Parts_GlassFiber.get(8, new Object[0]), 160, 96); - - GT_Values.RA.addLaserEngraverRecipe(ItemList.Circuit_Silicon_Wafer2.get(1, new Object[0]), GT_Utility.copyAmount(0,GT_OreDictUnificator.get(OrePrefixes.lens, Materials.EnderPearl, 1)), ItemList.Circuit_Wafer_NAND.get(1, new Object[0]), 500, 480, true); - GT_Values.RA.addLaserEngraverRecipe(ItemList.Circuit_Silicon_Wafer3.get(1, new Object[0]), GT_Utility.copyAmount(0,GT_OreDictUnificator.get(OrePrefixes.lens, Materials.EnderPearl, 1)), ItemList.Circuit_Wafer_NAND.get(4, new Object[0]), 200, 1920, true); - GT_Values.RA.addLaserEngraverRecipe(ItemList.Circuit_Silicon_Wafer2.get(1, new Object[0]), GT_Utility.copyAmount(0,GT_OreDictUnificator.get(OrePrefixes.lens, Materials.EnderEye, 1)), ItemList.Circuit_Wafer_NOR.get(1, new Object[0]), 500, 480, true); - GT_Values.RA.addLaserEngraverRecipe(ItemList.Circuit_Silicon_Wafer3.get(1, new Object[0]), GT_Utility.copyAmount(0,GT_OreDictUnificator.get(OrePrefixes.lens, Materials.EnderEye, 1)), ItemList.Circuit_Wafer_NOR.get(4, new Object[0]), 200, 1920, true); + GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_ILC.get(1, o), ItemList.Circuit_Chip_ILC.get(8,o), null, 600, 48); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_Ram.get(1, o), ItemList.Circuit_Chip_Ram.get(32,o), null, 600, 48); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_NAND.get(1, o), ItemList.Circuit_Chip_NAND.get(32,o), null, 600, 48); @@ -401,36 +242,10 @@ public void run() { GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_HPIC.get(1, o), ItemList.Circuit_Chip_HPIC.get(2,o), null, 600, 48); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_NanoCPU.get(1, o), ItemList.Circuit_Chip_NanoCPU.get(7,o), null, 600, 48); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_QuantumCPU.get(1, o), ItemList.Circuit_Chip_QuantumCPU.get(5,o), null, 600, 48); - GT_Values.RA.addChemicalRecipe(ItemList.Circuit_Wafer_PIC.get(1, o), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IndiumGalliumPhosphide, 2), Materials.RedAlloy.getMolten(288), null, ItemList.Circuit_Wafer_HPIC.get(1, o), 1200, 1920); - GT_Values.RA.addChemicalRecipe(ItemList.Circuit_Wafer_CPU.get(1, o), GT_Utility.copyAmount(16, ic2.core.Ic2Items.carbonFiber), Materials.Glowstone.getMolten(576), null, ItemList.Circuit_Wafer_NanoCPU.get(1, o), 400, 1920); - GT_Values.RA.addChemicalRecipe(ItemList.Circuit_Wafer_NanoCPU.get(1, o), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.IndiumGalliumPhosphide, 1), Materials.Radon.getGas(50), null, ItemList.Circuit_Wafer_QuantumCPU.get(1, o), 600, 1920); - GT_Values.RA.addChemicalRecipe(ItemList.Circuit_Wafer_NanoCPU.get(1, o), ItemList.QuantumEye.get(2, o), Materials.GalliumArsenide.getMolten(288), null, ItemList.Circuit_Wafer_QuantumCPU.get(1, o), 400, 1920); - - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Emerald, 1), Materials.Europium.getMolten(16), ItemList.Circuit_Parts_RawCrystalChip.get(1,o), 1000, 12000, 320, true); - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Olivine, 1), Materials.Europium.getMolten(16), ItemList.Circuit_Parts_RawCrystalChip.get(1,o), 1000, 12000, 320, true); - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Emerald, 8), Materials.UUMatter.getFluid(100), ItemList.Tool_DataOrb.get(1,o), 10000, 12000, 320, true); - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Olivine, 8), Materials.UUMatter.getFluid(100), ItemList.Tool_DataOrb.get(1,o), 10000, 12000, 320, true); GT_ModHandler.addShapelessCraftingRecipe(ItemList.Circuit_Parts_RawCrystalChip.get(9,o), new Object[]{ItemList.Circuit_Chip_CrystalCPU.get(1,o)}); - GT_Values.RA.addBlastRecipe(ItemList.Circuit_Parts_RawCrystalChip.get(1,o), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Emerald, 1), Materials.Helium.getGas(1000), null, ItemList.Circuit_Parts_Crystal_Chip_Elite.get(1,o), null, 900, 480, 5000); - GT_Values.RA.addBlastRecipe(ItemList.Circuit_Parts_RawCrystalChip.get(1,o), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Olivine, 1), Materials.Helium.getGas(1000), null, ItemList.Circuit_Parts_Crystal_Chip_Elite.get(1,o), null, 900, 480, 5000); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Good.get(1,o), new Object[]{"IVC","VDV","CVI",'D',ItemList.Circuit_Parts_Diode.get(1,o),'C',GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.RedAlloy, 1),'V', Ic2Items.electronicCircuit ,'I',ItemList.IC2_Item_Casing_Steel.get(1,o)}); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 1), 100, 120); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 1), 100, 120); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 2), 200, 120); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1L), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 3), 100, 480); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 2L, 4), 200, 120); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.NetherQuartz, 1L), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 5), 300, 120); - GT_Values.RA.addFormingPressRecipe(new ItemStack(Items.comparator, 1, 32767), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 0), GT_ModHandler.getModItem("BuildCraft|Silicon", "redstoneChipset", 1L, 6), 300, 120); - GT_Values.RA.addFormingPressRecipe(GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 10), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 0L, 13), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 16), 200, 16); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.CertusQuartz, 1L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 0L, 13), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 16), 200, 16); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Diamond, 1L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 0L, 14), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 17), 200, 16); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 0L, 15), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 18), 200, 16); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Silicon, 1L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 0L, 19), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 20), 200, 16); - - GT_Values.RA.addFormingPressRecipe(ItemList.Food_Dough_Sugar.get(4L, new Object[0]), ItemList.Shape_Mold_Cylinder.get(0L, new Object[0]), ItemList.Food_Raw_Cake.get(1L, new Object[0]), 384, 4); - GT_Values.RA.addFormingPressRecipe(new ItemStack(Blocks.glass, 1, 32767), ItemList.Shape_Mold_Arrow.get(0L, new Object[0]), ItemList.Arrow_Head_Glass_Emtpy.get(1L, new Object[0]), 64, 4); for (Materials tMat : Materials.values()) { if (tMat.mStandardMoltenFluid != null && tMat.contains(SubTag.SOLDERING_MATERIAL) && !(GregTech_API.mUseOnlyGoodSolderingMaterials && !tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD))) { int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; @@ -505,8 +320,8 @@ public void run() { GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot2.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer2.get(32, new Object[0]),null, 400, 64); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Silicon, 16), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1), Materials.Argon.getGas(8000), null, ItemList.Circuit_Silicon_Ingot3.get(1, new Object[0]), null, 1500, 1920, 5400); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot3.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer3.get(64, new Object[0]),null, 800, 384); - - + + GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.redstone_torch, 2, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), Materials.Concrete.getMolten(144L), new ItemStack(Items.repeater, 1, 0), 800, 1); GT_Values.RA.addAssemblerRecipe(new ItemStack(Items.leather, 1, 32767), new ItemStack(Items.lead, 1, 32767), Materials.Glue.getFluid(50L), new ItemStack(Items.name_tag, 1, 0), 100, 8); GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 8L), new ItemStack(Items.compass, 1, 32767), GT_Values.NF, new ItemStack(Items.map, 1, 0), 100, 8); diff --git a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json new file mode 100644 index 0000000000..380d752de8 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json @@ -0,0 +1,6 @@ +[ +{"inputs":[{"ore": "dustGlass", "count": 1}, {"item": "GTItemList:Shape_Mold_Ball", "count": 0}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Glass_Tube", "count": 1}], +"duration": 160, +"EUt": 8}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/assembler.json b/src/main/resources/assets/gregtech/recipes/assembler.json new file mode 100644 index 0000000000..ad7776f89d --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/assembler.json @@ -0,0 +1,186 @@ +[ +{"inputs": [{"ore": "frameGtBlackSteel", "count": 1}, {"ore": "dustPlastic", "count": 1}], +"inputFluids": [{"fluid": "molten.concrete", "amount": 144}], +"outputs": [{"item": "GTItemList:Block_Plascrete", "count": 1}], +"duration": 200, +"EUt": 48}, + +{"inputs":[{"ore": "foilPolyvinylChloride", "count": 1},{"item": "GTItemList:Paper_Printed_Pages", "count": 1}], +"inputFluids":[{"fluid": "glue", "amount": 20}], +"outputs":[{"item": "minecraft:written_book:0", "count": 1}], +"duration": 32, +"EUt": 8}, +{"inputs":[{"ore": "foilPolyvinylChloride", "count": 1}, {"ore": "platePaper", "count": 3}], +"inputFluids":[{"fluid": "glue", "amount": 20}], +"outputs":[{"item": "minecraft:book:0", "count": 1}], +"duration": 20, +"EUt": 16}, +{"inputs":[{"ore": "dustEnderPearl", "count": 1}, {"ore": "circuitBasic", "count": 4}], +"inputFluids":[{"fluid": "molten.osmium", "amount": 288}], +"outputs":[{"item": "GTItemList:Field_Generator_LV", "count": 1}], +"duration": 1800, +"EUt": 30}, +{"inputs":[{"ore": "dustEnderEye", "count": 1}, {"ore": "circuitGood", "count": 4}], +"inputFluids":[{"fluid": "molten.osmium", "amount": 576}], +"outputs":[{"item": "GTItemList:Field_Generator_MV", "count": 1}], +"duration": 1800, +"EUt": 120}, +{"inputs":[{"item": "GTItemList:QuantumEye", "count": 1}, {"ore": "circuitAdvanced", "count": 4}], +"inputFluids":[{"fluid": "molten.osmium", "amount": 1152}], +"outputs":[{"item": "GTItemList:Field_Generator_HV", "count": 1}], +"duration": 1800, +"EUt": 480}, +{"inputs":[{"ore": "dustNetherStar", "count": 1}, {"ore": "circuitData", "count": 4}], +"inputFluids":[{"fluid": "molten.osmium", "amount": 2304}], +"outputs":[{"item": "GTItemList:Field_Generator_EV", "count": 1}], +"duration": 1800, +"EUt": 1920}, +{"inputs":[{"item": "GTItemList:QuantumStar", "count": 1}, {"ore": "circuitElite", "count": 4}], +"inputFluids":[{"fluid": "molten.osmium", "amount": 4608}], +"outputs":[{"item": "GTItemList:Field_Generator_IV", "count": 1}], +"duration": 1800, +"EUt": 7680}, +{"inputs":[{"ore": "wireFineSteel", "count": 64}, {"ore": "foilZinc", "count": 16}], +"outputs":[{"item": "GTItemList:Component_Filter", "count": 1}], +"duration": 1600, +"EUt": 16}, +{"inputs":[{"ore": "dustGraphite", "count": 8}, {"ore": "foilSilicon", "count": 1}], +"inputFluids":[{"fluid": "glue", "amount": 250}], +"outputs":[{"ore": "dustSmallGraphene", "count": 1}], +"duration": 480, +"EUt": 240}, +{"inputs":[{"item": "GTItemList:Electric_Pump_LV", "count": 1}, {"ore": "circuitBasic", "count": 2}], +"outputs":[{"item": "GTItemList:FluidRegulator_LV", "count": 1}], +"duration": 800, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Electric_Pump_MV", "count": 1}, {"ore": "circuitGood", "count": 2}], +"outputs":[{"item": "GTItemList:FluidRegulator_MV", "count": 1}], +"duration": 800, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Electric_Pump_HV", "count": 1}, {"ore": "circuitAdvanced", "count": 2}], +"outputs":[{"item": "GTItemList:FluidRegulator_HV", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:Electric_Pump_EV", "count": 1}, {"ore": "circuitData", "count": 2}], +"outputs":[{"item": "GTItemList:FluidRegulator_EV", "count": 1}], +"duration": 800, +"EUt": 32}, +{"inputs":[{"item": "GTItemList:Electric_Pump_IV", "count": 1}, {"ore": "circuitElite", "count": 2}], +"outputs":[{"item": "GTItemList:FluidRegulator_IV", "count": 1}], +"duration": 800, +"EUt": 64}, +{"inputs":[{"ore": "plateStainlessSteel", "count": 2}, {"ore": "circuitGood", "count": 4}], +"outputs":[{"item": "GTItemList:Schematic", "count": 1}], +"duration": 3200, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Cover_Shutter", "count": 1}, {"ore": "circuitAdvanced", "count": 2}], +"outputs":[{"item": "GTItemList:FluidFilter", "count": 1}], +"duration": 800, +"EUt": 4}, +{"inputs":[{"ore": "plateWood", "count": 8}, {"item": "GTItemList:IC2_Resin", "count": 1}], +"inputFluids":[{"fluid": "glue", "amount": 100}], +"outputs":[{"item": "GTItemList:Circuit_Board_Coated", "count": 8}], +"duration": 160, +"EUt": 8}, +{"inputs":[{"ore": "dustWood", "count": 1}, {"item": "GTItemList:Shape_Mold_Plate", "count": 0}], +"inputFluids":[{"fluid": "glue", "amount": 100}], +"outputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}], +"duration": 30, +"EUt": 8}, +{"inputs":[{"ore": "dustWood", "count": 1}, {"item": "GTItemList:Shape_Mold_Plate", "count": 0}], +"inputFluids":[{"fluid": "molten.bisphenol_a", "amount": 100}], +"outputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 4}], +"duration": 30, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Multifiberglass", "count": 1}, {"item": "GTItemList:Circuit_Parts_PetriDish", "count": 1}, {"item": "GTItemList:Electric_Pump_LV", "count": 1}, {"item": "GTItemList:Sensor_LV", "count": 1}, {"ore": "circuitGood", "count": 1}], +"inputFluids":[{"fluid": "growthmediumsterilized", "amount": 250}], +"outputs":[{"item": "GTItemList:Circuit_Board_Wetware", "count": 1}], +"duration": 400, +"EUt": 480}, +{"inputs":[{"ore": "dustCoal", "count": 1}, {"ore": "wireFineCopper", "count": 4}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Resistor", "count": 12}], +"duration": 160, +"EUt": 6}, +{"inputs":[{"ore": "dustCharcoal", "count": 1}, {"ore": "wireFineCopper", "count": 4}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Resistor", "count": 12}], +"duration": 160, +"EUt": 6}, +{"inputs":[{"ore": "dustCarbon", "count": 1}, {"ore": "wireFineCopper", "count": 4}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Resistor", "count": 12}], +"duration": 160, +"EUt": 6}, +{"inputs":[{"ore": "dustCarbon", "count": 1}, {"ore": "wireFineElectrum", "count": 4}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 144}], +"outputs":[{"item": "GTItemList:Circuit_Parts_ResistorSMD", "count": 24}], +"duration": 80, +"EUt": 96}, +{"inputs":[{"item": "GTItemList:Circuit_Parts_Glass_Tube", "count": 1}, {"ore": "wireFineCopper", "count": 2}, {"ore": "platePaper", "count": 2}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Vacuum_Tube", "count": 1}], +"duration": 120, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Circuit_Parts_Glass_Tube", "count": 1}, {"ore": "wireGt01Copper", "count": 2}, {"ore": "platePaper", "count": 2}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Vacuum_Tube", "count": 1}], +"duration": 120, +"EUt": 8}, +{"inputs":[{"ore": "wireFineAnnealedCopper", "count": 4}, {"ore": "dustSmallGallium", "count": 1}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Diode", "count": 16}], +"duration": 400, +"EUt": 48}, +{"inputs":[{"ore": "wireFinePlatinum", "count": 4}, {"ore": "dustSmallGallium", "count": 1}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Circuit_Parts_DiodeSMD", "count": 32}], +"duration": 400, +"EUt": 120}, +{"inputs":[{"ore": "wireFineCopper", "count": 8}, {"ore": "boltSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Coil", "count": 2}], +"duration": 80, +"EUt": 8}, +{"inputs":[{"ore": "wireFineCopper", "count": 8}, {"ore": "boltNickelZincFerrite", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Coil", "count": 4}], +"duration": 80, +"EUt": 8}, +{"inputs":[{"ore": "wireFineAnnealedCopper", "count": 8}, {"ore": "boltSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Coil", "count": 2}], +"duration": 80, +"EUt": 8}, +{"inputs":[{"ore": "wireFineAnnealedCopper", "count": 8}, {"ore": "boltNickelZincFerrite", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Coil", "count": 4}], +"duration": 80, +"EUt": 8}, +{"inputs":[{"ore": "plateSilicon", "count": 1}, {"ore": "wireFineTin", "count": 6}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 144}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Transistor", "count": 8}], +"duration": 80, +"EUt": 24}, +{"inputs":[{"ore": "plateGallium", "count": 1}, {"ore": "wireFineAnnealedCopper", "count": 6}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Circuit_Parts_TransistorSMD", "count": 32}], +"duration": 80, +"EUt": 96}, +{"inputs":[{"ore": "platePlastic", "count": 1}, {"ore": "foilAluminium", "count": 2}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Capacitor", "count": 2}], +"duration": 80, +"EUt": 96}, +{"inputs":[{"ore": "foilSilicone", "count": 8}, {"ore": "foilAluminium", "count": 2}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 72}], +"outputs":[{"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 32}], +"duration": 120, +"EUt": 120}, +{"inputs":[{"ore": "foilPolyvinylChloride", "count": 8}, {"ore": "foilAluminium", "count": 2}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 72}], +"outputs":[{"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 32}], +"duration": 100, +"EUt": 120}, + +{"inputs":[{"ore": "foilSilicone", "count": 8}, {"ore": "foilTantalum", "count": 2}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 72}], +"outputs":[{"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 64}], +"duration": 120, +"EUt": 120}, +{"inputs":[{"ore": "foilPolyvinylChloride", "count": 8}, {"ore": "foilTantalum", "count": 2}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 72}], +"outputs":[{"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 64}], +"duration": 100, +"EUt": 120}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/autoclave.json b/src/main/resources/assets/gregtech/recipes/autoclave.json new file mode 100644 index 0000000000..c9c1a903b9 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/autoclave.json @@ -0,0 +1,83 @@ +[ +{"inputs":[{"item": "GTItemList:IC2_Energium_Dust", "count": 9}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_EnergyCrystal", "count": 1}], +"duration": 500, +"EUt": 256}, +{"inputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 200}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:10", "count": 1}], +"duration": 2000, +"EUt": 24}, +{"inputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:600", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 200}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:11", "count": 1}], +"duration": 2000, +"EUt": 24}, +{"inputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:1200", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 200}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:12", "count": 1}], +"duration": 2000, +"EUt": 24}, +{"inputs":[{"item": "GTItemList:IC2_Energium_Dust", "count": 9}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_EnergyCrystal", "count": 1}], +"duration": 250, +"EUt": 256}, +{"inputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 200}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:10", "count": 1}], +"duration": 1000, +"EUt": 24}, +{"inputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:600", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 200}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:11", "count": 1}], +"duration": 1000, +"EUt": 24}, +{"inputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:1200", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 200}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:12", "count": 1}], +"duration": 1000, +"EUt": 24}, +{"inputs":[{"ore": "dustCarbon", "count": 16}], +"inputFluids":[{"fluid": "molten.palladium", "amount": 4}], +"outputs":[{"item": "IC2:itemPartCarbonFibre", "count": 8, "chance": 0.9}], +"duration": 600, +"EUt": 5}, +{"inputs":[{"ore": "dustCarbon", "count": 16}], +"inputFluids":[{"fluid": "molten.platinum", "amount": 4}], +"outputs":[{"item": "IC2:itemPartCarbonFibre", "count": 8, "chance": 0.5}], +"duration": 600, +"EUt": 5}, +{"inputs":[{"ore": "dustCarbon", "count": 16}], +"inputFluids":[{"fluid": "molten.lutetium", "amount": 4}], +"outputs":[{"item": "IC2:itemPartCarbonFibre", "count": 8, "chance": 0.3333}], +"duration": 600, +"EUt": 5}, +{"inputs":[{"ore": "dustNetherStar", "count": 1}], +"inputFluids":[{"fluid": "ic2uumatter", "amount": 576}], +"outputs":[{"ore": "gemNetherStar", "count": 1, "chance": 0.3333}], +"duration": 72000, +"EUt": 480}, + +{"inputs":[{"ore": "gemExquisiteEmerald", "count": 1}], +"inputFluids":[{"fluid": "molten.europium", "amount": 16}], +"outputs":[{"item": "GTItemList:Circuit_Parts_RawCrystalChip", "count": 1, "chance": 0.1}], +"duration": 12000, +"EUt": 320}, +{"inputs":[{"ore": "gemExquisiteOlivine", "count": 1}], +"inputFluids":[{"fluid": "molten.europium", "amount": 16}], +"outputs":[{"item": "GTItemList:Circuit_Parts_RawCrystalChip", "count": 1, "chance": 0.1}], +"duration": 12000, +"EUt": 320}, +{"inputs":[{"ore": "gemExquisiteEmerald", "count": 8}], +"inputFluids":[{"fluid": "uumatter", "amount": 100}], +"outputs":[{"item": "GTItemList:Tool_DataOrb", "count": 1}], +"duration": 12000, +"EUt": 320}, +{"inputs":[{"ore": "gemExquisiteOlivine", "count": 8}], +"inputFluids":[{"fluid": "uumatter", "amount": 100}], +"outputs":[{"item": "GTItemList:Tool_DataOrb", "count": 1}], +"duration": 12000, +"EUt": 320}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/centrifuge.json b/src/main/resources/assets/gregtech/recipes/centrifuge.json new file mode 100644 index 0000000000..0a5529008a --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/centrifuge.json @@ -0,0 +1,12 @@ +[ +{"inputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"inputFluids":[{"fluid": "air", "amount": 10000}], +"outputFluids":[{"fluid": "nitrogen", "amount": 3900}], +"outputs":[{"ore": "cellOxygen", "count": 1}], +"duration": 1600, +"EUt": 8}, +{"inputs":[{"ore": "dustPlatinumGroupSludge", "count": 1}] +"outputs":[{"ore": "dustSiliconDioxide", "count": 1}, {"ore": "dustTinyGold", "count": 1}, {"ore": "dustTinyPlatinum", "count": 1}, {"ore": "dustTinyPalladium", "count": 1, "chance": 0.8}, {"ore": "dustTinyIridium", "count": 1, "chance": 0.6}, {"ore": "dustTinyOsmium", "count": 1, "chance": 0.6}], +"duration": 900, +"EUt": 30}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_bath.json b/src/main/resources/assets/gregtech/recipes/chemical_bath.json new file mode 100644 index 0000000000..847f25ca10 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_bath.json @@ -0,0 +1,178 @@ +[ +{"inputs": [{"item": "GTItemList:Food_Raw_Fries", "count": 1}], +"inputFluids": [{"fluid": "hotfryingoil", "amount": 10}], +"outputs": [{"item": "GTItemList:Food_Fries", "count": 1}], +"duration": 16, +"EUt": 4}, +{"inputs": [{"item": "IC2:itemDynamite", "count": 1}], +"inputFluids": [{"fluid": "glue", "amount": 10}], +"outputs": [{"item": "IC2:itemDynamiteSticky", "count": 1}], +"duration": 16, +"EUt": 4}, +{"inputs": [{"ore": "frameGtSteel", "count": 1}], +"inputFluids": [{"fluid": "molten.concrete", "amount": 144}], +"outputs": [{"item": "IC2:blockAlloy", "comment": "reinforced stone", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"ore": "dustCoal", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 125}], +"outputs": [{"ore": "dustHydratedCoal", "count": 1}], +"duration": 12, +"EUt": 4}, +{"inputs": [{"ore": "dustWood", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 100}], +"outputs": [{"item": "minecraft:paper", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"ore": "dustPaper", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 100}], +"outputs": [{"item": "minecraft:paper", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs": [{"item": "minecraft:reeds:*", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 100}], +"outputs": [{"item": "minecraft:paper", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs": [{"ore": "dustCoal", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 125}], +"outputs": [{"ore": "dustHydratedCoal", "count": 1}], +"duration": 12, +"EUt": 4}, +{"inputs": [{"ore": "dustWood", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 100}], +"outputs": [{"item": "minecraft:paper", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"ore": "dustPaper", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 100}], +"outputs": [{"item": "minecraft:paper", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs": [{"item": "minecraft:reeds:*", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 100}], +"outputs": [{"item": "minecraft:paper", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs": [{"item": "minecraft:wool:*", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:*", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:stained_hardened_clay:*", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:hardened_clay:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:stained_glass:*", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:glass:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:stained_glass_pane:*", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:glass_pane:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:8", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:0", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:9", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:1", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:10", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:2", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:11", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:3", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:12", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:4", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:13", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:5", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:14", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:6", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:15", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:7", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:8", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:0", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:9", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:1", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:10", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:2", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:11", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:3", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:12", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:4", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:13", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:5", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:14", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:6", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"item": "gregtech:gt.blockconcretes:15", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 250}], +"outputs": [{"item": "gregtech:gt.blockconcretes:7", "count": 1}], +"duration": 200, +"EUt": 4}, +{"inputs": [{"ore": "frameGtTungstenSteel", "count": 1}], +"inputFluids": [{"fluid": "molten.concrete", "amount": 144}], +"outputs": [{"item": "GTItemList:Block_TungstenSteelReinforced", "count": 1}], +"duration": 200, +"EUt": 4}, + +{"inputs": [{"item": "GTItemList:Circuit_Parts_GlassFiber", "count": 1}], +"inputFluids": [{"fluid": "molten.epoxid", "amount": 144}], +"outputs": [{"ore": "plateEpoxidFiberReinforced", "count": 1}], +"duration": 240, +"EUt": 16}, +{"inputs": [{"item": "IC2:itemPartCarbonFibre", "count": 1}], +"inputFluids": [{"fluid": "molten.epoxid", "amount": 144}], +"outputs": [{"ore": "plateEpoxidFiberReinforced", "count": 1}], +"duration": 240, +"EUt": 16}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json new file mode 100644 index 0000000000..46eba81008 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json @@ -0,0 +1,82 @@ +[ +{"inputs": [{"item": "minecraft:paper", "count": 1}, {"item": "minecraft:string", "count": 1}], +"inputFluids": [{"fluid": "glyceryl", "amount": 500}], +"outputs": [{"item": "IC2:itemDynamite", "count": 1}], +"duration": 160, +"EUt": 4}, + +{"inputs":[{"ore": "crushedPurifiedGalena", "count": 3}, {"ore": "crushedPurifiedSphalerite", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 4000}], +"outputFluids":[{"fluid": "indiumconcentrate", "amount": 8000}], +"outputs":[null], +"duration": 60, +"EUt": 150}, +{"inputs":[{"ore": "dustAluminium", "count": 4}, null], +"inputFluids":[{"fluid": "indiumconcentrate", "amount": 8000}], +"outputFluids":[{"fluid": "solution.leadzincsolution", "amount": 8000}], +"outputs":[{"ore": "dustTinyIndium", "count": 1}], +"duration": 50, +"EUt": 600}, +{"inputs":[{"ore": "crushedPurifiedPentlandite", "count": 1}, null], +"inputFluids":[{"fluid": "nitricacid", "amount": 1000}], +"outputFluids":[{"fluid": "solution.nickelsulfate", "amount": 9000}], +"outputs":[{"ore": "dustTinyPlatinumGroupSludge", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs":[{"ore": "crushedPurifiedChalcopyrite", "count": 1}, null], +"inputFluids":[{"fluid": "nitricacid", "amount": 1000}], +"outputFluids":[{"fluid": "solution.bluevitriol", "amount": 9000}], +"outputs":[{"ore": "dustTinyPlatinumGroupSludge", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs":[{"ore": "platePlastic", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"ore": "platePolyvinylChloride", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 2}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"ore": "platePolytetrafluoroethylene", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 4}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"ore": "plateEpoxid", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Epoxy", "count": 1}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"ore": "plateEpoxidFiberReinforced", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}, {"ore": "foilElectrum", "count": 16}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 250}], +"outputs":[{"item": "GTItemList:Circuit_Board_Multifiberglass", "count": 1}], +"duration": 100, +"EUt": 480}, +{"inputs":[{"item": "GTItemList:Circuit_Wafer_PIC", "count": 1}, {"ore": "dustIndiumGalliumPhosphide", "count": 2}], +"inputFluids":[{"fluid": "molten.redalloy", "amount": 288}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_HPIC", "count": 1}], +"duration": 1200, +"EUt": 1920}, +{"inputs":[{"item": "GTItemList:Circuit_Wafer_CPU", "count": 1}, {"item": "IC2:itemPartCarbonFibre", "count": 16}], +"inputFluids":[{"fluid": "molten.glowstone", "amount": 576}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}], +"duration": 400, +"EUt": 1920}, +{"inputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}, {"ore": "dustIndiumGalliumPhosphide", "count": 1}], +"inputFluids":[{"fluid": "radon", "amount": 50}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_QuantumCPU", "count": 1}], +"duration": 600, +"EUt": 1920}, +{"inputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}, {"item": "GTItemList:QuantumEye", "count": 2}], +"inputFluids":[{"fluid": "molten.galliumarsenide", "amount": 288}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_QuantumCPU", "count": 1}], +"duration": 400, +"EUt": 1920}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/electrolyzer.json b/src/main/resources/assets/gregtech/recipes/electrolyzer.json new file mode 100644 index 0000000000..193207e1db --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/electrolyzer.json @@ -0,0 +1,19 @@ +[ +{"inputFluids":[{"fluid": "solution.leadzincsolution", "amount": 8000}], +"outputFluids":[{"fluid": "water", "amount": 2000}], +"outputs":[{"ore": "dustLead", "count": 1}, {"ore": "dustSilver", "count": 1}, {"ore": "dustZinc", "count": 1}, {"ore": "dustSulfur", "count": 3}], +"duration": 300, +"EUt": 192}, +{"inputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"inputFluids":[{"fluid": "solution.bluevitriol", "amount": 9000}], +"outputFluids":[{"fluid": "sulfuricacid", "amount": 8000}], +"outputs":[{"ore": "dustCopper", "count": 1}, {"ore": "cellOxygen", "count": 1}], +"duration": 900, +"EUt": 30}, +{"inputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"inputFluids":[{"fluid": "solution.nickelsulfate", "amount": 9000}], +"outputFluids":[{"fluid": "sulfuricacid", "amount": 8000}], +"outputs":[{"ore": "dustNickel", "count": 1}, {"ore": "cellOxygen", "count": 1}], +"duration": 900, +"EUt": 30}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/extruder.json b/src/main/resources/assets/gregtech/recipes/extruder.json new file mode 100644 index 0000000000..44a5550ee0 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/extruder.json @@ -0,0 +1,15 @@ +[ +{"inputs":[{"item": "GTItemList:FR_Wax", "count": 1}, {"item": "GTItemList:Shape_Extruder_Cell", "count": 0}], +"outputs":[{"item": "GTItemList:FR_WaxCapsule", "count": 1}], +"duration": 64, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:FR_RefractoryWax", "count": 1}, {"item": "GTItemList:Shape_Extruder_Cell", "count": 0}], +"outputs":[{"item": "GTItemList:FR_RefractoryCapsule", "count": 1}], +"duration": 128, +"EUt": 16}, + +{"inputs":[{"ore": "ingotBorosilicateGlass", "count": 1}, {"item": "GTItemList:Shape_Extruder_Wire", "count": 0}], +"outputs":[{"item": "GTItemList:Circuit_Parts_GlassFiber", "count": 8}], +"duration": 160, +"EUt": 96}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_canner.json b/src/main/resources/assets/gregtech/recipes/fluid_canner.json new file mode 100644 index 0000000000..1c40ad1bd8 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/fluid_canner.json @@ -0,0 +1,43 @@ +[ +{"inputs":[{"item": "GTItemList:Battery_Hull_LV", "count": 1}], +"inputFluids":[{"fluid": "molten.redstone", "amount": 288}], +"outputs":[{"item": "GTItemList:IC2_ReBattery", "count": 1}], +"duration": 4, +"EUt": 1}, +{"inputs":[{"item": "GTItemList:Battery_Hull_LV", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 1000}], +"outputs":[{"item": "GTItemList:Battery_SU_LV_Mercury", "nbt": [{"name":"GT.ItemCharge","type":"long","value":"32000"}], "count": 1}], +"duration": 16, +"EUt": 1}, +{"inputs":[{"item": "GTItemList:Battery_Hull_MV", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 4000}], +"outputs":[{"item": "GTItemList:Battery_SU_MV_Mercury", "nbt": [{"name":"GT.ItemCharge","type":"long","value":"128000"}], "count": 1}], +"duration": 64, +"EUt": 1}, +{"inputs":[{"item": "GTItemList:Battery_Hull_HV", "count": 1}], +"inputFluids":[{"fluid": "mercury", "amount": 16000}], +"outputs":[{"item": "GTItemList:Battery_SU_HV_Mercury", "nbt": [{"name":"GT.ItemCharge","type":"long","value":"512000"}], "count": 1}], +"duration": 258, +"EUt": 1}, +{"inputs":[{"item": "GTItemList:Battery_Hull_LV", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 1000}], +"outputs":[{"item": "GTItemList:Battery_SU_LV_SulfuricAcid", "nbt": [{"name":"GT.ItemCharge","type":"long","value":"18000"}], "count": 1}], +"duration": 16, +"EUt": 1}, +{"inputs":[{"item": "GTItemList:Battery_Hull_MV", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 4000}], +"outputs":[{"item": "GTItemList:Battery_SU_MV_SulfuricAcid", "nbt": [{"name":"GT.ItemCharge","type":"long","value":"72000"}], "count": 1}], +"duration": 64, +"EUt": 1}, +{"inputs":[{"item": "GTItemList:Battery_Hull_HV", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 16000}], +"outputs":[{"item": "GTItemList:Battery_SU_HV_SulfuricAcid", "nbt": [{"name":"GT.ItemCharge","type":"long","value":"288000"}], "count": 1}], +"duration": 258, +"EUt": 1}, +{"inputs":[{"item": "GTItemList:TF_Vial_FieryTears", "count": 1}], +"outputFluids":[{"fluid": "molten.fierysteel", "amount": 250}], +"outputs":[{"item": "GTItemList:Bottle_Empty", "count": 1}], +"duration": 4, +"EUt": 1}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json index c54d73c3e3..5b0de12725 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json @@ -6,5 +6,95 @@ {"inputs":[{"item": "gregtech:gt.metaitem.02:32557", "comment": "rapeseed", "count": 1}], "fluidOutputs":[{"fluid": "seedoil", "amount": 50}], "duration": 32, -"EUt": 2} -] +"EUt": 2}, +{"inputs":[{"item": "GTItemList:Dye_SquidInk", "count": 1}], +"fluidOutputs":[{"fluid": "squidink", "amount": 144}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Dye_Indigo", "count": 1}], +"fluidOutputs":[{"fluid": "indigo", "amount": 144}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Crop_Drop_Indigo", "count": 1}], +"fluidOutputs":[{"fluid": "indigo", "amount": 144}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Crop_Drop_MilkWart", "count": 1}], +"fluidOutputs":[{"fluid": "milk", "amount": 150}], +"outputs":[{"ore": "dustMilk", "count": 1, "chance": 0.1}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Crop_Drop_OilBerry", "count": 1}], +"fluidOutputs":[{"fluid": "oil", "amount": 100}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Crop_Drop_UUMBerry", "count": 1}], +"fluidOutputs":[{"fluid": "ic2uumatter", "amount": 4}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Crop_Drop_UUABerry", "count": 1}], +"fluidOutputs":[{"fluid": "uuamplifier", "amount": 4}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "minecraft:fish:0", "count": 1}], +"fluidOutputs":[{"fluid": "fishoil", "amount": 40}], +"duration": 16, +"EUt": 4}, +{"inputs":[{"item": "minecraft:fish:1", "count": 1}], +"fluidOutputs":[{"fluid": "fishoil", "amount": 60}], +"duration": 16, +"EUt": 4}, +{"inputs":[{"item": "minecraft:fish:2", "count": 1}], +"fluidOutputs":[{"fluid": "fishoil", "amount": 70}], +"duration": 16, +"EUt": 4}, +{"inputs":[{"item": "minecraft:fish:3", "count": 1}], +"fluidOutputs":[{"fluid": "fishoil", "amount": 30}], +"duration": 16, +"EUt": 4}, +{"inputs":[{"item": "minecraft:coal:1", "count": 1}], +"outputs":[{"ore": "dustAsh", "count": 1, "chance": 0.1}], +"fluidOutputs":[{"fluid": "woodtar", "amount": 40}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"ore": "dustWood", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Plantball", "count": 1, "chance": 0.1}], +"fluidOutputs":[{"fluid": "creosote", "amount": 5}], +"duration": 16, +"EUt": 4}, +{"inputs":[{"ore": "dustHydratedCoal", "count": 1}], +"outputs":[{"ore": "dustCoal", "count": 1}], +"fluidOutputs":[{"fluid": "water", "amount": 100}], +"duration": 32, +"EUt": 4}, +{"inputs":[{"item": "Thaumcraft:ItemResource:3", "count": 1}], +"fluidOutputs":[{"fluid": "mercury", "amount": 1000}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"ore": "gemMercury", "count": 1}], +"fluidOutputs":[{"fluid": "mercury", "amount": 1000}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"ore": "dustMonazite", "count": 1}], +"fluidOutputs":[{"fluid": "helium", "amount": 1000}], +"duration": 64, +"EUt": 64}, +{"inputs":[{"item": "minecraft:snowball", "count": 1}], +"fluidOutputs":[{"fluid": "water", "amount": 250}], +"duration": 32, +"EUt": 4}, +{"inputs":[{"item": "minecraft:snow", "count": 1}], +"fluidOutputs":[{"fluid": "water", "amount": 1000}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"ore": "dustIce", "count": 1}], +"fluidOutputs":[{"fluid": "ice", "amount": 1000}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "Forestry:phosphor", "count": 1}], +"outputs":[{"ore": "dustPhosphorus", "count": 1, "chance": 0.1}], +"fluidOutputs":[{"fluid": "lava", "amount": 800}], +"duration": 256, +"EUt": 128}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_heater.json b/src/main/resources/assets/gregtech/recipes/fluid_heater.json new file mode 100644 index 0000000000..be43dd7e2f --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/fluid_heater.json @@ -0,0 +1,12 @@ +[ +{"inputs":[{"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"inputFluids":[{"fluid": "growthmediumraw", "amount": 1000}], +"outputFluids":[{"fluid": "growthmediumsterilized", "amount": 1000}], +"duration": 60, +"EUt": 24}, +{"inputs":[{"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"inputFluids":[{"fluid": "potion.dragonblood", "amount": 1000}], +"outputFluids":[{"fluid": "growthmediumsterilized", "amount": 1000}], +"duration": 60, +"EUt": 24}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json b/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json new file mode 100644 index 0000000000..7f1eabdf4a --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json @@ -0,0 +1,128 @@ +[ +{"inputs":[{"item": "GTItemList:Shape_Mold_Casing", "count": 0}], +"inputFluids":[{"fluid": "molten.iron", "amount": 72}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Iron", "count": 1}], +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Casing", "count": 0}], +"inputFluids":[{"fluid": "molten.gold", "amount": 72}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Gold", "count": 1}], +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Casing", "count": 0}], +"inputFluids":[{"fluid": "molten.bronze", "amount": 72}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Bronze", "count": 1}], +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Casing", "count": 0}], +"inputFluids":[{"fluid": "molten.copper", "amount": 72}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Copper", "count": 1}], +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Casing", "count": 0}], +"inputFluids":[{"fluid": "molten.tin", "amount": 72}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Tin", "count": 1}], +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Casing", "count": 0}], +"inputFluids":[{"fluid": "molten.lead", "amount": 72}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Lead", "count": 1}], +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Casing", "count": 0}], +"inputFluids":[{"fluid": "molten.steel", "amount": 72}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Steel", "count": 1}], +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Ball", "count": 0}], +"inputFluids":[{"fluid": "mercury", "amount": 1000}], +"outputs":[{"item": "Thaumcraft:ItemResource:3", "count": 1}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Ball", "count": 0}], +"inputFluids":[{"fluid": "mercury", "amount": 1000}], +"outputs":[{"ore": "gemMercury", "count": 1}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Ball", "count": 0}], +"inputFluids":[{"fluid": "water", "amount": 250}], +"outputs":[{"item": "minecraft:snowball", "count": 1}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Ball", "count": 0}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 250}], +"outputs":[{"item": "minecraft:snowball", "count": 1}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Block", "count": 0}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "minecraft:snow", "count": 1}], +"duration": 512, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Block", "count": 0}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "minecraft:snow", "count": 1}], +"duration": 512, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Block", "count": 0}], +"inputFluids":[{"fluid": "lava", "amount": 1000}], +"outputs":[{"item": "minecraft:obsidian", "count": 1}], +"duration": 512, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Block", "count": 0}], +"inputFluids":[{"fluid": "molten.concrete", "amount": 144}], +"outputs":[{"item": "gregtech:gt.blockconcretes:8", "count": 1}], +"duration": 12, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Block", "count": 0}], +"inputFluids":[{"fluid": "molten.glowstone", "amount": 576}], +"outputs":[{"item": "minecraft:glowstone", "count": 1}], +"duration": 12, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Block", "count": 0}], +"inputFluids":[{"fluid": "molten.glass", "amount": 144}], +"outputs":[{"item": "minecraft:glass:0", "count": 1}], +"duration": 12, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Plate", "count": 0}], +"inputFluids":[{"fluid": "molten.glass", "amount": 144}], +"outputs":[{"ore": "plateGlass", "count": 1}], +"duration": 12, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Bottle", "count": 0}], +"inputFluids":[{"fluid": "molten.glass", "amount": 144}], +"outputs":[{"item": "GTItemList:Bottle_Empty", "count": 1}], +"duration": 12, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Cylinder", "count": 0}], +"inputFluids":[{"fluid": "milk", "amount": 250}], +"outputs":[{"item": "GTItemList:Food_Cheese", "count": 1}], +"duration": 1024, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Cylinder", "count": 0}], +"inputFluids":[{"fluid": "molten.cheese", "amount": 250}], +"outputs":[{"item": "GTItemList:Food_Cheese", "count": 1}], +"duration": 64, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Anvil", "count": 0}], +"inputFluids":[{"fluid": "molten.iron", "amount": 4464}], +"outputs":[{"item": "minecraft:anvil", "count": 1}], +"duration": 128, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Anvil", "count": 0}], +"inputFluids":[{"fluid": "molten.steel", "amount": 4464}], +"outputs":[{"item": "Railcraft:tile.railcraft.anvil", "count": 1}], +"duration": 128, +"EUt": 16}, + +{"inputs":[{"item": "GTItemList:Shape_Mold_Cylinder", "count": 0}], +"inputFluids":[{"fluid": "molten.polytetrafluoroethylene", "amount": 36}], +"outputs":[{"item": "GTItemList:Circuit_Parts_PetriDish", "count": 1}], +"duration": 160, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Cylinder", "count": 0}], +"inputFluids":[{"fluid": "molten.polystyrene", "amount": 36}], +"outputs":[{"item": "GTItemList:Circuit_Parts_PetriDish", "count": 1}], +"duration": 160, +"EUt": 16}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/forming_press.json b/src/main/resources/assets/gregtech/recipes/forming_press.json new file mode 100644 index 0000000000..1dde7f23ce --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/forming_press.json @@ -0,0 +1,60 @@ +[ + +{"inputs":[{"ore": "plateIron", "count": 1}, {"item": "BuildCraft|Silicon:redstoneChipset:0", "count": 1}], +"outputs":[{"item": "BuildCraft|Silicon:redstoneChipset:1", "count": 1}], +"duration": 100, +"EUt": 120}, +{"inputs":[{"ore": "plateWroughtIron", "count": 1}, {"item": "BuildCraft|Silicon:redstoneChipset:0", "count": 1}], +"outputs":[{"item": "BuildCraft|Silicon:redstoneChipset:1", "count": 1}], +"duration": 100, +"EUt": 120}, +{"inputs":[{"ore": "plateGold", "count": 1}, {"item": "BuildCraft|Silicon:redstoneChipset:0", "count": 1}], +"outputs":[{"item": "BuildCraft|Silicon:redstoneChipset:2", "count": 1}], +"duration": 200, +"EUt": 120}, +{"inputs":[{"ore": "plateDiamond", "count": 1}, {"item": "BuildCraft|Silicon:redstoneChipset:0", "count": 1}], +"outputs":[{"item": "BuildCraft|Silicon:redstoneChipset:3", "count": 1}], +"duration": 100, +"EUt": 480}, +{"inputs":[{"ore": "gemEnderPearl", "count": 1}, {"item": "BuildCraft|Silicon:redstoneChipset:0", "count": 1}], +"outputs":[{"item": "BuildCraft|Silicon:redstoneChipset:4", "count": 2}], +"duration": 200, +"EUt": 120}, +{"inputs":[{"ore": "plateNetherQuartz", "count": 1}, {"item": "BuildCraft|Silicon:redstoneChipset:0", "count": 1}], +"outputs":[{"item": "BuildCraft|Silicon:redstoneChipset:5", "count": 1}], +"duration": 300, +"EUt": 120}, +{"inputs":[{"item": "minecraft:comparator:32767", "count": 1}, {"item": "BuildCraft|Silicon:redstoneChipset:0", "count": 1}], +"outputs":[{"item": "BuildCraft|Silicon:redstoneChipset:6", "count": 1}], +"duration": 300, +"EUt": 120}, +{"inputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:10", "count": 1}, {"item": "appliedenergistics2:item.ItemMultiMaterial:13", "count": 0}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:16", "count": 1}], +"duration": 200, +"EUt": 16}, +{"inputs":[{"ore": "plateCertusQuartz", "count": 1}, {"item": "appliedenergistics2:item.ItemMultiMaterial:13", "count": 0}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:16", "count": 1}], +"duration": 200, +"EUt": 16}, +{"inputs":[{"ore": "plateDiamond", "count": 1}, {"item": "appliedenergistics2:item.ItemMultiMaterial:14", "count": 0}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:17", "count": 1}], +"duration": 200, +"EUt": 16}, +{"inputs":[{"ore": "plateGold", "count": 1}, {"item": "appliedenergistics2:item.ItemMultiMaterial:15", "count": 0}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:18", "count": 1}], +"duration": 200, +"EUt": 16}, +{"inputs":[{"ore": "plateSilicon", "count": 1}, {"item": "appliedenergistics2:item.ItemMultiMaterial:19", "count": 0}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:20", "count": 1}], +"duration": 200, +"EUt": 16}, + +{"inputs":[{"item": "GTItemList:Food_Dough_Sugar", "count": 4}, {"item": "GTItemList:Shape_Mold_Cylinder", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Raw_Cake", "count": 1}], +"duration": 384, +"EUt": 4}, +{"inputs":[{"item": "minecraft:glass:*", "count": 1}, {"item": "GTItemList:Shape_Mold_Arrow", "count": 0}], +"outputs":[{"item": "GTItemList:Arrow_Head_Glass_Emtpy", "count": 1}], +"duration": 64, +"EUt": 4}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/laser_engraver.json b/src/main/resources/assets/gregtech/recipes/laser_engraver.json new file mode 100644 index 0000000000..70f48d7597 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/laser_engraver.json @@ -0,0 +1,18 @@ +[ +{"inputs":[{"item": "GTItemList:Circuit_Silicon_Wafer2", "count": 1}, {"ore": "lensEnderPearl", "count": 0}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_NAND", "count": 1}], +"duration": 500, +"EUt": 480}, +{"inputs":[{"item": "GTItemList:Circuit_Silicon_Wafer3", "count": 1}, {"ore": "lensEnderPearl", "count": 0}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_NAND", "count": 4}], +"duration": 200, +"EUt": 1920}, +{"inputs":[{"item": "GTItemList:Circuit_Silicon_Wafer2", "count": 1}, {"ore": "lensEnderEye", "count": 0}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_NOR", "count": 1}], +"duration": 500, +"EUt": 480}, +{"inputs":[{"item": "GTItemList:Circuit_Silicon_Wafer3", "count": 1}, {"ore": "lensEnderEye", "count": 0}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_NOR", "count": 4}], +"duration": 200, +"EUt": 1920}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/mixer.json b/src/main/resources/assets/gregtech/recipes/mixer.json index cf1e323b4e..96ca074417 100644 --- a/src/main/resources/assets/gregtech/recipes/mixer.json +++ b/src/main/resources/assets/gregtech/recipes/mixer.json @@ -756,6 +756,11 @@ "outputs":[{"item": "GTItemList:Block_SSFUEL", "count": 1}], "enableCondition": "ModLoaded(Railcraft)", "duration": 120, -"EUt": 96} +"EUt": 96}, -] +{"inputs":[{"ore": "dustSugar", "count": 4}, {"ore": "dustMeatRaw", "count": 1}, {"ore": "dustTinySalt", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 4000}], +"outputFluids":[{"fluid": "growthmediumraw", "amount": 4000}], +"duration": 160, +"EUt": 16}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/slicer.json b/src/main/resources/assets/gregtech/recipes/slicer.json new file mode 100644 index 0000000000..42a1ea1c66 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/slicer.json @@ -0,0 +1,18 @@ +[ +{"inputs":[{"item": "GTItemList:Food_Dough_Chocolate", "count": 1}, {"item": "GTItemList:Shape_Slicer_Flat", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Raw_Cookie", "count": 4}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Baked_Bun", "count": 1}, {"item": "GTItemList:Shape_Slicer_Flat", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Bun", "count": 2}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Baked_Bread", "count": 1}, {"item": "GTItemList:Shape_Slicer_Flat", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Bread", "count": 2}], +"duration": 128, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Baked_Baguette", "count": 1}, {"item": "GTItemList:Shape_Slicer_Flat", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Baguette", "count": 2}], +"duration": 128, +"EUt": 4}, +{}] From 7b6fb3a5ba64739dd16203227a4644f513f56201 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Wed, 11 Nov 2020 17:02:47 -0800 Subject: [PATCH 13/21] Even more recipes transferred to json. --- .../api/recipes/GT_RecipeConditions.java | 12 +- .../gregtech/api/recipes/GT_RecipeInput.java | 13 +- .../api/recipes/GT_RecipeInputAlts.java | 15 +- .../api/recipes/GT_RecipeInputOredict.java | 2 +- .../api/recipes/GT_RecipeListJsonReader.java | 2 + .../gregtech/api/recipes/GT_RecipeMap.java | 82 +++- .../gregtech/api/recipes/GT_RecipeOutput.java | 6 +- .../postload/GT_MachineRecipeLoader.java | 366 +++------------- .../gregtech/recipes/alloy_smelter.json | 12 + .../assets/gregtech/recipes/assembler.json | 389 ++++++++++++++++++ .../assets/gregtech/recipes/autoclave.json | 4 +- .../gregtech/recipes/blast_furnace.json | 114 +++++ .../assets/gregtech/recipes/brewery.json | 323 +++++++++++++++ .../assets/gregtech/recipes/centrifuge.json | 2 +- .../gregtech/recipes/chemical_reactor.json | 357 +++++++++++++++- .../assets/gregtech/recipes/electrolyzer.json | 2 +- .../assets/gregtech/recipes/fermenter.json | 178 ++++++++ .../assets/gregtech/recipes/fluid_heater.json | 22 + .../gregtech/recipes/fluid_solidifier.json | 6 + .../assets/gregtech/recipes/forge_hammer.json | 80 ++++ .../gregtech/recipes/fusion_reactor.json | 129 ++++++ .../assets/gregtech/recipes/mixer.json | 25 +- .../assets/gregtech/recipes/sifter.json | 7 + .../assets/gregtech/recipes/wiremill.json | 7 + 24 files changed, 1802 insertions(+), 353 deletions(-) create mode 100644 src/main/resources/assets/gregtech/recipes/blast_furnace.json create mode 100644 src/main/resources/assets/gregtech/recipes/brewery.json create mode 100644 src/main/resources/assets/gregtech/recipes/fermenter.json create mode 100644 src/main/resources/assets/gregtech/recipes/forge_hammer.json create mode 100644 src/main/resources/assets/gregtech/recipes/fusion_reactor.json create mode 100644 src/main/resources/assets/gregtech/recipes/sifter.json create mode 100644 src/main/resources/assets/gregtech/recipes/wiremill.json diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java index d67554cc87..692907bc6d 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java @@ -1,6 +1,7 @@ package gregtech.api.recipes; import cpw.mods.fml.common.Loader; +import gregtech.api.enums.Materials; import java.lang.reflect.Field; import java.util.HashMap; import java.util.Map; @@ -14,6 +15,7 @@ *
  • ModLoaded(ModName) - Checks if the named mod is loaded *
  • ModsLoaded(ModName, ModName, ...) - Checks if all the mods in the comma separated list are loaded. *
  • FluidExists(FluidName) - Checks if the named fluid has been registered. + *
  • MaterialParent(MaterialName) - Checks if the named material has a "parent mod" according to the field in the Materials enum. *
*/ public class GT_RecipeConditions { @@ -24,9 +26,10 @@ private GT_RecipeConditions() { } public static boolean getConditionValue(String aConditionName) { - String tModLoadedPattern = "ModLoaded\\(([A-Za-z]+)\\)"; - String tModsLoadedPattern = "ModsLoaded\\(([A-Za-z, ]+)\\)"; + String tModLoadedPattern = "ModLoaded\\(([A-Za-z0-9_]+)\\)"; + String tModsLoadedPattern = "ModsLoaded\\(([A-Za-z0-9_, ]+)\\)"; String tFluidExistsPattern = "FluidExists\\(([A-Za-z]+)\\)"; + String tMaterialParentPattern = "MaterialParent\\(([A-Za-z0-9_]+)\\)"; if (aConditionName.matches(tModLoadedPattern)) { return Loader.isModLoaded(aConditionName.replaceFirst(tModLoadedPattern, "$1")); } else if (aConditionName.matches(tModsLoadedPattern)) { @@ -39,6 +42,11 @@ public static boolean getConditionValue(String aConditionName) { return true; } else if (aConditionName.matches(tFluidExistsPattern)) { return FluidRegistry.isFluidRegistered(aConditionName.replaceFirst(tFluidExistsPattern, "$1")); + } else if (aConditionName.matches(tMaterialParentPattern)) { + Materials tMaterial = Materials.get(aConditionName.replaceFirst(tMaterialParentPattern, "$1")); + if (tMaterial != Materials._NULL) { + return tMaterial.mHasParentMod; + } } try { return sConditionMap.get(aConditionName).getBoolean(null); diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java index 21f7322809..fd0178f3f6 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java @@ -13,14 +13,15 @@ public class GT_RecipeInput { private final ItemStack mItemStack; - // GT_RecipeInputAlts showed that stack sizes can sometimes be reset to one between recipe creation and viewing in NEI, so keeping a separate field for the count. protected int mCount; - + + protected GT_RecipeInput() { + mItemStack = null; + } + public GT_RecipeInput(ItemStack aItemStack) { - mItemStack = aItemStack; - if (mItemStack != null) { - mCount = aItemStack.stackSize; - } + mItemStack = aItemStack.copy(); + mCount = aItemStack.stackSize; } public boolean inputMatches(ItemStack aItemStack) { diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java index 6ba501869e..33faee5733 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java @@ -1,6 +1,7 @@ package gregtech.api.recipes; import gregtech.api.util.GT_Utility; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import net.minecraft.item.ItemStack; @@ -13,8 +14,11 @@ public class GT_RecipeInputAlts extends GT_RecipeInput { private final ItemStack[] mItems; public GT_RecipeInputAlts(ItemStack[] aItems) { - super(null); - this.mItems = Arrays.copyOf(aItems, aItems.length); + super(); + mItems = new ItemStack[aItems.length]; + for (int i = 0; i < aItems.length; i++) { + mItems[i] = aItems[i].copy(); + } this.mCount = mItems[0].stackSize; for (ItemStack mItem : mItems) { mItem.stackSize = mCount; @@ -54,10 +58,11 @@ public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { @Override public List getInputStacks() { - for (ItemStack tItem : mItems) { - tItem.stackSize = mCount; + ArrayList rList = new ArrayList<>(mItems.length); + for (ItemStack mItem : mItems) { + rList.add(mItem.copy()); } - return Arrays.asList(mItems); + return rList; } @Override diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java index ed5f4f6df6..7da0ebd585 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java @@ -14,7 +14,7 @@ public class GT_RecipeInputOredict extends GT_RecipeInput { private final String mOredictName; public GT_RecipeInputOredict(String aOredictName, int aCount) { - super(null); + super(); mOredictName = aOredictName; mCount = aCount; } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java index 9167b44ebe..eab8a8fa06 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -137,7 +137,9 @@ private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOExceptio } break; case "blastTemp": + case "startingCost": tSpecialValue = aReader.nextInt(); + break; case "enabled": tEnabled = aReader.nextBoolean(); break; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index 6aab5c66b4..9e968a1b5c 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -911,6 +911,82 @@ public GT_RecipeMapLargeChemicalReactor() { setMinimalTotalInputs(1); } + @Override + public GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe) { + ArrayList adjustedInputs = new ArrayList<>(5); + ArrayList adjustedOutputs = new ArrayList<>(5); + ArrayList adjustedFluidInputs = new ArrayList<>(5); + ArrayList adjustedFluidOutputs = new ArrayList<>(5); + + GT_RecipeInput[] tInputs = aRecipe.mInputs; + if (tInputs == null) { + tInputs = new GT_RecipeInput[0]; + } + for (GT_RecipeInput input : tInputs) { + FluidStack inputFluidContent = FluidContainerRegistry.getFluidForFilledItem(input.getInputStacks().get(0)); + if (inputFluidContent != null) { + inputFluidContent.amount *= input.getCount(); + if (inputFluidContent.getFluid().getName().equals("ic2steam")) { + inputFluidContent = GT_ModHandler.getSteam(inputFluidContent.amount); + } + adjustedFluidInputs.add(inputFluidContent); + } else { + ItemData itemData = GT_OreDictUnificator.getItemData(input.getInputStacks().get(0)); + if ((itemData == null || !itemData.hasValidPrefixMaterialData()) || itemData.mMaterial.mMaterial != Materials.Empty) { + if (itemData != null && itemData.hasValidPrefixMaterialData() && itemData.mPrefix == OrePrefixes.cell) { + ItemStack dustStack = itemData.mMaterial.mMaterial.getDust(input.getCount()); + if (dustStack != null) { + adjustedInputs.add(new GT_RecipeInput(dustStack)); + } else { + adjustedInputs.add(input); + } + } else { + adjustedInputs.add(input); + } + } + } + } + FluidStack[] tFluidInputs = aRecipe.mFluidInputs; + if (tFluidInputs == null) { + tFluidInputs = new FluidStack[0]; + } + adjustedFluidInputs.addAll(Arrays.asList(tFluidInputs)); + tInputs = adjustedInputs.toArray(new GT_RecipeInput[adjustedInputs.size()]); + tFluidInputs = adjustedFluidInputs.toArray(new FluidStack[adjustedFluidInputs.size()]); + + GT_RecipeOutput[] tOutputs = aRecipe.mOutputs; + if (tOutputs == null) { + tOutputs = new GT_RecipeOutput[0]; + } + for (GT_RecipeOutput output : tOutputs) { + FluidStack outputFluidContent = FluidContainerRegistry.getFluidForFilledItem(output.getShownOutput()); + if (outputFluidContent != null) { + outputFluidContent.amount *= output.getCount(); + if (outputFluidContent.getFluid().getName().equals("ic2steam")) { + outputFluidContent = GT_ModHandler.getSteam(outputFluidContent.amount); + } + adjustedFluidOutputs.add(outputFluidContent); + } else { + ItemData itemData = GT_OreDictUnificator.getItemData(output.getShownOutput()); + if ((itemData == null || !itemData.hasValidPrefixMaterialData()) || itemData.mMaterial.mMaterial != Materials.Empty) { + adjustedOutputs.add(output); + } + } + } + + FluidStack[] tFluidOutputs = aRecipe.mFluidOutputs; + if (tFluidOutputs == null) { + tFluidOutputs = new FluidStack[0]; + } + adjustedFluidOutputs.addAll(Arrays.asList(tFluidOutputs)); + tOutputs = adjustedOutputs.toArray(new GT_RecipeOutput[adjustedOutputs.size()]); + tFluidOutputs = adjustedFluidOutputs.toArray(new FluidStack[adjustedFluidOutputs.size()]); + + GT_MachineRecipe_LargeChemicalReactor rRecipe = (GT_MachineRecipe_LargeChemicalReactor) new GT_MachineRecipe_LargeChemicalReactor(tInputs, tOutputs, tFluidInputs, tFluidOutputs).setDuration(aRecipe.mDuration).setEUt(aRecipe.mEUt).setSpecialValue(aRecipe.mSpecialValue); + return super.addRecipe(rRecipe); + + } + @Override public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { ArrayList adjustedInputs = new ArrayList<>(5); @@ -986,7 +1062,7 @@ public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemSt if (aOptimize) { rRecipe.optimize(); } - return addRecipe(rRecipe); + return super.addRecipe(rRecipe); } @@ -996,6 +1072,10 @@ protected GT_MachineRecipe_LargeChemicalReactor(ItemStack[] aInputs, ItemStack[] super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); } + protected GT_MachineRecipe_LargeChemicalReactor(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { + super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); + } + @Override public ArrayList getInputPositionedStacks() { int itemLimit = Math.min(mInputs.length, INPUT_COUNT); diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java index 3cc3b1625c..991c16edff 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java @@ -70,7 +70,11 @@ public GT_RecipeOutput(ItemStack aItemStack) { } public GT_RecipeOutput(ItemStack aItemStack, float aChance) { - mItemStack = aItemStack; + if (aItemStack != null) { + mItemStack = aItemStack.copy(); + } else { + mItemStack = null; + } mChance = Math.min(10000, Math.max((int)(aChance * 10000), 0)); } diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index 94a47147b6..59272c0434 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -8,6 +8,7 @@ import gregtech.api.GregTech_API; import gregtech.api.enums.*; import gregtech.api.objects.MaterialStack; +import gregtech.api.recipes.GT_MachineRecipe; import gregtech.api.recipes.GT_RecipeListJsonReader; import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; @@ -29,6 +30,7 @@ import java.util.Arrays; import java.util.Iterator; +import java.util.List; import java.util.Map; public class GT_MachineRecipeLoader implements Runnable { @@ -129,8 +131,10 @@ public void run() { e.printStackTrace(GT_Log.err); } try { - GT_RecipeMap.sChemicalRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_reactor.json"))))); + List tChemicalRecipes = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_reactor.json")))); + GT_RecipeMap.sChemicalRecipes.addAll(tChemicalRecipes); + GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tChemicalRecipes); } catch (Throwable e) { e.printStackTrace(GT_Log.err); } @@ -212,6 +216,45 @@ public void run() { } catch (Throwable e) { e.printStackTrace(GT_Log.err); } + try { + GT_RecipeMap.sBlastRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/blast_furnace.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sWiremillRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/wiremill.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sBrewingRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/brewery.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sHammerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/forge_hammer.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sSifterRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/sifter.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + try { + GT_RecipeMap.sFusionRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( + GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fusion_reactor.json"))))); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + + + //Circuit Recipes!!! Object[] o = new Object[0]; @@ -314,103 +357,11 @@ public void run() { } } - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 32), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gallium, 1), null, null, ItemList.Circuit_Silicon_Ingot.get(1, new Object[0]), null, 9000, 120, 1784); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer.get(16, new Object[0]),null, 200, 8); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 64), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 8), Materials.Nitrogen.getGas(8000), null, ItemList.Circuit_Silicon_Ingot2.get(1, new Object[0]), null, 12000, 480, 2484); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot2.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer2.get(32, new Object[0]),null, 400, 64); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Silicon, 16), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1), Materials.Argon.getGas(8000), null, ItemList.Circuit_Silicon_Ingot3.get(1, new Object[0]), null, 1500, 1920, 5400); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot3.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer3.get(64, new Object[0]),null, 800, 384); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.redstone_torch, 2, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), Materials.Concrete.getMolten(144L), new ItemStack(Items.repeater, 1, 0), 800, 1); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Items.leather, 1, 32767), new ItemStack(Items.lead, 1, 32767), Materials.Glue.getFluid(50L), new ItemStack(Items.name_tag, 1, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 8L), new ItemStack(Items.compass, 1, 32767), GT_Values.NF, new ItemStack(Items.map, 1, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tantalum, 1L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Manganese, 1L), Materials.Plastic.getMolten(144L), ItemList.Battery_RE_ULV_Tantalum.get(8L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem("TwilightForest", "item.charmOfLife1", 4L, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), GT_Values.NF, GT_ModHandler.getModItem("TwilightForest", "item.charmOfLife2", 1L, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem("TwilightForest", "item.charmOfKeeping1", 4L, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), GT_Values.NF, GT_ModHandler.getModItem("TwilightForest", "item.charmOfKeeping2", 1L, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem("TwilightForest", "item.charmOfKeeping2", 4L, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), GT_Values.NF, GT_ModHandler.getModItem("TwilightForest", "item.charmOfKeeping3", 1L, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem("TwilightForest", "item.charmOfLife2", 1L, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_Values.NF, GT_ModHandler.getModItem("TwilightForest", "item.charmOfLife1", 4L, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem("TwilightForest", "item.charmOfKeeping2", 1L, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_Values.NF, GT_ModHandler.getModItem("TwilightForest", "item.charmOfKeeping1", 4L, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem("TwilightForest", "item.charmOfKeeping3", 1L, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_Values.NF, GT_ModHandler.getModItem("TwilightForest", "item.charmOfKeeping2", 4L, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 16), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 20), Materials.Redstone.getMolten(144L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 23), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 17), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 20), Materials.Redstone.getMolten(144L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 24), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 18), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 20), Materials.Redstone.getMolten(144L), GT_ModHandler.getModItem(aTextAE, aTextAEMM, 1L, 22), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 1L), new ItemStack(Blocks.sand, 1, 32767), GT_Values.NF, GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 2L, 0), 64, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 1L), new ItemStack(Blocks.sand, 1, 32767), GT_Values.NF, GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 2L, 600), 64, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Fluix, 1L), new ItemStack(Blocks.sand, 1, 32767), GT_Values.NF, GT_ModHandler.getModItem(aTextAE, "item.ItemCrystalSeed", 2L, 1200), 64, 8); - - if (Loader.isModLoaded(aTextForestry)) { - GT_Values.RA.addAssemblerRecipe(ItemList.FR_Wax.get(6L, new Object[0]), new ItemStack(Items.string, 1, 32767), Materials.Water.getFluid(600L), GT_ModHandler.getModItem(aTextForestry, "candle", 24L, 0), 64, 8); - GT_Values.RA.addAssemblerRecipe(ItemList.FR_Wax.get(2L, new Object[0]), ItemList.FR_Silk.get(1L, new Object[0]), Materials.Water.getFluid(200L), GT_ModHandler.getModItem(aTextForestry, "candle", 8L, 0), 16, 8); - GT_Values.RA.addAssemblerRecipe(ItemList.FR_Silk.get(9L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 9L, new Object[0]), Materials.Water.getFluid(500L), GT_ModHandler.getModItem(aTextForestry, "craftingMaterial", 1L, 3), 64, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem(aTextForestry, "propolis", 5L, 2), ItemList.Circuit_Integrated.getWithDamage(0L, 5L, new Object[0]), GT_Values.NF, GT_ModHandler.getModItem(aTextForestry, "craftingMaterial", 1L, 1), 16, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem(aTextForestry, "sturdyMachine", 1L, 0), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Diamond, 4L), Materials.Water.getFluid(5000L), ItemList.FR_Casing_Hardened.get(1L, new Object[0]), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Bronze, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), GT_Values.NF, ItemList.FR_Casing_Sturdy.get(1L, new Object[0]), 32, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 6L), Materials.Water.getFluid(1000L), GT_ModHandler.getModItem(aTextForestry, "chipsets", 1L, 0), 16, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Bronze, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 6L), Materials.Water.getFluid(1000L), GT_ModHandler.getModItem(aTextForestry, "chipsets", 1L, 1), 32, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 6L), Materials.Water.getFluid(1000L), GT_ModHandler.getModItem(aTextForestry, "chipsets", 1L, 2), 48, 24); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.WroughtIron, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 6L), Materials.Water.getFluid(1000L), GT_ModHandler.getModItem(aTextForestry, "chipsets", 1L, 2), 48, 24); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gold, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 6L), Materials.Water.getFluid(1000L), GT_ModHandler.getModItem(aTextForestry, "chipsets", 1L, 3), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getModItem(aTextForestry, "craftingMaterial", 5L, 1), ItemList.Circuit_Integrated.getWithDamage(0L, 5L, new Object[0]), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), 64, 8); - } - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), new ItemStack(Blocks.wool, 1, 32767), Materials.Creosote.getFluid(1000L), new ItemStack(Blocks.torch, 6, 0), 400, 1); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.piston, 1, 32767), new ItemStack(Items.slime_ball, 1, 32767), GT_Values.NF, new ItemStack(Blocks.sticky_piston, 1, 0), 100, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.piston, 1, 32767), ItemList.IC2_Resin.get(1L, new Object[0]), GT_Values.NF, new ItemStack(Blocks.sticky_piston, 1, 0), 100, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.piston, 1, 32767), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.Glue.getFluid(100L), new ItemStack(Blocks.sticky_piston, 1, 0), 100, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 3L), GT_ModHandler.getIC2Item("carbonMesh", 3L), Materials.Glue.getFluid(300L), ItemList.Duct_Tape.get(1L, new Object[0]), 100, 64); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), new ItemStack(Items.leather, 1, 32767), Materials.Glue.getFluid(20L), new ItemStack(Items.book, 1, 0), 32, 8); - GT_Values.RA.addAssemblerRecipe(ItemList.Paper_Printed_Pages.get(1L, new Object[0]), new ItemStack(Items.leather, 1, 32767), Materials.Glue.getFluid(20L), new ItemStack(Items.written_book, 1, 0), 32, 8); - GT_Values.RA.addAssemblerRecipe(ItemList.IC2_Item_Casing_Tin.get(4L, new Object[0]), new ItemStack(Blocks.glass_pane, 1, 32767), GT_Values.NF, ItemList.Cell_Universal_Fluid.get(1L, new Object[0]), 128, 8); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Baked_Cake.get(1L, new Object[0]), new ItemStack(Items.egg, 1, 0), Materials.Milk.getFluid(3000L), new ItemStack(Items.cake, 1, 0), 100, 8); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Bun.get(2L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), GT_Values.NF, ItemList.Food_Sliced_Buns.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Bread.get(2L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), GT_Values.NF, ItemList.Food_Sliced_Breads.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Baguette.get(2L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), GT_Values.NF, ItemList.Food_Sliced_Baguettes.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Buns.get(1L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_Values.NF, ItemList.Food_Sliced_Bun.get(2L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Breads.get(1L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_Values.NF, ItemList.Food_Sliced_Bread.get(2L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Baguettes.get(1L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_Values.NF, ItemList.Food_Sliced_Baguette.get(2L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Bun.get(2L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1L), GT_Values.NF, ItemList.Food_Burger_Meat.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Buns.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1L), GT_Values.NF, ItemList.Food_Burger_Meat.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Bun.get(2L, new Object[0]), ItemList.Food_Chum.get(1L, new Object[0]), GT_Values.NF, ItemList.Food_Burger_Chum.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Buns.get(1L, new Object[0]), ItemList.Food_Chum.get(1L, new Object[0]), GT_Values.NF, ItemList.Food_Burger_Chum.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Bun.get(2L, new Object[0]), ItemList.Food_Sliced_Cheese.get(3L, new Object[0]), GT_Values.NF, ItemList.Food_Burger_Cheese.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Sliced_Buns.get(1L, new Object[0]), ItemList.Food_Sliced_Cheese.get(3L, new Object[0]), GT_Values.NF, ItemList.Food_Burger_Cheese.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Flat_Dough.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatCooked, 1L), GT_Values.NF, ItemList.Food_Raw_Pizza_Meat.get(1L, new Object[0]), 100, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.Food_Flat_Dough.get(1L, new Object[0]), ItemList.Food_Sliced_Cheese.get(3L, new Object[0]), GT_Values.NF, ItemList.Food_Raw_Pizza_Cheese.get(1L, new Object[0]), 100, 4); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 0), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.AnnealedCopper, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 0), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 1), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Bronze, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 2), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 3), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.WroughtIron, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 3), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gold, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 4), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Diamond, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 5), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 7), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 8), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Emerald, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 9), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Apatite, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 10), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 2L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Lapis, 5L), Materials.Glass.getMolten(72L), GT_ModHandler.getModItem(aTextForestry, "thermionicTubes", 4L, 11), 64, 32); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2L), new ItemStack(Items.iron_door, 1), ItemList.Cover_Shutter.get(2L, new Object[0]), 800, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 2L), new ItemStack(Items.iron_door, 1), ItemList.Cover_Shutter.get(2L, new Object[0]), 800, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 2L), new ItemStack(Items.iron_door, 1), ItemList.Cover_Shutter.get(2L, new Object[0]), 800, 16); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Glass, 1), GT_OreDictUnificator.get(OrePrefixes.foil,Materials.Aluminium,4),GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Basic),1),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 4)},GT_Values.NF, ItemList.Cover_Screen.get(1,new Object[0]),50,16); - - //Pumps - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_LV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Rubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Bronze, 1)}, GT_Values.NF, ItemList.Electric_Pump_LV.get(1L), 20, 30); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_LV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Silicone, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Bronze, 1)}, GT_Values.NF, ItemList.Electric_Pump_LV.get(1L), 20, 30); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_LV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.StyreneButadieneRubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Bronze, 1)}, GT_Values.NF, ItemList.Electric_Pump_LV.get(1L), 20, 30); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_MV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Rubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Bronze, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Bronze, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 1)}, GT_Values.NF, ItemList.Electric_Pump_MV.get(1L), 20, 60); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_MV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Silicone, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Bronze, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Bronze, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 1)}, GT_Values.NF, ItemList.Electric_Pump_MV.get(1L), 20, 60); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_MV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.StyreneButadieneRubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Bronze, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Bronze, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 1)}, GT_Values.NF, ItemList.Electric_Pump_MV.get(1L), 20, 60); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_HV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Rubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Steel, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.StainlessSteel, 1)}, GT_Values.NF, ItemList.Electric_Pump_HV.get(1L), 20, 120); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_HV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Silicone, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Steel, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.StainlessSteel, 1)}, GT_Values.NF, ItemList.Electric_Pump_HV.get(1L), 20, 120); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_HV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.StyreneButadieneRubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Steel, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.StainlessSteel, 1)}, GT_Values.NF, ItemList.Electric_Pump_HV.get(1L), 20, 120); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_EV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Rubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Titanium, 1)}, GT_Values.NF, ItemList.Electric_Pump_EV.get(1L), 20, 240); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_EV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Silicone, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Titanium, 1)}, GT_Values.NF, ItemList.Electric_Pump_EV.get(1L), 20, 240); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_EV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.StyreneButadieneRubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.StainlessSteel, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.StainlessSteel, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Titanium, 1)}, GT_Values.NF, ItemList.Electric_Pump_EV.get(1L), 20, 240); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_IV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Silicone, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.TungstenSteel, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TungstenSteel, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tungsten, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.TungstenSteel, 1)}, GT_Values.NF, ItemList.Electric_Pump_IV.get(1L), 20, 480); - GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Electric_Motor_IV.get(1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.StyreneButadieneRubber, 2), GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.TungstenSteel, 1), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.TungstenSteel, 1), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tungsten, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.TungstenSteel, 1)}, GT_Values.NF, ItemList.Electric_Pump_IV.get(1L), 20, 480); GT_Values.RA.addUniversalDistillationRecipe(Materials.OilLight.getFluid(150), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(10), Materials.SulfuricLightFuel.getFluid(20), Materials.SulfuricNaphtha.getFluid(30), Materials.SulfuricGas.getGas(240)}, null, 20, 96); GT_Values.RA.addUniversalDistillationRecipe(Materials.OilMedium.getFluid(100), new FluidStack[]{Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); @@ -424,27 +375,7 @@ public void run() { GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new FluidStack(ItemList.sOilExtraHeavy,10), Materials.OilHeavy.getFluid(15), 16, 24, false); GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.HeavyFuel.getFluid(10L), new FluidStack(ItemList.sToluene,4), 16, 24, false); GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new FluidStack(ItemList.sToluene,30), Materials.LightFuel.getFluid(30L), 16, 24, false); - GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ball.get(0L, new Object[0]), new FluidStack(ItemList.sToluene,100), ItemList.GelledToluene.get(1, new Object[0]), 100, 16); - GT_Values.RA.addChemicalRecipe(ItemList.GelledToluene.get(4, new Object[0]), GT_Values.NI, Materials.SulfuricAcid.getFluid(250), GT_Values.NF, new ItemStack(Blocks.tnt,1), 200, 24); - - GT_Values.RA.addChemicalRecipe(new ItemStack(Items.sugar), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plastic, 1), new FluidStack(ItemList.sToluene, 133), GT_Values.NF, ItemList.GelledToluene.get(2, new Object[0]), 140, 192); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell,Materials.SulfuricAcid, 1), null, null, null, new FluidStack(ItemList.sNitricAcid,1000), new FluidStack(ItemList.sNitrationMixture, 2000), ItemList.Cell_Empty.get(1, new Object[0]), 480, 2); - GT_Values.RA.addChemicalRecipe(ItemList.GelledToluene.get(4, new Object[0]), GT_Values.NI, new FluidStack(ItemList.sNitrationMixture,200), Materials.DilutedSulfuricAcid.getFluid(200), GT_ModHandler.getIC2Item("industrialTnt", 1L), 80, 480); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), GT_Utility.getIntegratedCircuit(4), Materials.NatruralGas.getGas(16000), Materials.Gas.getGas(16000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NatruralGas, 16L), GT_Utility.getIntegratedCircuit(4), Materials.Hydrogen.getGas(1000), Materials.HydricSulfide.getGas(1000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Gas, 16L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), GT_Utility.getIntegratedCircuit(4), Materials.SulfuricGas.getGas(16000), Materials.Gas.getGas(16000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricGas, 16L), GT_Utility.getIntegratedCircuit(4), Materials.Hydrogen.getGas(1000), Materials.HydricSulfide.getGas(1000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Gas, 16L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), GT_Utility.getIntegratedCircuit(4), Materials.SulfuricNaphtha.getFluid(12000), Materials.Naphtha.getFluid(12000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricNaphtha, 12L), GT_Utility.getIntegratedCircuit(4), Materials.Hydrogen.getGas(1000), Materials.HydricSulfide.getGas(1000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naphtha, 12L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), GT_Utility.getIntegratedCircuit(4), Materials.SulfuricLightFuel.getFluid(12000), Materials.LightFuel.getFluid(12000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricLightFuel, 12L), GT_Utility.getIntegratedCircuit(4), Materials.Hydrogen.getGas(1000), Materials.HydricSulfide.getGas(1000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 12L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), GT_Utility.getIntegratedCircuit(4), Materials.SulfuricHeavyFuel.getFluid(8000), Materials.HeavyFuel.getFluid(8000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), 160); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricHeavyFuel, 8L), GT_Utility.getIntegratedCircuit(4), Materials.Hydrogen.getGas(1000), Materials.HydricSulfide.getGas(1000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 8L), 160); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1L), null, Materials.Naphtha.getFluid(576), Materials.Polycaprolactam.getMolten(1296), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Potassium, 1), 640); - GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Polycaprolactam, 1L), new ItemStack(Items.string, 32), 80, 48); GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.Creosote.getFluid(3L), Materials.Lubricant.getFluid(1L), 16, 24, false); GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.SeedOil.getFluid(4L), Materials.Lubricant.getFluid(1L), 16, 24, false); @@ -459,99 +390,6 @@ public void run() { GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.OilMedium.getFluid(200L), Materials.Oil.getFluid(100L), 16, 24, false); GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.OilHeavy.getFluid(100L), Materials.Oil.getFluid(100L), 16, 24, false); - GT_Values.RA.addFluidHeaterRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.Water.getFluid(6L), Materials.Water.getGas(960L), 30, 32); - GT_Values.RA.addFluidHeaterRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_ModHandler.getDistilledWater(6L), Materials.Water.getGas(960L), 30, 32); - GT_Values.RA.addFluidHeaterRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.SeedOil.getFluid(16L), Materials.FryingOilHot.getFluid(16L), 16, 32); - GT_Values.RA.addFluidHeaterRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.FishOil.getFluid(16L), Materials.FryingOilHot.getFluid(16L), 16, 32); - - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), FluidRegistry.getFluid("oil"), FluidRegistry.getFluid("lubricant"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), FluidRegistry.getFluid("oil"), FluidRegistry.getFluid("lubricant"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), FluidRegistry.getFluid("oil"), FluidRegistry.getFluid("lubricant"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), FluidRegistry.getFluid("creosote"), FluidRegistry.getFluid("lubricant"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), FluidRegistry.getFluid("creosote"), FluidRegistry.getFluid("lubricant"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), FluidRegistry.getFluid("creosote"), FluidRegistry.getFluid("lubricant"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Talc, 1L), FluidRegistry.getFluid("seedoil"), FluidRegistry.getFluid("lubricant"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Soapstone, 1L), FluidRegistry.getFluid("seedoil"), FluidRegistry.getFluid("lubricant"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), FluidRegistry.getFluid("seedoil"), FluidRegistry.getFluid("lubricant"), false); - for (Fluid tFluid : new Fluid[]{FluidRegistry.WATER, GT_ModHandler.getDistilledWater(1L).getFluid()}) { - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Milk, 1L), tFluid, FluidRegistry.getFluid("milk"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L), tFluid, FluidRegistry.getFluid("potion.wheatyjuice"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1L), tFluid, FluidRegistry.getFluid("potion.mineralwater"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), tFluid, FluidRegistry.getFluid("potion.mineralwater"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), tFluid, FluidRegistry.getFluid("potion.mineralwater"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 1L), tFluid, FluidRegistry.getFluid("potion.mineralwater"), false); - //Disabled in favor of a different type of Salt Water -// GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Salt, 1L), tFluid, FluidRegistry.getFluid("potion.saltywater"), true); -// GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RockSalt, 1L), tFluid, FluidRegistry.getFluid("potion.saltywater"), true); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 1L), tFluid, FluidRegistry.getFluid("potion.thick"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), tFluid, FluidRegistry.getFluid("potion.mundane"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), tFluid, FluidRegistry.getFluid("potion.mundane"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L), tFluid, FluidRegistry.getFluid("potion.mundane"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.magma_cream, 1, 0), tFluid, FluidRegistry.getFluid("potion.mundane"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.fermented_spider_eye, 1, 0), tFluid, FluidRegistry.getFluid("potion.mundane"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.spider_eye, 1, 0), tFluid, FluidRegistry.getFluid("potion.mundane"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.speckled_melon, 1, 0), tFluid, FluidRegistry.getFluid("potion.mundane"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.ghast_tear, 1, 0), tFluid, FluidRegistry.getFluid("potion.mundane"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.nether_wart, 1, 0), tFluid, FluidRegistry.getFluid("potion.awkward"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Blocks.red_mushroom, 1, 0), tFluid, FluidRegistry.getFluid("potion.poison"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.fish, 1, 3), tFluid, FluidRegistry.getFluid("potion.poison.strong"), true); - GT_Values.RA.addBrewingRecipe(ItemList.IC2_Grin_Powder.get(1L, new Object[0]), tFluid, FluidRegistry.getFluid("potion.poison.strong"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.reeds, 1, 0), tFluid, FluidRegistry.getFluid("potion.reedwater"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.apple, 1, 0), tFluid, FluidRegistry.getFluid("potion.applejuice"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.golden_apple, 1, 0), tFluid, FluidRegistry.getFluid("potion.goldenapplejuice"), true); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.golden_apple, 1, 1), tFluid, FluidRegistry.getFluid("potion.idunsapplejuice"), true); - GT_Values.RA.addBrewingRecipe(ItemList.IC2_Hops.get(1L, new Object[0]), tFluid, FluidRegistry.getFluid("potion.hopsjuice"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coffee, 1L), tFluid, FluidRegistry.getFluid("potion.darkcoffee"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), tFluid, FluidRegistry.getFluid("potion.chillysauce"), false); - GT_Values.RA.addBrewingRecipe(GT_ModHandler.getIC2Item("biochaff", 1), tFluid, Materials.Biomass.mFluid, false); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(1L, new Object[0]), 100); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(1L, new Object[0]), 100); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(4L, new Object[0]), 400); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(4L, new Object[0]), 400); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Apatite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(4L, new Object[0]), 400); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glauconite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - if (Materials.GlauconiteSand.mHasParentMod) { - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(4L, new Object[0]), 400); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Phosphate, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(3L, new Object[0]), 300); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 3L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GlauconiteSand, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L), new FluidStack(tFluid, 1000), GT_Values.NF, ItemList.IC2_Fertilizer.get(2L, new Object[0]), 200); - } - } - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), FluidRegistry.getFluid("potion.chillysauce"), FluidRegistry.getFluid("potion.hotsauce"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), FluidRegistry.getFluid("potion.hotsauce"), FluidRegistry.getFluid("potion.diabolosauce"), true); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L), FluidRegistry.getFluid("potion.diabolosauce"), FluidRegistry.getFluid("potion.diablosauce"), true); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coffee, 1L), FluidRegistry.getFluid("milk"), FluidRegistry.getFluid("potion.coffee"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cocoa, 1L), FluidRegistry.getFluid("milk"), FluidRegistry.getFluid("potion.darkchocolatemilk"), false); - GT_Values.RA.addBrewingRecipe(ItemList.IC2_Hops.get(1L, new Object[0]), FluidRegistry.getFluid("potion.wheatyjuice"), FluidRegistry.getFluid("potion.wheatyhopsjuice"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L), FluidRegistry.getFluid("potion.hopsjuice"), FluidRegistry.getFluid("potion.wheatyhopsjuice"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), FluidRegistry.getFluid("potion.tea"), FluidRegistry.getFluid("potion.sweettea"), true); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), FluidRegistry.getFluid("potion.coffee"), FluidRegistry.getFluid("potion.cafeaulait"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), FluidRegistry.getFluid("potion.cafeaulait"), FluidRegistry.getFluid("potion.laitaucafe"), true); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), FluidRegistry.getFluid("potion.lemonjuice"), FluidRegistry.getFluid("potion.lemonade"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), FluidRegistry.getFluid("potion.darkcoffee"), FluidRegistry.getFluid("potion.darkcafeaulait"), true); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), FluidRegistry.getFluid("potion.darkchocolatemilk"), FluidRegistry.getFluid("potion.chocolatemilk"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), FluidRegistry.getFluid("potion.tea"), FluidRegistry.getFluid("potion.icetea"), false); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1L), FluidRegistry.getFluid("potion.lemonade"), FluidRegistry.getFluid("potion.cavejohnsonsgrenadejuice"), true); - GT_Values.RA.addBrewingRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), FluidRegistry.getFluid("potion.mundane"), FluidRegistry.getFluid("potion.purpledrink"), true); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.fermented_spider_eye, 1, 0), FluidRegistry.getFluid("potion.mundane"), FluidRegistry.getFluid("potion.weakness"), false); - GT_Values.RA.addBrewingRecipe(new ItemStack(Items.fermented_spider_eye, 1, 0), FluidRegistry.getFluid("potion.thick"), FluidRegistry.getFluid("potion.weakness"), false); - addPotionRecipes("waterbreathing", new ItemStack(Items.fish, 1, 3)); addPotionRecipes("fireresistance", new ItemStack(Items.magma_cream, 1, 0)); addPotionRecipes("nightvision", new ItemStack(Items.golden_carrot, 1, 0)); @@ -562,50 +400,6 @@ public void run() { addPotionRecipes("speed", GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)); addPotionRecipes("strength", GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L)); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("milk", 50), FluidRegistry.getFluidStack("potion.mundane", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.lemonjuice", 50), FluidRegistry.getFluidStack("potion.limoncello", 25), 1024, true); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.applejuice", 50), FluidRegistry.getFluidStack("potion.cider", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.goldenapplejuice", 50), FluidRegistry.getFluidStack("potion.goldencider", 25), 1024, true); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.idunsapplejuice", 50), FluidRegistry.getFluidStack("potion.notchesbrew", 25), 1024, true); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.reedwater", 50), FluidRegistry.getFluidStack("potion.rum", 25), 1024, true); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.rum", 50), FluidRegistry.getFluidStack("potion.piratebrew", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.grapejuice", 50), FluidRegistry.getFluidStack("potion.wine", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.wheatyjuice", 50), FluidRegistry.getFluidStack("potion.scotch", 25), 1024, true); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.scotch", 50), FluidRegistry.getFluidStack("potion.glenmckenner", 10), 2048, true); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.wheatyhopsjuice", 50), FluidRegistry.getFluidStack("potion.beer", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.hopsjuice", 50), FluidRegistry.getFluidStack("potion.darkbeer", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.darkbeer", 50), FluidRegistry.getFluidStack("potion.dragonblood", 10), 2048, true); - - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.beer", 75), FluidRegistry.getFluidStack("potion.vinegar", 50), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.cider", 75), FluidRegistry.getFluidStack("potion.vinegar", 50), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.goldencider", 75), FluidRegistry.getFluidStack("potion.vinegar", 50), 2048, true); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.rum", 75), FluidRegistry.getFluidStack("potion.vinegar", 50), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.wine", 75), FluidRegistry.getFluidStack("potion.vinegar", 50), 2048, false); - - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.awkward", 50), FluidRegistry.getFluidStack("potion.weakness", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.mundane", 50), FluidRegistry.getFluidStack("potion.weakness", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.thick", 50), FluidRegistry.getFluidStack("potion.weakness", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.poison", 50), FluidRegistry.getFluidStack("potion.damage", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.health", 50), FluidRegistry.getFluidStack("potion.damage", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.waterbreathing", 50), FluidRegistry.getFluidStack("potion.damage", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.nightvision", 50), FluidRegistry.getFluidStack("potion.invisibility", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.fireresistance", 50), FluidRegistry.getFluidStack("potion.slowness", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.speed", 50), FluidRegistry.getFluidStack("potion.slowness", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.strength", 50), FluidRegistry.getFluidStack("potion.weakness", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.regen", 50), FluidRegistry.getFluidStack("potion.poison", 25), 1024, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.poison.strong", 50), FluidRegistry.getFluidStack("potion.damage.strong", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.health.strong", 50), FluidRegistry.getFluidStack("potion.damage.strong", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.speed.strong", 50), FluidRegistry.getFluidStack("potion.slowness.strong", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.strength.strong", 50), FluidRegistry.getFluidStack("potion.weakness.strong", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.nightvision.long", 50), FluidRegistry.getFluidStack("potion.invisibility.long", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.regen.strong", 50), FluidRegistry.getFluidStack("potion.poison.strong", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.poison.long", 50), FluidRegistry.getFluidStack("potion.damage.long", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.waterbreathing.long", 50), FluidRegistry.getFluidStack("potion.damage.long", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.fireresistance.long", 50), FluidRegistry.getFluidStack("potion.slowness.long", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.speed.long", 50), FluidRegistry.getFluidStack("potion.slowness.long", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.strength.long", 50), FluidRegistry.getFluidStack("potion.weakness.long", 10), 2048, false); - GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.regen.long", 50), FluidRegistry.getFluidStack("potion.poison.long", 10), 2048, false); - GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_PotatoChips.get(1L, new Object[0]), ItemList.Food_PotatoChips.get(1L, new Object[0])); GT_ModHandler.addSmeltingRecipe(ItemList.Food_Potato_On_Stick.get(1L, new Object[0]), ItemList.Food_Potato_On_Stick_Roasted.get(1L, new Object[0])); GT_ModHandler.addSmeltingRecipe(ItemList.Food_Raw_Bun.get(1L, new Object[0]), ItemList.Food_Baked_Bun.get(1L, new Object[0])); @@ -718,33 +512,12 @@ public void run() { GT_ModHandler.addPulverisationRecipe(new ItemStack(Items.item_frame, 1, 32767), new ItemStack(Items.leather, 1), GT_OreDictUnificator.getDust(Materials.Wood, OrePrefixes.stick.mMaterialAmount * 4L), 95, false); GT_ModHandler.addPulverisationRecipe(new ItemStack(Items.bow, 1, 0), new ItemStack(Items.string, 3), GT_OreDictUnificator.getDust(Materials.Wood, OrePrefixes.stick.mMaterialAmount * 3L), 95, false); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stonebrick, 1, 0), new ItemStack(Blocks.stonebrick, 1, 2), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stone, 1, 0), new ItemStack(Blocks.cobblestone, 1, 0), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.cobblestone, 1, 0), new ItemStack(Blocks.gravel, 1, 0), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.gravel, 1, 0), new ItemStack(Blocks.sand, 1, 0), 10, 16); - GT_Values.RA.addSifterRecipe(new ItemStack(Blocks.gravel, 1, 0), new ItemStack[] {new ItemStack(Items.flint, 1, 0)}, new int[] {10000}, 800, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.sandstone, 1, 32767), new ItemStack(Blocks.sand, 1, 0), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.ice, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.packed_ice, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 2L), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.hardened_clay, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_hardened_clay, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.brick_block, 1, 0), new ItemStack(Items.brick, 3, 0), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.nether_brick, 1, 0), new ItemStack(Items.netherbrick, 3, 0), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_glass, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1L), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.glass, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1L), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_glass_pane, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L), 10, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.glass_pane, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L), 10, 16); - GT_Values.RA.addForgeHammerRecipe(Materials.Brick.getIngots(1), Materials.Brick.getDustSmall(1), 10, 16); - GT_Values.RA.addForgeHammerRecipe(ItemList.Firebrick.get(1, new Object[0]), Materials.Brick.getDust(1), 10, 16); - GT_Values.RA.addForgeHammerRecipe(ItemList.Casing_Firebricks.get(1, new Object[0]), ItemList.Firebrick.get(3, new Object[0]), 10, 16); - GT_ModHandler.addPulverisationRecipe(Materials.Brick.getIngots(1), Materials.Brick.getDustSmall(1)); GT_ModHandler.addPulverisationRecipe(ItemList.CompressedFireclay.get(1, new Object[0]), Materials.Fireclay.getDustSmall(1)); GT_ModHandler.addPulverisationRecipe(ItemList.Firebrick.get(1, new Object[0]), Materials.Brick.getDust(1)); GT_ModHandler.addPulverisationRecipe(ItemList.Casing_Firebricks.get(1, new Object[0]), Materials.Brick.getDust(4)); GT_ModHandler.addPulverisationRecipe(ItemList.Machine_Bricked_BlastFurnace.get(1, new Object[0]), Materials.Brick.getDust(8), Materials.Iron.getDust(1), true); - GT_Values.RA.addForgeHammerRecipe(GT_ModHandler.getModItem("HardcoreEnderExpansion", "endium_ore", 1), GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Endium, 1), 10, 16); GT_ModHandler.addPulverisationRecipe(GT_ModHandler.getModItem("HardcoreEnderExpansion", "endium_ore", 1), GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Endium, 2), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Endstone, 1), 50, GT_Values.NI, 0, true); GT_OreDictUnificator.set(OrePrefixes.ingot, Materials.Endium, GT_ModHandler.getModItem("HardcoreEnderExpansion", "endium_ingot", 1), true, true); @@ -759,34 +532,16 @@ public void run() { GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 3L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Silicon, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.ElectricalSteel, 4L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 2L), (int) Math.max(Materials.ElectricalSteel.getMass() / 40L, 1L) * Materials.ElectricalSteel.mBlastFurnaceTemp, 120, Materials.ElectricalSteel.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 1L), Materials.Redstone.getMolten(144), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.EnergeticAlloy, 1L), null, Materials.EnergeticAlloy.mBlastFurnaceTemp / 10, 120, Materials.EnergeticAlloy.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.EnergeticAlloy, 1L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.PhasedGold, 1L), null, Materials.VibrantAlloy.mBlastFurnaceTemp / 10, 480, Materials.VibrantAlloy.mBlastFurnaceTemp); - GT_Values.RA.addAlloySmelterRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Silicon, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.RedstoneAlloy, 1L), 400, 24); - GT_Values.RA.addAlloySmelterRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.ConductiveIron, 1L), 400, 24); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.PhasedIron, 1L), null, Materials.PulsatingIron.mBlastFurnaceTemp / 10, 120, Materials.PulsatingIron.mBlastFurnaceTemp); - GT_Values.RA.addAlloySmelterRecipe(new ItemStack(Blocks.soul_sand), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Soularium, 1L), 400, 24); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TungstenSteel, 2L), GT_Values.NI, (int) Math.max(Materials.TungstenSteel.getMass() / 80L, 1L) * Materials.TungstenSteel.mBlastFurnaceTemp, 480, Materials.TungstenSteel.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TungstenCarbide, 2L), GT_Values.NI, (int) Math.max(Materials.TungstenCarbide.getMass() / 40L, 1L) * Materials.TungstenCarbide.mBlastFurnaceTemp, 480, Materials.TungstenCarbide.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Vanadium, 3L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gallium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.VanadiumGallium, 4L), GT_Values.NI, (int) Math.max(Materials.VanadiumGallium.getMass() / 40L, 1L) * Materials.VanadiumGallium.mBlastFurnaceTemp, 480, Materials.VanadiumGallium.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Niobium, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.NiobiumTitanium, 2L), GT_Values.NI, (int) Math.max(Materials.NiobiumTitanium.getMass() / 80L, 1L) * Materials.NiobiumTitanium.mBlastFurnaceTemp, 480, Materials.NiobiumTitanium.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Nickel, 4L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Chrome, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Nichrome, 5L), GT_Values.NI, (int) Math.max(Materials.Nichrome.getMass() / 32L, 1L) * Materials.Nichrome.mBlastFurnaceTemp, 480, Materials.Nichrome.mBlastFurnaceTemp); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ruby, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L), 400, 100, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Ruby, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L), 320, 100, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GreenSapphire, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L), 400, 100, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.GreenSapphire, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L), 320, 100, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sapphire, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_Values.NI, 400, 100, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Sapphire, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_Values.NI, 320, 100, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ilmenite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.WroughtIron, 4L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Rutile, 4L), 800, 500, 1700); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Ilmenite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.WroughtIron, 4L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Rutile, 4L), 800, 500, 1700); + GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2L), GT_Values.NI, Materials.Titaniumtetrachloride.getFluid(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Titanium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesiumchloride, 2L), 800, 480, Materials.Titanium.mBlastFurnaceTemp + 200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), Materials.Ash.getDustTiny(1), 500, 120, 1000); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.PigIron, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), Materials.Ash.getDustTiny(1), 100, 120, 1000); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.WroughtIron, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), Materials.Ash.getDustTiny(1), 100, 120, 1000); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.ShadowIron, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.ShadowSteel, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L), 500, 120, 1100); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.MeteoricIron, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.MeteoricSteel, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L), 500, 120, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.AnnealedCopper, 1L), GT_Values.NI, 500, 120, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L), GT_Values.NI, Materials.Oxygen.getGas(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.AnnealedCopper, 1L), GT_Values.NI, 500, 120, 1200); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.ElectricalSteel, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.DarkSteel, 1L), GT_Values.NI, 4000, 120, 2000); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iridium, 3L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Osmium, 1L), Materials.Helium.getGas(1000), null, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Osmiridium, 4L), null, 500, 1920, 2900); + GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Osmiridium, 1L), Materials.Argon.getGas(1000), null, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.NaquadahAlloy, 2L), null, 500, 30720, Materials.NaquadahAlloy.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gallium, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Arsenic, 1L), null, null, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.GalliumArsenide, 2L), null, 600, 120, Materials.GalliumArsenide.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.FerriteMixture, 1L), GT_Values.NI, Materials.Oxygen.getGas(2000), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NickelZincFerrite, 1L), null, 600, 120, Materials.NickelZincFerrite.mBlastFurnaceTemp); @@ -798,33 +553,6 @@ public void run() { GT_Values.RA.addCannerRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("UranFuel", 1), ItemList.Uraniumcell_1.get(1, new Object[0]), null, 30, 16); GT_Values.RA.addCannerRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("MOXFuel", 1), ItemList.Moxcell_1.get(1, new Object[0]), null, 30, 16); } - GT_Values.RA.addFusionReactorRecipe(Materials.Lithium.getMolten(16), Materials.Tungsten.getMolten(16), Materials.Iridium.getMolten(16), 32, 32768, 300000000); - GT_Values.RA.addFusionReactorRecipe(Materials.Deuterium.getGas(125), Materials.Tritium.getGas(125), Materials.Helium.getPlasma(125), 16, 4096, 40000000); //Mark 1 Cheap // - GT_Values.RA.addFusionReactorRecipe(Materials.Deuterium.getGas(125), Materials.Helium_3.getGas(125), Materials.Helium.getPlasma(125), 16, 2048, 60000000); //Mark 1 Expensive // - GT_Values.RA.addFusionReactorRecipe(Materials.Carbon.getMolten(125), Materials.Helium_3.getGas(125), Materials.Oxygen.getPlasma(125), 32, 4096, 80000000); //Mark 1 Expensive // - GT_Values.RA.addFusionReactorRecipe(Materials.Aluminium.getMolten(16), Materials.Lithium.getMolten(16), Materials.Sulfur.getPlasma(125), 32, 10240, 240000000); //Mark 2 Cheap - GT_Values.RA.addFusionReactorRecipe(Materials.Beryllium.getMolten(16), Materials.Deuterium.getGas(375), Materials.Nitrogen.getPlasma(175), 16, 16384, 180000000); //Mark 2 Expensive // - GT_Values.RA.addFusionReactorRecipe(Materials.Silicon.getMolten(16), Materials.Magnesium.getMolten(16), Materials.Iron.getPlasma(125), 32, 8192, 360000000); //Mark 3 Cheap // - GT_Values.RA.addFusionReactorRecipe(Materials.Potassium.getMolten(16), Materials.Fluorine.getGas(125), Materials.Nickel.getPlasma(125), 16, 32768, 480000000); //Mark 3 Expensive // - GT_Values.RA.addFusionReactorRecipe(Materials.Beryllium.getMolten(16), Materials.Tungsten.getMolten(16), Materials.Platinum.getMolten(16), 32, 32768, 150000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Neodymium.getMolten(16), Materials.Hydrogen.getGas(48), Materials.Europium.getMolten(16), 64, 24576, 150000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Lutetium.getMolten(16), Materials.Chrome.getMolten(16), Materials.Americium.getMolten(16), 96, 49152, 200000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Plutonium.getMolten(16), Materials.Thorium.getMolten(16), Materials.Naquadah.getMolten(16), 64, 32768, 300000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Americium.getMolten(16), Materials.Naquadria.getMolten(16), Materials.Neutronium.getMolten(1), 1200, 98304, 600000000); // - - GT_Values.RA.addFusionReactorRecipe(Materials.Tungsten.getMolten(16), Materials.Helium.getGas(16), Materials.Osmium.getMolten(16), 64, 24578, 150000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Manganese.getMolten(16), Materials.Hydrogen.getGas(16), Materials.Iron.getMolten(16), 64, 8192, 120000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Mercury.getFluid(16), Materials.Magnesium.getMolten(16), Materials.Uranium.getMolten(16), 64, 49152, 240000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Gold.getMolten(16), Materials.Aluminium.getMolten(16), Materials.Uranium.getMolten(16), 64, 49152, 240000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Uranium.getMolten(16), Materials.Helium.getGas(16), Materials.Plutonium.getMolten(16), 128, 49152, 480000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Vanadium.getMolten(16), Materials.Hydrogen.getGas(125), Materials.Chrome.getMolten(16), 64, 24576, 140000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Gallium.getMolten(16), Materials.Radon.getGas(125), Materials.Duranium.getMolten(16), 64, 16384, 140000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Titanium.getMolten(48), Materials.Duranium.getMolten(32), Materials.Tritanium.getMolten(16), 64, 32768, 200000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Gold.getMolten(16), Materials.Mercury.getFluid(16), Materials.Radon.getGas(125), 64, 32768, 200000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Tantalum.getMolten(16), Materials.Tritium.getGas(16), Materials.Tungsten.getMolten(16), 16, 24576, 200000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.Silver.getMolten(16), Materials.Lithium.getMolten(16), Materials.Indium.getMolten(16), 32, 24576, 380000000); // - GT_Values.RA.addFusionReactorRecipe(Materials.NaquadahEnriched.getMolten(15), Materials.Radon.getGas(125), Materials.Naquadria.getMolten(3), 64, 49152, 400000000); // - GT_ModHandler.removeRecipeByOutput(ItemList.IC2_Fertilizer.get(1L, new Object[0])); GT_Values.RA.addImplosionRecipe(ItemList.IC2_Compressed_Coal_Chunk.get(1L, new Object[0]), 8, ItemList.IC2_Industrial_Diamond.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L)); GT_Values.RA.addImplosionRecipe(ItemList.Ingot_IridiumAlloy.get(1L, new Object[0]), 8, GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Iridium, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L)); diff --git a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json index 380d752de8..9f6f76f11b 100644 --- a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json +++ b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json @@ -3,4 +3,16 @@ "outputs":[{"item": "GTItemList:Circuit_Parts_Glass_Tube", "count": 1}], "duration": 160, "EUt": 8}, +{"inputs":[{"ore": "dustRedstone", "count": 1}, {"ore": "ingotSilicon", "count": 1}], +"outputs":[{"ore": "ingotRedstoneAlloy", "count": 1}], +"duration":400, +"EUt":24}, +{"inputs":[{"ore": "dustRedstone", "count": 1}, {"ore": "ingotIron", "count": 1}], +"outputs":[{"ore": "ingotConductiveIron", "count": 1}], +"duration":400, +"EUt":24}, +{"inputs":[{"item": "minecraft:soul_sand", "count": 1}, {"ore": "ingotGold", "count": 1}], +"outputs":[{"ore": "ingotSoularium", "count": 1}], +"duration":400, +"EUt":24}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/assembler.json b/src/main/resources/assets/gregtech/recipes/assembler.json index ad7776f89d..e282673ce4 100644 --- a/src/main/resources/assets/gregtech/recipes/assembler.json +++ b/src/main/resources/assets/gregtech/recipes/assembler.json @@ -183,4 +183,393 @@ "outputs":[{"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 64}], "duration": 100, "EUt": 120}, + +{"inputs":[{"item": "minecraft:redstone_torch:*", "count": 2}, {"ore": "dustRedstone", "count": 1}], +"inputFluids":[{"fluid": "molten.concrete", "amount": 144}], +"outputs":[{"item": "minecraft:repeater:0", "count": 1}], +"duration": 800, +"EUt": 1}, +{"inputs":[{"item": "minecraft:leather:*", "count": 1}, {"item": "minecraft:lead:*", "count": 1}], +"inputFluids":[{"fluid": "glue", "amount": 50}], +"outputs":[{"item": "minecraft:name_tag:0", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "platePaper", "count": 8}, {"item": "minecraft:compass:*", "count": 1}], +"outputs":[{"item": "minecraft:map:0", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"ore": "dustTantalum", "count": 1}, {"ore": "foilManganese", "count": 1}], +"inputFluids":[{"fluid": "molten.plastic", "amount": 144}], +"outputs":[{"item": "GTItemList:Battery_RE_ULV_Tantalum", "count": 8}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "TwilightForest:item.charmOfLife1:0", "count": 4}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"outputs":[{"item": "TwilightForest:item.charmOfLife2:0", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"item": "TwilightForest:item.charmOfKeeping1:0", "count": 4}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"outputs":[{"item": "TwilightForest:item.charmOfKeeping2:0", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"item": "TwilightForest:item.charmOfKeeping2:0", "count": 4}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"outputs":[{"item": "TwilightForest:item.charmOfKeeping3:0", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"item": "TwilightForest:item.charmOfLife2:0", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "TwilightForest:item.charmOfLife1:0", "count": 4}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"item": "TwilightForest:item.charmOfKeeping2:0", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "TwilightForest:item.charmOfKeeping1:0", "count": 4}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"item": "TwilightForest:item.charmOfKeeping3:0", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "TwilightForest:item.charmOfKeeping2:0", "count": 4}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:16", "count": 1}, {"item": "appliedenergistics2:item.ItemMultiMaterial:20", "count": 1}], +"inputFluids":[{"fluid": "molten.redstone", "amount": 144}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:23", "count": 1}], +"duration": 64, +"EUt": 32}, +{"inputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:17", "count": 1}, {"item": "appliedenergistics2:item.ItemMultiMaterial:20", "count": 1}], +"inputFluids":[{"fluid": "molten.redstone", "amount": 144}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:24", "count": 1}], +"duration": 64, +"EUt": 32}, +{"inputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:18", "count": 1}, {"item": "appliedenergistics2:item.ItemMultiMaterial:20", "count": 1}], +"inputFluids":[{"fluid": "molten.redstone", "amount": 144}], +"outputs":[{"item": "appliedenergistics2:item.ItemMultiMaterial:22", "count": 1}], +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustCertusQuartz", "count": 1}, {"item": "minecraft:sand:*", "count": 1}], +"outputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:0", "count": 2}], +"duration": 64, +"EUt": 8}, +{"inputs":[{"ore": "dustNetherQuartz", "count": 1}, {"item": "minecraft:sand:*", "count": 1}], +"outputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:600", "count": 2}], +"duration": 64, +"EUt": 8}, +{"inputs":[{"ore": "dustFluix", "count": 1}, {"item": "minecraft:sand:*", "count": 1}], +"outputs":[{"item": "appliedenergistics2:item.ItemCrystalSeed:1200", "count": 2}], +"duration": 64, +"EUt": 8}, + +{"inputs":[{"item": "GTItemList:FR_Wax", "count": 6}, {"item": "minecraft:string:*", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 600}], +"outputs":[{"item": "Forestry:candle:0", "count": 24}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:FR_Wax", "count": 2}, {"item": "GTItemList:FR_Silk", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 200}], +"outputs":[{"item": "Forestry:candle:0", "count": 8}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:FR_Silk", "count": 9}, {"item": "gregtech:gt.integrated_circuit:9", "count": 0}], +"inputFluids":[{"fluid": "water", "amount": 500}], +"outputs":[{"item": "Forestry:craftingMaterial:3", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 8}, +{"inputs":[{"item": "Forestry:propolis:2", "count": 5}, {"item": "gregtech:gt.integrated_circuit:5", "count": 0}], +"outputs":[{"item": "Forestry:craftingMaterial:1", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 16, +"EUt": 8}, +{"inputs":[{"item": "Forestry:sturdyMachine:0", "count": 1}, {"ore": "gemDiamond", "count": 4}], +"inputFluids":[{"fluid": "water", "amount": 5000}], +"outputs":[{"item": "GTItemList:FR_Casing_Hardened", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "ingotBronze", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:FR_Casing_Sturdy", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 32, +"EUt": 16}, +{"inputs":[{"ore": "ingotTin", "count": 1}, {"ore": "dustRedstone", "count": 6}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:chipsets:0", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 16, +"EUt": 8}, +{"inputs":[{"ore": "ingotBronze", "count": 3}, {"ore": "dustRedstone", "count": 6}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:chipsets:1", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 32, +"EUt": 16}, +{"inputs":[{"ore": "ingotIron", "count": 3}, {"ore": "dustRedstone", "count": 6}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:chipsets:2", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 48, +"EUt": 24}, +{"inputs":[{"ore": "ingotWroughtIron", "count": 3}, {"ore": "dustRedstone", "count": 6}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:chipsets:2", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 48, +"EUt": 24}, +{"inputs":[{"ore": "ingotGold", "count": 3}, {"ore": "dustRedstone", "count": 6}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "Forestry:chipsets:3", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"item": "Forestry:craftingMaterial:1", "count": 5}, {"item": "gregtech:gt.integrated_circuit:5", "count": 0}], +"outputs":[{"ore": "gemEnderPearl", "count": 1}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 8}, + +{"inputs":[{"ore": "stickWood", "count": 1}, {"item": "minecraft:wool:*", "count": 1}], +"inputFluids":[{"fluid": "creosote", "amount": 1000}], +"outputs":[{"item": "minecraft:torch:0", "count": 6}], +"duration": 400, +"EUt": 1}, +{"inputs":[{"item": "minecraft:piston:*", "count": 1}, {"item": "minecraft:slime_ball:*", "count": 1}], +"outputs":[{"item": "minecraft:sticky_piston:0", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "minecraft:piston:*", "count": 1}, {"item": "GTItemList:IC2_Resin", "count": 1}], +"outputs":[{"item": "minecraft:sticky_piston:0", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "minecraft:piston:*", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"inputFluids":[{"fluid": "glue", "amount": 100}], +"outputs":[{"item": "minecraft:sticky_piston:0", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"ore": "plateRubber", "count": 3}, {"item": "IC2:itemPartCarbonMesh", "count": 3}], +"inputFluids":[{"fluid": "glue", "amount": 300}], +"outputs":[{"item": "GTItemList:Duct_Tape", "count": 1}], +"duration": 100, +"EUt": 64}, +{"inputs":[{"ore": "platePaper", "count": 3}, {"item": "minecraft:leather:*", "count": 1}], +"inputFluids":[{"fluid": "glue", "amount": 20}], +"outputs":[{"item": "minecraft:book:0", "count": 1}], +"duration": 32, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Paper_Printed_Pages", "count": 1}, {"item": "minecraft:leather:*", "count": 1}], +"inputFluids":[{"fluid": "glue", "amount": 20}], +"outputs":[{"item": "minecraft:written_book:0", "count": 1}], +"duration": 32, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:IC2_Item_Casing_Tin", "count": 4}, {"item": "minecraft:glass_pane:*", "count": 1}], +"outputs":[{"item": "GTItemList:Cell_Universal_Fluid", "count": 1}], +"duration": 128, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Food_Baked_Cake", "count": 1}, {"item": "minecraft:egg:0", "count": 1}], +"inputFluids":[{"fluid": "milk", "amount": 3000}], +"outputs":[{"item": "minecraft:cake:0", "count": 1}], +"duration": 100, +"EUt": 8}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Bun", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Buns", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Bread", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Breads", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Baguette", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Baguettes", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Buns", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Bun", "count": 2}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Breads", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Bread", "count": 2}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Baguettes", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "GTItemList:Food_Sliced_Baguette", "count": 2}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Bun", "count": 2}, {"ore": "dustMeatCooked", "count": 1}], +"outputs":[{"item": "GTItemList:Food_Burger_Meat", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Buns", "count": 1}, {"ore": "dustMeatCooked", "count": 1}], +"outputs":[{"item": "GTItemList:Food_Burger_Meat", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Bun", "count": 2}, {"item": "GTItemList:Food_Chum", "count": 1}], +"outputs":[{"item": "GTItemList:Food_Burger_Chum", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Buns", "count": 1}, {"item": "GTItemList:Food_Chum", "count": 1}], +"outputs":[{"item": "GTItemList:Food_Burger_Chum", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Bun", "count": 2}, {"item": "GTItemList:Food_Sliced_Cheese", "count": 3}], +"outputs":[{"item": "GTItemList:Food_Burger_Cheese", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Sliced_Buns", "count": 1}, {"item": "GTItemList:Food_Sliced_Cheese", "count": 3}], +"outputs":[{"item": "GTItemList:Food_Burger_Cheese", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Flat_Dough", "count": 1}, {"ore": "dustMeatCooked", "count": 1}], +"outputs":[{"item": "GTItemList:Food_Raw_Pizza_Meat", "count": 1}], +"duration": 100, +"EUt": 4}, +{"inputs":[{"item": "GTItemList:Food_Flat_Dough", "count": 1}, {"item": "GTItemList:Food_Sliced_Cheese", "count": 3}], +"outputs":[{"item": "GTItemList:Food_Raw_Pizza_Cheese", "count": 1}], +"duration": 100, +"EUt": 4}, + +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "ingotCopper", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:0", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "ingotAnnealedCopper", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:0", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "ingotTin", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:1", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "ingotBronze", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:2", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "ingotIron", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:3", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "ingotWroughtIron", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:3", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "ingotGold", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:4", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "gemDiamond", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:5", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "dustBlaze", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:7", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "ingotRubber", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:8", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "gemEmerald", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:9", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "gemApatite", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:10", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "dustRedstone", "count": 2}, {"ore": "gemLapis", "count": 5}], +"inputFluids":[{"fluid": "molten.glass", "amount": 72}], +"outputs":[{"item": "Forestry:thermionicTubes:11", "count": 4}], +"enableCondition": "ModLoaded(Forestry)", +"duration": 64, +"EUt": 32}, +{"inputs":[{"ore": "plateAluminium", "count": 2}, {"item": "minecraft:iron_door", "count": 1}, {"item": "GTItemList:Cover_Shutter", "count": 2}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"ore": "plateIron", "count": 2}, {"item": "minecraft:iron_door", "count": 1}, {"item": "GTItemList:Cover_Shutter", "count": 2}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"ore": "plateWroughtIron", "count": 2}, {"item": "minecraft:iron_door", "count": 1}, {"item": "GTItemList:Cover_Shutter", "count": 2}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"ore": "plateGlass", "count": 1}, {"ore": "foilAluminium", "count": 4}, {"ore": "circuitBasic", "count": 1}, {"ore": "wireFineCopper", "count": 4}], +"outputs":[{"item": "GTItemList:Cover_Screen", "count": 1}], +"duration": 50, +"EUt": 16}, + +{"inputs":[{"item": "GTItemList:Electric_Motor_LV", "count": 1}, {"ore": "ringRubber", "count": 2}, {"ore": "rotorTin", "count": 1}, {"ore": "screwTin", "count": 1}, {"ore": "cableGt01Tin", "count": 1}, {"ore": "pipeMediumBronze", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_LV", "count": 1}], +"duration": 20, +"EUt": 30}, +{"inputs":[{"item": "GTItemList:Electric_Motor_LV", "count": 1}, {"ore": "ringSilicone", "count": 2}, {"ore": "rotorTin", "count": 1}, {"ore": "screwTin", "count": 1}, {"ore": "cableGt01Tin", "count": 1}, {"ore": "pipeMediumBronze", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_LV", "count": 1}], +"duration": 20, +"EUt": 30}, +{"inputs":[{"item": "GTItemList:Electric_Motor_LV", "count": 1}, {"ore": "ringStyreneButadieneRubber", "count": 2}, {"ore": "rotorTin", "count": 1}, {"ore": "screwTin", "count": 1}, {"ore": "cableGt01Tin", "count": 1}, {"ore": "pipeMediumBronze", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_LV", "count": 1}], +"duration": 20, +"EUt": 30}, +{"inputs":[{"item": "GTItemList:Electric_Motor_MV", "count": 1}, {"ore": "ringRubber", "count": 2}, {"ore": "rotorBronze", "count": 1}, {"ore": "screwBronze", "count": 1}, {"ore": "cableGt01Copper", "count": 1}, {"ore": "pipeMediumSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_MV", "count": 1}], +"duration": 20, +"EUt": 60}, +{"inputs":[{"item": "GTItemList:Electric_Motor_MV", "count": 1}, {"ore": "ringSilicone", "count": 2}, {"ore": "rotorBronze", "count": 1}, {"ore": "screwBronze", "count": 1}, {"ore": "cableGt01Copper", "count": 1}, {"ore": "pipeMediumSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_MV", "count": 1}], +"duration": 20, +"EUt": 60}, +{"inputs":[{"item": "GTItemList:Electric_Motor_MV", "count": 1}, {"ore": "ringStyreneButadieneRubber", "count": 2}, {"ore": "rotorBronze", "count": 1}, {"ore": "screwBronze", "count": 1}, {"ore": "cableGt01Copper", "count": 1}, {"ore": "pipeMediumSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_MV", "count": 1}], +"duration": 20, +"EUt": 60}, +{"inputs":[{"item": "GTItemList:Electric_Motor_HV", "count": 1}, {"ore": "ringRubber", "count": 2}, {"ore": "rotorSteel", "count": 1}, {"ore": "screwSteel", "count": 1}, {"ore": "cableGt01Gold", "count": 1}, {"ore": "pipeMediumStainlessSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_HV", "count": 1}], +"duration": 20, +"EUt": 120}, +{"inputs":[{"item": "GTItemList:Electric_Motor_HV", "count": 1}, {"ore": "ringSilicone", "count": 2}, {"ore": "rotorSteel", "count": 1}, {"ore": "screwSteel", "count": 1}, {"ore": "cableGt01Gold", "count": 1}, {"ore": "pipeMediumStainlessSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_HV", "count": 1}], +"duration": 20, +"EUt": 120}, +{"inputs":[{"item": "GTItemList:Electric_Motor_HV", "count": 1}, {"ore": "ringStyreneButadieneRubber", "count": 2}, {"ore": "rotorSteel", "count": 1}, {"ore": "screwSteel", "count": 1}, {"ore": "cableGt01Gold", "count": 1}, {"ore": "pipeMediumStainlessSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_HV", "count": 1}], +"duration": 20, +"EUt": 120}, +{"inputs":[{"item": "GTItemList:Electric_Motor_EV", "count": 1}, {"ore": "ringRubber", "count": 2}, {"ore": "rotorStainlessSteel", "count": 1}, {"ore": "screwStainlessSteel", "count": 1}, {"ore": "cableGt01Aluminium", "count": 1}, {"ore": "pipeMediumTitanium", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_EV", "count": 1}], +"duration": 20, +"EUt": 240}, +{"inputs":[{"item": "GTItemList:Electric_Motor_EV", "count": 1}, {"ore": "ringSilicone", "count": 2}, {"ore": "rotorStainlessSteel", "count": 1}, {"ore": "screwStainlessSteel", "count": 1}, {"ore": "cableGt01Aluminium", "count": 1}, {"ore": "pipeMediumTitanium", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_EV", "count": 1}], +"duration": 20, +"EUt": 240}, +{"inputs":[{"item": "GTItemList:Electric_Motor_EV", "count": 1}, {"ore": "ringStyreneButadieneRubber", "count": 2}, {"ore": "rotorStainlessSteel", "count": 1}, {"ore": "screwStainlessSteel", "count": 1}, {"ore": "cableGt01Aluminium", "count": 1}, {"ore": "pipeMediumTitanium", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_EV", "count": 1}], +"duration": 20, +"EUt": 240}, +{"inputs":[{"item": "GTItemList:Electric_Motor_IV", "count": 1}, {"ore": "ringSilicone", "count": 2}, {"ore": "rotorTungstenSteel", "count": 1}, {"ore": "screwTungstenSteel", "count": 1}, {"ore": "cableGt01Tungsten", "count": 1}, {"ore": "pipeMediumTungstenSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_IV", "count": 1}], +"duration": 20, +"EUt": 480}, +{"inputs":[{"item": "GTItemList:Electric_Motor_IV", "count": 1}, {"ore": "ringStyreneButadieneRubber", "count": 2}, {"ore": "rotorTungstenSteel", "count": 1}, {"ore": "screwTungstenSteel", "count": 1}, {"ore": "cableGt01Tungsten", "count": 1}, {"ore": "pipeMediumTungstenSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Electric_Pump_IV", "count": 1}], +"duration": 20, +"EUt": 480}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/autoclave.json b/src/main/resources/assets/gregtech/recipes/autoclave.json index c9c1a903b9..570acfec2f 100644 --- a/src/main/resources/assets/gregtech/recipes/autoclave.json +++ b/src/main/resources/assets/gregtech/recipes/autoclave.json @@ -71,12 +71,12 @@ "duration": 12000, "EUt": 320}, {"inputs":[{"ore": "gemExquisiteEmerald", "count": 8}], -"inputFluids":[{"fluid": "uumatter", "amount": 100}], +"inputFluids":[{"fluid": "ic2uumatter", "amount": 100}], "outputs":[{"item": "GTItemList:Tool_DataOrb", "count": 1}], "duration": 12000, "EUt": 320}, {"inputs":[{"ore": "gemExquisiteOlivine", "count": 8}], -"inputFluids":[{"fluid": "uumatter", "amount": 100}], +"inputFluids":[{"fluid": "ic2uumatter", "amount": 100}], "outputs":[{"item": "GTItemList:Tool_DataOrb", "count": 1}], "duration": 12000, "EUt": 320}, diff --git a/src/main/resources/assets/gregtech/recipes/blast_furnace.json b/src/main/resources/assets/gregtech/recipes/blast_furnace.json new file mode 100644 index 0000000000..e6516ff200 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/blast_furnace.json @@ -0,0 +1,114 @@ +[ +{"inputs":[{"ore": "dustSilicon", "count": 32}, {"ore": "dustTinyGallium", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Silicon_Ingot", "count": 1}], +"duration":9000, +"EUt":120, +"blastTemp":1784}, +{"inputs":[{"ore": "dustSilicon", "count": 64}, {"ore": "dustGlowstone", "count": 8}], +"inputFluids":[{"fluid": "nitrogen", "amount": 8000}], +"outputs":[{"item": "GTItemList:Circuit_Silicon_Ingot2", "count": 1}], +"duration":12000, +"EUt":480, +"blastTemp":2484}, +{"inputs":[{"ore": "blockSilicon", "count": 16}, {"ore": "ingotNaquadah", "count": 1}], +"inputFluids":[{"fluid": "argon", "amount": 8000}], +"outputs":[{"item": "GTItemList:Circuit_Silicon_Ingot3", "count": 1}], +"duration":1500, +"EUt":1920, +"blastTemp":5400}, +{"inputs":[{"ore": "dustRuby", "count": 1}], +"outputs":[{"ore": "nuggetAluminium", "count": 3}, {"ore": "dustTinyDarkAsh", "count": 1}], +"duration":400, +"EUt":100, +"blastTemp":1200}, +{"inputs":[{"ore": "gemRuby", "count": 1}], +"outputs":[{"ore": "nuggetAluminium", "count": 3}, {"ore": "dustTinyDarkAsh", "count": 1}], +"duration":320, +"EUt":100, +"blastTemp":1200}, +{"inputs":[{"ore": "dustGreenSapphire", "count": 1}], +"outputs":[{"ore": "nuggetAluminium", "count": 3}, {"ore": "dustTinyDarkAsh", "count": 1}], +"duration":400, +"EUt":100, +"blastTemp":1200}, +{"inputs":[{"ore": "gemGreenSapphire", "count": 1}], +"outputs":[{"ore": "nuggetAluminium", "count": 3}, {"ore": "dustTinyDarkAsh", "count": 1}], +"duration":320, +"EUt":100, +"blastTemp":1200}, +{"inputs":[{"ore": "dustSapphire", "count": 1}], +"outputs":[{"ore": "nuggetAluminium", "count": 3}], +"duration":400, +"EUt":100, +"blastTemp":1200}, +{"inputs":[{"ore": "gemSapphire", "count": 1}], +"outputs":[{"ore": "nuggetAluminium", "count": 3}], +"duration":320, +"EUt":100, +"blastTemp":1200}, +{"inputs":[{"ore": "dustIlmenite", "count": 1}, {"ore": "dustCarbon", "count": 1}], +"outputs":[{"ore": "nuggetWroughtIron", "count": 4}, {"ore": "dustTinyRutile", "count": 4}], +"duration":800, +"EUt":500, +"blastTemp":1700}, +{"inputs":[{"ore": "gemIlmenite", "count": 1}, {"ore": "dustCarbon", "count": 1}], +"outputs":[{"ore": "nuggetWroughtIron", "count": 4}, {"ore": "dustTinyRutile", "count": 4}], +"duration":800, +"EUt":500, +"blastTemp":1700}, + +{"inputs":[{"ore": "ingotIron", "count": 1}], +"inputFluids":[{"fluid": "oxygen", "amount": 1000}], +"outputs":[{"ore": "ingotSteel", "count": 1}, {"ore": "dustTinyAsh", "count": 1}], +"duration":500, +"EUt":120, +"blastTemp":1000}, +{"inputs":[{"ore": "ingotPigIron", "count": 1}], +"inputFluids":[{"fluid": "oxygen", "amount": 1000}], +"outputs":[{"ore": "ingotSteel", "count": 1}, {"ore": "dustTinyAsh", "count": 1}], +"duration":100, +"EUt":120, +"blastTemp":1000}, +{"inputs":[{"ore": "ingotWroughtIron", "count": 1}], +"inputFluids":[{"fluid": "oxygen", "amount": 1000}], +"outputs":[{"ore": "ingotSteel", "count": 1}, {"ore": "dustTinyAsh", "count": 1}], +"duration":100, +"EUt":120, +"blastTemp":1000}, +{"inputs":[{"ore": "ingotShadowIron", "count": 1}], +"inputFluids":[{"fluid": "oxygen", "amount": 1000}], +"outputs":[{"ore": "ingotShadowSteel", "count": 1}, {"ore": "dustSmallDarkAsh", "count": 1}], +"duration":500, +"EUt":120, +"blastTemp":1100}, +{"inputs":[{"ore": "ingotMeteoricIron", "count": 1}], +"inputFluids":[{"fluid": "oxygen", "amount": 1000}], +"outputs":[{"ore": "ingotMeteoricSteel", "count": 1}, {"ore": "dustSmallDarkAsh", "count": 1}], +"duration":500, +"EUt":120, +"blastTemp":1200}, +{"inputs":[{"ore": "dustCopper", "count": 1}], +"inputFluids":[{"fluid": "oxygen", "amount": 1000}], +"outputs":[{"ore": "ingotAnnealedCopper", "count": 1}], +"duration":500, +"EUt":120, +"blastTemp":1200}, +{"inputs":[{"ore": "ingotCopper", "count": 1}], +"inputFluids":[{"fluid": "oxygen", "amount": 1000}], +"outputs":[{"ore": "ingotAnnealedCopper", "count": 1}], +"duration":500, +"EUt":120, +"blastTemp":1200}, +{"inputs":[{"ore": "ingotElectricalSteel", "count": 1}, {"ore": "dustObsidian", "count": 1}], +"outputs":[{"ore": "ingotDarkSteel", "count": 1}], +"duration":4000, +"EUt":120, +"blastTemp":2000}, +{"inputs":[{"ore": "ingotIridium", "count": 3}, {"ore": "ingotOsmium", "count": 1}], +"inputFluids":[{"fluid": "helium", "amount": 1000}], +"outputs":[{"ore": "ingotHotOsmiridium", "count": 4}], +"duration":500, +"EUt":1920, +"blastTemp":2900}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/brewery.json b/src/main/resources/assets/gregtech/recipes/brewery.json new file mode 100644 index 0000000000..41b5363bb8 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/brewery.json @@ -0,0 +1,323 @@ +[ +{"inputs": [{"alts":[{"ore": "dustTalc"}, {"ore": "dustSoapstone"}, {"ore": "dustRedstone"}], "count": 1}], +"inputFluids":[{"fluid": "oil", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"alts":[{"ore": "dustTalc"}, {"ore": "dustSoapstone"}, {"ore": "dustRedstone"}], "count": 1}], +"inputFluids":[{"fluid": "creosote", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"alts":[{"ore": "dustTalc"}, {"ore": "dustSoapstone"}, {"ore": "dustRedstone"}], "count": 1}], +"inputFluids":[{"fluid": "seedoil", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, + +{"inputs": [{"ore": "dustMilk", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "milk", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustMilk", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "milk", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustWheat", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.wheatyjuice", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustWheat", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.wheatyjuice", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"alts": [{"ore": "dustPotassium"}, {"ore": "dustSodium"}, {"ore": "dustCalcium"}, {"ore": "dustMagnesium"}], "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"alts": [{"ore": "dustPotassium"}, {"ore": "dustSodium"}, {"ore": "dustCalcium"}, {"ore": "dustMagnesium"}], "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustGlowstone", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.thick", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustGlowstone", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.thick", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"alts":[{"ore": "dustRedstone"}, {"ore": "dustSugar"}, {"ore": "dustBlaze"}, {"item": "minecraft:magma_cream:0"}, {"item": "minecraft:fermented_spider_eye:0"}, {"item": "minecraft:spider_eye:0"}, {"item": "minecraft:speckled_melon:0"}, {"item": "minecraft:ghast_tear:0"}], "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"alts":[{"ore": "dustRedstone"}, {"ore": "dustSugar"}, {"ore": "dustBlaze"}, {"item": "minecraft:magma_cream:0"}, {"item": "minecraft:fermented_spider_eye:0"}, {"item": "minecraft:spider_eye:0"}, {"item": "minecraft:speckled_melon:0"}, {"item": "minecraft:ghast_tear:0"}], "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:nether_wart:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.awkward", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:nether_wart:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.awkward", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:red_mushroom:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.poison", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:red_mushroom:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.poison", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"alts":[{"item": "minecraft:fish:3"}, {"item": "GTItemList:IC2_Grin_Powder"}], "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.poison.strong", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"alts":[{"item": "minecraft:fish:3"}, {"item": "GTItemList:IC2_Grin_Powder"}], "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.poison.strong", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:reeds:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.reedwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:reeds:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.reedwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:apple:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.applejuice", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:apple:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.applejuice", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:golden_apple:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.goldenapplejuice", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:golden_apple:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.goldenapplejuice", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:golden_apple:1", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.idunsapplejuice", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:golden_apple:1", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.idunsapplejuice", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "GTItemList:IC2_Hops", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.hopsjuice", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "GTItemList:IC2_Hops", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.hopsjuice", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustCoffee", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.darkcoffee", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustCoffee", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.darkcoffee", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustChili", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.chillysauce", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustChili", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.chillysauce", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "IC2:itemBiochaff", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "ic2biomass", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "IC2:itemBiochaff", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "ic2biomass", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, + +{"inputs": [{"ore": "dustChili", "count": 1}], +"inputFluids":[{"fluid": "potion.chillysauce", "amount": 750}], +"outputFluids":[{"fluid": "potion.hotsauce", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustChili", "count": 1}], +"inputFluids":[{"fluid": "potion.hotsauce", "amount": 750}], +"outputFluids":[{"fluid": "potion.diabolosauce", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustChili", "count": 1}], +"inputFluids":[{"fluid": "potion.diabolosauce", "amount": 750}], +"outputFluids":[{"fluid": "potion.diablosauce", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustCoffee", "count": 1}], +"inputFluids":[{"fluid": "milk", "amount": 750}], +"outputFluids":[{"fluid": "potion.coffee", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustCocoa", "count": 1}], +"inputFluids":[{"fluid": "milk", "amount": 750}], +"outputFluids":[{"fluid": "potion.darkchocolatemilk", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "GTItemList:IC2_Hops", "count": 1}], +"inputFluids":[{"fluid": "potion.wheatyjuice", "amount": 750}], +"outputFluids":[{"fluid": "potion.wheatyhopsjuice", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustWheat", "count": 1}], +"inputFluids":[{"fluid": "potion.hopsjuice", "amount": 750}], +"outputFluids":[{"fluid": "potion.wheatyhopsjuice", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], +"inputFluids":[{"fluid": "potion.tea", "amount": 750}], +"outputFluids":[{"fluid": "potion.sweettea", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], +"inputFluids":[{"fluid": "potion.coffee", "amount": 750}], +"outputFluids":[{"fluid": "potion.cafeaulait", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], +"inputFluids":[{"fluid": "potion.cafeaulait", "amount": 750}], +"outputFluids":[{"fluid": "potion.laitaucafe", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], +"inputFluids":[{"fluid": "potion.lemonjuice", "amount": 750}], +"outputFluids":[{"fluid": "potion.lemonade", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], +"inputFluids":[{"fluid": "potion.darkcoffee", "amount": 750}], +"outputFluids":[{"fluid": "potion.darkcafeaulait", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], +"inputFluids":[{"fluid": "potion.darkchocolatemilk", "amount": 750}], +"outputFluids":[{"fluid": "potion.chocolatemilk", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustIce", "count": 1}], +"inputFluids":[{"fluid": "potion.tea", "amount": 750}], +"outputFluids":[{"fluid": "potion.icetea", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustGunpowder", "count": 1}], +"inputFluids":[{"fluid": "potion.lemonade", "amount": 750}], +"outputFluids":[{"fluid": "potion.cavejohnsonsgrenadejuice", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], +"inputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"outputFluids":[{"fluid": "potion.purpledrink", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:fermented_spider_eye:0", "count": 1}], +"inputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"outputFluids":[{"fluid": "potion.weakness", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:fermented_spider_eye:0", "count": 1}], +"inputFluids":[{"fluid": "potion.thick", "amount": 750}], +"outputFluids":[{"fluid": "potion.weakness", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/centrifuge.json b/src/main/resources/assets/gregtech/recipes/centrifuge.json index 0a5529008a..39896b46a9 100644 --- a/src/main/resources/assets/gregtech/recipes/centrifuge.json +++ b/src/main/resources/assets/gregtech/recipes/centrifuge.json @@ -5,7 +5,7 @@ "outputs":[{"ore": "cellOxygen", "count": 1}], "duration": 1600, "EUt": 8}, -{"inputs":[{"ore": "dustPlatinumGroupSludge", "count": 1}] +{"inputs":[{"ore": "dustPlatinumGroupSludge", "count": 1}], "outputs":[{"ore": "dustSiliconDioxide", "count": 1}, {"ore": "dustTinyGold", "count": 1}, {"ore": "dustTinyPlatinum", "count": 1}, {"ore": "dustTinyPalladium", "count": 1, "chance": 0.8}, {"ore": "dustTinyIridium", "count": 1, "chance": 0.6}, {"ore": "dustTinyOsmium", "count": 1, "chance": 0.6}], "duration": 900, "EUt": 30}, diff --git a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json index 46eba81008..0da47ff3e5 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json @@ -8,22 +8,21 @@ {"inputs":[{"ore": "crushedPurifiedGalena", "count": 3}, {"ore": "crushedPurifiedSphalerite", "count": 1}], "inputFluids":[{"fluid": "sulfuricacid", "amount": 4000}], "outputFluids":[{"fluid": "indiumconcentrate", "amount": 8000}], -"outputs":[null], "duration": 60, "EUt": 150}, -{"inputs":[{"ore": "dustAluminium", "count": 4}, null], +{"inputs":[{"ore": "dustAluminium", "count": 4}], "inputFluids":[{"fluid": "indiumconcentrate", "amount": 8000}], -"outputFluids":[{"fluid": "solution.leadzincsolution", "amount": 8000}], +"outputFluids":[{"fluid": "leadzincsolution", "amount": 8000}], "outputs":[{"ore": "dustTinyIndium", "count": 1}], "duration": 50, "EUt": 600}, -{"inputs":[{"ore": "crushedPurifiedPentlandite", "count": 1}, null], +{"inputs":[{"ore": "crushedPurifiedPentlandite", "count": 1}], "inputFluids":[{"fluid": "nitricacid", "amount": 1000}], "outputFluids":[{"fluid": "solution.nickelsulfate", "amount": 9000}], "outputs":[{"ore": "dustTinyPlatinumGroupSludge", "count": 1}], "duration": 50, "EUt": 30}, -{"inputs":[{"ore": "crushedPurifiedChalcopyrite", "count": 1}, null], +{"inputs":[{"ore": "crushedPurifiedChalcopyrite", "count": 1}], "inputFluids":[{"fluid": "nitricacid", "amount": 1000}], "outputFluids":[{"fluid": "solution.bluevitriol", "amount": 9000}], "outputs":[{"ore": "dustTinyPlatinumGroupSludge", "count": 1}], @@ -79,4 +78,352 @@ "outputs":[{"item": "GTItemList:Circuit_Wafer_QuantumCPU", "count": 1}], "duration": 400, "EUt": 1920}, + +{"inputs": [{"item": "GTItemList:GelledToluene", "count": 4}], +"inputFluids": [{"fluid": "sulfuricacid", "amount": 250}], +"outputs": [{"item": "minecraft:tnt", "count":1}], +"duration": 200, +"EUt": 24}, + +{"inputs": [{"item": "minecraft:sugar", "count": 1}, {"ore": "dustTinyPlastic", "count": 1}], +"inputFluids": [{"fluid": "liquid_toluene", "amount": 133}], +"outputs": [{"item": "GTItemList:GelledToluene", "count": 2}], +"duration": 140, +"EUt": 192}, +{"inputs": [{"item": "GTItemList:GelledToluene", "count": 4}], +"inputFluids": [{"fluid": "liquid_nitrationmixture", "amount": 200}], +"outputFluids": [{"fluid": "dilutedsulfuricacid", "amount": 200}], +"outputs": [{"item": "IC2:blockITNT", "count": 1}], +"duration": 80, +"EUt": 480}, + +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "gas_natural_gas", "amount": 16000}], +"outputFluids":[{"fluid": "gas_gas", "amount": 16000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellNatruralGas", "count": 16}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellGas", "count": 16}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "gas_sulfuricgas", "amount": 16000}], +"outputFluids":[{"fluid": "gas_gas", "amount": 16000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellSulfuricGas", "count": 16}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellGas", "count": 16}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "liquid_sulfuricnaphtha", "amount": 12000}], +"outputFluids":[{"fluid": "liquid_naphtha", "amount": 12000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellSulfuricNaphtha", "count": 12}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellNaphtha", "count": 12}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "liquid_sufluriclight_fuel", "amount": 12000}], +"outputFluids":[{"fluid": "liquid_light_fuel", "amount": 12000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellSulfuricLightFuel", "count": 12}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellLightFuel", "count": 12}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "liquid_sulfuricheavy_fuel", "amount": 8000}], +"outputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 8000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellSulfuricHeavyFuel", "count": 8}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellHeavyFuel", "count": 8}], +"duration": 160, +"EUt":30}, + +{"inputs": [{"ore": "dustSaltpeter", "count": 1}], +"inputFluids": [{"fluid": "liquid_naphtha", "amount": 576}], +"outputFluids": [{"fluid": "molten.polycaprolactam", "amount": 1296}], +"outputs": [{"ore": "dustTinyPotassium", "count": 1}], +"duration": 640, +"EUt": 30}, + + +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 100, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 100, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 100, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 100, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 200, +"EUt":30}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/electrolyzer.json b/src/main/resources/assets/gregtech/recipes/electrolyzer.json index 193207e1db..b8b637b630 100644 --- a/src/main/resources/assets/gregtech/recipes/electrolyzer.json +++ b/src/main/resources/assets/gregtech/recipes/electrolyzer.json @@ -1,5 +1,5 @@ [ -{"inputFluids":[{"fluid": "solution.leadzincsolution", "amount": 8000}], +{"inputFluids":[{"fluid": "leadzincsolution", "amount": 8000}], "outputFluids":[{"fluid": "water", "amount": 2000}], "outputs":[{"ore": "dustLead", "count": 1}, {"ore": "dustSilver", "count": 1}, {"ore": "dustZinc", "count": 1}, {"ore": "dustSulfur", "count": 3}], "duration": 300, diff --git a/src/main/resources/assets/gregtech/recipes/fermenter.json b/src/main/resources/assets/gregtech/recipes/fermenter.json new file mode 100644 index 0000000000..4cd052c0a1 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/fermenter.json @@ -0,0 +1,178 @@ +[ + +{"inputFluids":[{"fluid": "milk", "amount": 50}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.lemonjuice", "amount": 50}], +"outputFluids":[{"fluid": "potion.limoncello", "amount": 25}], +"duration": 1024, +"EUt": 2, +"hidden": "true"}, +{"inputFluids":[{"fluid": "potion.applejuice", "amount": 50}], +"outputFluids":[{"fluid": "potion.cider", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.goldenapplejuice", "amount": 50}], +"outputFluids":[{"fluid": "potion.goldencider", "amount": 25}], +"duration": 1024, +"EUt": 2, +"hidden": "true"}, +{"inputFluids":[{"fluid": "potion.idunsapplejuice", "amount": 50}], +"outputFluids":[{"fluid": "potion.notchesbrew", "amount": 25}], +"duration": 1024, +"EUt": 2, +"hidden": "true"}, +{"inputFluids":[{"fluid": "potion.reedwater", "amount": 50}], +"outputFluids":[{"fluid": "potion.rum", "amount": 25}], +"duration": 1024, +"EUt": 2, +"hidden": "true"}, +{"inputFluids":[{"fluid": "potion.rum", "amount": 50}], +"outputFluids":[{"fluid": "potion.piratebrew", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.grapejuice", "amount": 50}], +"outputFluids":[{"fluid": "potion.wine", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.wheatyjuice", "amount": 50}], +"outputFluids":[{"fluid": "potion.scotch", "amount": 25}], +"duration": 1024, +"EUt": 2, +"hidden": "true"}, +{"inputFluids":[{"fluid": "potion.scotch", "amount": 50}], +"outputFluids":[{"fluid": "potion.glenmckenner", "amount": 10}], +"duration": 2048, +"EUt": 2, +"hidden": "true"}, +{"inputFluids":[{"fluid": "potion.wheatyhopsjuice", "amount": 50}], +"outputFluids":[{"fluid": "potion.beer", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.hopsjuice", "amount": 50}], +"outputFluids":[{"fluid": "potion.darkbeer", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.darkbeer", "amount": 50}], +"outputFluids":[{"fluid": "potion.dragonblood", "amount": 10}], +"duration": 2048, +"EUt": 2, +"hidden": "true"}, + +{"inputFluids":[{"fluid": "potion.beer", "amount": 75}], +"outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.cider", "amount": 75}], +"outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.goldencider", "amount": 75}], +"outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"duration": 2048, +"EUt": 2, +"hidden": "true"}, +{"inputFluids":[{"fluid": "potion.rum", "amount": 75}], +"outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.wine", "amount": 75}], +"outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"duration": 2048, +"EUt": 2}, + +{"inputFluids":[{"fluid": "potion.awkward", "amount": 50}], +"outputFluids":[{"fluid": "potion.weakness", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.mundane", "amount": 50}], +"outputFluids":[{"fluid": "potion.weakness", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.thick", "amount": 50}], +"outputFluids":[{"fluid": "potion.weakness", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.poison", "amount": 50}], +"outputFluids":[{"fluid": "potion.damage", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.health", "amount": 50}], +"outputFluids":[{"fluid": "potion.damage", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.waterbreathing", "amount": 50}], +"outputFluids":[{"fluid": "potion.damage", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.nightvision", "amount": 50}], +"outputFluids":[{"fluid": "potion.invisibility", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.fireresistance", "amount": 50}], +"outputFluids":[{"fluid": "potion.slowness", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.speed", "amount": 50}], +"outputFluids":[{"fluid": "potion.slowness", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.strength", "amount": 50}], +"outputFluids":[{"fluid": "potion.weakness", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.regen", "amount": 50}], +"outputFluids":[{"fluid": "potion.poison", "amount": 25}], +"duration": 1024, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.poison.strong", "amount": 50}], +"outputFluids":[{"fluid": "potion.damage.strong", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.health.strong", "amount": 50}], +"outputFluids":[{"fluid": "potion.damage.strong", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.speed.strong", "amount": 50}], +"outputFluids":[{"fluid": "potion.slowness.strong", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.strength.strong", "amount": 50}], +"outputFluids":[{"fluid": "potion.weakness.strong", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.nightvision.long", "amount": 50}], +"outputFluids":[{"fluid": "potion.invisibility.long", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.regen.strong", "amount": 50}], +"outputFluids":[{"fluid": "potion.poison.strong", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.poison.long", "amount": 50}], +"outputFluids":[{"fluid": "potion.damage.long", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.waterbreathing.long", "amount": 50}], +"outputFluids":[{"fluid": "potion.damage.long", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.fireresistance.long", "amount": 50}], +"outputFluids":[{"fluid": "potion.slowness.long", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.speed.long", "amount": 50}], +"outputFluids":[{"fluid": "potion.slowness.long", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.strength.long", "amount": 50}], +"outputFluids":[{"fluid": "potion.weakness.long", "amount": 10}], +"duration": 2048, +"EUt": 2}, +{"inputFluids":[{"fluid": "potion.regen.long", "amount": 50}], +"outputFluids":[{"fluid": "potion.poison.long", "amount": 10}], +"duration": 2048, +"EUt": 2}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_heater.json b/src/main/resources/assets/gregtech/recipes/fluid_heater.json index be43dd7e2f..85f14f863e 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_heater.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_heater.json @@ -9,4 +9,26 @@ "outputFluids":[{"fluid": "growthmediumsterilized", "amount": 1000}], "duration": 60, "EUt": 24}, + +{"inputs": [{"item": "gregtech:gt.integrated_circuit:1", "count": 0}], + "inputFluids":[{"fluid": "water", "amount": 6}], + "outputFluids":[{"fluid": "steam", "amount": 960}], +"duration": 30, +"EUt":32}, +{"inputs": [{"item": "gregtech:gt.integrated_circuit:1", "count": 0}], + "inputFluids":[{"fluid": "ic2distilledwater", "amount": 6}], + "outputFluids":[{"fluid": "steam", "amount": 960}], +"duration": 30, +"EUt":32}, +{"inputs": [{"item": "gregtech:gt.integrated_circuit:1", "count": 0}], + "inputFluids":[{"fluid": "seedoil", "amount": 16}], + "outputFluids":[{"fluid": "hotfryingoil", "amount": 16}], +"duration": 16, +"EUt":32}, +{"inputs": [{"item": "gregtech:gt.integrated_circuit:1", "count": 0}], + "inputFluids":[{"fluid": "fishoil", "amount": 16}], + "outputFluids":[{"fluid": "hotfryingoil", "amount": 16}], +"duration": 16, +"EUt":32}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json b/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json index 7f1eabdf4a..f16813b926 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json @@ -125,4 +125,10 @@ "outputs":[{"item": "GTItemList:Circuit_Parts_PetriDish", "count": 1}], "duration": 160, "EUt": 16}, + +{"inputs":[{"item": "GTItemList:Shape_Mold_Ball", "count": 0}], +"inputFluids":[{"fluid": "liquid_toluene", "amount": 100}], +"outputs":[{"item": "GTItemList:GelledToluene", "count": 1}], +"duration": 100, +"EUt": 16}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/forge_hammer.json b/src/main/resources/assets/gregtech/recipes/forge_hammer.json new file mode 100644 index 0000000000..b398ac7ada --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/forge_hammer.json @@ -0,0 +1,80 @@ +[ + +{"inputs":[{"item": "minecraft:stonebrick:0", "count": 1}], +"outputs":[{"item": "minecraft:stonebrick:2", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:stone:0", "count": 1}], +"outputs":[{"item": "minecraft:cobblestone:0", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:cobblestone:0", "count": 1}], +"outputs":[{"item": "minecraft:gravel:0", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:gravel:0", "count": 1}], +"outputs":[{"item": "minecraft:sand:0", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:sandstone:*", "count": 1}], +"outputs":[{"item": "minecraft:sand:0", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:ice:0", "count": 1}], +"outputs":[{"ore": "dustIce", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:packed_ice:0", "count": 1}], +"outputs":[{"ore": "dustIce", "count": 2}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:hardened_clay:0", "count": 1}], +"outputs":[{"ore": "dustClay", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:stained_hardened_clay:*", "count": 1}], +"outputs":[{"ore": "dustClay", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:brick_block:0", "count": 1}], +"outputs":[{"item": "minecraft:brick:0", "count": 3}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:nether_brick:0", "count": 1}], +"outputs":[{"item": "minecraft:netherbrick:0", "count": 3}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:stained_glass:*", "count": 1}], +"outputs":[{"ore": "dustGlass", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:glass:*", "count": 1}], +"outputs":[{"ore": "dustGlass", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:stained_glass_pane:*", "count": 1}], +"outputs":[{"ore": "dustTinyGlass", "count": 3}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "minecraft:glass_pane:*", "count": 1}], +"outputs":[{"ore": "dustTinyGlass", "count": 3}], +"duration":10, +"EUt":16}, +{"inputs":[{"ore": "ingotBrick", "count": 1}], +"outputs":[{"ore": "dustSmallBrick", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "GTItemList:Firebrick", "count": 1}], +"outputs":[{"ore": "dustBrick", "count": 1}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "GTItemList:Casing_Firebricks", "count": 1}], +"outputs":[{"item": "GTItemList:Firebrick", "count": 3}], +"duration":10, +"EUt":16}, +{"inputs":[{"item": "HardcoreEnderExpansion:endium_ore", "count": 1}], +"outputs":[{"ore": "crushedEndium", "count": 1}], +"duration":10, +"EUt":16}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/fusion_reactor.json b/src/main/resources/assets/gregtech/recipes/fusion_reactor.json new file mode 100644 index 0000000000..3637ea799b --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/fusion_reactor.json @@ -0,0 +1,129 @@ +[ +{"inputFluids":[{"fluid": "molten.lithium", "amount": 16}, {"fluid": "molten.tungsten", "amount": 16}], +"outputFluids":[{"fluid": "molten.iridium", "amount": 16}], +"duration":32, +"EUt":32768, +"startingCost":300000000}, +{"inputFluids":[{"fluid": "deuterium", "amount": 125}, {"fluid": "tritium", "amount": 125}], +"outputFluids":[{"fluid": "plasma.helium", "amount": 125}], +"duration":16, +"EUt":4096, +"startingCost":40000000}, +{"inputFluids":[{"fluid": "deuterium", "amount": 125}, {"fluid": "helium-3", "amount": 125}], +"outputFluids":[{"fluid": "plasma.helium", "amount": 125}], +"duration":16, +"EUt":2048, +"startingCost":60000000}, +{"inputFluids":[{"fluid": "molten.carbon", "amount": 125}, {"fluid": "helium-3", "amount": 125}], +"outputFluids":[{"fluid": "plasma.oxygen", "amount": 125}], +"duration":32, +"EUt":4096, +"startingCost":80000000}, +{"inputFluids":[{"fluid": "molten.aluminium", "amount": 16}, {"fluid": "molten.lithium", "amount": 16}], +"outputFluids":[{"fluid": "plasma.sulfur", "amount": 125}], +"duration":32, +"EUt":10240, +"startingCost":240000000}, +{"inputFluids":[{"fluid": "molten.beryllium", "amount": 16}, {"fluid": "deuterium", "amount": 375}], +"outputFluids":[{"fluid": "plasma.nitrogen", "amount": 175}], +"duration":16, +"EUt":16384, +"startingCost":180000000}, +{"inputFluids":[{"fluid": "molten.silicon", "amount": 16}, {"fluid": "molten.magnesium", "amount": 16}], +"outputFluids":[{"fluid": "plasma.iron", "amount": 125}], +"duration":32, +"EUt":8192, +"startingCost":360000000}, +{"inputFluids":[{"fluid": "molten.potassium", "amount": 16}, {"fluid": "fluorine", "amount": 125}], +"outputFluids":[{"fluid": "plasma.nickel", "amount": 125}], +"duration":16, +"EUt":32768, +"startingCost":480000000}, +{"inputFluids":[{"fluid": "molten.beryllium", "amount": 16}, {"fluid": "molten.tungsten", "amount": 16}], +"outputFluids":[{"fluid": "molten.platinum", "amount": 16}], +"duration":32, +"EUt":32768, +"startingCost":150000000}, +{"inputFluids":[{"fluid": "molten.neodymium", "amount": 16}, {"fluid": "hydrogen", "amount": 48}], +"outputFluids":[{"fluid": "molten.europium", "amount": 16}], +"duration":64, +"EUt":24576, +"startingCost":150000000}, +{"inputFluids":[{"fluid": "molten.lutetium", "amount": 16}, {"fluid": "molten.chrome", "amount": 16}], +"outputFluids":[{"fluid": "molten.americium", "amount": 16}], +"duration":96, +"EUt":49152, +"startingCost":200000000}, +{"inputFluids":[{"fluid": "molten.plutonium", "amount": 16}, {"fluid": "molten.thorium", "amount": 16}], +"outputFluids":[{"fluid": "molten.naquadah", "amount": 16}], +"duration":64, +"EUt":32768, +"startingCost":300000000}, +{"inputFluids":[{"fluid": "molten.americium", "amount": 16}, {"fluid": "molten.naquadria", "amount": 16}], +"outputFluids":[{"fluid": "molten.neutronium", "amount": 1}], +"duration":1200, +"EUt":98304, +"startingCost":600000000}, + +{"inputFluids":[{"fluid": "molten.tungsten", "amount": 16}, {"fluid": "helium", "amount": 16}], +"outputFluids":[{"fluid": "molten.osmium", "amount": 16}], +"duration":64, +"EUt":24578, +"startingCost":150000000}, +{"inputFluids":[{"fluid": "molten.manganese", "amount": 16}, {"fluid": "hydrogen", "amount": 16}], +"outputFluids":[{"fluid": "molten.iron", "amount": 16}], +"duration":64, +"EUt":8192, +"startingCost":120000000}, +{"inputFluids":[{"fluid": "mercury", "amount": 16}, {"fluid": "molten.magnesium", "amount": 16}], +"outputFluids":[{"fluid": "molten.uranium", "amount": 16}], +"duration":64, +"EUt":49152, +"startingCost":240000000}, +{"inputFluids":[{"fluid": "molten.gold", "amount": 16}, {"fluid": "molten.aluminium", "amount": 16}], +"outputFluids":[{"fluid": "molten.uranium", "amount": 16}], +"duration":64, +"EUt":49152, +"startingCost":240000000}, +{"inputFluids":[{"fluid": "molten.uranium", "amount": 16}, {"fluid": "helium", "amount": 16}], +"outputFluids":[{"fluid": "molten.plutonium", "amount": 16}], +"duration":128, +"EUt":49152, +"startingCost":480000000}, +{"inputFluids":[{"fluid": "molten.vanadium", "amount": 16}, {"fluid": "hydrogen", "amount": 125}], +"outputFluids":[{"fluid": "molten.chrome", "amount": 16}], +"duration":64, +"EUt":24576, +"startingCost":140000000}, +{"inputFluids":[{"fluid": "molten.gallium", "amount": 16}, {"fluid": "radon", "amount": 125}], +"outputFluids":[{"fluid": "molten.duranium", "amount": 16}], +"duration":64, +"EUt":16384, +"startingCost":140000000}, +{"inputFluids":[{"fluid": "molten.titanium", "amount": 48}, {"fluid": "molten.duranium", "amount": 32}], +"outputFluids":[{"fluid": "molten.tritanium", "amount": 16}], +"duration":64, +"EUt":32768, +"startingCost":200000000}, +{"inputFluids":[{"fluid": "molten.gold", "amount": 16}, {"fluid": "mercury", "amount": 16}], +"outputFluids":[{"fluid": "radon", "amount": 125}], +"duration":64, +"EUt":32768, +"startingCost":200000000}, +{"inputFluids":[{"fluid": "molten.tantalum", "amount": 16}, {"fluid": "tritium", "amount": 16}], +"outputFluids":[{"fluid": "molten.tungsten", "amount": 16}], +"duration":16, +"EUt":24576, +"startingCost":200000000}, +{"inputFluids":[{"fluid": "molten.silver", "amount": 16}, {"fluid": "molten.lithium", "amount": 16}], +"outputFluids":[{"fluid": "molten.indium", "amount": 16}], +"duration":32, +"EUt":24576, +"startingCost":380000000}, +{"inputFluids":[{"fluid": "molten.naquadahenriched", "amount": 15}, {"fluid": "radon", "amount": 125}], +"outputFluids":[{"fluid": "molten.naquadria", "amount": 3}], +"duration":64, +"EUt":49152, +"startingCost":400000000}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/mixer.json b/src/main/resources/assets/gregtech/recipes/mixer.json index 96ca074417..f3eeffc803 100644 --- a/src/main/resources/assets/gregtech/recipes/mixer.json +++ b/src/main/resources/assets/gregtech/recipes/mixer.json @@ -355,13 +355,13 @@ "duration": 16, "EUt": 16}, {"inputs":[{"ore": "cellWater", "count": 5}, {"ore": "dustStone", "count": 1}], -"inputFluids":[{"fluid": "Lubricant", "amount": 20}], +"inputFluids":[{"fluid": "lubricant", "amount": 20}], "outputFluids":[{"fluid": "liquid_drillingfluid", "amount": 5000}], "outputs":[{"item": "GTItemList:Cell_Empty", "count": 5}], "duration": 64, "EUt": 16}, {"inputs":[{"ore": "dustLapis", "count": 1}], -"inputFluids":[{"fluid": "Water", "amount": 125}], +"inputFluids":[{"fluid": "water", "amount": 125}], "outputFluids":[{"fluid": "ic2coolant", "amount": 125}], "duration": 256, "EUt": 48}, @@ -372,7 +372,7 @@ "EUt": 48}, {"inputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "dustSodium", "count": 1}, {"ore": "dustWood", "count": 4}], -"inputFluids":[{"fluid": "Creosote", "amount": 1000}], +"inputFluids":[{"fluid": "creosote", "amount": 1000}], "outputs":[{"item": "GTItemList:SFMixture", "count": 8}], "duration": 1600, "EUt": 16}, @@ -506,37 +506,37 @@ "EUt": 96}, {"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedAir", "count": 1}], -"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"inputFluids":[{"fluid": "molten.fierysteel", "amount": 10}], "outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], "enableCondition": "ModLoaded(Thaumcraft)", "duration": 100, "EUt": 64}, {"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedEarth", "count": 1}], -"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"inputFluids":[{"fluid": "molten.fierysteel", "amount": 10}], "outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], "enableCondition": "ModLoaded(Thaumcraft)", "duration": 100, "EUt": 64}, {"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedEntropy", "count": 1}], -"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"inputFluids":[{"fluid": "molten.fierysteel", "amount": 10}], "outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], "enableCondition": "ModLoaded(Thaumcraft)", "duration": 100, "EUt": 64}, {"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedFire", "count": 1}], -"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"inputFluids":[{"fluid": "molten.fierysteel", "amount": 10}], "outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], "enableCondition": "ModLoaded(Thaumcraft)", "duration": 100, "EUt": 64}, {"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedOrder", "count": 1}], -"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"inputFluids":[{"fluid": "molten.fierysteel", "amount": 10}], "outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], "enableCondition": "ModLoaded(Thaumcraft)", "duration": 100, "EUt": 64}, {"inputs":[{"item": "GTItemList:SFMixture", "count": 4}, {"ore": "dustTinyInfusedWater", "count": 1}], -"inputFluids":[{"fluid": "fierysteel", "amount": 10}], +"inputFluids":[{"fluid": "molten.fierysteel", "amount": 10}], "outputs":[{"item": "GTItemList:MSFMixture", "count": 4}], "enableCondition": "ModLoaded(Thaumcraft)", "duration": 100, @@ -763,4 +763,11 @@ "outputFluids":[{"fluid": "growthmediumraw", "amount": 4000}], "duration": 160, "EUt": 16}, + +{"inputs":[{"ore": "cellSulfuricAcid", "count": 1}], +"inputFluids":[{"fluid": "nitricacid", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_nitrationmixture", "amount": 2000}], +"outputs": [{"item": "GTItemList:Cell_Empty", "count": 1}], +"duration": 480, +"EUt": 2}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/sifter.json b/src/main/resources/assets/gregtech/recipes/sifter.json new file mode 100644 index 0000000000..561b690313 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/sifter.json @@ -0,0 +1,7 @@ +[ + +{"inputs": [{"item": "minecraft:gravel:0", "count": 1}], +"outputs": [{"item": "minecraft:flint:0", "count": 1}], +"duration": 800, +"EUt": 16}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/wiremill.json b/src/main/resources/assets/gregtech/recipes/wiremill.json new file mode 100644 index 0000000000..14c929e216 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/wiremill.json @@ -0,0 +1,7 @@ +[ + +{"inputs":[{"ore": "ingotPolycaprolactam", "count": 1}], +"outputs":[{"item": "minecraft:string", "count": 32}], +"duration": 80, +"EUt": 48}, +{}] From 9d4537ea2be1dea7c7b9cf1af2f45a308a2f9310 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Thu, 12 Nov 2020 23:10:49 -0800 Subject: [PATCH 14/21] Added special handling for soldering fluids, and reading of config folder recipes. Soldering fluids are most notably used in circuit assembler recipes. --- .../api/recipes/GT_MachineRecipe.java | 1 - .../api/recipes/GT_RecipeListJsonReader.java | 59 +++- .../postload/GT_MachineRecipeLoader.java | 328 +++++------------- .../assets/gregtech/recipes/Explanation.cfg | 40 +++ .../gregtech/recipes/alloy_smelter.json | 58 ++++ .../assets/gregtech/recipes/assembler.json | 27 ++ .../gregtech/recipes/circuit_assembler.json | 171 +++++++++ .../assets/gregtech/recipes/fermenter.json | 16 +- 8 files changed, 440 insertions(+), 260 deletions(-) create mode 100644 src/main/resources/assets/gregtech/recipes/Explanation.cfg create mode 100644 src/main/resources/assets/gregtech/recipes/circuit_assembler.json diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index c091e48e5a..3ad23a76b1 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -253,7 +253,6 @@ public ArrayList getOutputPositionedStacks(){ */ public boolean isValidRecipe() { if (mFakeRecipe) return true; - if (mDuration <= 0) return false; if (mEUt <= 0) return false; if (mInputs.length == 0 && mFluidInputs.length == 0) return false; if (mOutputs.length == 0 && mFluidOutputs.length == 0) return false; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java index eab8a8fa06..2f441f6071 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -2,12 +2,16 @@ import com.google.gson.stream.JsonReader; import cpw.mods.fml.common.registry.GameRegistry; +import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.SubTag; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_OreDictUnificator; import java.io.IOException; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -30,9 +34,9 @@ public static List readRecipes(JsonReader aReader) { try { aReader.beginArray(); while (aReader.hasNext()) { - GT_MachineRecipe tRecipe = readRecipe(aReader); + List tRecipe = readRecipe(aReader); if (tRecipe != null) { - rList.add(tRecipe); + rList.addAll(tRecipe); } } aReader.endArray(); @@ -42,7 +46,7 @@ public static List readRecipes(JsonReader aReader) { return rList; } - private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOException { + private static List readRecipe(JsonReader aReader) throws IOException { List tInputs = new ArrayList<>(10); List tOutputs = new ArrayList<>(10); List tFluidInputs = new ArrayList<>(10); @@ -54,6 +58,8 @@ private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOExceptio String tEnableCondition = null; boolean tInvertCondition = false; boolean tHidden = false; + boolean tUseSolderFluids = false; + int tSolderAmount = 0; aReader.beginObject(); while (aReader.hasNext()) { String tName = aReader.nextName(); @@ -85,13 +91,18 @@ private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOExceptio tFluidName = aReader.nextString(); } else if ("amount".equals(tSubName)) { tFluidAmount = aReader.nextInt(); + } else if ("solderFluids".equals(tSubName)) { + tUseSolderFluids = true; + tSolderAmount = aReader.nextInt(); } } aReader.endObject(); - if (FluidRegistry.isFluidRegistered(tFluidName)) { - tFluidInputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); - } else { - GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); + if (!tUseSolderFluids) { + if (FluidRegistry.isFluidRegistered(tFluidName)) { + tFluidInputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); + } else { + GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); + } } } aReader.endArray(); @@ -169,7 +180,18 @@ private static GT_MachineRecipe readRecipe(JsonReader aReader) throws IOExceptio rRecipe.setInvertCondition(tInvertCondition); rRecipe.setHidden(tHidden); if (rRecipe.isValidRecipe()) { - return rRecipe; + if (tUseSolderFluids && (tSolderAmount > 0)) { + FluidStack[] tSolderFluids = getSolderFluids(); + List tList = new ArrayList<>(tSolderFluids.length); + for (FluidStack tSolderFluid : tSolderFluids) { + GT_MachineRecipe tRecipe = rRecipe.copy(); + tRecipe.mFluidInputs = new FluidStack[]{tSolderFluid.copy()}; + tRecipe.mFluidInputs[0].amount *= tSolderAmount; + tList.add(tRecipe); + } + return tList; + } + return Collections.singletonList(rRecipe); } } return null; @@ -210,7 +232,7 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { String tAltEntryName = aReader.nextName(); if ("item".equals(tAltEntryName)) { tAltStack = StringtoItemStack(aReader.nextString()); - } else if ("ore".equals(tAltEntryName)) { + } else if ("ore".equals(tAltEntryName) || "oredict".equals(tAltEntryName)) { tAltOreName = aReader.nextString(); }else if ("nbt".equals(tAltEntryName)) { tAltNbtData = readNbt(aReader); @@ -247,9 +269,7 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { tAlt.stackSize = tCount; } GT_RecipeInputAlts rInput = new GT_RecipeInputAlts(tAlts.toArray(new ItemStack[0])); - System.out.println("Input with alts, before setCount: " + rInput); rInput.setCount(tCount); - System.out.println("Input with alts, after setCount: " + rInput); return rInput; } else if (tStack != null) { tStack.stackSize = tCount; @@ -406,5 +426,22 @@ private static NBTTagCompound readNbt(JsonReader aReader) throws IOException { aReader.endArray(); return rNBT; } + + private static FluidStack[] sSolderFluids = null; + + private static FluidStack[] getSolderFluids() { + if (sSolderFluids != null) { + return sSolderFluids; + } + List tSolderFluids = new ArrayList<>(3); + for (Materials tMat : Materials.values()) { + if (tMat.mStandardMoltenFluid != null && tMat.contains(SubTag.SOLDERING_MATERIAL) && !(GregTech_API.mUseOnlyGoodSolderingMaterials && !tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD))) { + int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; + tSolderFluids.add(tMat.getMolten(tMultiplier)); + } + } + sSolderFluids = tSolderFluids.toArray(new FluidStack[0]); + return sSolderFluids; + } } diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index 59272c0434..4b658e21c7 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -8,7 +8,6 @@ import gregtech.api.GregTech_API; import gregtech.api.enums.*; import gregtech.api.objects.MaterialStack; -import gregtech.api.recipes.GT_MachineRecipe; import gregtech.api.recipes.GT_RecipeListJsonReader; import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; @@ -17,48 +16,43 @@ import ic2.api.recipe.ILiquidHeatExchangerManager.HeatExchangeProperty; import ic2.api.recipe.Recipes; import ic2.core.Ic2Items; +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.io.InputStream; import java.io.InputStreamReader; +import java.io.PrintWriter; import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; import mods.railcraft.common.items.RailcraftToolItems; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; import net.minecraftforge.common.ForgeHooks; -import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import java.util.Arrays; +import java.util.HashMap; import java.util.Iterator; -import java.util.List; import java.util.Map; +import net.minecraft.client.Minecraft; +import net.minecraft.server.MinecraftServer; public class GT_MachineRecipeLoader implements Runnable { - private final MaterialStack[][] mAlloySmelterList = { - {new MaterialStack(Materials.Tetrahedrite, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 3L)}, - {new MaterialStack(Materials.Tetrahedrite, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 3L)}, - {new MaterialStack(Materials.Copper, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 4L)}, - {new MaterialStack(Materials.Copper, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 4L)}, - {new MaterialStack(Materials.Copper, 1L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Cupronickel, 2L)}, - {new MaterialStack(Materials.Copper, 1L), new MaterialStack(Materials.Redstone, 4L), new MaterialStack(Materials.RedAlloy, 1L)}, - {new MaterialStack(Materials.AnnealedCopper, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 4L)}, - {new MaterialStack(Materials.AnnealedCopper, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 4L)}, - {new MaterialStack(Materials.AnnealedCopper, 1L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Cupronickel, 2L)}, - {new MaterialStack(Materials.AnnealedCopper, 1L), new MaterialStack(Materials.Redstone, 4L), new MaterialStack(Materials.RedAlloy, 1L)}, - {new MaterialStack(Materials.Iron, 1L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.TinAlloy, 2L)}, - {new MaterialStack(Materials.WroughtIron, 1L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.TinAlloy, 2L)}, - {new MaterialStack(Materials.Iron, 2L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Invar, 3L)}, - {new MaterialStack(Materials.WroughtIron, 2L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Invar, 3L)}, - {new MaterialStack(Materials.Tin, 9L), new MaterialStack(Materials.Antimony, 1L), new MaterialStack(Materials.SolderingAlloy, 10L)}, - {new MaterialStack(Materials.Lead, 4L), new MaterialStack(Materials.Antimony, 1L), new MaterialStack(Materials.BatteryAlloy, 5L)}, - {new MaterialStack(Materials.Gold, 1L), new MaterialStack(Materials.Silver, 1L), new MaterialStack(Materials.Electrum, 2L)}, - {new MaterialStack(Materials.Magnesium, 1L), new MaterialStack(Materials.Aluminium, 2L), new MaterialStack(Materials.Magnalium, 3L)}, - {new MaterialStack(Materials.Silver, 1L), new MaterialStack(Materials.Nikolite, 4L), new MaterialStack(Materials.BlueAlloy, 1L)}, - {new MaterialStack(Materials.Boron, 1L), new MaterialStack(Materials.Glass, 7L), new MaterialStack(Materials.BorosilicateGlass, 8L)}}; private final static String aTextAE = "appliedenergistics2"; private final static String aTextAEMM = "item.ItemMultiMaterial"; private final static String aTextForestry = "Forestry"; private final static String aTextEBXL = "ExtrabiomesXL"; private final static String aTextTCGTPage = "gt.research.page.1."; private final static Boolean isNEILoaded = Loader.isModLoaded("NotEnoughItems"); + // found in an old Minecraft Forge forum post + public static File getMcDir() { + if (MinecraftServer.getServer() != null && MinecraftServer.getServer().isDedicatedServer()) { + return new File("."); + } + return Minecraft.getMinecraft().mcDataDir; + } + public void run() { GT_Log.out.println("GT_Mod: Adding non-OreDict Machine Recipes."); try { @@ -72,12 +66,80 @@ public void run() { GT_Utility.removeIC2BottleRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("UranFuel", 1), ic2.api.recipe.Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorUraniumSimple", 1, 1)); GT_Utility.removeIC2BottleRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("MOXFuel", 1), ic2.api.recipe.Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorMOXSimple", 1, 1)); + Map tRecipeFileMap = new HashMap<>(30); + tRecipeFileMap.put(GT_RecipeMap.sAlloySmelterRecipes, "alloy_smelter.json"); + tRecipeFileMap.put(GT_RecipeMap.sAssemblerRecipes, "assembler.json"); + tRecipeFileMap.put(GT_RecipeMap.sAutoclaveRecipes, "autoclave.json"); + tRecipeFileMap.put(GT_RecipeMap.sBlastRecipes, "blast_furnace.json"); + tRecipeFileMap.put(GT_RecipeMap.sBrewingRecipes, "brewery.json"); + tRecipeFileMap.put(GT_RecipeMap.sCentrifugeRecipes, "centrifuge.json"); + tRecipeFileMap.put(GT_RecipeMap.sChemicalBathRecipes, "chemical_bath.json"); + tRecipeFileMap.put(GT_RecipeMap.sChemicalRecipes, "chemical_reactor.json"); + tRecipeFileMap.put(GT_RecipeMap.sMultiblockChemicalRecipes, "large_chemical_reactor.json"); + tRecipeFileMap.put(GT_RecipeMap.sCircuitAssemblerRecipes, "circuit_assembler.json"); + tRecipeFileMap.put(GT_RecipeMap.sElectrolyzerRecipes, "electrolyzer.json"); + tRecipeFileMap.put(GT_RecipeMap.sExtruderRecipes, "extruder.json"); + tRecipeFileMap.put(GT_RecipeMap.sFermentingRecipes, "fermenter.json"); + tRecipeFileMap.put(GT_RecipeMap.sFluidCannerRecipes, "fluid_canner.json"); + tRecipeFileMap.put(GT_RecipeMap.sFluidExtractionRecipes, "fluid_extractor.json"); + tRecipeFileMap.put(GT_RecipeMap.sFluidHeaterRecipes, "fluid_heater.json"); + tRecipeFileMap.put(GT_RecipeMap.sFluidSolidificationRecipes, "fluid_solidifier.json"); + tRecipeFileMap.put(GT_RecipeMap.sHammerRecipes, "forge_hammer.json"); + tRecipeFileMap.put(GT_RecipeMap.sPressRecipes, "forming_press.json"); + tRecipeFileMap.put(GT_RecipeMap.sFusionRecipes, "fusion_reactor.json"); + tRecipeFileMap.put(GT_RecipeMap.sLaserEngraverRecipes, "laser_engraver.json"); + tRecipeFileMap.put(GT_RecipeMap.sMixerRecipes, "mixer.json"); + tRecipeFileMap.put(GT_RecipeMap.sSifterRecipes, "sifter.json"); + tRecipeFileMap.put(GT_RecipeMap.sSlicerRecipes, "slicer.json"); + tRecipeFileMap.put(GT_RecipeMap.sWiremillRecipes, "wiremill.json"); + + File tConfigRecipeFolder = new File(getMcDir(), "config" + File.separator + "GregTech" + File.separator + "recipes"); try { - GT_RecipeMap.sFluidExtractionRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fluid_extractor.json"))))); + tConfigRecipeFolder.mkdirs(); } catch (Throwable e) { + GT_Log.err.println("Failed to create config/GregTech/recipes folder."); e.printStackTrace(GT_Log.err); } + InputStream tExplanation = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/Explanation.cfg"); + if (tExplanation != null) { + try (BufferedReader tReader = new BufferedReader(new InputStreamReader(tExplanation)); PrintWriter tWriter = new PrintWriter(new FileWriter(new File(tConfigRecipeFolder, "Explanation.txt")))) { + String tLine = tReader.readLine(); + while (tLine != null) { + tWriter.println(tLine); + tLine = tReader.readLine(); + } + String[] tJsonFileList = tRecipeFileMap.values().toArray(new String[0]); + Arrays.sort(tJsonFileList); + for (String tFileName : tJsonFileList) { + tWriter.println(tFileName); + } + } catch (IOException e) { + e.printStackTrace(GT_Log.err); + } + } + for (Map.Entry tEntry : tRecipeFileMap.entrySet()) { + try { + File tFile = new File(tConfigRecipeFolder, tEntry.getValue()); + if (tFile.isFile()) { + FileReader tFileReader = new FileReader(tFile); + tEntry.getKey().addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(tFileReader))); + tFileReader.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading file " + tEntry.getValue()); + e.printStackTrace(GT_Log.err); + } + try { + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/" + tEntry.getValue()); + if (tStream != null) { + tEntry.getKey().addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream)))); + tStream.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading resource " + tEntry.getValue()); + e.printStackTrace(GT_Log.err); + } + } try { GT_DummyWorld tWorld = (GT_DummyWorld) GT_Values.DW; while (tWorld.mRandom.mIterationStep > 0) { @@ -100,50 +162,6 @@ public void run() { GT_Values.RA.addPrinterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), FluidRegistry.getFluidStack("squidink", 144), ItemList.Tool_DataStick.getWithName(0L, "With Scanned Book Data", new Object[0]), ItemList.Paper_Printed_Pages.get(1L, new Object[0]), 400, 2); GT_Values.RA.addPrinterRecipe(new ItemStack(Items.map, 1, 32767), FluidRegistry.getFluidStack("squidink", 144), ItemList.Tool_DataStick.getWithName(0L, "With Scanned Map Data", new Object[0]), new ItemStack(Items.filled_map, 1, 0), 400, 2); GT_Values.RA.addPrinterRecipe(new ItemStack(Items.book, 1, 32767), FluidRegistry.getFluidStack("squidink", 144), GT_Values.NI, GT_Utility.getWrittenBook("Manual_Printer", ItemList.Book_Written_01.get(1L, new Object[0])), 400, 2); - try { - GT_RecipeMap.sMixerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/mixer.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sExtruderRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/extruder.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sFluidCannerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fluid_canner.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sFluidSolidificationRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fluid_solidifier.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sChemicalBathRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_bath.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - List tChemicalRecipes = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_reactor.json")))); - GT_RecipeMap.sChemicalRecipes.addAll(tChemicalRecipes); - GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tChemicalRecipes); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sAssemblerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/assembler.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } for (int j = 0; j < Dyes.dyeRed.getSizeOfFluidList(); j++) { GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.RedAlloy, 1L), Dyes.dyeRed.getFluidDye(j, 72L), GT_ModHandler.getModItem("BuildCraft|Transport", "pipeWire", 4L, 0), GT_Values.NI, GT_Values.NI, null, 32, 16); @@ -168,94 +186,6 @@ public void run() { } } - try { - GT_RecipeMap.sAutoclaveRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/autoclave.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sCentrifugeRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/centrifuge.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sElectrolyzerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/electrolyzer.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sSlicerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/slicer.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sFluidHeaterRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fluid_heater.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sAlloySmelterRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/alloy_smelter.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sLaserEngraverRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/laser_engraver.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sPressRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/forming_press.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sBlastRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/blast_furnace.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sWiremillRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/wiremill.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sBrewingRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/brewery.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sHammerRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/forge_hammer.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sSifterRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/sifter.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - try { - GT_RecipeMap.sFusionRecipes.addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader( - GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/fusion_reactor.json"))))); - } catch (Throwable e) { - e.printStackTrace(GT_Log.err); - } - - - - //Circuit Recipes!!! Object[] o = new Object[0]; GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Board_Coated.get(3, o), new Object[]{" R ","PPP"," R ",'P',GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Wood, 1),'R',ItemList.IC2_Resin.get(1, o)}); @@ -289,74 +219,6 @@ public void run() { GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Good.get(1,o), new Object[]{"IVC","VDV","CVI",'D',ItemList.Circuit_Parts_Diode.get(1,o),'C',GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.RedAlloy, 1),'V', Ic2Items.electronicCircuit ,'I',ItemList.IC2_Item_Casing_Steel.get(1,o)}); - for (Materials tMat : Materials.values()) { - if (tMat.mStandardMoltenFluid != null && tMat.contains(SubTag.SOLDERING_MATERIAL) && !(GregTech_API.mUseOnlyGoodSolderingMaterials && !tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD))) { - int tMultiplier = tMat.contains(SubTag.SOLDERING_MATERIAL_GOOD) ? 1 : tMat.contains(SubTag.SOLDERING_MATERIAL_BAD) ? 4 : 2; - //Circuit soldering - //Integraded Circuits - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Phenolic.get(1,o),ItemList.Circuit_Chip_ILC.get(1,o),ItemList.Circuit_Parts_Resistor.get(2,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 4)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Basic.get(1,o), 200, 8); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Phenolic.get(1,o),ItemList.Circuit_Chip_ILC.get(1,o),ItemList.Circuit_Parts_ResistorSMD.get(2,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 4)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Basic.get(1,o), 200, 8); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Phenolic.get(1,o),ItemList.Circuit_Basic.get(3,o),ItemList.Circuit_Parts_Resistor.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Gold, 8)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Integrated_Good.get(1,o), 400, 16); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Phenolic.get(1,o),ItemList.Circuit_Basic.get(3,o),ItemList.Circuit_Parts_ResistorSMD.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Gold, 8)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Integrated_Good.get(1,o), 400, 16); - - //Advanced circuit - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Integrated_Good.get(2,new Object[0]),ItemList.Circuit_Chip_ILC.get(3,new Object[0]),ItemList.Circuit_Chip_Ram.get(1,new Object[0]),ItemList.Circuit_Parts_Transistor.get(4,new Object[0]),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 16)},tMat.getMolten(144L * tMultiplier / 2L), GT_ModHandler.getIC2Item("advancedCircuit", 1L), 800, 28); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Integrated_Good.get(2,new Object[0]),ItemList.Circuit_Chip_ILC.get(3,new Object[0]),ItemList.Circuit_Chip_Ram.get(1,new Object[0]),ItemList.Circuit_Parts_TransistorSMD.get(4,new Object[0]),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 16)},tMat.getMolten(144L * tMultiplier / 2L), GT_ModHandler.getIC2Item("advancedCircuit", 1L), 800, 28); - - //Integrated Processors - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Chip_CPU.get(4,o),ItemList.Circuit_Parts_Resistor.get(4,o),ItemList.Circuit_Parts_Capacitor.get(4,o),ItemList.Circuit_Parts_Transistor.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Microprocessor.get(4,o), 200, 60); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Chip_CPU.get(1,o),ItemList.Circuit_Parts_Resistor.get(2,o),ItemList.Circuit_Parts_Capacitor.get(2,o),ItemList.Circuit_Parts_Transistor.get(2,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.RedAlloy, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Processor.get(1,o), 200, 60); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Processor.get(2,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_Capacitor.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.RedAlloy, 12)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Computer.get(1,o), 400, 90); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Processor.get(1,o),ItemList.Circuit_Chip_NAND.get(32,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.RedAlloy, 8),GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Plastic, 4)},tMat.getMolten(144L * tMultiplier), ItemList.Tool_DataStick.get(1,o), 400, 90); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(2,o),ItemList.Circuit_Advanced.get(3,o),ItemList.Circuit_Parts_Diode.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Data.get(1,o), 400, 90); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Aluminium, 1),ItemList.Circuit_Data.get(4,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_Capacitor.get(24,o),ItemList.Circuit_Chip_Ram.get(16,o),GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 12)},tMat.getMolten(144L * tMultiplier*2), ItemList.Circuit_Elite.get(1,o), 1600, 480); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Chip_CPU.get(4,o),ItemList.Circuit_Parts_ResistorSMD.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(4,o),ItemList.Circuit_Parts_TransistorSMD.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Microprocessor.get(4,o), 200, 60); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Chip_CPU.get(1,o),ItemList.Circuit_Parts_ResistorSMD.get(2,o),ItemList.Circuit_Parts_CapacitorSMD.get(2,o),ItemList.Circuit_Parts_TransistorSMD.get(2,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.RedAlloy, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Processor.get(1,o), 200, 60); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Processor.get(2,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.RedAlloy, 12)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Computer.get(1,o), 400, 80); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(2,o),ItemList.Circuit_Advanced.get(3,o),ItemList.Circuit_Parts_DiodeSMD.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Data.get(1,o), 400, 90); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Aluminium, 1),ItemList.Circuit_Data.get(4,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(24,o),ItemList.Circuit_Chip_Ram.get(16,o),GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 12)},tMat.getMolten(144L * tMultiplier*2), ItemList.Circuit_Elite.get(1,o), 1600, 480); - //Nanotech Circuits - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Epoxy.get(1,o),ItemList.Circuit_Chip_NanoCPU.get(1,o),ItemList.Circuit_Parts_ResistorSMD.get(2,o),ItemList.Circuit_Parts_CapacitorSMD.get(2,o),ItemList.Circuit_Parts_TransistorSMD.get(2,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Nanoprocessor.get(1,o), 200, 600); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Epoxy.get(1,o),ItemList.Circuit_Nanoprocessor.get(2,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Nanocomputer.get(1,o), 400, 600); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Epoxy.get(1,o),ItemList.Circuit_Nanoprocessor.get(1,o),ItemList.Circuit_Chip_Ram.get(4,o),ItemList.Circuit_Chip_NOR.get(32,o),ItemList.Circuit_Chip_NAND.get(64,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 32)},tMat.getMolten(144L * tMultiplier), ItemList.Tool_DataOrb.get(1,o), 400, 1200); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Epoxy.get(2,o),ItemList.Circuit_Nanocomputer.get(3,o),ItemList.Circuit_Parts_DiodeSMD.get(4,o),ItemList.Circuit_Chip_NOR.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Elitenanocomputer.get(1,o), 400, 600); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Aluminium, 1),ItemList.Circuit_Elitenanocomputer.get(4,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(24,o),ItemList.Circuit_Chip_Ram.get(16,o),GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 12)},tMat.getMolten(144L * tMultiplier*2), ItemList.Circuit_Master.get(1,o), 1600, 1920); - //Quantum Circuits - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Fiberglass.get(1,o),ItemList.Circuit_Chip_QuantumCPU.get(1,o),ItemList.Circuit_Chip_NanoCPU.get(1,o),ItemList.Circuit_Parts_CapacitorSMD.get(2,o),ItemList.Circuit_Parts_TransistorSMD.get(2,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Quantumprocessor.get(1,o), 200, 2400); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Fiberglass.get(1,o),ItemList.Circuit_Quantumprocessor.get(2,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Quantumcomputer.get(1,o), 400, 2400); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Fiberglass.get(2,o),ItemList.Circuit_Quantumcomputer.get(3,o),ItemList.Circuit_Parts_DiodeSMD.get(4,o),ItemList.Circuit_Chip_NOR.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Masterquantumcomputer.get(1,o), 400, 2400); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Aluminium, 1),ItemList.Circuit_Masterquantumcomputer.get(4,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(24,o),ItemList.Circuit_Chip_Ram.get(16,o),GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 12)},tMat.getMolten(144L * tMultiplier*2), ItemList.Circuit_Quantummainframe.get(1,o), 1600, 7680); - //Crystallized Circuits - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Multifiberglass.get(1,o),ItemList.Circuit_Chip_CrystalCPU.get(1,o),ItemList.Circuit_Chip_NanoCPU.get(1,o),ItemList.Circuit_Parts_CapacitorSMD.get(2,o),ItemList.Circuit_Parts_TransistorSMD.get(2,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.NiobiumTitanium, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Crystalprocessor.get(1,o), 200, 9600); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Multifiberglass.get(1,o),ItemList.Circuit_Crystalprocessor.get(2,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.NiobiumTitanium, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Crystalcomputer.get(1,o), 400, 9600); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Multifiberglass.get(2,o),ItemList.Circuit_Crystalcomputer.get(3,o),ItemList.Circuit_Parts_DiodeSMD.get(4,o),ItemList.Circuit_Chip_NOR.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.NiobiumTitanium, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Ultimatecrystalcomputer.get(1,o), 400, 9600); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Aluminium, 1),ItemList.Circuit_Ultimatecrystalcomputer.get(4,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(24,o),ItemList.Circuit_Chip_Ram.get(16,o),GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Superconductor, 12)},tMat.getMolten(144L * tMultiplier*2), ItemList.Circuit_Crystalmainframe.get(1,o), 1600, 30720); - //Wetware Circuits - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Chip_NeuroCPU.get(1,o),ItemList.Circuit_Chip_CrystalCPU.get(1,o), ItemList.Circuit_Chip_NanoCPU.get(1,o), ItemList.Circuit_Parts_CapacitorSMD.get(2,o),ItemList.Circuit_Parts_TransistorSMD.get(2,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.YttriumBariumCuprate, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Neuroprocessor.get(1,o), 200, 38400); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Wetware.get(1,o),ItemList.Circuit_Neuroprocessor.get(2,o),ItemList.Circuit_Parts_Coil.get(4,o),ItemList.Circuit_Parts_CapacitorSMD.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.YttriumBariumCuprate, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Wetwarecomputer.get(1,o), 400, 38400); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Wetware.get(2,o),ItemList.Circuit_Wetwarecomputer.get(3,o),ItemList.Circuit_Parts_DiodeSMD.get(4,o),ItemList.Circuit_Chip_NOR.get(4,o),ItemList.Circuit_Chip_Ram.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.YttriumBariumCuprate, 6)},tMat.getMolten(144L * tMultiplier), ItemList.Circuit_Wetwaresupercomputer.get(1,o), 400, 38400); - - //SoC - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Chip_SoC.get(4,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Microprocessor.get(4,o), 50, 600); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Chip_SoC.get(1,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.RedAlloy, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Processor.get(1,o), 50, 2400); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Plastic.get(1,o),ItemList.Circuit_Chip_SoC2.get(1,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Electrum, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Nanoprocessor.get(1,o), 50, 9600); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Epoxy.get(1,o),ItemList.Circuit_Chip_SoC2.get(1,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Quantumprocessor.get(1,o), 50, 38400); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Fiberglass.get(1,o),ItemList.Circuit_Chip_CrystalSoC.get(1,o),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.NiobiumTitanium, 2)},tMat.getMolten(144L * tMultiplier / 2L), ItemList.Circuit_Crystalprocessor.get(1,o), 50, 153600); - - //Lapoorbs - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Fiberglass.get(1,o),ItemList.Circuit_Chip_PIC.get(4,o), ItemList.Circuit_Parts_Crystal_Chip_Master.get(18L,o),ItemList.Circuit_Chip_NanoCPU.get(1,o), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 16)},tMat.getMolten(144L * tMultiplier), ItemList.Energy_LapotronicOrb.get(1,o), 512, 1024); - GT_Values.RA.addCircuitAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Fiberglass.get(1,o),ItemList.Circuit_Chip_HPIC.get(4,o), ItemList.Energy_LapotronicOrb.get(8L,o),ItemList.Circuit_Chip_QuantumCPU.get(1,o), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Platinum, 16),GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Europium, 4L)},tMat.getMolten(144L * tMultiplier), ItemList.Energy_LapotronicOrb2.get(1,o), 1024, 4096); - - for (ItemStack tPlate : new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L)}) { - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.lever, 1, 32767), tPlate, tMat.getMolten(144L * tMultiplier / 2L), ItemList.Cover_Controller.get(1L, new Object[0]), 800, 16); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.redstone_torch, 1, 32767), tPlate, tMat.getMolten(144L * tMultiplier / 2L), ItemList.Cover_ActivityDetector.get(1L, new Object[0]), 800, 16); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.heavy_weighted_pressure_plate, 1, 32767), tPlate, tMat.getMolten(144L * tMultiplier / 2L), ItemList.Cover_FluidDetector.get(1L, new Object[0]), 800, 16); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.light_weighted_pressure_plate, 1, 32767), tPlate, tMat.getMolten(144L * tMultiplier / 2L), ItemList.Cover_ItemDetector.get(1L, new Object[0]), 800, 16); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getIC2Item("ecMeter", 1L), tPlate, tMat.getMolten(144L * tMultiplier / 2L), ItemList.Cover_EnergyDetector.get(1L, new Object[0]), 800, 16); - } - } - } - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer.get(16, new Object[0]),null, 200, 8); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot2.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer2.get(32, new Object[0]),null, 400, 64); GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot3.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer3.get(64, new Object[0]),null, 800, 384); @@ -2002,20 +1864,6 @@ private void run2(){ GT_ModHandler.removeFurnaceSmelting(GT_ModHandler.getModItem("Magneticraft", "item.rubble", 1, 21)); } - for (MaterialStack[] tMats : this.mAlloySmelterList) { - ItemStack tDust1 = GT_OreDictUnificator.get(OrePrefixes.dust, tMats[0].mMaterial, tMats[0].mAmount); - ItemStack tDust2 = GT_OreDictUnificator.get(OrePrefixes.dust, tMats[1].mMaterial, tMats[1].mAmount); - ItemStack tIngot1 = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[0].mMaterial, tMats[0].mAmount); - ItemStack tIngot2 = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[1].mMaterial, tMats[1].mAmount); - ItemStack tOutputIngot = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[2].mMaterial, tMats[2].mAmount); - if (tOutputIngot != GT_Values.NI) { - GT_ModHandler.addAlloySmelterRecipe(tIngot1, tDust2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); - GT_ModHandler.addAlloySmelterRecipe(tIngot1, tIngot2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); - GT_ModHandler.addAlloySmelterRecipe(tDust1, tIngot2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); - GT_ModHandler.addAlloySmelterRecipe(tDust1, tDust2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); - } - } - if(!GregTech_API.mIC2Classic){ try { Map tLiqExchange = ic2.api.recipe.Recipes.liquidCooldownManager.getHeatExchangeProperties(); diff --git a/src/main/resources/assets/gregtech/recipes/Explanation.cfg b/src/main/resources/assets/gregtech/recipes/Explanation.cfg new file mode 100644 index 0000000000..11da3d4639 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/Explanation.cfg @@ -0,0 +1,40 @@ +Technical explanation of JSON elements used in machine recipes: +Top level is an array of recipe objects. +Each recipe object allows the following keys, in any order: +"inputs" - an array of the items input to the machine, each of which allows the following keys: + "ore" or "oredict" - an oredictionary name such as "ingotIron". + "item" - an internal item name, such as "minecraft:dirt" or "gregtech:gt.metaitem.02:27513" + also allows a special fake modid "GTItemList" to reference an item from GregTech's ItemList enum, + which is often more readable. The "*" character can be used as a wildcard for metadata. + "alts" - an array of oredictionary and/or item specifiers that can be used interchangeably (or even mix and matched, if the machine has enough slots) in this recipe. + "count" - the number of copies of the item (or oredictionary entry) needed for the recipe. Can be 0 to indicate the item should only be required in the slot, but not consumed. + "nbt" - NBT tags required for the input item. Details below. + "comment", "displayName" - string value, ignored by the recipe reader, but may help make the recipe more human-readable in case the item's internal name is cryptic. +"outputs" - an array of the items output by the machine, similar to "inputs", but does not allow "alts", and allows the following additional key: + "chance" - for a given output, a floating point value clamped between 0.0 and 1.0 indicating how likely the output should be. + Omission is the same as 1.0 (always output). Granularity is 0.0001 or 0.01%. +"inputFluids" or "fluidInputs" - an array of fluid objects input to the machine, with the following keys: + "fluid" - the name of the fluid, as registered in the Forge fluid registry. + "amount" - the volume in liters (aka millibuckets) of fluid to use. + "solderFluids" - special value for input fluids, specify the volume of molten soldering alloy the recipe should use, and if configuration allows, + additional recipes for lower-quality soldering fluids (molten tin and molten lead) will automatically be generated with correspondingly higher fluid volumes. +"outputFluids" or "fluidOutputs" - an array of fluid objects output by the machine, defined similar to "inputFluids". +"duration" - integer value for the time in ticks to complete the recipe at default voltage. +"EUt" - integer value for the EU/t required for the recipe. +"specialValue" - string, can be "lowgravity" or "cleanroom" to indicate those requirements for the recipe, otherwise the string will be parsed as an integer +and the meaning may depend on the machine it is used in. +"blastTemp" - integer value for the temperature required in a blast furnace. +"startingCost" - integer value for the EU required to start a fusion reactor recipe. +"enabled" - if false, disables the recipe. +"enableCondition" - string to indicate the recipe should be enabled based on a specified condition, such as whether a certain mod is loaded, + a fluid exists, or a material has a "parent mod". +"hidden" - if true, hides the recipe from NEI. + +NBT tags: +In an input or output item (or even an input alternate), these can be specified as an array of objects, with "tag"/"tagName"/"name"/"key", "type", and "value". +These should all be given as strings in the JSON, and can technically be in any order, but the "type" key indicates how the recipe will interpret "value". +"type" can be "boolean", "byte", "double", "float", "int", "long", "short", or "string" (case-insensitive). +Inputs will check for NBT tags specified in the recipe, but other tags on provided items will be ignored. +Outputs will have the NBT tags specified in the recipe. + +The following files in this folder will be read for recipes for the corresponding machines, if the files exist: \ No newline at end of file diff --git a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json index 9f6f76f11b..5ccb947ec1 100644 --- a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json +++ b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json @@ -15,4 +15,62 @@ "outputs":[{"ore": "ingotSoularium", "count": 1}], "duration":400, "EUt":24}, + +{"inputs":[{"alts":[{"ore": "dustTetrahedrite"}, {"ore": "ingotTetrahedrite"}], "count": 3}, {"alts":[{"ore": "dustTin"}, {"ore": "ingotTin"}], "count": 1}], +"outputs":[{"ore": "ingotBronze", "count": 3}], +"duration": 150, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustTetrahedrite"}, {"ore": "ingotTetrahedrite"}], "count": 3}, {"alts":[{"ore": "dustZinc"}, {"ore": "ingotZinc"}], "count": 1}], +"outputs":[{"ore": "ingotBrass", "count": 3}], +"duration": 150, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustCopper"}, {"ore": "ingotCopper"}, {"ore": "dustAnnealedCopper"}, {"ore": "ingotAnnealedCopper"}], "count": 3}, {"alts":[{"ore": "dustTin"}, {"ore": "ingotTin"}], "count": 1}], +"outputs":[{"ore": "ingotBronze", "count": 4}], +"duration": 200, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustCopper"}, {"ore": "ingotCopper"}, {"ore": "dustAnnealedCopper"}, {"ore": "ingotAnnealedCopper"}], "count": 3}, {"alts":[{"ore": "dustZinc"}, {"ore": "ingotZinc"}], "count": 1}], +"outputs":[{"ore": "ingotBrass", "count": 4}], +"duration": 200, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustCopper"}, {"ore": "ingotCopper"}, {"ore": "dustAnnealedCopper"}, {"ore": "ingotAnnealedCopper"}], "count": 1}, {"alts":[{"ore": "dustNickel"}, {"ore": "ingotNickel"}], "count": 1}], +"outputs":[{"ore": "ingotCupronickel", "count": 2}], +"duration": 100, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustCopper"}, {"ore": "ingotCopper"}, {"ore": "dustAnnealedCopper"}, {"ore": "ingotAnnealedCopper"}], "count": 1}, {"alts":[{"ore": "dustRedstone"}, {"ore": "ingotRedstone"}], "count": 4}], +"outputs":[{"ore": "ingotRedAlloy", "count": 1}], +"duration": 50, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustIron"}, {"ore": "ingotIron"}, {"ore": "dustWroughtIron"}, {"ore": "ingotWroughtIron"}], "count": 1}, {"alts":[{"ore": "dustTin"}, {"ore": "ingotTin"}], "count": 1}], +"outputs":[{"ore": "ingotTinAlloy", "count": 2}], +"duration": 100, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustIron"}, {"ore": "ingotIron"}, {"ore": "dustWroughtIron"}, {"ore": "ingotWroughtIron"}], "count": 2}, {"alts":[{"ore": "dustNickel"}, {"ore": "ingotNickel"}], "count": 1}], +"outputs":[{"ore": "ingotInvar", "count": 3}], +"duration": 150, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustTin"}, {"ore": "ingotTin"}], "count": 9}, {"alts":[{"ore": "dustAntimony"}, {"ore": "ingotAntimony"}], "count": 1}], +"outputs":[{"ore": "ingotSolderingAlloy", "count": 10}], +"duration": 500, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustLead"}, {"ore": "ingotLead"}], "count": 4}, {"alts":[{"ore": "dustAntimony"}, {"ore": "ingotAntimony"}], "count": 1}], +"outputs":[{"ore": "ingotBatteryAlloy", "count": 5}], +"duration": 250, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustGold"}, {"ore": "ingotGold"}], "count": 1}, {"alts":[{"ore": "dustSilver"}, {"ore": "ingotSilver"}], "count": 1}], +"outputs":[{"ore": "ingotElectrum", "count": 2}], +"duration": 100, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustMagnesium"}, {"ore": "ingotMagnesium"}], "count": 1}, {"alts":[{"ore": "dustAluminium"}, {"ore": "ingotAluminium"}], "count": 2}], +"outputs":[{"ore": "ingotMagnalium", "count": 3}], +"duration": 150, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustSilver"}, {"ore": "ingotSilver"}], "count": 1}, {"alts":[{"ore": "dustNikolite"}, {"ore": "ingotNikolite"}], "count": 4}], +"outputs":[{"ore": "ingotBlueAlloy", "count": 1}], +"duration": 50, +"EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustBoron"}, {"ore": "ingotBoron"}], "count": 1}, {"alts":[{"ore": "dustGlass"}, {"ore": "ingotGlass"}], "count": 7}], +"outputs":[{"ore": "ingotBorosilicateGlass", "count": 8}], +"duration": 400, +"EUt": 16}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/assembler.json b/src/main/resources/assets/gregtech/recipes/assembler.json index e282673ce4..c1099090d4 100644 --- a/src/main/resources/assets/gregtech/recipes/assembler.json +++ b/src/main/resources/assets/gregtech/recipes/assembler.json @@ -572,4 +572,31 @@ "outputs":[{"item": "GTItemList:Electric_Pump_IV", "count": 1}], "duration": 20, "EUt": 480}, + +{"inputs":[{"item": "minecraft:lever", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_Controller", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:redstone_torch", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_ActivityDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:heavy_weighted_pressure_plate", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_FluidDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:light_weighted_pressure_plate", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_ItemDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "IC2:itemToolMEter", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_EnergyDetector", "count": 1}], +"duration": 800, +"EUt": 16}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/circuit_assembler.json b/src/main/resources/assets/gregtech/recipes/circuit_assembler.json new file mode 100644 index 0000000000..e3bf506204 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/circuit_assembler.json @@ -0,0 +1,171 @@ +[ + +{"inputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}, {"item": "GTItemList:Circuit_Chip_ILC", "count": 1}, {"alts": [{"item": "GTItemList:Circuit_Parts_Resistor"}, {"item": "GTItemList:Circuit_Parts_ResistorSMD"}], "count": 2}, {"ore": "wireFineCopper", "count": 4}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Basic", "count": 1}], +"duration":200, +"EUt":8}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}, {"item": "GTItemList:Circuit_Basic", "count": 3}, {"alts": [{"item": "GTItemList:Circuit_Parts_Resistor"}, {"item": "GTItemList:Circuit_Parts_ResistorSMD"}], "count": 4}, {"ore": "wireFineGold", "count": 8}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Integrated_Good", "count": 1}], +"duration":400, +"EUt":16}, + +{"inputs":[{"item": "GTItemList:Circuit_Integrated_Good", "count": 2}, {"item": "GTItemList:Circuit_Chip_ILC", "count": 3}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 1}, {"alts": [{"item": "GTItemList:Circuit_Parts_Transistor"}, {"item": "GTItemList:Circuit_Parts_TransistorSMD"}], "count": 4}, {"ore": "wireFineElectrum", "count": 16}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "IC2:itemPartCircuitAdv", "count": 1}], +"duration":800, +"EUt":28}, + +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_CPU", "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Resistor"}, {"item": "GTItemList:Circuit_Parts_ResistorSMD"}], "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Capacitor"}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD"}], "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Transistor"}, {"item": "GTItemList:Circuit_Parts_TransistorSMD"}], "count": 4}, {"ore": "wireFineCopper", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Microprocessor", "count": 4}], +"duration":200, +"EUt":60}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_CPU", "count": 1}, {"alts": [{"item": "GTItemList:Circuit_Parts_Resistor"}, {"item": "GTItemList:Circuit_Parts_ResistorSMD"}], "count": 2}, {"alts": [{"item": "GTItemList:Circuit_Parts_Capacitor"}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD"}], "count": 2}, {"alts": [{"item": "GTItemList:Circuit_Parts_Transistor"}, {"item": "GTItemList:Circuit_Parts_TransistorSMD"}], "count": 2}, {"ore": "wireFineRedAlloy", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Processor", "count": 1}], +"duration":200, +"EUt":60}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Processor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Capacitor"}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD"}], "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineRedAlloy", "count": 12}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Computer", "count": 1}], +"duration":400, +"EUt":90}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Processor", "count": 1}, {"item": "GTItemList:Circuit_Chip_NAND", "count": 32}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineRedAlloy", "count": 8}, {"ore": "platePlastic", "count": 4}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Tool_DataStick", "count": 1}], +"duration":400, +"EUt":90}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 2}, {"item": "GTItemList:Circuit_Advanced", "count": 3}, {"alts": [{"item": "GTItemList:Circuit_Parts_Diode"}, {"item": "GTItemList:Circuit_Parts_DiodeSMD"}], "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineElectrum", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Data", "count": 1}], +"duration":400, +"EUt":90}, +{"inputs":[{"ore": "frameGtAluminium", "count": 1}, {"item": "GTItemList:Circuit_Data", "count": 4}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Capacitor"}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD"}], "count": 24}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 16}, {"ore": "wireGt01AnnealedCopper", "count": 12}], +"inputFluids":[{"solderFluids": 288}], +"outputs":[{"item": "GTItemList:Circuit_Elite", "count": 1}], +"duration":1600, +"EUt":480}, + +{"inputs":[{"item": "GTItemList:Circuit_Board_Epoxy", "count": 1}, {"item": "GTItemList:Circuit_Chip_NanoCPU", "count": 1}, {"item": "GTItemList:Circuit_Parts_ResistorSMD", "count": 2}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 2}, {"item": "GTItemList:Circuit_Parts_TransistorSMD", "count": 2}, {"ore": "wireFineElectrum", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Nanoprocessor", "count": 1}], +"duration":200, +"EUt":600}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Epoxy", "count": 1}, {"item": "GTItemList:Circuit_Nanoprocessor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineElectrum", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Nanocomputer", "count": 1}], +"duration":400, +"EUt":600}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Epoxy", "count": 1}, {"item": "GTItemList:Circuit_Nanoprocessor", "count": 1}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"item": "GTItemList:Circuit_Chip_NOR", "count": 32}, {"item": "GTItemList:Circuit_Chip_NAND", "count": 64}, {"ore": "wireFinePlatinum", "count": 32}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Tool_DataOrb", "count": 1}], +"duration":400, +"EUt":1200}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Epoxy", "count": 2}, {"item": "GTItemList:Circuit_Nanocomputer", "count": 3}, {"item": "GTItemList:Circuit_Parts_DiodeSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_NOR", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineElectrum", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Elitenanocomputer", "count": 1}], +"duration":400, +"EUt":600}, +{"inputs":[{"ore": "frameGtAluminium", "count": 1}, {"item": "GTItemList:Circuit_Elitenanocomputer", "count": 4}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 24}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 16}, {"ore": "wireGt01AnnealedCopper", "count": 12}], +"inputFluids":[{"solderFluids": 288}], +"outputs":[{"item": "GTItemList:Circuit_Master", "count": 1}], +"duration":1600, +"EUt":1920}, + +{"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}, {"item": "GTItemList:Circuit_Chip_QuantumCPU", "count": 1}, {"item": "GTItemList:Circuit_Chip_NanoCPU", "count": 1}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 2}, {"item": "GTItemList:Circuit_Parts_TransistorSMD", "count": 2}, {"ore": "wireFinePlatinum", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Quantumprocessor", "count": 1}], +"duration":200, +"EUt":2400}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}, {"item": "GTItemList:Circuit_Quantumprocessor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFinePlatinum", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Quantumcomputer", "count": 1}], +"duration":400, +"EUt":2400}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 2}, {"item": "GTItemList:Circuit_Quantumcomputer", "count": 3}, {"item": "GTItemList:Circuit_Parts_DiodeSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_NOR", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFinePlatinum", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Masterquantumcomputer", "count": 1}], +"duration":400, +"EUt":2400}, +{"inputs":[{"ore": "frameGtAluminium", "count": 1}, {"item": "GTItemList:Circuit_Masterquantumcomputer", "count": 4}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 24}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 16}, {"ore": "wireGt01AnnealedCopper", "count": 12}], +"inputFluids":[{"solderFluids": 288}], +"outputs":[{"item": "GTItemList:Circuit_Quantummainframe", "count": 1}], +"duration":1600, +"EUt":7680}, + +{"inputs":[{"item": "GTItemList:Circuit_Board_Multifiberglass", "count": 1}, {"item": "GTItemList:Circuit_Chip_CrystalCPU", "count": 1}, {"item": "GTItemList:Circuit_Chip_NanoCPU", "count": 1}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 2}, {"item": "GTItemList:Circuit_Parts_TransistorSMD", "count": 2}, {"ore": "wireFineNiobiumTitanium", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Crystalprocessor", "count": 1}], +"duration":200, +"EUt":9600}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Multifiberglass", "count": 1}, {"item": "GTItemList:Circuit_Crystalprocessor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineNiobiumTitanium", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Crystalcomputer", "count": 1}], +"duration":400, +"EUt":9600}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Multifiberglass", "count": 2}, {"item": "GTItemList:Circuit_Crystalcomputer", "count": 3}, {"item": "GTItemList:Circuit_Parts_DiodeSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_NOR", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineNiobiumTitanium", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Ultimatecrystalcomputer", "count": 1}], +"duration":400, +"EUt":9600}, +{"inputs":[{"ore": "frameGtAluminium", "count": 1}, {"item": "GTItemList:Circuit_Ultimatecrystalcomputer", "count": 4}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 24}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 16}, {"ore": "wireGt01Superconductor", "count": 12}], +"inputFluids":[{"solderFluids": 288}], +"outputs":[{"item": "GTItemList:Circuit_Crystalmainframe", "count": 1}], +"duration":1600, +"EUt":30720}, + +{"inputs":[{"item": "GTItemList:Circuit_Chip_NeuroCPU", "count": 1}, {"item": "GTItemList:Circuit_Chip_CrystalCPU", "count": 1}, {"item": "GTItemList:Circuit_Chip_NanoCPU", "count": 1}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 2}, {"item": "GTItemList:Circuit_Parts_TransistorSMD", "count": 2}, {"ore": "wireFineYttriumBariumCuprate", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Neuroprocessor", "count": 1}], +"duration":200, +"EUt":38400}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Wetware", "count": 1}, {"item": "GTItemList:Circuit_Neuroprocessor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineYttriumBariumCuprate", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Wetwarecomputer", "count": 1}], +"duration":400, +"EUt":38400}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Wetware", "count": 2}, {"item": "GTItemList:Circuit_Wetwarecomputer", "count": 3}, {"item": "GTItemList:Circuit_Parts_DiodeSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_NOR", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineYttriumBariumCuprate", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Wetwaresupercomputer", "count": 1}], +"duration":400, +"EUt":38400}, + +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_SoC", "count": 4}, {"ore": "wireFineCopper", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Microprocessor", "count": 4}], +"duration":50, +"EUt":600}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_SoC", "count": 1}, {"ore": "wireFineRedAlloy", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Processor", "count": 1}], +"duration":50, +"EUt":2400}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_SoC2", "count": 1}, {"ore": "wireFineElectrum", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Nanoprocessor", "count": 1}], +"duration":50, +"EUt":9600}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Epoxy", "count": 1}, {"item": "GTItemList:Circuit_Chip_SoC2", "count": 1}, {"ore": "wireFinePlatinum", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Quantumprocessor", "count": 1}], +"duration":50, +"EUt":38400}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}, {"item": "GTItemList:Circuit_Chip_CrystalSoC", "count": 1}, {"ore": "wireFineNiobiumTitanium", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Crystalprocessor", "count": 1}], +"duration":50, +"EUt":153600}, + +{"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}, {"item": "GTItemList:Circuit_Chip_PIC", "count": 4}, {"item": "GTItemList:Circuit_Parts_Crystal_Chip_Master", "count": 18}, {"item": "GTItemList:Circuit_Chip_NanoCPU", "count": 1}, {"ore": "wireFinePlatinum", "count": 16}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Energy_LapotronicOrb", "count": 1}], +"duration":512, +"EUt":1024}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}, {"item": "GTItemList:Circuit_Chip_HPIC", "count": 4}, {"item": "GTItemList:Energy_LapotronicOrb", "count": 8}, {"item": "GTItemList:Circuit_Chip_QuantumCPU", "count": 1}, {"ore": "wireFinePlatinum", "count": 16}, {"ore": "plateEuropium", "count": 4}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Energy_LapotronicOrb2", "count": 1}], +"duration":1024, +"EUt":4096}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/fermenter.json b/src/main/resources/assets/gregtech/recipes/fermenter.json index 4cd052c0a1..d2485f1410 100644 --- a/src/main/resources/assets/gregtech/recipes/fermenter.json +++ b/src/main/resources/assets/gregtech/recipes/fermenter.json @@ -8,7 +8,7 @@ "outputFluids":[{"fluid": "potion.limoncello", "amount": 25}], "duration": 1024, "EUt": 2, -"hidden": "true"}, +"hidden": true}, {"inputFluids":[{"fluid": "potion.applejuice", "amount": 50}], "outputFluids":[{"fluid": "potion.cider", "amount": 25}], "duration": 1024, @@ -17,17 +17,17 @@ "outputFluids":[{"fluid": "potion.goldencider", "amount": 25}], "duration": 1024, "EUt": 2, -"hidden": "true"}, +"hidden": true}, {"inputFluids":[{"fluid": "potion.idunsapplejuice", "amount": 50}], "outputFluids":[{"fluid": "potion.notchesbrew", "amount": 25}], "duration": 1024, "EUt": 2, -"hidden": "true"}, +"hidden": true}, {"inputFluids":[{"fluid": "potion.reedwater", "amount": 50}], "outputFluids":[{"fluid": "potion.rum", "amount": 25}], "duration": 1024, "EUt": 2, -"hidden": "true"}, +"hidden": true}, {"inputFluids":[{"fluid": "potion.rum", "amount": 50}], "outputFluids":[{"fluid": "potion.piratebrew", "amount": 10}], "duration": 2048, @@ -40,12 +40,12 @@ "outputFluids":[{"fluid": "potion.scotch", "amount": 25}], "duration": 1024, "EUt": 2, -"hidden": "true"}, +"hidden": true}, {"inputFluids":[{"fluid": "potion.scotch", "amount": 50}], "outputFluids":[{"fluid": "potion.glenmckenner", "amount": 10}], "duration": 2048, "EUt": 2, -"hidden": "true"}, +"hidden": true}, {"inputFluids":[{"fluid": "potion.wheatyhopsjuice", "amount": 50}], "outputFluids":[{"fluid": "potion.beer", "amount": 25}], "duration": 1024, @@ -58,7 +58,7 @@ "outputFluids":[{"fluid": "potion.dragonblood", "amount": 10}], "duration": 2048, "EUt": 2, -"hidden": "true"}, +"hidden": true}, {"inputFluids":[{"fluid": "potion.beer", "amount": 75}], "outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], @@ -72,7 +72,7 @@ "outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], "duration": 2048, "EUt": 2, -"hidden": "true"}, +"hidden": true}, {"inputFluids":[{"fluid": "potion.rum", "amount": 75}], "outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], "duration": 2048, From 2a62de1286c6df8c8f7287aae93c873e0fe58e14 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Fri, 13 Nov 2020 20:17:42 -0800 Subject: [PATCH 15/21] Added a way for a player to disable certain json recipes. If a json recipe is flagged as disabled (or has 0 duration) in the config folder, the colliding recipes from assets will not be added. --- .../api/recipes/GT_MachineRecipe.java | 3 + .../api/recipes/GT_RecipeConditions.java | 16 +- .../api/recipes/GT_RecipeListJsonReader.java | 45 ++ .../gregtech/api/recipes/GT_RecipeMap.java | 100 ++- .../postload/GT_MachineRecipeLoader.java | 342 +-------- .../gregtech/nei/GT_NEI_AssLineHandler.java | 6 +- .../gregtech/nei/GT_NEI_DefaultHandler.java | 6 +- src/main/java/gregtech/nei/NEI_GT_Config.java | 1 - .../assets/gregtech/recipes/Explanation.cfg | 2 + .../gregtech/recipes/alloy_smelter.json | 4 + .../assets/gregtech/recipes/assembler.json | 703 ++++++++++++++++++ .../assets/gregtech/recipes/autoclave.json | 6 + .../assets/gregtech/recipes/bender.json | 103 +++ .../gregtech/recipes/chemical_bath.json | 11 + .../gregtech/recipes/chemical_reactor.json | 118 +++ .../assets/gregtech/recipes/cutter.json | 199 +++++ .../assets/gregtech/recipes/electrolyzer.json | 46 ++ .../gregtech/recipes/fluid_extractor.json | 4 + .../gregtech/recipes/forming_press.json | 18 + .../recipes/large_chemical_reactor.json | 535 +++++++++++++ .../assets/gregtech/recipes/lathe.json | 7 + .../gregtech/recipes/vacuum_freezer.json | 48 ++ .../assets/gregtech/recipes/wiremill.json | 36 + 23 files changed, 2017 insertions(+), 342 deletions(-) create mode 100644 src/main/resources/assets/gregtech/recipes/bender.json create mode 100644 src/main/resources/assets/gregtech/recipes/cutter.json create mode 100644 src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json create mode 100644 src/main/resources/assets/gregtech/recipes/lathe.json create mode 100644 src/main/resources/assets/gregtech/recipes/vacuum_freezer.json diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index 3ad23a76b1..b898132d16 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -159,6 +159,9 @@ public boolean isEnabled() { if (mEnableCondition != null) { return GT_RecipeConditions.getConditionValue(mEnableCondition) ^ mInvertCondition; } + if (mDuration <= 0 || mEUt <= 0) { + return false; + } return mEnabled; } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java index 692907bc6d..0ea3243359 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java @@ -1,7 +1,10 @@ package gregtech.api.recipes; import cpw.mods.fml.common.Loader; +import gregtech.GT_Mod; import gregtech.api.enums.Materials; +import gregtech.api.util.GT_Log; +import gregtech.common.GT_Proxy; import java.lang.reflect.Field; import java.util.HashMap; import java.util.Map; @@ -10,7 +13,7 @@ /** * * Maps the conditions that certain recipes might need to be enabled or disabled based on. - * These are mostly boolean fields in other classes.
+ * Some of these are boolean fields in other classes.
* Plus a few special cases: *
  • ModLoaded(ModName) - Checks if the named mod is loaded *
  • ModsLoaded(ModName, ModName, ...) - Checks if all the mods in the comma separated list are loaded. @@ -49,10 +52,19 @@ public static boolean getConditionValue(String aConditionName) { } } try { - return sConditionMap.get(aConditionName).getBoolean(null); + return sConditionMap.get(aConditionName).getBoolean(GT_Mod.gregtechproxy); } catch (IllegalArgumentException | IllegalAccessException e) { // ignore exceptions } return false; } + + static { + try { + sConditionMap.put("DisableIC2Cables", GT_Proxy.class.getField("mDisableIC2Cables")); + sConditionMap.put("HardMachineCasings", GT_Proxy.class.getField("mHardMachineCasings")); + } catch (Throwable e) { + e.printStackTrace(GT_Log.err); + } + } } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java index 2f441f6071..f728940590 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -8,6 +8,7 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.SubTag; import gregtech.api.util.GT_Log; +import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import java.io.IOException; import java.util.ArrayList; @@ -59,6 +60,7 @@ private static List readRecipe(JsonReader aReader) throws IOEx boolean tInvertCondition = false; boolean tHidden = false; boolean tUseSolderFluids = false; + boolean tUseCuttingFluids = false; int tSolderAmount = 0; aReader.beginObject(); while (aReader.hasNext()) { @@ -94,6 +96,18 @@ private static List readRecipe(JsonReader aReader) throws IOEx } else if ("solderFluids".equals(tSubName)) { tUseSolderFluids = true; tSolderAmount = aReader.nextInt(); + } else if ("gas".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tFluidName = Materials.get(tMaterialName).getGas(1L).getFluid().getName(); + } else if ("plasma".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tFluidName = Materials.get(tMaterialName).getPlasma(1L).getFluid().getName(); + } else if ("molten".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tFluidName = Materials.get(tMaterialName).getMolten(1L).getFluid().getName(); + } else if ("materialFluid".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tFluidName = Materials.get(tMaterialName).getFluid(1L).getFluid().getName(); } } aReader.endObject(); @@ -120,6 +134,18 @@ private static List readRecipe(JsonReader aReader) throws IOEx tFluidName = aReader.nextString(); } else if ("amount".equals(tSubName)) { tFluidAmount = aReader.nextInt(); + } else if ("gas".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tFluidName = Materials.get(tMaterialName).getGas(1L).getFluid().getName(); + } else if ("plasma".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tFluidName = Materials.get(tMaterialName).getPlasma(1L).getFluid().getName(); + } else if ("molten".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tFluidName = Materials.get(tMaterialName).getMolten(1L).getFluid().getName(); + } else if ("materialFluid".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tFluidName = Materials.get(tMaterialName).getFluid(1L).getFluid().getName(); } } aReader.endObject(); @@ -164,6 +190,9 @@ private static List readRecipe(JsonReader aReader) throws IOEx case "hidden": tHidden = aReader.nextBoolean(); break; + case "useCuttingFluids": + tUseCuttingFluids = aReader.nextBoolean(); + break; default: throw new AssertionError("Invalid recipe specifier"); } @@ -190,6 +219,20 @@ private static List readRecipe(JsonReader aReader) throws IOEx tList.add(tRecipe); } return tList; + } else if (tUseCuttingFluids) { + List tList = new ArrayList<>(3); + GT_MachineRecipe tRecipe = rRecipe.copy(); + tRecipe.mFluidInputs = new FluidStack[]{Materials.Lubricant.getFluid(Math.max(1, Math.min(250, tDuration * tEUt / 1280)))}; + tList.add(tRecipe); + tRecipe = rRecipe.copy(); + tRecipe.mFluidInputs = new FluidStack[]{GT_ModHandler.getDistilledWater(Math.max(3, Math.min(750, tDuration * tEUt / 426)))}; + tRecipe.setDuration(tDuration * 2); + tList.add(tRecipe); + tRecipe = rRecipe.copy(); + tRecipe.mFluidInputs = new FluidStack[]{Materials.Water.getFluid(Math.max(4, Math.min(1000, tDuration * tEUt / 320)))}; + tRecipe.setDuration(tDuration * 2); + tList.add(tRecipe); + return tList; } return Collections.singletonList(rRecipe); } @@ -301,6 +344,8 @@ private static ItemStack StringtoItemStack(String aItemString) { } catch (Throwable e) { e.printStackTrace(GT_Log.err); } + } else if ("IC2ItemList".equals(tPieces[0])) { + rStack = GT_ModHandler.getIC2Item(tPieces[0], 1); } else { rStack = GameRegistry.findItemStack(tPieces[0], tPieces[1], 1); } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index 9e968a1b5c..2ac7912093 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -318,7 +318,7 @@ protected GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe, boolean aCheckFor for (int i = 0; i < tInputs.length; i++) { tInputs[i] = aRecipe.mInputs[i].getInputStacks().get(0); } - if (findRecipe(null, null, Long.MAX_VALUE, aRecipe.mFluidInputs, null, tInputs) != null) { + if (findAnyRecipe(aRecipe.mFluidInputs, null, tInputs) != null) { return null; } } @@ -358,7 +358,7 @@ public GT_MachineRecipe add(GT_MachineRecipe aRecipe) { public void addAll(Collection aRecipeList) { for (GT_MachineRecipe tRecipe : aRecipeList) { - add(tRecipe); + addRecipe(tRecipe); } } @@ -520,6 +520,102 @@ public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_Mach return null; } + /** + * finds a Recipe matching the aFluid and ItemStack Inputs. + * Special version to be used when checking for collisions, which doesn't bother checking voltage or cached recipes, but allows returning disabled recipes. + * + * @param aFluids the Fluid Inputs + * @param aSpecialSlot the content of the Special Slot, the regular Manager + * doesn't do anything with this, but some custom ones do. + * @param aInputs the Item Inputs + * @return the Recipe it has found or null for no matching Recipe + */ + protected GT_MachineRecipe findAnyRecipe(FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { + // No Recipes? Well, nothing to be found then. + if (mRecipeList.isEmpty()) { + return null; + } + + // Some Recipe Classes require a certain amount of Inputs of certain kinds. Like "at least 1 Fluid + 1 Stack" or "at least 2 Stacks" before they start searching for Recipes. + // This improves Performance massively, especially if people leave things like Circuits, Molds or Shapes in their Machines to select Sub Recipes. + int tFluidCount = 0; + int tItemCount = 0; + if (GregTech_API.sPostloadFinished) { + if (mMinimalInputFluids > 0 || mMinimalTotalInputs > 0) { + if (aFluids == null) { + return null; + } + for (FluidStack aFluid : aFluids) { + if (aFluid != null) { + tFluidCount++; + } + } + if (tFluidCount < mMinimalInputFluids) { + return null; + } + } + if (mMinimalInputItems > 0 || mMinimalTotalInputs > 0) { + if (aInputs == null) { + return null; + } + for (ItemStack aInput : aInputs) { + if (aInput != null) { + tItemCount++; + } + } + if (tItemCount < mMinimalInputItems) { + return null; + } + } + if (tItemCount + tFluidCount < mMinimalTotalInputs) { + return null; + } + } + + // Now look for the Recipes inside the Item HashMaps, but only when the Recipes usually have Items. + if (mInputSlots > 0 && aInputs != null) { + for (ItemStack tStack : aInputs) { + if (tStack != null) { + Collection tRecipes = mRecipeItemMap.get(new GT_ItemStack(tStack)); + if (tRecipes != null) { + for (GT_MachineRecipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { + return tRecipe; + } + } + } + tRecipes = mRecipeItemMap.get(new GT_ItemStack(GT_Utility.copyMetaData(W, tStack))); + if (tRecipes != null) { + for (GT_MachineRecipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { + return tRecipe; + } + } + } + } + } + } + + // If the minimal Amount of Items for the Recipe is 0, then it could be a Fluid-Only Recipe, so check that Map too. + if (mMinimalInputItems == 0 && aFluids != null) { + for (FluidStack aFluid : aFluids) { + if (aFluid != null) { + Collection tRecipes = mRecipeFluidMap.get(aFluid.getFluid()); + if (tRecipes != null) { + for (GT_MachineRecipe tRecipe : tRecipes) { + if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { + return tRecipe; + } + } + } + } + } + } + + // And nothing has been found. + return null; + } + /** * @return if this Item is a valid Input for any for the Recipes */ diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index 4b658e21c7..a44822dda8 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -68,8 +68,10 @@ public void run() { Map tRecipeFileMap = new HashMap<>(30); tRecipeFileMap.put(GT_RecipeMap.sAlloySmelterRecipes, "alloy_smelter.json"); + tRecipeFileMap.put(GT_RecipeMap.sArcFurnaceRecipes, "arc_furnace.json"); tRecipeFileMap.put(GT_RecipeMap.sAssemblerRecipes, "assembler.json"); tRecipeFileMap.put(GT_RecipeMap.sAutoclaveRecipes, "autoclave.json"); + tRecipeFileMap.put(GT_RecipeMap.sBenderRecipes, "bender.json"); tRecipeFileMap.put(GT_RecipeMap.sBlastRecipes, "blast_furnace.json"); tRecipeFileMap.put(GT_RecipeMap.sBrewingRecipes, "brewery.json"); tRecipeFileMap.put(GT_RecipeMap.sCentrifugeRecipes, "centrifuge.json"); @@ -77,6 +79,10 @@ public void run() { tRecipeFileMap.put(GT_RecipeMap.sChemicalRecipes, "chemical_reactor.json"); tRecipeFileMap.put(GT_RecipeMap.sMultiblockChemicalRecipes, "large_chemical_reactor.json"); tRecipeFileMap.put(GT_RecipeMap.sCircuitAssemblerRecipes, "circuit_assembler.json"); + tRecipeFileMap.put(GT_RecipeMap.sCutterRecipes, "cutter.json"); + tRecipeFileMap.put(GT_RecipeMap.sDistillationRecipes, "distillation_tower.json"); + tRecipeFileMap.put(GT_RecipeMap.sDistilleryRecipes, "distillery.json"); + tRecipeFileMap.put(GT_RecipeMap.sCutterRecipes, "cutter.json"); tRecipeFileMap.put(GT_RecipeMap.sElectrolyzerRecipes, "electrolyzer.json"); tRecipeFileMap.put(GT_RecipeMap.sExtruderRecipes, "extruder.json"); tRecipeFileMap.put(GT_RecipeMap.sFermentingRecipes, "fermenter.json"); @@ -88,9 +94,13 @@ public void run() { tRecipeFileMap.put(GT_RecipeMap.sPressRecipes, "forming_press.json"); tRecipeFileMap.put(GT_RecipeMap.sFusionRecipes, "fusion_reactor.json"); tRecipeFileMap.put(GT_RecipeMap.sLaserEngraverRecipes, "laser_engraver.json"); + tRecipeFileMap.put(GT_RecipeMap.sLatheRecipes, "lathe.json"); tRecipeFileMap.put(GT_RecipeMap.sMixerRecipes, "mixer.json"); + tRecipeFileMap.put(GT_RecipeMap.sPlasmaArcFurnaceRecipes, "plasma_arc_furnace.json"); + tRecipeFileMap.put(GT_RecipeMap.sPrinterRecipes, "printer.json"); tRecipeFileMap.put(GT_RecipeMap.sSifterRecipes, "sifter.json"); tRecipeFileMap.put(GT_RecipeMap.sSlicerRecipes, "slicer.json"); + tRecipeFileMap.put(GT_RecipeMap.sVacuumRecipes, "vacuum_freezer.json"); tRecipeFileMap.put(GT_RecipeMap.sWiremillRecipes, "wiremill.json"); File tConfigRecipeFolder = new File(getMcDir(), "config" + File.separator + "GregTech" + File.separator + "recipes"); @@ -204,27 +214,10 @@ public void run() { GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Coil.get(2,o), new Object[]{"WWW","WDW","WWW",'G',new ItemStack(Blocks.glass_pane),'D',OrePrefixes.bolt.get(Materials.Steel),'W',OrePrefixes.wireFine.get(Materials.Copper)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Coil.get(4,o), new Object[]{"WWW","WDW","WWW",'G',new ItemStack(Blocks.glass_pane),'D',OrePrefixes.bolt.get(Materials.NickelZincFerrite),'W',OrePrefixes.wireFine.get(Materials.Copper)}); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_ILC.get(1, o), ItemList.Circuit_Chip_ILC.get(8,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_Ram.get(1, o), ItemList.Circuit_Chip_Ram.get(32,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_NAND.get(1, o), ItemList.Circuit_Chip_NAND.get(32,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_NOR.get(1, o), ItemList.Circuit_Chip_NOR.get(16,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_CPU.get(1, o), ItemList.Circuit_Chip_CPU.get(8,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_SoC.get(1, o), ItemList.Circuit_Chip_SoC.get(10,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_SoC2.get(1, o), ItemList.Circuit_Chip_SoC2.get(8,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_PIC.get(1, o), ItemList.Circuit_Chip_PIC.get(4,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_HPIC.get(1, o), ItemList.Circuit_Chip_HPIC.get(2,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_NanoCPU.get(1, o), ItemList.Circuit_Chip_NanoCPU.get(7,o), null, 600, 48); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Wafer_QuantumCPU.get(1, o), ItemList.Circuit_Chip_QuantumCPU.get(5,o), null, 600, 48); GT_ModHandler.addShapelessCraftingRecipe(ItemList.Circuit_Parts_RawCrystalChip.get(9,o), new Object[]{ItemList.Circuit_Chip_CrystalCPU.get(1,o)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Good.get(1,o), new Object[]{"IVC","VDV","CVI",'D',ItemList.Circuit_Parts_Diode.get(1,o),'C',GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.RedAlloy, 1),'V', Ic2Items.electronicCircuit ,'I',ItemList.IC2_Item_Casing_Steel.get(1,o)}); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer.get(16, new Object[0]),null, 200, 8); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot2.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer2.get(32, new Object[0]),null, 400, 64); - GT_Values.RA.addCutterRecipe(ItemList.Circuit_Silicon_Ingot3.get(1, new Object[0]), ItemList.Circuit_Silicon_Wafer3.get(64, new Object[0]),null, 800, 384); - - - GT_Values.RA.addUniversalDistillationRecipe(Materials.OilLight.getFluid(150), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(10), Materials.SulfuricLightFuel.getFluid(20), Materials.SulfuricNaphtha.getFluid(30), Materials.SulfuricGas.getGas(240)}, null, 20, 96); GT_Values.RA.addUniversalDistillationRecipe(Materials.OilMedium.getFluid(100), new FluidStack[]{Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); GT_Values.RA.addUniversalDistillationRecipe(Materials.Oil.getFluid(50L), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); @@ -436,7 +429,6 @@ public void run() { GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("GalacticraftMars", "tile.asteroidsBlock", 1L, 0), null, null, Materials.Nitrogen.getGas(33), new ItemStack(Blocks.sand,1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gallium, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 1), new int[]{5000,400,400,100,100,100}, 400, 8); } - GT_Values.RA.addFluidExtractionRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 1L), null, Materials.Glass.getMolten(72), 10000, 600, 28);//(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SiliconDioxide,1L), GT_OreDictUnificator.get(OrePrefixes.dust,Materials.SiliconDioxide,2L),GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glass,1L)/** GT_Utility.fillFluidContainer(Materials.Glass.getMolten(1000), ItemList.Cell_Empty.get(1, new Object[0]), true, true)**/, 600, 16); GT_Values.RA.addDistillationTowerRecipe(Materials.Creosote.getFluid(24L), new FluidStack[]{Materials.Lubricant.getFluid(12L)}, null, 16, 96); GT_Values.RA.addDistillationTowerRecipe(Materials.SeedOil.getFluid(32L), new FluidStack[]{Materials.Lubricant.getFluid(12L)}, null, 16, 96); @@ -468,124 +460,15 @@ public void run() { GT_Values.RA.addFuel(GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1L, 6), null, 720, 5); GT_Values.RA.addFuel(GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1L, 7), null, 720, 5); - GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, ItemList.Cell_Empty.get(1L, new Object[0]), Materials.Water.getFluid(3000L), Materials.Hydrogen.getGas(2000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 2000, 30); - GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, ItemList.Cell_Empty.get(1L, new Object[0]), GT_ModHandler.getDistilledWater(3000L), Materials.Hydrogen.getGas(2000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 2000, 30); - GT_Values.RA.addElectrolyzerRecipe(GT_ModHandler.getIC2Item("electrolyzedWaterCell", 3L), 0, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 30, 30); - GT_Values.RA.addElectrolyzerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), 0, GT_ModHandler.getIC2Item("electrolyzedWaterCell", 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, 490, 30); - GT_Values.RA.addElectrolyzerRecipe(ItemList.Dye_Bonemeal.get(3L, new Object[0]), 0, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, 98, 26); - GT_Values.RA.addElectrolyzerRecipe(new ItemStack(Blocks.sand, 8), 0, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, 500, 25); - GT_Values.RA.addElectrolyzerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungstate, 7L), GT_Values.NI, Materials.Hydrogen.getGas(7000L), Materials.Oxygen.getGas(4000L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 2L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{10000, 10000, 0, 0, 0, 0}, 120, 1920); - GT_Values.RA.addElectrolyzerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Scheelite, 7L), GT_Values.NI, Materials.Hydrogen.getGas(7000L), Materials.Oxygen.getGas(4000L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 2L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{10000, 10000, 0, 0, 0, 0}, 120, 1920); - //GT_Values.RA.addElectrolyzerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CarbonDioxide, 4), GT_Values.NI, GT_Values.NF,GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 3), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1), ItemList.Cell_Empty.get(3, new Object[0]), GT_Values.NI, GT_Values.NI, GT_Values.NI,new int[]{10000,10000,10000,0,0,0}, 180, 60); - GT_Values.RA.addElectrolyzerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1), 0, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 4), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, 100, 64); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), Materials.Water.getFluid(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 3L), 500); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), Materials.Water.getFluid(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.CertusQuartz, 3L), 500); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), Materials.Water.getFluid(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Quartzite, 3L), 500); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherQuartz, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), GT_ModHandler.getDistilledWater(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherQuartz, 3L), 500); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.CertusQuartz, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), GT_ModHandler.getDistilledWater(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.CertusQuartz, 3L), 500); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quartzite, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), GT_ModHandler.getDistilledWater(1000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Quartzite, 3L), 500); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uraninite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1L), 1000); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uraninite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1L), 1000); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), Materials.Oxygen.getGas(3000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 5L), 500); - GT_Values.RA.addChemicalRecipe(Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Hydrogen.getGas(4000L), Materials.Methane.getGas(5000L), GT_Values.NI, 14000); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Carbon.getDust(1), Materials.Empty.getCells(1), Materials.Hydrogen.getGas(4000L), GT_Values.NF, Materials.Methane.getCells(1), GT_Values.NI, 200, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, Materials.Hydrogen.getGas(2000L), GT_ModHandler.getDistilledWater(3000L), ItemList.Cell_Empty.get(1L, new Object[0]), GT_Values.NI, 10, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), GT_Values.NI, Materials.Oxygen.getGas(500L), GT_ModHandler.getDistilledWater(1500L), ItemList.Cell_Empty.get(1L, new Object[0]), GT_Values.NI, 5, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(1)}, new FluidStack[]{Materials.Hydrogen.getGas(2000), Materials.Oxygen.getGas(1000)}, new FluidStack[]{GT_ModHandler.getDistilledWater(1000)}, new ItemStack[]{}, 10, 30); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1L), Materials.Glass.getMolten(864L), GT_Values.NF, GT_ModHandler.getModItem("Railcraft", "tile.railcraft.glass", 6L), 50); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Rutile, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Carbon, 2L), Materials.Chlorine.getGas(4000L), Materials.Titaniumtetrachloride.getFluid(1000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CarbonMonoxide, 2L), 500, 480); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Rutile, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 2L), Materials.Chlorine.getGas(4000L), Materials.Titaniumtetrachloride.getFluid(1000L), GT_Values.NI, 500, 480); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesiumchloride, 2L), GT_Values.NF, Materials.Chlorine.getGas(3000L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Magnesium, 6L), 300, 240); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 9L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_Values.NF, Materials.Rubber.getMolten(1296L), GT_Values.NI, 600, 16); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 8L), new ItemStack(Items.melon, 1, 32767), new ItemStack(Items.speckled_melon, 1, 0), 50); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Gold, 8L), new ItemStack(Items.carrot, 1, 32767), new ItemStack(Items.golden_carrot, 1, 0), 50); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gold, 8L), new ItemStack(Items.apple, 1, 32767), new ItemStack(Items.golden_apple, 1, 0), 50); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Gold, 8L), new ItemStack(Items.apple, 1, 32767), new ItemStack(Items.golden_apple, 1, 1), 50); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderEye, 1L), 50); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L), new ItemStack(Items.slime_ball, 1, 32767), new ItemStack(Items.magma_cream, 1, 0), 50); - - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderEye, 1), Materials.Radon.getGas(250), ItemList.QuantumEye.get(1L, new Object[0]), null, null, null, 480, 384); - GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1), Materials.Radon.getGas(1250), ItemList.QuantumStar.get(1L, new Object[0]), null, null, null, 1920, 384); - GT_Values.RA.addAutoclaveRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.NetherStar, 1), Materials.Neutronium.getMolten(288), ItemList.Gravistar.get(1L, new Object[0]), 10000, 480, 7680); - - GT_Values.RA.addBenderRecipe(ItemList.IC2_Mixed_Metal_Ingot.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Advanced, 1L), 100, 8); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Aluminium, 6L), ItemList.RC_Rail_Standard.get(2L, new Object[0]), 200, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 6L), ItemList.RC_Rail_Standard.get(4L, new Object[0]), 400, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 6L), ItemList.RC_Rail_Standard.get(5L, new Object[0]), 400, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Bronze, 6L), ItemList.RC_Rail_Standard.get(3L, new Object[0]), 300, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 6L), ItemList.RC_Rail_Standard.get(8L, new Object[0]), 800, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 6L), ItemList.RC_Rail_Standard.get(12L, new Object[0]), 1200, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 6L), ItemList.RC_Rail_Standard.get(16L, new Object[0]), 1600, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 6L), ItemList.RC_Rail_Reinforced.get(24L, new Object[0]), 2400, 30); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Aluminium, 12L), ItemList.RC_Rebar.get(4L, new Object[0]), 200, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 12L), ItemList.RC_Rebar.get(8L, new Object[0]), 400, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 12L), ItemList.RC_Rebar.get(10L, new Object[0]), 400, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Bronze, 12L), ItemList.RC_Rebar.get(8L, new Object[0]), 400, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 12L), ItemList.RC_Rebar.get(16L, new Object[0]), 800, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.StainlessSteel, 12L), ItemList.RC_Rebar.get(24L, new Object[0]), 1200, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 12L), ItemList.RC_Rebar.get(32L, new Object[0]), 1600, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.TungstenSteel, 12L), ItemList.RC_Rebar.get(48L, new Object[0]), 2400, 15); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tin, 12L), ItemList.Cell_Empty.get(6L, new Object[0]), 1200, 8); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 12L), ItemList.Cell_Empty.get(6L, new Object[0]), 1200, 8); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.SteelMagnetic, 12L), ItemList.Cell_Empty.get(6L, new Object[0]), 1200, 8); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Polytetrafluoroethylene, 12L), ItemList.Cell_Empty.get(6L, new Object[0]), 1200, 8); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 12L), new ItemStack(Items.bucket, 4, 0), 800, 4); - GT_Values.RA.addBenderRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 12L), new ItemStack(Items.bucket, 4, 0), 800, 4); - GT_Values.RA.addBenderRecipe(ItemList.IC2_Item_Casing_Iron.get(2L, new Object[0]), GT_ModHandler.getIC2Item("fuelRod", 1L), 100, 8); - GT_Values.RA.addBenderRecipe(ItemList.IC2_Item_Casing_Tin.get(1L, new Object[0]), ItemList.IC2_Food_Can_Empty.get(1L, new Object[0]), 100, 8); + GT_Values.RA.addPulveriserRecipe(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Marble, 1L), new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Marble, 1L)}, null, 160, 4); - GT_Values.RA.addVacuumFreezerRecipe(GT_ModHandler.getIC2Item("reactorCoolantSimple", 1L, 32767), GT_ModHandler.getIC2Item("reactorCoolantSimple", 1L, 1), 100); - GT_Values.RA.addVacuumFreezerRecipe(GT_ModHandler.getIC2Item("reactorCoolantTriple", 1L, 32767), GT_ModHandler.getIC2Item("reactorCoolantTriple", 1L, 1), 300); - GT_Values.RA.addVacuumFreezerRecipe(GT_ModHandler.getIC2Item("reactorCoolantSix", 1L, 32767), GT_ModHandler.getIC2Item("reactorCoolantSix", 1L, 1), 600); - GT_Values.RA.addVacuumFreezerRecipe(ItemList.Reactor_Coolant_He_1.getWildcard(1L, new Object[0]), ItemList.Reactor_Coolant_He_1.get(1L, new Object[0]), 600); - GT_Values.RA.addVacuumFreezerRecipe(ItemList.Reactor_Coolant_He_3.getWildcard(1L, new Object[0]), ItemList.Reactor_Coolant_He_3.get(1L, new Object[0]), 1800); - GT_Values.RA.addVacuumFreezerRecipe(ItemList.Reactor_Coolant_He_6.getWildcard(1L, new Object[0]), ItemList.Reactor_Coolant_He_6.get(1L, new Object[0]), 3600); - GT_Values.RA.addVacuumFreezerRecipe(ItemList.Reactor_Coolant_NaK_1.getWildcard(1L, new Object[0]), ItemList.Reactor_Coolant_NaK_1.get(1L, new Object[0]), 600); - GT_Values.RA.addVacuumFreezerRecipe(ItemList.Reactor_Coolant_NaK_3.getWildcard(1L, new Object[0]), ItemList.Reactor_Coolant_NaK_3.get(1L, new Object[0]), 1800); - GT_Values.RA.addVacuumFreezerRecipe(ItemList.Reactor_Coolant_NaK_6.getWildcard(1L, new Object[0]), ItemList.Reactor_Coolant_NaK_6.get(1L, new Object[0]), 3600); - GT_Values.RA.addVacuumFreezerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Ice, 1L), 50); - GT_Values.RA.addVacuumFreezerRecipe(GT_ModHandler.getIC2Item("airCell", 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LiquidAir, 1L), 25); - - GT_Values.RA.addAlloySmelterRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lead, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 2L), ItemList.TE_Hardened_Glass.get(2L, new Object[0]), 200, 16); - GT_Values.RA.addAlloySmelterRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Lead, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Obsidian, 2L), ItemList.TE_Hardened_Glass.get(2L, new Object[0]), 200, 16); -// GT_Values.RA.addAlloySmelterRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RawRubber, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1L), 200, 8); - - GT_Values.RA.addCutterRecipe(GT_ModHandler.getModItem("BuildCraft|Transport", "item.buildcraftPipe.pipestructurecobblestone", 1L, 0), GT_ModHandler.getModItem("BuildCraft|Transport", "pipePlug", 8L, 0), GT_Values.NI, 32, 16); for (int i = 0; i < 16; i++) { GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.stained_glass, 3, i), new ItemStack(Blocks.stained_glass_pane, 8, i), GT_Values.NI, 50, 8); } - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.glass, 3, 0), new ItemStack(Blocks.glass_pane, 8, 0), GT_Values.NI, 50, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.stone, 1, 0), new ItemStack(Blocks.stone_slab, 2, 0), GT_Values.NI, 25, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.sandstone, 1, 0), new ItemStack(Blocks.stone_slab, 2, 1), GT_Values.NI, 25, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.cobblestone, 1, 0), new ItemStack(Blocks.stone_slab, 2, 3), GT_Values.NI, 25, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.brick_block, 1, 0), new ItemStack(Blocks.stone_slab, 2, 4), GT_Values.NI, 25, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.stonebrick, 1, 0), new ItemStack(Blocks.stone_slab, 2, 5), GT_Values.NI, 25, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.nether_brick, 1, 0), new ItemStack(Blocks.stone_slab, 2, 6), GT_Values.NI, 25, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.quartz_block, 1, 32767), new ItemStack(Blocks.stone_slab, 2, 7), GT_Values.NI, 25, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.glowstone, 1, 0), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Glowstone, 4L), GT_Values.NI, 100, 16); - - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), ItemList.IC2_Item_Casing_Iron.get(2L, new Object[0]), GT_Values.NI, 50, 16); - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), ItemList.IC2_Item_Casing_Iron.get(2L, new Object[0]), GT_Values.NI, 50, 16); - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), ItemList.IC2_Item_Casing_Gold.get(2L, new Object[0]), GT_Values.NI, 50, 16); - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Bronze, 1L), ItemList.IC2_Item_Casing_Bronze.get(2L, new Object[0]), GT_Values.NI, 50, 16); - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Copper, 1L), ItemList.IC2_Item_Casing_Copper.get(2L, new Object[0]), GT_Values.NI, 50, 16); - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnnealedCopper, 1L), ItemList.IC2_Item_Casing_Copper.get(2L, new Object[0]), GT_Values.NI, 50, 16); - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tin, 1L), ItemList.IC2_Item_Casing_Tin.get(2L, new Object[0]), GT_Values.NI, 50, 16); - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Lead, 1L), ItemList.IC2_Item_Casing_Lead.get(2L, new Object[0]), GT_Values.NI, 50, 16); - GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 1L), ItemList.IC2_Item_Casing_Steel.get(2L, new Object[0]), GT_Values.NI, 50, 16); for (byte i = 0; i < 16; i = (byte) (i + 1)) { GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.wool, 1, i), new ItemStack(Blocks.carpet, 2, i), GT_Values.NI, 50, 8); } - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.wooden_slab, 1, 0), ItemList.Plank_Oak.get(2L, new Object[0]), GT_Values.NI, 50, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.wooden_slab, 1, 1), ItemList.Plank_Spruce.get(2L, new Object[0]), GT_Values.NI, 50, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.wooden_slab, 1, 2), ItemList.Plank_Birch.get(2L, new Object[0]), GT_Values.NI, 50, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.wooden_slab, 1, 3), ItemList.Plank_Jungle.get(2L, new Object[0]), GT_Values.NI, 50, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.wooden_slab, 1, 4), ItemList.Plank_Acacia.get(2L, new Object[0]), GT_Values.NI, 50, 8); - GT_Values.RA.addCutterRecipe(new ItemStack(Blocks.wooden_slab, 1, 5), ItemList.Plank_DarkOak.get(2L, new Object[0]), GT_Values.NI, 50, 8); boolean loaded = Loader.isModLoaded(aTextForestry); ItemStack[] coverIDs = new ItemStack[]{ ItemList.Plank_Larch.get(2L, new Object[0]), @@ -633,139 +516,9 @@ public void run() { API.hideItem(new ItemStack(GT_MetaGenerated_Item_03.INSTANCE,1,g)); } - GT_Values.RA.addLatheRecipe(new ItemStack(Blocks.wooden_slab, 1, GT_Values.W), new ItemStack(Items.bowl,1), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1), 50, 8); - GT_Values.RA.addLatheRecipe(GT_ModHandler.getModItem(aTextForestry, "slabs", 1L, GT_Values.W), new ItemStack(Items.bowl,1), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1), 50, 8); - GT_Values.RA.addLatheRecipe(GT_ModHandler.getModItem(aTextEBXL, "woodslab", 1L, GT_Values.W), new ItemStack(Items.bowl,1), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1), 50, 8); - - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Cupronickel, 1L), ItemList.Shape_Mold_Credit.get(0L, new Object[0]), ItemList.Credit_Greg_Cupronickel.get(4L, new Object[0]), 100, 16); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Brass, 1L), ItemList.Shape_Mold_Credit.get(0L, new Object[0]), ItemList.Coin_Doge.get(4L, new Object[0]), 100, 16); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), ItemList.Shape_Mold_Credit.get(0L, new Object[0]), ItemList.Credit_Iron.get(4L, new Object[0]), 100, 16); - GT_Values.RA.addFormingPressRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), ItemList.Shape_Mold_Credit.get(0L, new Object[0]), ItemList.Credit_Iron.get(4L, new Object[0]), 100, 16); - - if (!GT_Mod.gregtechproxy.mDisableIC2Cables) { - GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Copper, 1L), GT_ModHandler.getIC2Item("copperCableItem", 3L), 100, 2); - GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.AnnealedCopper, 1L), GT_ModHandler.getIC2Item("copperCableItem", 3L), 100, 2); - GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tin, 1L), GT_ModHandler.getIC2Item("tinCableItem", 4L), 150, 1); - GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), GT_ModHandler.getIC2Item("ironCableItem", 6L), 200, 2); - GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), GT_ModHandler.getIC2Item("ironCableItem", 6L), 200, 2); - GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 1L), GT_ModHandler.getIC2Item("goldCableItem", 6L), 200, 1); - } - GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphene, 1L), GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Graphene, 1L), 400, 2); if (!GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "torchesFromCoal", false)) { GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), new ItemStack(Items.coal, 1, 32767), new ItemStack(Blocks.torch, 4), 400, 1); } - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 2L), ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), new ItemStack(Blocks.light_weighted_pressure_plate, 1), 200, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 2L), ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), new ItemStack(Blocks.heavy_weighted_pressure_plate, 1), 200, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 6L), ItemList.Circuit_Integrated.getWithDamage(0L, 6L, new Object[0]), new ItemStack(Items.iron_door, 1), 600, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 7L), ItemList.Circuit_Integrated.getWithDamage(0L, 7L, new Object[0]), new ItemStack(Items.cauldron, 1), 700, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1L), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_ModHandler.getIC2Item("ironFence", 1L), 100, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 3L), ItemList.Circuit_Integrated.getWithDamage(0L, 3L, new Object[0]), new ItemStack(Blocks.iron_bars, 4), 300, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 2L), ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), new ItemStack(Blocks.heavy_weighted_pressure_plate, 1), 200, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 6L), ItemList.Circuit_Integrated.getWithDamage(0L, 6L, new Object[0]), new ItemStack(Items.iron_door, 1), 600, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 7L), ItemList.Circuit_Integrated.getWithDamage(0L, 7L, new Object[0]), new ItemStack(Items.cauldron, 1), 700, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1L), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), GT_ModHandler.getIC2Item("ironFence", 1L), 100, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 3L), ItemList.Circuit_Integrated.getWithDamage(0L, 3L, new Object[0]), new ItemStack(Blocks.iron_bars, 4), 300, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 3L), ItemList.Circuit_Integrated.getWithDamage(0L, 3L, new Object[0]), new ItemStack(Blocks.fence, 1), 300, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Iron, 2L), new ItemStack(Blocks.tripwire_hook, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 2L), new ItemStack(Blocks.tripwire_hook, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 3L), new ItemStack(Items.string, 3, 32767), new ItemStack(Items.bow, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 3L), ItemList.Component_Minecart_Wheels_Iron.get(2L, new Object[0]), new ItemStack(Items.minecart, 1), 500, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 3L), ItemList.Component_Minecart_Wheels_Iron.get(2L, new Object[0]), new ItemStack(Items.minecart, 1), 400, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 3L), ItemList.Component_Minecart_Wheels_Steel.get(2L, new Object[0]), new ItemStack(Items.minecart, 1), 300, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Iron, 2L), ItemList.Component_Minecart_Wheels_Iron.get(1L, new Object[0]), 500, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.WroughtIron, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 2L), ItemList.Component_Minecart_Wheels_Iron.get(1L, new Object[0]), 400, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Steel, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Steel, 2L), ItemList.Component_Minecart_Wheels_Steel.get(1L, new Object[0]), 300, 2); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.hopper, 1, 32767), new ItemStack(Items.hopper_minecart, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.tnt, 1, 32767), new ItemStack(Items.tnt_minecart, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.chest, 1, 32767), new ItemStack(Items.chest_minecart, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.trapped_chest, 1, 32767), new ItemStack(Items.chest_minecart, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Items.minecart, 1), new ItemStack(Blocks.furnace, 1, 32767), new ItemStack(Items.furnace_minecart, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.tripwire_hook, 1), new ItemStack(Blocks.chest, 1, 32767), new ItemStack(Blocks.trapped_chest, 1), 200, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.stone, 1, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), new ItemStack(Blocks.stonebrick, 1, 0), 50, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.sandstone, 1, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new ItemStack(Blocks.sandstone, 1, 2), 50, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.sandstone, 1, 1), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new ItemStack(Blocks.sandstone, 1, 0), 50, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.sandstone, 1, 2), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new ItemStack(Blocks.sandstone, 1, 0), 50, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), GT_ModHandler.getIC2Item("machine", 1L), 25, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_ULV.get(1L, new Object[0]), 25, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_LV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_MV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_HV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_EV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_IV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Chrome, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_LuV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iridium, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_ZPM.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmium, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_UV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_MAX.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Invar, 6L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Invar, 1L), ItemList.Casing_HeatProof.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.Cupronickel, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_Coil_Cupronickel.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.Kanthal, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_Coil_Kanthal.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.Nichrome, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_Coil_Nichrome.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.TungstenSteel, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_Coil_TungstenSteel.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.HSSG, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_Coil_HSSG.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.Naquadah, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_Coil_Naquadah.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.NaquadahAlloy, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_Coil_NaquadahAlloy.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt02, Materials.Superconductor, 8L), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), ItemList.Casing_Coil_Superconductor.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 6L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1L), ItemList.Casing_SolidSteel.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 6L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Aluminium, 1L), ItemList.Casing_FrostProof.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1L), ItemList.Casing_RobustTungstenSteel.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 6L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.StainlessSteel, 1L), ItemList.Casing_CleanStainlessSteel.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Titanium, 1L), ItemList.Casing_StableTitanium.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Osmiridium, 6L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Osmiridium, 1L), ItemList.Casing_MiningOsmiridium.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6L), ItemList.Casing_LuV.get(1L, new Object[0]), ItemList.Casing_Fusion.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Magnalium, 6L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlueSteel, 1L), ItemList.Casing_Turbine.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 6L), ItemList.Casing_Turbine.get(1L, new Object[0]), ItemList.Casing_Turbine1.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Titanium, 6L), ItemList.Casing_Turbine.get(1L, new Object[0]), ItemList.Casing_Turbine2.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 6L), ItemList.Casing_Turbine.get(1L, new Object[0]), ItemList.Casing_Turbine3.get(2L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(ItemList.Casing_SolidSteel.get(1, new Object[0]), GT_Utility.getIntegratedCircuit(6), Materials.Polytetrafluoroethylene.getMolten(216), ItemList.Casing_Chemically_Inert.get(1, new Object[0]), 50, 16); - - if (GT_Mod.gregtechproxy.mHardMachineCasings) { - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Lead, 2L), ItemList.Casing_ULV.get(1L, new Object[0]), Materials.Plastic.getMolten(288), ItemList.Hull_ULV.get(1L, new Object[0]), 25, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 2L), ItemList.Casing_LV.get(1L, new Object[0]), Materials.Plastic.getMolten(288), ItemList.Hull_LV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2L), ItemList.Casing_MV.get(1L, new Object[0]), Materials.Plastic.getMolten(288), ItemList.Hull_MV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2L), ItemList.Casing_MV.get(1L, new Object[0]), Materials.Plastic.getMolten(288), ItemList.Hull_MV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 2L), ItemList.Casing_HV.get(1L, new Object[0]), Materials.Plastic.getMolten(288), ItemList.Hull_HV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 2L), ItemList.Casing_EV.get(1L, new Object[0]), Materials.Plastic.getMolten(288), ItemList.Hull_EV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tungsten, 2L), ItemList.Casing_IV.get(1L, new Object[0]), Materials.Plastic.getMolten(288), ItemList.Hull_IV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.VanadiumGallium, 2L), ItemList.Casing_LuV.get(1L, new Object[0]), Materials.Plastic.getMolten(288), ItemList.Hull_LuV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 2L), ItemList.Casing_ZPM.get(1L, new Object[0]), Materials.Polytetrafluoroethylene.getMolten(288), ItemList.Hull_ZPM.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.NaquadahAlloy, 2L), ItemList.Casing_UV.get(1L, new Object[0]), Materials.Polytetrafluoroethylene.getMolten(288), ItemList.Hull_UV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Superconductor, 2L), ItemList.Casing_MAX.get(1L, new Object[0]), Materials.Polytetrafluoroethylene.getMolten(288), ItemList.Hull_MAX.get(1L, new Object[0]), 50, 16); - } else { - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Lead, 2L), ItemList.Casing_ULV.get(1L, new Object[0]),ItemList.Hull_ULV.get(1L, new Object[0]), 25, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 2L), ItemList.Casing_LV.get(1L, new Object[0]),ItemList.Hull_LV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2L), ItemList.Casing_MV.get(1L, new Object[0]),ItemList.Hull_MV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2L), ItemList.Casing_MV.get(1L, new Object[0]), ItemList.Hull_MV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 2L), ItemList.Casing_HV.get(1L, new Object[0]), ItemList.Hull_HV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Aluminium, 2L), ItemList.Casing_EV.get(1L, new Object[0]), ItemList.Hull_EV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tungsten, 2L), ItemList.Casing_IV.get(1L, new Object[0]), ItemList.Hull_IV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.VanadiumGallium, 2L), ItemList.Casing_LuV.get(1L, new Object[0]), ItemList.Hull_LuV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Naquadah, 2L), ItemList.Casing_ZPM.get(1L, new Object[0]), ItemList.Hull_ZPM.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.NaquadahAlloy, 2L), ItemList.Casing_UV.get(1L, new Object[0]), ItemList.Hull_UV.get(1L, new Object[0]), 50, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Superconductor, 2L), ItemList.Casing_MAX.get(1L, new Object[0]), ItemList.Hull_MAX.get(1L, new Object[0]), 50, 16); - } - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 1L), Materials.Plastic.getMolten(144), ItemList.Battery_Hull_LV.get(1L, new Object[0]), 800, 1); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Copper, 2L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 3L), Materials.Plastic.getMolten(432), ItemList.Battery_Hull_MV.get(1L, new Object[0]), 1600, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.AnnealedCopper, 2L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 3L), Materials.Plastic.getMolten(432), ItemList.Battery_Hull_MV.get(1L, new Object[0]), 1600, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.Gold, 4L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BatteryAlloy, 9L), Materials.Plastic.getMolten(1296), ItemList.Battery_Hull_HV.get(1L, new Object[0]), 3200, 4); - - GT_Values.RA.addAssemblerRecipe(new ItemStack(Items.string, 4, 32767), new ItemStack(Items.slime_ball, 1, 32767), new ItemStack(Items.lead, 2), 200, 2); - GT_Values.RA.addAssemblerRecipe(ItemList.IC2_Compressed_Coal_Ball.get(8L, new Object[0]), new ItemStack(Blocks.brick_block, 1), ItemList.IC2_Compressed_Coal_Chunk.get(1L, new Object[0]), 400, 4); - - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getIC2Item("waterMill", 2L), ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), GT_ModHandler.getIC2Item("generator", 1L), 6400, 8); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getIC2Item("batPack", 1L, 32767), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), ItemList.IC2_ReBattery.get(6L, new Object[0]), 800, 4); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.stone_slab, 3, 0), ItemList.RC_Rebar.get(1L, new Object[0]), ItemList.RC_Tie_Stone.get(1L, new Object[0]), 128, 8); - GT_Values.RA.addAssemblerRecipe(new ItemStack(Blocks.stone_slab, 3, 7), ItemList.RC_Rebar.get(1L, new Object[0]), ItemList.RC_Tie_Stone.get(1L, new Object[0]), 128, 8); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Copper, 9L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Lead, 2L), GT_Values.NF, ItemList.RC_ShuntingWire.get(4L, new Object[0]), 1600, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 9L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Lead, 2L), GT_Values.NF, ItemList.RC_ShuntingWire.get(4L, new Object[0]), 1600, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 3L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 3L), Materials.Blaze.getMolten(432L), ItemList.RC_Rail_HS.get(8L, new Object[0]), 400, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.RC_Rail_Standard.get(3L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 3L), Materials.Redstone.getMolten(432L), ItemList.RC_Rail_Adv.get(8L, new Object[0]), 400, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.RC_Rail_Standard.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.Copper, 1L), ItemList.RC_Rail_Electric.get(1L, new Object[0]), 50, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.RC_Rail_Standard.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.AnnealedCopper, 1L), ItemList.RC_Rail_Electric.get(1L, new Object[0]), 50, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.RC_Tie_Wood.get(6L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L), ItemList.RC_Rail_Wooden.get(6L, new Object[0]), 400, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.RC_Tie_Wood.get(6L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L), ItemList.RC_Rail_Wooden.get(6L, new Object[0]), 400, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.RC_Tie_Wood.get(4L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), ItemList.RC_Bed_Wood.get(1L, new Object[0]), 200, 4); - GT_Values.RA.addAssemblerRecipe(ItemList.RC_Tie_Stone.get(4L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), ItemList.RC_Bed_Stone.get(1L, new Object[0]), 200, 4); for (ItemStack tRail : new ItemStack[]{ItemList.RC_Rail_Standard.get(6L, new Object[0]), ItemList.RC_Rail_Adv.get(6L, new Object[0]), ItemList.RC_Rail_Reinforced.get(6L, new Object[0]), ItemList.RC_Rail_Electric.get(6L, new Object[0]), ItemList.RC_Rail_HS.get(6L, new Object[0]), ItemList.RC_Rail_Wooden.get(6L, new Object[0])}) { for (ItemStack tBed : new ItemStack[]{ItemList.RC_Bed_Wood.get(1L, new Object[0]), ItemList.RC_Bed_Stone.get(1L, new Object[0])}) { GT_Values.RA.addAssemblerRecipe(tBed, tRail, GT_ModHandler.getRecipeOutput(new ItemStack[]{tRail, GT_Values.NI, tRail, tRail, tBed, tRail, tRail, GT_Values.NI, tRail}), 400, 4); @@ -773,79 +526,6 @@ public void run() { GT_Values.RA.addAssemblerRecipe(tBed, tRail, Materials.Redstone.getMolten(288L), GT_ModHandler.getRecipeOutput(new ItemStack[]{tRail, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), tRail, tRail, tBed, tRail, tRail, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), tRail}), 400, 4); } } - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getIC2Item("carbonFiber", 2L), ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), GT_ModHandler.getIC2Item("carbonMesh", 1L), 800, 2); - - GT_Values.RA.addAssemblerRecipe(ItemList.NC_SensorCard.getWildcard(1L, new Object[0]), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), ItemList.Circuit_Basic.get(3L, new Object[0]), 1600, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 4L), GT_ModHandler.getIC2Item("generator", 1L), GT_ModHandler.getIC2Item("waterMill", 2L), 6400, 8); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 5L), new ItemStack(Blocks.chest, 1, 32767), new ItemStack(Blocks.hopper), 800, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 5L), new ItemStack(Blocks.trapped_chest, 1, 32767), new ItemStack(Blocks.hopper), 800, 2); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 5L), new ItemStack(Blocks.chest, 1, 32767), new ItemStack(Blocks.hopper), 800, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 5L), new ItemStack(Blocks.trapped_chest, 1, 32767), new ItemStack(Blocks.hopper), 800, 2); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Magnalium, 2L), GT_ModHandler.getIC2Item("generator", 1L), GT_ModHandler.getIC2Item("windMill", 1L), 6400, 8); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), new ItemStack(Items.blaze_powder, 1, 0), new ItemStack(Items.ender_eye, 1, 0), 400, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 6L), new ItemStack(Items.blaze_rod, 1, 0), new ItemStack(Items.ender_eye, 6, 0), 2500, 2); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.gear, Materials.CobaltBrass, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Diamond, 1L), ItemList.Component_Sawblade_Diamond.get(1L, new Object[0]), 1600, 2); -// GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Flint, 5L), new ItemStack(Blocks.tnt, 3, 32767), GT_ModHandler.getIC2Item("industrialTnt", 5L), 800, 2); -// GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 4L), new ItemStack(Blocks.sand, 4, 32767), new ItemStack(Blocks.tnt, 1), 400, 1); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 4L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 4L), new ItemStack(Blocks.redstone_lamp, 1), 400, 1); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), new ItemStack(Blocks.redstone_torch, 1), 400, 1); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 4L), new ItemStack(Items.compass, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 4L), new ItemStack(Items.compass, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gold, 4L), new ItemStack(Items.clock, 1), 400, 4); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), new ItemStack(Blocks.torch, 2), 400, 1); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TricalciumPhosphate, 1L), new ItemStack(Blocks.torch, 6), 400, 1); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), ItemList.IC2_Resin.get(1L, new Object[0]), new ItemStack(Blocks.torch, 6), 400, 1); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 8L), new ItemStack(Items.flint, 1), ItemList.IC2_Compressed_Coal_Ball.get(1L, new Object[0]), 400, 4); - if (!GT_Mod.gregtechproxy.mDisableIC2Cables) { - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getIC2Item("tinCableItem", 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1L), GT_ModHandler.getIC2Item("insulatedTinCableItem", 1L), 100, 2); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getIC2Item("copperCableItem", 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 1L), GT_ModHandler.getIC2Item("insulatedCopperCableItem", 1L), 100, 2); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getIC2Item("goldCableItem", 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 2L), GT_ModHandler.getIC2Item("insulatedGoldCableItem", 1L), 200, 2); - GT_Values.RA.addAssemblerRecipe(GT_ModHandler.getIC2Item("ironCableItem", 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 3L), GT_ModHandler.getIC2Item("insulatedIronCableItem", 1L), 300, 2); - } - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Wood, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), new ItemStack(Items.wooden_sword, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Stone, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), new ItemStack(Items.stone_sword, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), new ItemStack(Items.iron_sword, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), new ItemStack(Items.golden_sword, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Diamond, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), new ItemStack(Items.diamond_sword, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Bronze, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), ItemList.Tool_Sword_Bronze.getUndamaged(1L, new Object[0]), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadSword, Materials.Steel, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), ItemList.Tool_Sword_Steel.getUndamaged(1L, new Object[0]), 100, 16); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Wood, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.wooden_pickaxe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Stone, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.stone_pickaxe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.iron_pickaxe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.golden_pickaxe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Diamond, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.diamond_pickaxe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Bronze, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), ItemList.Tool_Pickaxe_Bronze.getUndamaged(1L, new Object[0]), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadPickaxe, Materials.Steel, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), ItemList.Tool_Pickaxe_Steel.getUndamaged(1L, new Object[0]), 100, 16); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Wood, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.wooden_shovel, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Stone, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.stone_shovel, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.iron_shovel, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.golden_shovel, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Diamond, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.diamond_shovel, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Bronze, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), ItemList.Tool_Shovel_Bronze.getUndamaged(1L, new Object[0]), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadShovel, Materials.Steel, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), ItemList.Tool_Shovel_Steel.getUndamaged(1L, new Object[0]), 100, 16); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Wood, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.wooden_axe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Stone, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.stone_axe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.iron_axe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.golden_axe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Diamond, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.diamond_axe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Bronze, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), ItemList.Tool_Axe_Bronze.getUndamaged(1L, new Object[0]), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadAxe, Materials.Steel, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), ItemList.Tool_Axe_Steel.getUndamaged(1L, new Object[0]), 100, 16); - - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Wood, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.wooden_hoe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Stone, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.stone_hoe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.iron_hoe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.golden_hoe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Diamond, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), new ItemStack(Items.diamond_hoe, 1), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Bronze, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), ItemList.Tool_Hoe_Bronze.getUndamaged(1L, new Object[0]), 100, 16); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.toolHeadHoe, Materials.Steel, 1L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 2L), ItemList.Tool_Hoe_Steel.getUndamaged(1L, new Object[0]), 100, 16); - GT_ModHandler.removeRecipe(new ItemStack[]{new ItemStack(Items.lava_bucket), ItemList.Cell_Empty.get(1L, new Object[0])}); GT_ModHandler.removeRecipe(new ItemStack[]{new ItemStack(Items.water_bucket), ItemList.Cell_Empty.get(1L, new Object[0])}); diff --git a/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java b/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java index 7d8f4d93f3..a2dcc45dda 100644 --- a/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java +++ b/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java @@ -71,7 +71,7 @@ public TemplateRecipeHandler newInstance() { public void loadCraftingRecipes(String outputId, Object... results) { if (outputId.equals(getOverlayIdentifier())) { for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { - if (!tRecipe.mHidden) { + if (!tRecipe.mHidden && tRecipe.isEnabled()) { this.arecipes.add(new CachedDefaultRecipe(tRecipe)); }else{ this.arecipes.remove(new CachedDefaultRecipe(tRecipe)); @@ -103,7 +103,7 @@ public void loadCraftingRecipes(ItemStack aResult) { } } for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { - if (!tRecipe.mHidden) { + if (!tRecipe.mHidden && tRecipe.isEnabled()) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tResults) { if (tNEIRecipe.contains(tNEIRecipe.mOutputs, tStack)) { @@ -145,7 +145,7 @@ public void loadUsageRecipes(ItemStack aInput) { } } for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { - if (!tRecipe.mHidden) { + if (!tRecipe.mHidden && tRecipe.isEnabled()) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tInputs) { if (tNEIRecipe.contains(tNEIRecipe.mInputs, tStack)) { diff --git a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java index 61424c314a..0aa9624e30 100644 --- a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java +++ b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java @@ -76,7 +76,7 @@ public TemplateRecipeHandler newInstance() { public void loadCraftingRecipes(String outputId, Object... results) { if (outputId.equals(getOverlayIdentifier())) { for (GT_MachineRecipe tRecipe : getSortedRecipes()) { - if (!tRecipe.mHidden) { + if (!tRecipe.mHidden && tRecipe.isEnabled()) { this.arecipes.add(new CachedDefaultRecipe(tRecipe)); } } @@ -106,7 +106,7 @@ public void loadCraftingRecipes(ItemStack aResult) { } } for (GT_MachineRecipe tRecipe : getSortedRecipes()) { - if (!tRecipe.mHidden) { + if (!tRecipe.mHidden && tRecipe.isEnabled()) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tResults) { if (tNEIRecipe.contains(tNEIRecipe.mOutputs, tStack)) { @@ -140,7 +140,7 @@ public void loadUsageRecipes(ItemStack aInput) { } } for (GT_MachineRecipe tRecipe : getSortedRecipes()) { - if (!tRecipe.mHidden) { + if (!tRecipe.mHidden && tRecipe.isEnabled()) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tInputs) { if (tNEIRecipe.contains(tNEIRecipe.mInputs, tStack)) { diff --git a/src/main/java/gregtech/nei/NEI_GT_Config.java b/src/main/java/gregtech/nei/NEI_GT_Config.java index 5dfb4eb366..3257473472 100644 --- a/src/main/java/gregtech/nei/NEI_GT_Config.java +++ b/src/main/java/gregtech/nei/NEI_GT_Config.java @@ -3,7 +3,6 @@ import codechicken.nei.api.IConfigureNEI; import cpw.mods.fml.common.FMLCommonHandler; import gregtech.api.recipes.GT_RecipeMap; -import gregtech.api.util.GT_Recipe; public class NEI_GT_Config implements IConfigureNEI { diff --git a/src/main/resources/assets/gregtech/recipes/Explanation.cfg b/src/main/resources/assets/gregtech/recipes/Explanation.cfg index 11da3d4639..59aafeca43 100644 --- a/src/main/resources/assets/gregtech/recipes/Explanation.cfg +++ b/src/main/resources/assets/gregtech/recipes/Explanation.cfg @@ -29,6 +29,8 @@ and the meaning may depend on the machine it is used in. "enableCondition" - string to indicate the recipe should be enabled based on a specified condition, such as whether a certain mod is loaded, a fluid exists, or a material has a "parent mod". "hidden" - if true, hides the recipe from NEI. +"useCuttingFluids" - if true, automatically generates copies of the recipe that use the appropriate amount of lubricant, water, or distilled water, + as well as adjusted durations. NBT tags: In an input or output item (or even an input alternate), these can be specified as an array of objects, with "tag"/"tagName"/"name"/"key", "type", and "value". diff --git a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json index 5ccb947ec1..fcfc4b8ae6 100644 --- a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json +++ b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json @@ -73,4 +73,8 @@ "duration": 400, "EUt": 16}, +{"inputs":[{"alts":[{"ore": "dustLead"}, {"ore": "ingotLead"}], "count": 1}, {"ore": "dustObsidian", "count": 2}], +"outputs":[{"item": "GTItemList:TE_Hardened_Glass", "count": 2}], +"duration": 200, +"EUt": 16}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/assembler.json b/src/main/resources/assets/gregtech/recipes/assembler.json index c1099090d4..8b25411cb2 100644 --- a/src/main/resources/assets/gregtech/recipes/assembler.json +++ b/src/main/resources/assets/gregtech/recipes/assembler.json @@ -599,4 +599,707 @@ "duration": 800, "EUt": 16}, +{"inputs": [{"ore": "plateGold", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "minecraft:light_weighted_pressure_plate", "count": 1}], +"duration":200, +"EUt":4}, +{"inputs": [{"ore": "plateIron", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "minecraft:heavy_weighted_pressure_plate", "count": 1}], +"duration":200, +"EUt":4}, +{"inputs": [{"ore": "plateIron", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "minecraft:iron_door", "count": 1}], +"duration":600, +"EUt":4}, +{"inputs": [{"ore": "plateIron", "count": 7}, {"item": "gregtech:gt.integrated_circuit:7", "count": 0}], +"outputs":[{"item": "minecraft:cauldron", "count": 1}], +"duration":700, +"EUt":4}, +{"inputs": [{"ore": "stickIron", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "IC2ItemList:ironFence", "count": 1}], +"duration":100, +"EUt":4}, +{"inputs": [{"ore": "stickIron", "count": 3}, {"item": "gregtech:gt.integrated_circuit:3", "count": 0}], +"outputs":[{"item": "minecraft:iron_bars", "count": 4}], +"duration":300, +"EUt":4}, +{"inputs": [{"ore": "plateWroughtIron", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "minecraft:heavy_weighted_pressure_plate", "count": 1}], +"duration":200, +"EUt":4}, +{"inputs": [{"ore": "plateWroughtIron", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "minecraft:iron_door", "count": 1}], +"duration":600, +"EUt":4}, +{"inputs": [{"ore": "plateWroughtIron", "count": 7}, {"item": "gregtech:gt.integrated_circuit:7", "count": 0}], +"outputs":[{"item": "minecraft:cauldron", "count": 1}], +"duration":700, +"EUt":4}, +{"inputs": [{"ore": "stickWroughtIron", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "IC2ItemList:ironFence", "count": 1}], +"duration":100, +"EUt":4}, +{"inputs": [{"ore": "stickWroughtIron", "count": 3}, {"item": "gregtech:gt.integrated_circuit:3", "count": 0}], +"outputs":[{"item": "minecraft:iron_bars", "count": 4}], +"duration":300, +"EUt":4}, +{"inputs": [{"ore": "stickWood", "count": 3}, {"item": "gregtech:gt.integrated_circuit:3", "count": 0}], +"outputs":[{"item": "minecraft:fence", "count": 1}], +"duration":300, +"EUt":4}, +{"inputs": [{"ore": "stickWood", "count": 2}, {"ore": "ringIron", "count": 2}], +"outputs":[{"item": "minecraft:tripwire_hook", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"ore": "stickWood", "count": 2}, {"ore": "ringWroughtIron", "count": 2}], +"outputs":[{"item": "minecraft:tripwire_hook", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"ore": "stickWood", "count": 3}, {"item": "minecraft:string:*", "count": 3}], +"outputs":[{"item": "minecraft:bow", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"ore": "plateIron", "count": 3}, {"item": "GTItemList:Component_Minecart_Wheels_Iron", "count": 2}], +"outputs":[{"item": "minecraft:minecart", "count": 1}], +"duration":500, +"EUt":2}, +{"inputs": [{"ore": "plateWroughtIron", "count": 3}, {"item": "GTItemList:Component_Minecart_Wheels_Iron", "count": 2}], +"outputs":[{"item": "minecraft:minecart", "count": 1}], +"duration":400, +"EUt":2}, +{"inputs": [{"ore": "plateSteel", "count": 3}, {"item": "GTItemList:Component_Minecart_Wheels_Steel", "count": 2}], +"outputs":[{"item": "minecraft:minecart", "count": 1}], +"duration":300, +"EUt":2}, +{"inputs": [{"ore": "stickIron", "count": 1}, {"ore": "ringIron", "count": 2}], +"outputs":[{"item": "GTItemList:Component_Minecart_Wheels_Iron", "count": 1}], +"duration":500, +"EUt":2}, +{"inputs": [{"ore": "stickWroughtIron", "count": 1}, {"ore": "ringWroughtIron", "count": 2}], +"outputs":[{"item": "GTItemList:Component_Minecart_Wheels_Iron", "count": 1}], +"duration":400, +"EUt":2}, +{"inputs": [{"ore": "stickSteel", "count": 1}, {"ore": "ringSteel", "count": 2}], +"outputs":[{"item": "GTItemList:Component_Minecart_Wheels_Steel", "count": 1}], +"duration":300, +"EUt":2}, +{"inputs": [{"item": "minecraft:minecart", "count": 1}, {"item": "minecraft:hopper:*", "count": 1}], +"outputs":[{"item": "minecraft:hopper_minecart", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "minecraft:minecart", "count": 1}, {"item": "minecraft:tnt:*", "count": 1}], +"outputs":[{"item": "minecraft:tnt_minecart", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "minecraft:minecart", "count": 1}, {"item": "minecraft:chest:*", "count": 1}], +"outputs":[{"item": "minecraft:chest_minecart", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "minecraft:minecart", "count": 1}, {"item": "minecraft:trapped_chest:*", "count": 1}], +"outputs":[{"item": "minecraft:chest_minecart", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "minecraft:minecart", "count": 1}, {"item": "minecraft:furnace:*", "count": 1}], +"outputs":[{"item": "minecraft:furnace_minecart", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "minecraft:tripwire_hook", "count": 1}, {"item": "minecraft:chest:*", "count": 1}], +"outputs":[{"item": "minecraft:trapped_chest", "count": 1}], +"duration":200, +"EUt":4}, +{"inputs": [{"item": "minecraft:stone:0", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"outputs":[{"item": "minecraft:stonebrick:0", "count": 1}], +"duration":50, +"EUt":4}, +{"inputs": [{"item": "minecraft:sandstone:0", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "minecraft:sandstone:2", "count": 1}], +"duration":50, +"EUt":4}, +{"inputs": [{"item": "minecraft:sandstone:1", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "minecraft:sandstone:0", "count": 1}], +"duration":50, +"EUt":4}, +{"inputs": [{"item": "minecraft:sandstone:2", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "minecraft:sandstone:0", "count": 1}], +"duration":50, +"EUt":4}, +{"inputs": [{"ore": "plateIron", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "IC2ItemList:machine", "count": 1}], +"duration":25, +"EUt":16}, +{"inputs": [{"ore": "plateWroughtIron", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_ULV", "count": 1}], +"duration":25, +"EUt":16}, +{"inputs": [{"ore": "plateSteel", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_LV", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateAluminium", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_MV", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateStainlessSteel", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_HV", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateTitanium", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_EV", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateTungstenSteel", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_IV", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateChrome", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_LuV", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateIridium", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_ZPM", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateOsmium", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_UV", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateNeutronium", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_MAX", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateInvar", "count": 6}, {"ore": "frameGtInvar", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_HeatProof", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt02Cupronickel", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_Coil_Cupronickel", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt02Kanthal", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_Coil_Kanthal", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt02Nichrome", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_Coil_Nichrome", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt02TungstenSteel", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_Coil_TungstenSteel", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt02HSSG", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_Coil_HSSG", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt02Naquadah", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_Coil_Naquadah", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt02NaquadahAlloy", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_Coil_NaquadahAlloy", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt02Superconductor", "count": 8}, {"item": "gregtech:gt.integrated_circuit:8", "count": 0}], +"outputs":[{"item": "GTItemList:Casing_Coil_Superconductor", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateSteel", "count": 6}, {"ore": "frameGtSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_SolidSteel", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateAluminium", "count": 6}, {"ore": "frameGtAluminium", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_FrostProof", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateTungstenSteel", "count": 6}, {"ore": "frameGtTungstenSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_RobustTungstenSteel", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateStainlessSteel", "count": 6}, {"ore": "frameGtStainlessSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_CleanStainlessSteel", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateTitanium", "count": 6}, {"ore": "frameGtTitanium", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_StableTitanium", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateOsmiridium", "count": 6}, {"ore": "frameGtOsmiridium", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_MiningOsmiridium", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateTungstenSteel", "count": 6}, {"item": "GTItemList:Casing_LuV", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_Fusion", "count": 1}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateMagnalium", "count": 6}, {"ore": "frameGtBlueSteel", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_Turbine", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateStainlessSteel", "count": 6}, {"item": "GTItemList:Casing_Turbine", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_Turbine1", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateTitanium", "count": 6}, {"item": "GTItemList:Casing_Turbine", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_Turbine2", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateTungstenSteel", "count": 6}, {"item": "GTItemList:Casing_Turbine", "count": 1}], +"outputs":[{"item": "GTItemList:Casing_Turbine3", "count": 2}], +"duration":50, +"EUt":16}, +{"inputs": [{"item": "GTItemList:Casing_SolidSteel", "count": 1}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"inputFluids":[{"molten": "Polytetrafluoroethylene", "amount": 216}], +"outputs":[{"item": "GTItemList:Casing_Chemically_Inert", "count": 1}], +"duration":50, +"EUt":16}, + +{"inputs": [{"ore": "cableGt01Lead", "count": 2}, {"item": "GTItemList:Casing_ULV", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_ULV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":25, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Tin", "count": 2}, {"item": "GTItemList:Casing_LV", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_LV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Copper", "count": 2}, {"item": "GTItemList:Casing_MV", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_MV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01AnnealedCopper", "count": 2}, {"item": "GTItemList:Casing_MV", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_MV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Gold", "count": 2}, {"item": "GTItemList:Casing_HV", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_HV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Aluminium", "count": 2}, {"item": "GTItemList:Casing_EV", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_EV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Tungsten", "count": 2}, {"item": "GTItemList:Casing_IV", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_IV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01VanadiumGallium", "count": 2}, {"item": "GTItemList:Casing_LuV", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_LuV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Naquadah", "count": 2}, {"item": "GTItemList:Casing_ZPM", "count": 1}], +"inputFluids":[{"molten": "Polytetrafluoroethylene", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_ZPM", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt04NaquadahAlloy", "count": 2}, {"item": "GTItemList:Casing_UV", "count": 1}], +"inputFluids":[{"molten": "Polytetrafluoroethylene", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_UV", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt01Superconductor", "count": 2}, {"item": "GTItemList:Casing_MAX", "count": 1}], +"inputFluids":[{"molten": "Polytetrafluoroethylene", "amount": 288}], +"outputs":[{"item": "GTItemList:Hull_MAX", "count": 1}], +"enableCondition": "HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Lead", "count": 2}, {"item": "GTItemList:Casing_ULV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_ULV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":25, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Tin", "count": 2}, {"item": "GTItemList:Casing_LV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_LV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Copper", "count": 2}, {"item": "GTItemList:Casing_MV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_MV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01AnnealedCopper", "count": 2}, {"item": "GTItemList:Casing_MV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_MV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Gold", "count": 2}, {"item": "GTItemList:Casing_HV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_HV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Aluminium", "count": 2}, {"item": "GTItemList:Casing_EV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_EV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Tungsten", "count": 2}, {"item": "GTItemList:Casing_IV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_IV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01VanadiumGallium", "count": 2}, {"item": "GTItemList:Casing_LuV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_LuV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "cableGt01Naquadah", "count": 2}, {"item": "GTItemList:Casing_ZPM", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_ZPM", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt04NaquadahAlloy", "count": 2}, {"item": "GTItemList:Casing_UV", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_UV", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "wireGt01Superconductor", "count": 2}, {"item": "GTItemList:Casing_MAX", "count": 1}], +"outputs":[{"item": "GTItemList:Hull_MAX", "count": 1}], +"enableCondition": "!HardMachineCasings", +"duration":50, +"EUt":16}, + +{"inputs": [{"ore": "cableGt01Tin", "count": 1}, {"ore": "plateBatteryAlloy", "count": 1}], +"inputFluids":[{"molten": "Plastic", "amount": 144}], +"outputs":[{"item": "GTItemList:Battery_Hull_LV", "count": 1}], +"duration":800, +"EUt":1}, +{"inputs": [{"ore": "cableGt01Copper", "count": 2}, {"ore": "plateBatteryAlloy", "count": 3}], +"inputFluids":[{"molten": "Plastic", "amount": 432}], +"outputs":[{"item": "GTItemList:Battery_Hull_MV", "count": 1}], +"duration":1600, +"EUt":2}, +{"inputs": [{"ore": "cableGt01AnnealedCopper", "count": 2}, {"ore": "plateBatteryAlloy", "count": 3}], +"inputFluids":[{"molten": "Plastic", "amount": 432}], +"outputs":[{"item": "GTItemList:Battery_Hull_MV", "count": 1}], +"duration":1600, +"EUt":2}, +{"inputs": [{"ore": "cableGt01Gold", "count": 4}, {"ore": "plateBatteryAlloy", "count": 9}], +"inputFluids":[{"molten": "Plastic", "amount": 1296}], +"outputs":[{"item": "GTItemList:Battery_Hull_HV", "count": 1}], +"duration":3200, +"EUt":4}, + +{"inputs": [{"item": "minecraft:string:*", "count": 4}, {"item": "minecraft:slime_ball:*", "count": 1}], +"outputs":[{"item": "minecraft:lead", "count": 2}], +"duration":200, +"EUt":2}, +{"inputs": [{"item": "GTItemList:IC2_Compressed_Coal_Ball", "count": 8}, {"item": "minecraft:brick_block", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Compressed_Coal_Chunk", "count": 1}], +"duration":400, +"EUt":4}, + +{"inputs": [{"item": "IC2ItemList:waterMill", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "IC2ItemList:generator", "count": 1}], +"duration":6400, +"EUt":8}, +{"inputs": [{"item": "IC2ItemList:batPack:*", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "GTItemList:IC2_ReBattery", "count": 6}], +"duration":800, +"EUt":4}, +{"inputs": [{"item": "minecraft:stone_slab:0", "count": 3}, {"item": "GTItemList:RC_Rebar", "count": 1}], +"outputs":[{"item": "GTItemList:RC_Tie_Stone", "count": 1}], +"duration":128, +"EUt":8}, +{"inputs": [{"item": "minecraft:stone_slab:7", "count": 3}, {"item": "GTItemList:RC_Rebar", "count": 1}], +"outputs":[{"item": "GTItemList:RC_Tie_Stone", "count": 1}], +"duration":128, +"EUt":8}, +{"inputs": [{"ore": "wireGt01Copper", "count": 9}, {"ore": "plateLead", "count": 2}], +"outputs":[{"item": "GTItemList:RC_ShuntingWire", "count": 4}], +"duration":1600, +"EUt":4}, +{"inputs": [{"ore": "wireGt01AnnealedCopper", "count": 9}, {"ore": "plateLead", "count": 2}], +"outputs":[{"item": "GTItemList:RC_ShuntingWire", "count": 4}], +"duration":1600, +"EUt":4}, +{"inputs": [{"ore": "ingotSteel", "count": 3}, {"ore": "plateGold", "count": 3}], +"inputFluids":[{"molten": "Blaze", "amount": 432}], +"outputs":[{"item": "GTItemList:RC_Rail_HS", "count": 8}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "GTItemList:RC_Rail_Standard", "count": 3}, {"ore": "plateGold", "count": 3}], +"inputFluids":[{"molten": "Redstone", "amount": 432}], +"outputs":[{"item": "GTItemList:RC_Rail_Adv", "count": 8}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "GTItemList:RC_Rail_Standard", "count": 1}, {"ore": "wireGt01Copper", "count": 1}], +"outputs":[{"item": "GTItemList:RC_Rail_Electric", "count": 1}], +"duration":50, +"EUt":4}, +{"inputs": [{"item": "GTItemList:RC_Rail_Standard", "count": 1}, {"ore": "wireGt01AnnealedCopper", "count": 1}], +"outputs":[{"item": "GTItemList:RC_Rail_Electric", "count": 1}], +"duration":50, +"EUt":4}, +{"inputs": [{"item": "GTItemList:RC_Tie_Wood", "count": 6}, {"ore": "plateIron", "count": 1}], +"outputs":[{"item": "GTItemList:RC_Rail_Wooden", "count": 6}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "GTItemList:RC_Tie_Wood", "count": 6}, {"ore": "plateWroughtIron", "count": 1}], +"outputs":[{"item": "GTItemList:RC_Rail_Wooden", "count": 6}], +"duration":400, +"EUt":4}, +{"inputs": [{"item": "GTItemList:RC_Tie_Wood", "count": 4}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Bed_Wood", "count": 1}], +"duration":200, +"EUt":4}, +{"inputs": [{"item": "GTItemList:RC_Tie_Stone", "count": 4}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Bed_Stone", "count": 1}], +"duration":200, +"EUt":4}, + +{"inputs": [{"item": "IC2ItemList:carbonFiber", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "IC2ItemList:carbonMesh", "count": 1}], +"duration":800, +"EUt":2}, + +{"inputs": [{"item": "gregtech:gt.sensorcard:*", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "GTItemList:Circuit_Basic", "count": 3}], +"duration":1600, +"EUt":2}, +{"inputs": [{"ore": "plateAluminium", "count": 4}, {"item": "IC2ItemList:generator", "count": 1}], +"outputs":[{"item": "IC2ItemList:waterMill", "count": 2}], +"duration":6400, +"EUt":8}, + +{"inputs": [{"alts": [{"ore": "plateIron"}, {"ore": "plateWroughtIron"}], "count": 5}, {"alts": [{"item": "minecraft:chest:*"}, {"item": "minecraft:trapped_chest:*"}], "count": 1}], +"outputs": [{"item": "minecraft:hopper", "count": 1}], +"duration": 800, +"EUt": 2}, + +{"inputs": [{"ore": "plateMagnalium", "count": 2}, {"item": "IC2ItemList:generator", "count": 1}], +"outputs":[{"item": "IC2ItemList:windMill", "count": 1}], +"duration":6400, +"EUt":8}, + +{"inputs": [{"ore": "gemEnderPearl", "count": 1}, {"item": "minecraft:blaze_powder:0", "count": 1}], +"outputs":[{"item": "minecraft:ender_eye:0", "count": 1}], +"duration":400, +"EUt":2}, +{"inputs": [{"ore": "gemEnderPearl", "count": 6}, {"item": "minecraft:blaze_rod:0", "count": 1}], +"outputs":[{"item": "minecraft:ender_eye:0", "count": 6}], +"duration":2500, +"EUt":2}, +{"inputs": [{"ore": "gearCobaltBrass", "count": 1}, {"ore": "dustDiamond", "count": 1}], +"outputs":[{"item": "GTItemList:Component_Sawblade_Diamond", "count": 1}], +"duration":1600, +"EUt":2}, +{"inputs": [{"ore": "dustRedstone", "count": 4}, {"ore": "dustGlowstone", "count": 4}], +"outputs":[{"item": "minecraft:redstone_lamp", "count": 1}], +"duration":400, +"EUt":1}, +{"inputs": [{"ore": "dustRedstone", "count": 1}, {"ore": "stickWood", "count": 1}], +"outputs":[{"item": "minecraft:redstone_torch", "count": 1}], +"duration":400, +"EUt":1}, +{"inputs": [{"ore": "dustRedstone", "count": 1}, {"ore": "plateIron", "count": 4}], +"outputs":[{"item": "minecraft:compass", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"ore": "dustRedstone", "count": 1}, {"ore": "plateWroughtIron", "count": 4}], +"outputs":[{"item": "minecraft:compass", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"ore": "dustRedstone", "count": 1}, {"ore": "plateGold", "count": 4}], +"outputs":[{"item": "minecraft:clock", "count": 1}], +"duration":400, +"EUt":4}, +{"inputs": [{"ore": "stickWood", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"outputs":[{"item": "minecraft:torch", "count": 2}], +"duration":400, +"EUt":1}, +{"inputs": [{"ore": "stickWood", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"outputs":[{"item": "minecraft:torch", "count": 6}], +"duration":400, +"EUt":1}, +{"inputs": [{"ore": "stickWood", "count": 1}, {"item": "GTItemList:IC2_Resin", "count": 1}], +"outputs":[{"item": "minecraft:torch", "count": 6}], +"duration":400, +"EUt":1}, +{"inputs": [{"ore": "dustCoal", "count": 8}, {"item": "minecraft:flint", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Compressed_Coal_Ball", "count": 1}], +"duration":400, +"EUt":4}, + +{"inputs": [{"item": "IC2ItemList:tinCableItem", "count": 1}, {"ore": "ingotRubber", "count": 1}], +"outputs":[{"item": "IC2ItemList:insulatedTinCableItem", "count": 1}], +"enableCondition": "!DisableIC2Cables", +"duration":100, +"EUt":2}, +{"inputs": [{"item": "IC2ItemList:copperCableItem", "count": 1}, {"ore": "ingotRubber", "count": 1}], +"outputs":[{"item": "IC2ItemList:insulatedCopperCableItem", "count": 1}], +"enableCondition": "!DisableIC2Cables", +"duration":100, +"EUt":2}, +{"inputs": [{"item": "IC2ItemList:goldCableItem", "count": 1}, {"ore": "ingotRubber", "count": 2}], +"outputs":[{"item": "IC2ItemList:insulatedGoldCableItem", "count": 1}], +"enableCondition": "!DisableIC2Cables", +"duration":200, +"EUt":2}, +{"inputs": [{"item": "IC2ItemList:ironCableItem", "count": 1}, {"ore": "ingotRubber", "count": 3}], +"outputs":[{"item": "IC2ItemList:insulatedIronCableItem", "count": 1}], +"enableCondition": "!DisableIC2Cables", +"duration":300, +"EUt":2}, +{"inputs": [{"ore": "toolHeadSwordWood", "count": 1}, {"ore": "stickWood", "count": 1}], +"outputs":[{"item": "minecraft:wooden_sword", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadSwordStone", "count": 1}, {"ore": "stickWood", "count": 1}], +"outputs":[{"item": "minecraft:stone_sword", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadSwordIron", "count": 1}, {"ore": "stickWood", "count": 1}], +"outputs":[{"item": "minecraft:iron_sword", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadSwordGold", "count": 1}, {"ore": "stickWood", "count": 1}], +"outputs":[{"item": "minecraft:golden_sword", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadSwordDiamond", "count": 1}, {"ore": "stickWood", "count": 1}], +"outputs":[{"item": "minecraft:diamond_sword", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadSwordBronze", "count": 1}, {"ore": "stickWood", "count": 1}], +"outputs":[{"item": "GTItemList:Tool_Sword_Bronze", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadSwordSteel", "count": 1}, {"ore": "stickWood", "count": 1}], +"outputs":[{"item": "GTItemList:Tool_Sword_Steel", "count": 1}], +"duration":100, +"EUt":16}, + +{"inputs": [{"ore": "toolHeadPickaxeWood", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:wooden_pickaxe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadPickaxeStone", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:stone_pickaxe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadPickaxeIron", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:iron_pickaxe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadPickaxeGold", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:golden_pickaxe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadPickaxeDiamond", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:diamond_pickaxe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadPickaxeBronze", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "GTItemList:Tool_Pickaxe_Bronze", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadPickaxeSteel", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "GTItemList:Tool_Pickaxe_Steel", "count": 1}], +"duration":100, +"EUt":16}, + +{"inputs": [{"ore": "toolHeadShovelWood", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:wooden_shovel", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadShovelStone", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:stone_shovel", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadShovelIron", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:iron_shovel", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadShovelGold", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:golden_shovel", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadShovelDiamond", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:diamond_shovel", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadShovelBronze", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "GTItemList:Tool_Shovel_Bronze", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadShovelSteel", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "GTItemList:Tool_Shovel_Steel", "count": 1}], +"duration":100, +"EUt":16}, + +{"inputs": [{"ore": "toolHeadAxeWood", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:wooden_axe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadAxeStone", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:stone_axe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadAxeIron", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:iron_axe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadAxeGold", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:golden_axe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadAxeDiamond", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:diamond_axe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadAxeBronze", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "GTItemList:Tool_Axe_Bronze", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadAxeSteel", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "GTItemList:Tool_Axe_Steel", "count": 1}], +"duration":100, +"EUt":16}, + +{"inputs": [{"ore": "toolHeadHoeWood", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:wooden_hoe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadHoeStone", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:stone_hoe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadHoeIron", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:iron_hoe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadHoeGold", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:golden_hoe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadHoeDiamond", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "minecraft:diamond_hoe", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadHoeBronze", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "GTItemList:Tool_Hoe_Bronze", "count": 1}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "toolHeadHoeSteel", "count": 1}, {"ore": "stickWood", "count": 2}], +"outputs":[{"item": "GTItemList:Tool_Hoe_Steel", "count": 1}], +"duration":100, +"EUt":16}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/autoclave.json b/src/main/resources/assets/gregtech/recipes/autoclave.json index 570acfec2f..0c0f636aa3 100644 --- a/src/main/resources/assets/gregtech/recipes/autoclave.json +++ b/src/main/resources/assets/gregtech/recipes/autoclave.json @@ -80,4 +80,10 @@ "outputs":[{"item": "GTItemList:Tool_DataOrb", "count": 1}], "duration": 12000, "EUt": 320}, + +{"inputs": [{"ore": "gemNetherStar", "count": 1}], +"inputFluids":[{"molten": "Neutronium", "amount": 288}], +"outputs":[{"item": "GTItemList:Gravistar", "count": 1}], +"duration": 480, +"EUt": 7680}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/bender.json b/src/main/resources/assets/gregtech/recipes/bender.json new file mode 100644 index 0000000000..8f6c2b2e19 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/bender.json @@ -0,0 +1,103 @@ +[ + +{"inputs": [{"item": "GTItemList:IC2_Mixed_Metal_Ingot", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"ore": "plateAlloyAdvanced", "count": 1}], +"duration": 100, +"EUt": 5}, +{"inputs": [{"ore": "stickAluminium", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rail_Standard", "count": 2}], +"duration": 200, +"EUt": 5}, +{"inputs": [{"ore": "stickIron", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rail_Standard", "count": 4}], +"duration": 400, +"EUt": 5}, +{"inputs": [{"ore": "stickWroughtIron", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rail_Standard", "count": 5}], +"duration": 400, +"EUt": 5}, +{"inputs": [{"ore": "stickBronze", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rail_Standard", "count": 3}], +"duration": 300, +"EUt": 5}, +{"inputs": [{"ore": "stickSteel", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rail_Standard", "count": 8}], +"duration": 800, +"EUt": 5}, +{"inputs": [{"ore": "stickStainlessSteel", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rail_Standard", "count": 12}], +"duration": 1200, +"EUt": 5}, +{"inputs": [{"ore": "stickTitanium", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rail_Standard", "count": 16}], +"duration": 1600, +"EUt": 5}, +{"inputs": [{"ore": "stickTungstenSteel", "count": 6}, {"item": "gregtech:gt.integrated_circuit:6", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rail_Reinforced", "count": 24}], +"duration": 2400, +"EUt": 5}, +{"inputs": [{"ore": "stickAluminium", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rebar", "count": 4}], +"duration": 200, +"EUt": 5}, +{"inputs": [{"ore": "stickIron", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rebar", "count": 8}], +"duration": 400, +"EUt": 5}, +{"inputs": [{"ore": "stickWroughtIron", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rebar", "count": 10}], +"duration": 400, +"EUt": 5}, +{"inputs": [{"ore": "stickBronze", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rebar", "count": 8}], +"duration": 400, +"EUt": 5}, +{"inputs": [{"ore": "stickSteel", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rebar", "count": 16}], +"duration": 800, +"EUt": 5}, +{"inputs": [{"ore": "stickStainlessSteel", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rebar", "count": 24}], +"duration": 1200, +"EUt": 5}, +{"inputs": [{"ore": "stickTitanium", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rebar", "count": 32}], +"duration": 1600, +"EUt": 5}, +{"inputs": [{"ore": "stickTungstenSteel", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:RC_Rebar", "count": 48}], +"duration": 2400, +"EUt": 5}, +{"inputs": [{"ore": "plateTin", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 6}], +"duration": 1200, +"EUt": 5}, +{"inputs": [{"ore": "plateSteel", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 6}], +"duration": 1200, +"EUt": 5}, +{"inputs": [{"ore": "plateSteelMagnetic", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 6}], +"duration": 1200, +"EUt": 5}, +{"inputs": [{"ore": "platePolytetrafluoroethylene", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 6}], +"duration": 1200, +"EUt": 5}, +{"inputs": [{"ore": "plateIron", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "minecraft:bucket:0", "count": 4}], +"duration": 800, +"EUt": 5}, +{"inputs": [{"ore": "plateWroughtIron", "count": 12}, {"item": "gregtech:gt.integrated_circuit:12", "count": 0}], +"outputs":[{"item": "minecraft:bucket:0", "count": 4}], +"duration": 800, +"EUt": 5}, +{"inputs": [{"item": "GTItemList:IC2_Item_Casing_Iron", "count": 2}, {"item": "gregtech:gt.integrated_circuit:2", "count": 0}], +"outputs":[{"item": "IC2ItemList:fuelRod", "count": 1}], +"duration": 100, +"EUt": 5}, +{"inputs": [{"item": "GTItemList:IC2_Item_Casing_Tin", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"outputs":[{"item": "GTItemList:IC2_Food_Can_Empty", "count": 1}], +"duration": 100, +"EUt": 5}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_bath.json b/src/main/resources/assets/gregtech/recipes/chemical_bath.json index 847f25ca10..012adb2439 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_bath.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_bath.json @@ -175,4 +175,15 @@ "outputs": [{"ore": "plateEpoxidFiberReinforced", "count": 1}], "duration": 240, "EUt": 16}, + +{"inputs": [{"ore": "gemEnderEye", "count": 1}], +"inputFluids": [{"gas": "Radon", "amount": 250}], +"outputs": [{"item": "GTItemList:QuantumEye", "count": 1}], +"duration": 480, +"EUt": 384}, +{"inputs": [{"ore": "gemNetherStar", "count": 1}], +"inputFluids": [{"gas": "Radon", "amount": 1250}], +"outputs": [{"item": "GTItemList:QuantumStar", "count": 1}], +"duration": 1920, +"EUt": 384}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json index 0da47ff3e5..df94438758 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json @@ -426,4 +426,122 @@ "enableCondition": "MaterialParent(GlauconiteSand)", "duration": 200, "EUt":30}, + +{"inputs": [{"ore": "dustNetherQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"outputs":[{"ore": "gemNetherQuartz", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustCertusQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"outputs":[{"ore": "gemCertusQuartz", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustQuartzite", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"outputs":[{"ore": "gemQuartzite", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustNetherQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"ore": "gemNetherQuartz", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustCertusQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"ore": "gemCertusQuartz", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustQuartzite", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"ore": "gemQuartzite", "count": 3}], +"duration": 500, +"EUt": 30}, + +{"inputs": [{"ore": "dustUraninite", "count": 1}, {"ore": "dustAluminium", "count": 1}], +"outputs":[{"ore": "dustUranium", "count": 1}], +"duration": 1000, +"EUt": 30}, +{"inputs": [{"ore": "dustUraninite", "count": 1}, {"ore": "dustMagnesium", "count": 1}], +"outputs":[{"ore": "dustUranium", "count": 1}], +"duration": 1000, +"EUt": 30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustCarbon", "count": 1}], +"inputFluids":[{"gas": "Oxygen", "amount": 3000}], +"outputs":[{"ore": "dustCalcite", "count": 5}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"inputFluids":[{"gas": "Hydrogen", "amount": 4000}], +"outputFluids":[{"gas": "Methane", "amount": 5000}], +"duration": 14000, +"EUt": 30}, +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"inputFluids":[{"gas": "Hydrogen", "amount": 4000}], +"outputs":[{"ore": "cellMethane", "count": 1}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}], +"inputFluids":[{"gas": "Hydrogen", "amount": 2000}], +"outputFluids":[{"fluid": "ic2distilledwater", "amount": 3000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"duration": 10, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}], +"inputFluids":[{"gas": "Oxygen", "amount": 500}], +"outputFluids":[{"fluid": "ic2distilledwater", "amount": 1500}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"duration": 5, +"EUt": 30}, +{"inputs": [{"ore": "dustTin", "count": 1}, {"ore": "dustSaltpeter", "count": 1}], +"inputFluids":[{"molten": "Glass", "amount": 864}], +"outputs":[{"item": "Railcraft:tile.railcraft.glass", "count": 6}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "dustRutile", "count": 1}, {"ore": "cellCarbon", "count": 2}], +"inputFluids":[{"gas": "Chlorine", "amount": 4000}], +"outputFluids":[{"materialFluid": "Titaniumtetrachloride", "amount": 1000}], +"outputs":[{"ore": "cellCarbonMonoxide", "count": 2}], +"duration": 500, +"EUt": 480}, +{"inputs": [{"ore": "dustRutile", "count": 1}, {"ore": "dustCarbon", "count": 2}], +"inputFluids":[{"gas": "Chlorine", "amount": 4000}], +"outputFluids":[{"materialFluid": "Titaniumtetrachloride", "amount": 1000}], +"duration": 500, +"EUt": 480}, +{"inputs": [{"ore": "dustSodium", "count": 1}, {"ore": "dustMagnesiumchloride", "count": 2}], +"outputFluids":[{"gas": "Chlorine", "amount": 3000}], +"outputs":[{"ore": "dustSmallMagnesium", "count": 6}], +"duration": 300, +"EUt": 240}, +{"inputs": [{"ore": "dustRawRubber", "count": 9}, {"ore": "dustSulfur", "count": 1}], +"outputFluids":[{"molten": "Rubber", "amount": 1296}], +"duration": 600, +"EUt": 16}, + +{"inputs": [{"ore": "nuggetGold", "count": 8}, {"item": "minecraft:melon:*", "count": 1}], +"outputs":[{"item": "minecraft:speckled_melon:0", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "nuggetGold", "count": 8}, {"item": "minecraft:carrot:*", "count": 1}], +"outputs":[{"item": "minecraft:golden_carrot:0", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "ingotGold", "count": 8}, {"item": "minecraft:apple:*", "count": 1}], +"outputs":[{"item": "minecraft:golden_apple:0", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "blockGold", "count": 8}, {"item": "minecraft:apple:*", "count": 1}], +"outputs":[{"item": "minecraft:golden_apple:1", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "dustBlaze", "count": 1}, {"ore": "gemEnderPearl", "count": 1}], +"outputs":[{"ore": "gemEnderEye", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "dustBlaze", "count": 1}, {"item": "minecraft:slime_ball:*", "count": 1}], +"outputs":[{"item": "minecraft:magma_cream:0", "count": 1}], +"duration": 50, +"EUt": 30}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/cutter.json b/src/main/resources/assets/gregtech/recipes/cutter.json new file mode 100644 index 0000000000..3e4857a545 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/cutter.json @@ -0,0 +1,199 @@ +[ + +{"inputs": [{"item": "GTItemList:Circuit_Wafer_ILC", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_ILC", "count": 8}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_Ram", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_Ram", "count": 32}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_NAND", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_NAND", "count": 32}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_NOR", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_NOR", "count": 16}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_CPU", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_CPU", "count": 8}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_SoC", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_SoC", "count": 10}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_SoC2", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_SoC2", "count": 8}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_PIC", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_PIC", "count": 4}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_HPIC", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_HPIC", "count": 2}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_NanoCPU", "count": 7}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Wafer_QuantumCPU", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Chip_QuantumCPU", "count": 5}], +"useCuttingFluids": true, +"duration":600, +"EUt":48}, +{"inputs": [{"item": "GTItemList:Circuit_Silicon_Ingot", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Silicon_Wafer", "count": 16}], +"useCuttingFluids": true, +"duration":200, +"EUt":8}, +{"inputs": [{"item": "GTItemList:Circuit_Silicon_Ingot2", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Silicon_Wafer2", "count": 32}], +"useCuttingFluids": true, +"duration":400, +"EUt":64}, +{"inputs": [{"item": "GTItemList:Circuit_Silicon_Ingot3", "count": 1}], +"outputs":[{"item": "GTItemList:Circuit_Silicon_Wafer3", "count": 64}], +"useCuttingFluids": true, +"duration":800, +"EUt":384}, +{"inputs": [{"item": "BuildCraft|Transport:item.buildcraftPipe.pipestructurecobblestone:0", "count": 1}], +"outputs":[{"item": "BuildCraft|Transport:pipePlug:0", "count": 8}], +"useCuttingFluids": true, +"duration":32, +"EUt":16}, +{"inputs": [{"item": "minecraft:glass:0", "count": 3}], +"outputs":[{"item": "minecraft:glass_pane:0", "count": 8}], +"useCuttingFluids": true, +"duration":50, +"EUt":8}, +{"inputs": [{"item": "minecraft:stone:0", "count": 1}], +"outputs":[{"item": "minecraft:stone_slab:0", "count": 2}], +"useCuttingFluids": true, +"duration":25, +"EUt":8}, +{"inputs": [{"item": "minecraft:sandstone:0", "count": 1}], +"outputs":[{"item": "minecraft:stone_slab:1", "count": 2}], +"useCuttingFluids": true, +"duration":25, +"EUt":8}, +{"inputs": [{"item": "minecraft:cobblestone:0", "count": 1}], +"outputs":[{"item": "minecraft:stone_slab:3", "count": 2}], +"useCuttingFluids": true, +"duration":25, +"EUt":8}, +{"inputs": [{"item": "minecraft:brick_block:0", "count": 1}], +"outputs":[{"item": "minecraft:stone_slab:4", "count": 2}], +"useCuttingFluids": true, +"duration":25, +"EUt":8}, +{"inputs": [{"item": "minecraft:stonebrick:0", "count": 1}], +"outputs":[{"item": "minecraft:stone_slab:5", "count": 2}], +"useCuttingFluids": true, +"duration":25, +"EUt":8}, +{"inputs": [{"item": "minecraft:nether_brick:0", "count": 1}], +"outputs":[{"item": "minecraft:stone_slab:6", "count": 2}], +"useCuttingFluids": true, +"duration":25, +"EUt":8}, +{"inputs": [{"item": "minecraft:quartz_block:*", "count": 1}], +"outputs":[{"item": "minecraft:stone_slab:7", "count": 2}], +"useCuttingFluids": true, +"duration":25, +"EUt":8}, +{"inputs": [{"item": "minecraft:glowstone:0", "count": 1}], +"outputs":[{"ore": "plateGlowstone", "count": 4}], +"useCuttingFluids": true, +"duration":100, +"EUt":16}, + +{"inputs": [{"ore": "plateIron", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Iron", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateWroughtIron", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Iron", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateGold", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Gold", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateBronze", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Bronze", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateCopper", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Copper", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateAnnealedCopper", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Copper", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateTin", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Tin", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateLead", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Lead", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"ore": "plateSteel", "count": 1}], +"outputs":[{"item": "GTItemList:IC2_Item_Casing_Steel", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":16}, +{"inputs": [{"item": "minecraft:wooden_slab:0", "count": 1}], +"outputs":[{"item": "GTItemList:Plank_Oak", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":8}, +{"inputs": [{"item": "minecraft:wooden_slab:1", "count": 1}], +"outputs":[{"item": "GTItemList:Plank_Spruce", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":8}, +{"inputs": [{"item": "minecraft:wooden_slab:2", "count": 1}], +"outputs":[{"item": "GTItemList:Plank_Birch", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":8}, +{"inputs": [{"item": "minecraft:wooden_slab:3", "count": 1}], +"outputs":[{"item": "GTItemList:Plank_Jungle", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":8}, +{"inputs": [{"item": "minecraft:wooden_slab:4", "count": 1}], +"outputs":[{"item": "GTItemList:Plank_Acacia", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":8}, +{"inputs": [{"item": "minecraft:wooden_slab:5", "count": 1}], +"outputs":[{"item": "GTItemList:Plank_DarkOak", "count": 2}], +"useCuttingFluids": true, +"duration":50, +"EUt":8}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/electrolyzer.json b/src/main/resources/assets/gregtech/recipes/electrolyzer.json index b8b637b630..2bc9d816fa 100644 --- a/src/main/resources/assets/gregtech/recipes/electrolyzer.json +++ b/src/main/resources/assets/gregtech/recipes/electrolyzer.json @@ -16,4 +16,50 @@ "outputs":[{"ore": "dustNickel", "count": 1}, {"ore": "cellOxygen", "count": 1}], "duration": 900, "EUt": 30}, + +{"inputs": [{"item": "GTItemList:Cell_Empty", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputs": [{"ore": "cellOxygen", "count": 1}], +"duration": 2000, +"EUt": 30}, +{"inputs": [{"item": "GTItemList:Cell_Empty", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 3000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputs": [{"ore": "cellOxygen", "count": 1}], +"duration": 2000, +"EUt": 30}, +{"inputs": [{"item": "IC2ItemList:electrolyzedWaterCell", "count": 3}], +"outputs": [{"ore": "cellHydrogen", "count": 2}, {"ore": "cellOxygen", "count": 1}], +"duration": 30, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 1}], +"outputs": [{"item": "IC2ItemList:electrolyzedWaterCell", "count": 1}], +"duration": 490, +"EUt": 30}, +{"inputs": [{"item": "GTItemList:Dye_Bonemeal", "count": 3}], +"outputs": [{"ore": "dustCalcium", "count": 1}], +"duration": 98, +"EUt": 26}, +{"inputs": [{"item": "minecraft:sand", "count": 8}], +"outputs": [{"ore": "dustSiliconDioxide", "count": 1}], +"duration": 500, +"EUt": 25}, +{"inputs": [{"ore": "dustTungstate", "count": 7}], +"inputFluids": [{"gas": "Hydrogen", "amount": 7000}], +"outputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputs": [{"ore": "dustTungsten", "count": 1}, {"ore": "dustLithium", "count": 2}], +"duration": 120, +"EUt": 1920}, +{"inputs": [{"ore": "dustScheelite", "count": 7}], +"inputFluids": [{"gas": "Hydrogen", "amount": 7000}], +"outputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputs": [{"ore": "dustTungsten", "count": 1}, {"ore": "dustCalcium", "count": 2}], +"duration": 120, +"EUt": 1920}, +{"inputs": [{"ore": "dustGraphite", "count": 1}], +"outputs": [{"ore": "dustCarbon", "count": 4}], +"duration": 100, +"EUt": 64}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json index 5b0de12725..532fa4b692 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json @@ -97,4 +97,8 @@ "duration": 256, "EUt": 128}, +{"inputs":[{"ore": "dustQuartzite", "count": 1}], +"outputs":[{"molten": "Glass", "amount": 72}], +"duration": 600, +"EUt": 28}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/forming_press.json b/src/main/resources/assets/gregtech/recipes/forming_press.json index 1dde7f23ce..489ca75bc0 100644 --- a/src/main/resources/assets/gregtech/recipes/forming_press.json +++ b/src/main/resources/assets/gregtech/recipes/forming_press.json @@ -57,4 +57,22 @@ "outputs":[{"item": "GTItemList:Arrow_Head_Glass_Emtpy", "count": 1}], "duration": 64, "EUt": 4}, + +{"inputs": [{"ore": "plateCupronickel", "count": 1}, {"item": "GTItemList:Shape_Mold_Credit", "count": 0}], +"outputs":[{"item": "GTItemList:Credit_Greg_Cupronickel", "count": 4}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "plateBrass", "count": 1}, {"item": "GTItemList:Shape_Mold_Credit", "count": 0}], +"outputs":[{"item": "GTItemList:Coin_Doge", "count": 4}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "plateIron", "count": 1}, {"item": "GTItemList:Shape_Mold_Credit", "count": 0}], +"outputs":[{"item": "GTItemList:Credit_Iron", "count": 4}], +"duration":100, +"EUt":16}, +{"inputs": [{"ore": "plateWroughtIron", "count": 1}, {"item": "GTItemList:Shape_Mold_Credit", "count": 0}], +"outputs":[{"item": "GTItemList:Credit_Iron", "count": 4}], +"duration":100, +"EUt":16}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json new file mode 100644 index 0000000000..b81fadf350 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json @@ -0,0 +1,535 @@ +[ +{"inputs": [{"item": "minecraft:paper", "count": 1}, {"item": "minecraft:string", "count": 1}], +"inputFluids": [{"fluid": "glyceryl", "amount": 500}], +"outputs": [{"item": "IC2:itemDynamite", "count": 1}], +"duration": 160, +"EUt": 4}, + +{"inputs":[{"ore": "crushedPurifiedGalena", "count": 3}, {"ore": "crushedPurifiedSphalerite", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 4000}], +"outputFluids":[{"fluid": "indiumconcentrate", "amount": 8000}], +"duration": 60, +"EUt": 150}, +{"inputs":[{"ore": "dustAluminium", "count": 4}], +"inputFluids":[{"fluid": "indiumconcentrate", "amount": 8000}], +"outputFluids":[{"fluid": "leadzincsolution", "amount": 8000}], +"outputs":[{"ore": "dustTinyIndium", "count": 1}], +"duration": 50, +"EUt": 600}, +{"inputs":[{"ore": "crushedPurifiedPentlandite", "count": 1}], +"inputFluids":[{"fluid": "nitricacid", "amount": 1000}], +"outputFluids":[{"fluid": "solution.nickelsulfate", "amount": 9000}], +"outputs":[{"ore": "dustTinyPlatinumGroupSludge", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs":[{"ore": "crushedPurifiedChalcopyrite", "count": 1}], +"inputFluids":[{"fluid": "nitricacid", "amount": 1000}], +"outputFluids":[{"fluid": "solution.bluevitriol", "amount": 9000}], +"outputs":[{"ore": "dustTinyPlatinumGroupSludge", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs":[{"ore": "platePlastic", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"ore": "platePolyvinylChloride", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 2}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"ore": "platePolytetrafluoroethylene", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 4}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"ore": "plateEpoxid", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Epoxy", "count": 1}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"ore": "plateEpoxidFiberReinforced", "count": 1}, {"ore": "foilCopper", "count": 1}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], +"outputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}], +"duration": 500, +"EUt": 10}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}, {"ore": "foilElectrum", "count": 16}], +"inputFluids":[{"fluid": "sulfuricacid", "amount": 250}], +"outputs":[{"item": "GTItemList:Circuit_Board_Multifiberglass", "count": 1}], +"duration": 100, +"EUt": 480}, +{"inputs":[{"item": "GTItemList:Circuit_Wafer_PIC", "count": 1}, {"ore": "dustIndiumGalliumPhosphide", "count": 2}], +"inputFluids":[{"fluid": "molten.redalloy", "amount": 288}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_HPIC", "count": 1}], +"duration": 1200, +"EUt": 1920}, +{"inputs":[{"item": "GTItemList:Circuit_Wafer_CPU", "count": 1}, {"item": "IC2:itemPartCarbonFibre", "count": 16}], +"inputFluids":[{"fluid": "molten.glowstone", "amount": 576}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}], +"duration": 400, +"EUt": 1920}, +{"inputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}, {"ore": "dustIndiumGalliumPhosphide", "count": 1}], +"inputFluids":[{"fluid": "radon", "amount": 50}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_QuantumCPU", "count": 1}], +"duration": 600, +"EUt": 1920}, +{"inputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}, {"item": "GTItemList:QuantumEye", "count": 2}], +"inputFluids":[{"fluid": "molten.galliumarsenide", "amount": 288}], +"outputs":[{"item": "GTItemList:Circuit_Wafer_QuantumCPU", "count": 1}], +"duration": 400, +"EUt": 1920}, + +{"inputs": [{"item": "GTItemList:GelledToluene", "count": 4}], +"inputFluids": [{"fluid": "sulfuricacid", "amount": 250}], +"outputs": [{"item": "minecraft:tnt", "count":1}], +"duration": 200, +"EUt": 24}, + +{"inputs": [{"item": "minecraft:sugar", "count": 1}, {"ore": "dustTinyPlastic", "count": 1}], +"inputFluids": [{"fluid": "liquid_toluene", "amount": 133}], +"outputs": [{"item": "GTItemList:GelledToluene", "count": 2}], +"duration": 140, +"EUt": 192}, +{"inputs": [{"item": "GTItemList:GelledToluene", "count": 4}], +"inputFluids": [{"fluid": "liquid_nitrationmixture", "amount": 200}], +"outputFluids": [{"fluid": "dilutedsulfuricacid", "amount": 200}], +"outputs": [{"item": "IC2:blockITNT", "count": 1}], +"duration": 80, +"EUt": 480}, + +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "gas_natural_gas", "amount": 16000}], +"outputFluids":[{"fluid": "gas_gas", "amount": 16000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellNatruralGas", "count": 16}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellGas", "count": 16}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "gas_sulfuricgas", "amount": 16000}], +"outputFluids":[{"fluid": "gas_gas", "amount": 16000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellSulfuricGas", "count": 16}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellGas", "count": 16}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "liquid_sulfuricnaphtha", "amount": 12000}], +"outputFluids":[{"fluid": "liquid_naphtha", "amount": 12000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellSulfuricNaphtha", "count": 12}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellNaphtha", "count": 12}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "liquid_sufluriclight_fuel", "amount": 12000}], +"outputFluids":[{"fluid": "liquid_light_fuel", "amount": 12000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellSulfuricLightFuel", "count": 12}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellLightFuel", "count": 12}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "liquid_sulfuricheavy_fuel", "amount": 8000}], +"outputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 8000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"duration": 160, +"EUt":30}, +{"inputs": [{"ore": "cellSulfuricHeavyFuel", "count": 8}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], +"inputFluids":[{"fluid": "hydrogen", "amount": 1000}], +"outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputs":[{"ore": "cellHeavyFuel", "count": 8}], +"duration": 160, +"EUt":30}, + +{"inputs": [{"ore": "dustSaltpeter", "count": 1}], +"inputFluids": [{"fluid": "liquid_naphtha", "amount": 576}], +"outputFluids": [{"fluid": "molten.polycaprolactam", "amount": 1296}], +"outputs": [{"ore": "dustTinyPotassium", "count": 1}], +"duration": 640, +"EUt": 30}, + + +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 100, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 100, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 100, +"EUt":30}, +{"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 100, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustSulfur", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 400, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustPhosphate", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 300, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustAsh", "count": 3}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 200, +"EUt":30}, +{"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"enableCondition": "MaterialParent(GlauconiteSand)", +"duration": 200, +"EUt":30}, + +{"inputs": [{"ore": "dustNetherQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"outputs":[{"ore": "gemNetherQuartz", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustCertusQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"outputs":[{"ore": "gemCertusQuartz", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustQuartzite", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"outputs":[{"ore": "gemQuartzite", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustNetherQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"ore": "gemNetherQuartz", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustCertusQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"ore": "gemCertusQuartz", "count": 3}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustQuartzite", "count": 3}, {"ore": "dustSodium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], +"outputs":[{"ore": "gemQuartzite", "count": 3}], +"duration": 500, +"EUt": 30}, + +{"inputs": [{"ore": "dustUraninite", "count": 1}, {"ore": "dustAluminium", "count": 1}], +"outputs":[{"ore": "dustUranium", "count": 1}], +"duration": 1000, +"EUt": 30}, +{"inputs": [{"ore": "dustUraninite", "count": 1}, {"ore": "dustMagnesium", "count": 1}], +"outputs":[{"ore": "dustUranium", "count": 1}], +"duration": 1000, +"EUt": 30}, +{"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustCarbon", "count": 1}], +"inputFluids":[{"gas": "Oxygen", "amount": 3000}], +"outputs":[{"ore": "dustCalcite", "count": 5}], +"duration": 500, +"EUt": 30}, +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"inputFluids":[{"gas": "Hydrogen", "amount": 4000}], +"outputFluids":[{"gas": "Methane", "amount": 5000}], +"duration": 14000, +"EUt": 30}, +{"inputs": [{"item": "gregtech:gt.integrated_circuit:1", "count": 0}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}, {"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"fluid": "ic2distilledwater", "amount": 1000}], +"duration": 10, +"EUt": 30}, +{"inputs": [{"ore": "dustTin", "count": 1}, {"ore": "dustSaltpeter", "count": 1}], +"inputFluids":[{"molten": "Glass", "amount": 864}], +"outputs":[{"item": "Railcraft:tile.railcraft.glass", "count": 6}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "dustRutile", "count": 1}, {"ore": "cellCarbon", "count": 2}], +"inputFluids":[{"gas": "Chlorine", "amount": 4000}], +"outputFluids":[{"materialFluid": "Titaniumtetrachloride", "amount": 1000}], +"outputs":[{"ore": "cellCarbonMonoxide", "count": 2}], +"duration": 500, +"EUt": 480}, +{"inputs": [{"ore": "dustRutile", "count": 1}, {"ore": "dustCarbon", "count": 2}], +"inputFluids":[{"gas": "Chlorine", "amount": 4000}], +"outputFluids":[{"materialFluid": "Titaniumtetrachloride", "amount": 1000}], +"duration": 500, +"EUt": 480}, +{"inputs": [{"ore": "dustSodium", "count": 1}, {"ore": "dustMagnesiumchloride", "count": 2}], +"outputFluids":[{"gas": "Chlorine", "amount": 3000}], +"outputs":[{"ore": "dustSmallMagnesium", "count": 6}], +"duration": 300, +"EUt": 240}, +{"inputs": [{"ore": "dustRawRubber", "count": 9}, {"ore": "dustSulfur", "count": 1}], +"outputFluids":[{"molten": "Rubber", "amount": 1296}], +"duration": 600, +"EUt": 16}, + +{"inputs": [{"ore": "nuggetGold", "count": 8}, {"item": "minecraft:melon:*", "count": 1}], +"outputs":[{"item": "minecraft:speckled_melon:0", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "nuggetGold", "count": 8}, {"item": "minecraft:carrot:*", "count": 1}], +"outputs":[{"item": "minecraft:golden_carrot:0", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "ingotGold", "count": 8}, {"item": "minecraft:apple:*", "count": 1}], +"outputs":[{"item": "minecraft:golden_apple:0", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "blockGold", "count": 8}, {"item": "minecraft:apple:*", "count": 1}], +"outputs":[{"item": "minecraft:golden_apple:1", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "dustBlaze", "count": 1}, {"ore": "gemEnderPearl", "count": 1}], +"outputs":[{"ore": "gemEnderEye", "count": 1}], +"duration": 50, +"EUt": 30}, +{"inputs": [{"ore": "dustBlaze", "count": 1}, {"item": "minecraft:slime_ball:*", "count": 1}], +"outputs":[{"item": "minecraft:magma_cream:0", "count": 1}], +"duration": 50, +"EUt": 30}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/lathe.json b/src/main/resources/assets/gregtech/recipes/lathe.json new file mode 100644 index 0000000000..bf29e14ff1 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/lathe.json @@ -0,0 +1,7 @@ +[ +{"inputs": [{"ore": "slabWood", "count": 1}], +"outputs": [{"item": "minecraft:bowl", "count": 1}, {"ore": "dustSmallWood", "count": 1}], +"duration": 50, +"EUt": 8}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/vacuum_freezer.json b/src/main/resources/assets/gregtech/recipes/vacuum_freezer.json new file mode 100644 index 0000000000..38a72b2063 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/vacuum_freezer.json @@ -0,0 +1,48 @@ +[ + +{"inputs": [{"item": "IC2ItemList:reactorCoolantSimple:*", "count": 1}], +"outputs":[{"item": "IC2ItemList:reactorCoolantSimple:1", "count": 1}], +"duration": 100, +"EUt": 120}, +{"inputs": [{"item": "IC2ItemList:reactorCoolantTriple:*", "count": 1}], +"outputs":[{"item": "IC2ItemList:reactorCoolantTriple:1", "count": 1}], +"duration": 300, +"EUt": 120}, +{"inputs": [{"item": "IC2ItemList:reactorCoolantSix:*", "count": 1}], +"outputs":[{"item": "IC2ItemList:reactorCoolantSix:1", "count": 1}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"item": "gregtech:gt.60k_Helium_Coolantcell:*", "count": 1}], +"outputs":[{"item": "GTItemList:Reactor_Coolant_He_1", "count": 1}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"item": "gregtech:gt.180k_Helium_Coolantcell:*", "count": 1}], +"outputs":[{"item": "GTItemList:Reactor_Coolant_He_3", "count": 1}], +"duration": 1800, +"EUt": 120}, +{"inputs": [{"item": "gregtech:gt.360k_Helium_Coolantcell:*", "count": 1}], +"outputs":[{"item": "GTItemList:Reactor_Coolant_He_6", "count": 1}], +"duration": 3600, +"EUt": 120}, +{"inputs": [{"item": "gregtech:gt.60k_NaK_Coolantcell:*", "count": 1}], +"outputs":[{"item": "GTItemList:Reactor_Coolant_NaK_1", "count": 1}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"item": "gregtech:gt.180k_NaK_Coolantcell:*", "count": 1}], +"outputs":[{"item": "GTItemList:Reactor_Coolant_NaK_3", "count": 1}], +"duration": 1800, +"EUt": 120}, +{"inputs": [{"item": "gregtech:gt.360k_NaK_Coolantcell:*", "count": 1}], +"outputs":[{"item": "GTItemList:Reactor_Coolant_NaK_6", "count": 1}], +"duration": 3600, +"EUt": 120}, +{"inputs": [{"ore": "cellWater", "count": 1}], +"outputs":[{"ore": "cellIce", "count": 1}], +"duration": 50, +"EUt": 120}, +{"inputs": [{"item": "IC2ItemList:airCell", "count": 1}], +"outputs":[{"ore": "cellLiquidAir", "count": 1}], +"duration": 25, +"EUt": 120}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/wiremill.json b/src/main/resources/assets/gregtech/recipes/wiremill.json index 14c929e216..dcb17e618a 100644 --- a/src/main/resources/assets/gregtech/recipes/wiremill.json +++ b/src/main/resources/assets/gregtech/recipes/wiremill.json @@ -4,4 +4,40 @@ "outputs":[{"item": "minecraft:string", "count": 32}], "duration": 80, "EUt": 48}, + +{"inputs": [{"ore": "plateCopper", "count": 1}], +"outputs":[{"item": "IC2ItemList:copperCableItem", "count": 3}], +"enableCondition": "!DisableIC2Cables", +"duration":100, +"EUt":2}, +{"inputs": [{"ore": "plateAnnealedCopper", "count": 1}], +"outputs":[{"item": "IC2ItemList:copperCableItem", "count": 3}], +"enableCondition": "!DisableIC2Cables", +"duration":100, +"EUt":2}, +{"inputs": [{"ore": "plateTin", "count": 1}], +"outputs":[{"item": "IC2ItemList:tinCableItem", "count": 4}], +"enableCondition": "!DisableIC2Cables", +"duration":150, +"EUt":1}, +{"inputs": [{"ore": "plateIron", "count": 1}], +"outputs":[{"item": "IC2ItemList:ironCableItem", "count": 6}], +"enableCondition": "!DisableIC2Cables", +"duration":200, +"EUt":2}, +{"inputs": [{"ore": "plateWroughtIron", "count": 1}], +"outputs":[{"item": "IC2ItemList:ironCableItem", "count": 6}], +"enableCondition": "!DisableIC2Cables", +"duration":200, +"EUt":2}, +{"inputs": [{"ore": "plateGold", "count": 1}], +"outputs":[{"item": "IC2ItemList:goldCableItem", "count": 6}], +"enableCondition": "!DisableIC2Cables", +"duration":200, +"EUt":1}, +{"inputs": [{"ore": "dustGraphene", "count": 1}], +"outputs":[{"ore": "wireGt01Graphene", "count": 1}], +"duration":400, +"EUt":2}, + {}] From b2502180273e1bd41e2f2940d8ff996c4091dd19 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Sun, 15 Nov 2020 13:51:32 -0800 Subject: [PATCH 16/21] Moved simple/complicated/old/shared chemical recipes to json files. --- .../api/recipes/GT_MachineRecipe.java | 5 +- .../api/recipes/GT_RecipeConditions.java | 2 + .../api/recipes/GT_RecipeListJsonReader.java | 120 +++- .../gregtech/api/recipes/GT_RecipeMap.java | 19 + .../postload/GT_MachineRecipeLoader.java | 664 ++---------------- .../assets/gregtech/recipes/Explanation.cfg | 8 +- .../assets/gregtech/recipes/autoclave.json | 12 + .../assets/gregtech/recipes/centrifuge.json | 16 + .../recipes/chemical_complicated.json | 651 +++++++++++++++++ .../recipes/chemical_complicated_large.json | 166 +++++ .../recipes/chemical_complicated_small.json | 420 +++++++++++ .../assets/gregtech/recipes/chemical_old.json | 148 ++++ .../gregtech/recipes/chemical_reactor.json | 516 +++++++++++++- .../gregtech/recipes/chemical_simple.json | 232 ++++++ .../recipes/chemical_simple_small.json | 50 ++ .../gregtech/recipes/distillation_tower.json | 85 +++ .../assets/gregtech/recipes/distillery.json | 215 ++++++ .../assets/gregtech/recipes/electrolyzer.json | 67 ++ .../assets/gregtech/recipes/fermenter.json | 4 + .../gregtech/recipes/fluid_extractor.json | 2 +- .../assets/gregtech/recipes/fluid_heater.json | 12 + .../recipes/large_chemical_reactor.json | 423 ++++++++++- .../assets/gregtech/recipes/mixer.json | 145 ++++ .../gregtech/recipes/pyrolyse_oven.json | 22 + 24 files changed, 3380 insertions(+), 624 deletions(-) create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_complicated.json create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_complicated_small.json create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_old.json create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_simple.json create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_simple_small.json create mode 100644 src/main/resources/assets/gregtech/recipes/distillation_tower.json create mode 100644 src/main/resources/assets/gregtech/recipes/distillery.json create mode 100644 src/main/resources/assets/gregtech/recipes/pyrolyse_oven.json diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java index b898132d16..f120e18ad2 100644 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java @@ -252,10 +252,13 @@ public ArrayList getOutputPositionedStacks(){ * Validates the recipe by making sure the duration and EU/t have been set, it has input items and/or fluid as well * as output items and/or fluid, unless it is a fake recipe (fake recipes are always considered valid). * Because of the chained setters, some details could accidentally be omitted, and this method should be used before - * adding a recipe to a list or map. + * adding a recipe to a list or map. Also, if the recipe has been disabled based on conditions, it should probably not + * be added to lists/maps, but if it has been deliberately disabled, either by setting "enabled" to false or by setting + * duration less than or equal to 0, it should be added for collision checking. */ public boolean isValidRecipe() { if (mFakeRecipe) return true; + if (mEnableCondition != null && !(GT_RecipeConditions.getConditionValue(mEnableCondition) ^ mInvertCondition)) return false; if (mEUt <= 0) return false; if (mInputs.length == 0 && mFluidInputs.length == 0) return false; if (mOutputs.length == 0 && mFluidOutputs.length == 0) return false; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java index 0ea3243359..917ec1bdf7 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeConditions.java @@ -63,6 +63,8 @@ public static boolean getConditionValue(String aConditionName) { try { sConditionMap.put("DisableIC2Cables", GT_Proxy.class.getField("mDisableIC2Cables")); sConditionMap.put("HardMachineCasings", GT_Proxy.class.getField("mHardMachineCasings")); + sConditionMap.put("DisableOldChemicalRecipes", GT_Proxy.class.getField("mDisableOldChemicalRecipes")); + sConditionMap.put("MoreComplicatedChemicalRecipes", GT_Proxy.class.getField("mMoreComplicatedChemicalRecipes")); } catch (Throwable e) { e.printStackTrace(GT_Log.err); } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java index f728940590..5e59e922fe 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -10,6 +10,7 @@ import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; import java.io.IOException; import java.util.ArrayList; import java.util.Collections; @@ -52,6 +53,7 @@ private static List readRecipe(JsonReader aReader) throws IOEx List tOutputs = new ArrayList<>(10); List tFluidInputs = new ArrayList<>(10); List tFluidOutputs = new ArrayList<>(10); + List tFluidsPerCircuit = new ArrayList<>(10); int tDuration = 0; int tEUt = 0; int tSpecialValue = 0; @@ -86,6 +88,7 @@ private static List readRecipe(JsonReader aReader) throws IOEx while (aReader.hasNext()) { String tFluidName = null; int tFluidAmount = 0; + FluidStack tMaterialFluid = null; aReader.beginObject(); while (aReader.hasNext()) { String tSubName = aReader.nextName(); @@ -98,22 +101,69 @@ private static List readRecipe(JsonReader aReader) throws IOEx tSolderAmount = aReader.nextInt(); } else if ("gas".equals(tSubName)) { String tMaterialName = aReader.nextString(); - tFluidName = Materials.get(tMaterialName).getGas(1L).getFluid().getName(); + tMaterialFluid = Materials.get(tMaterialName).getGas(1L); } else if ("plasma".equals(tSubName)) { String tMaterialName = aReader.nextString(); - tFluidName = Materials.get(tMaterialName).getPlasma(1L).getFluid().getName(); + tMaterialFluid = Materials.get(tMaterialName).getPlasma(1L); } else if ("molten".equals(tSubName)) { String tMaterialName = aReader.nextString(); - tFluidName = Materials.get(tMaterialName).getMolten(1L).getFluid().getName(); + tMaterialFluid = Materials.get(tMaterialName).getMolten(1L); } else if ("materialFluid".equals(tSubName)) { String tMaterialName = aReader.nextString(); - tFluidName = Materials.get(tMaterialName).getFluid(1L).getFluid().getName(); + tMaterialFluid = Materials.get(tMaterialName).getFluid(1L); } } aReader.endObject(); if (!tUseSolderFluids) { + if (tMaterialFluid != null) { + tMaterialFluid.amount = tFluidAmount; + tFluidInputs.add(tMaterialFluid); + } else if (tFluidName != null) { + if (FluidRegistry.isFluidRegistered(tFluidName)) { + tFluidInputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); + } else { + GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); + } + } + } + } + aReader.endArray(); + break; + case "outputFluids": + case "fluidOutputs": + aReader.beginArray(); + while (aReader.hasNext()) { + String tFluidName = null; + int tFluidAmount = 0; + FluidStack tMaterialFluid = null; + aReader.beginObject(); + while (aReader.hasNext()) { + String tSubName = aReader.nextName(); + if ("fluid".equals(tSubName)) { + tFluidName = aReader.nextString(); + } else if ("amount".equals(tSubName)) { + tFluidAmount = aReader.nextInt(); + } else if ("gas".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tMaterialFluid = Materials.get(tMaterialName).getGas(1L); + } else if ("plasma".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tMaterialFluid = Materials.get(tMaterialName).getPlasma(1L); + } else if ("molten".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tMaterialFluid = Materials.get(tMaterialName).getMolten(1L); + } else if ("materialFluid".equals(tSubName)) { + String tMaterialName = aReader.nextString(); + tMaterialFluid = Materials.get(tMaterialName).getFluid(1L); + } + } + aReader.endObject(); + if (tMaterialFluid != null) { + tMaterialFluid.amount = tFluidAmount; + tFluidOutputs.add(tMaterialFluid); + } else if (tFluidName != null) { if (FluidRegistry.isFluidRegistered(tFluidName)) { - tFluidInputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); + tFluidOutputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); } else { GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); } @@ -121,12 +171,12 @@ private static List readRecipe(JsonReader aReader) throws IOEx } aReader.endArray(); break; - case "outputFluids": - case "fluidOutputs": + case "fluidsPerCircuit": aReader.beginArray(); while (aReader.hasNext()) { String tFluidName = null; int tFluidAmount = 0; + FluidStack tMaterialFluid = null; aReader.beginObject(); while (aReader.hasNext()) { String tSubName = aReader.nextName(); @@ -136,23 +186,28 @@ private static List readRecipe(JsonReader aReader) throws IOEx tFluidAmount = aReader.nextInt(); } else if ("gas".equals(tSubName)) { String tMaterialName = aReader.nextString(); - tFluidName = Materials.get(tMaterialName).getGas(1L).getFluid().getName(); + tMaterialFluid = Materials.get(tMaterialName).getGas(1L); } else if ("plasma".equals(tSubName)) { String tMaterialName = aReader.nextString(); - tFluidName = Materials.get(tMaterialName).getPlasma(1L).getFluid().getName(); + tMaterialFluid = Materials.get(tMaterialName).getPlasma(1L); } else if ("molten".equals(tSubName)) { String tMaterialName = aReader.nextString(); - tFluidName = Materials.get(tMaterialName).getMolten(1L).getFluid().getName(); + tMaterialFluid = Materials.get(tMaterialName).getMolten(1L); } else if ("materialFluid".equals(tSubName)) { String tMaterialName = aReader.nextString(); - tFluidName = Materials.get(tMaterialName).getFluid(1L).getFluid().getName(); + tMaterialFluid = Materials.get(tMaterialName).getFluid(1L); } } aReader.endObject(); - if (FluidRegistry.isFluidRegistered(tFluidName)) { - tFluidOutputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); - } else { - GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); + if (tMaterialFluid != null) { + tMaterialFluid.amount = tFluidAmount; + tFluidsPerCircuit.add(tMaterialFluid); + } else if (tFluidName != null) { + if (FluidRegistry.isFluidRegistered(tFluidName)) { + tFluidsPerCircuit.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); + } else { + GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); + } } } aReader.endArray(); @@ -194,10 +249,28 @@ private static List readRecipe(JsonReader aReader) throws IOEx tUseCuttingFluids = aReader.nextBoolean(); break; default: - throw new AssertionError("Invalid recipe specifier"); + throw new AssertionError("Invalid recipe specifier: " + tName); } } aReader.endObject(); + if (!tFluidsPerCircuit.isEmpty()) { + tInputs.add(new GT_RecipeInput(GT_Utility.getIntegratedCircuit(0))); + List tList = new ArrayList<>(tFluidsPerCircuit.size()); + for (int i = 0; i < tFluidsPerCircuit.size(); i++) { + tInputs.set(tInputs.size() - 1, new GT_RecipeInput(GT_Utility.getIntegratedCircuit(i + 1))); + GT_MachineRecipe rRecipe = new GT_MachineRecipe(tInputs.toArray(new GT_RecipeInput[0]), tOutputs.toArray(new GT_RecipeOutput[0]), + tFluidInputs.toArray(new FluidStack[0]), new FluidStack[]{tFluidsPerCircuit.get(i)}); + rRecipe.setDuration(tDuration); + rRecipe.setEUt(tEUt); + rRecipe.setSpecialValue(tSpecialValue); + rRecipe.setEnabled(tEnabled); + rRecipe.setEnableCondition(tEnableCondition); + rRecipe.setInvertCondition(tInvertCondition); + rRecipe.setHidden(tHidden); + tList.add(rRecipe); + } + return tList; + } if (!tOutputs.isEmpty() || !tFluidOutputs.isEmpty()) { GT_MachineRecipe rRecipe = new GT_MachineRecipe(tInputs.toArray(new GT_RecipeInput[0]), tOutputs.toArray(new GT_RecipeOutput[0]), tFluidInputs.toArray(new FluidStack[0]), tFluidOutputs.toArray(new FluidStack[0])); @@ -277,7 +350,7 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { tAltStack = StringtoItemStack(aReader.nextString()); } else if ("ore".equals(tAltEntryName) || "oredict".equals(tAltEntryName)) { tAltOreName = aReader.nextString(); - }else if ("nbt".equals(tAltEntryName)) { + } else if ("nbt".equals(tAltEntryName)) { tAltNbtData = readNbt(aReader); } } @@ -293,6 +366,11 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { } aReader.endArray(); break; + case "circuit": + int tCircuitConfig = aReader.nextInt(); + tStack = GT_Utility.getIntegratedCircuit(tCircuitConfig); + tCount = 0; + break; case "displayName": case "comment": aReader.nextString(); @@ -300,7 +378,7 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { // gregtech:gt.metaitem.02:30500 break; default: - throw new AssertionError("Invalid input specifier"); + throw new AssertionError("Invalid input specifier: " + tEntryName); } } aReader.endObject(); @@ -391,7 +469,7 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException // gregtech:gt.metaitem.02:30500 break; default: - throw new AssertionError("Invalid output specifier"); + throw new AssertionError("Invalid output specifier: " + tEntryName); } } aReader.endObject(); @@ -433,7 +511,7 @@ private static NBTTagCompound readNbt(JsonReader aReader) throws IOException { tValue = aReader.nextString(); break; default: - throw new AssertionError("Invalid NBT specifier"); + throw new AssertionError("Invalid NBT specifier: " + tEntryName); } } aReader.endObject(); @@ -464,7 +542,7 @@ private static NBTTagCompound readNbt(JsonReader aReader) throws IOException { rNBT.setString(tTagName, tValue); break; default: - throw new AssertionError(); + throw new AssertionError("Invalid NBT tag type: " + tType); } } } diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java index 2ac7912093..69c0ff9c40 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java @@ -752,12 +752,31 @@ public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemSt return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); } + @Override + public GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe) { + return super.addRecipe(new GT_Recipe_DistillationTower(aRecipe)); + } + private static class GT_Recipe_DistillationTower extends GT_MachineRecipe { protected GT_Recipe_DistillationTower(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); } + protected GT_Recipe_DistillationTower(GT_MachineRecipe aRecipe) { + super(aRecipe.mInputs, aRecipe.mOutputs, aRecipe.mFluidInputs, aRecipe.mFluidOutputs); + this.mCanBeBuffered = aRecipe.mCanBeBuffered; + this.mDuration = aRecipe.mDuration; + this.mEUt = aRecipe.mEUt; + this.mEnableCondition = aRecipe.mEnableCondition; + this.mFakeRecipe = aRecipe.mFakeRecipe; + this.mHidden = aRecipe.mHidden; + this.mInvertCondition = aRecipe.mInvertCondition; + this.mNeedsEmptyOutput = aRecipe.mNeedsEmptyOutput; + this.mSpecialItems = aRecipe.mSpecialItems; + this.mSpecialValue = aRecipe.mSpecialValue; + } + @Override public ArrayList getInputPositionedStacks() { ArrayList inputStacks = new ArrayList<>(1); diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index a44822dda8..406a9c08b3 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -8,6 +8,7 @@ import gregtech.api.GregTech_API; import gregtech.api.enums.*; import gregtech.api.objects.MaterialStack; +import gregtech.api.recipes.GT_MachineRecipe; import gregtech.api.recipes.GT_RecipeListJsonReader; import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; @@ -36,6 +37,7 @@ import java.util.Arrays; import java.util.HashMap; import java.util.Iterator; +import java.util.List; import java.util.Map; import net.minecraft.client.Minecraft; import net.minecraft.server.MinecraftServer; @@ -218,33 +220,10 @@ public void run() { GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Good.get(1,o), new Object[]{"IVC","VDV","CVI",'D',ItemList.Circuit_Parts_Diode.get(1,o),'C',GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.RedAlloy, 1),'V', Ic2Items.electronicCircuit ,'I',ItemList.IC2_Item_Casing_Steel.get(1,o)}); - GT_Values.RA.addUniversalDistillationRecipe(Materials.OilLight.getFluid(150), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(10), Materials.SulfuricLightFuel.getFluid(20), Materials.SulfuricNaphtha.getFluid(30), Materials.SulfuricGas.getGas(240)}, null, 20, 96); - GT_Values.RA.addUniversalDistillationRecipe(Materials.OilMedium.getFluid(100), new FluidStack[]{Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); - GT_Values.RA.addUniversalDistillationRecipe(Materials.Oil.getFluid(50L), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); - GT_Values.RA.addUniversalDistillationRecipe(Materials.OilHeavy.getFluid(100), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(250), Materials.SulfuricLightFuel.getFluid(45), Materials.SulfuricNaphtha.getFluid(15), Materials.SulfuricGas.getGas(60)}, null, 20, 288); - if (GregTech_API.sSpecialFile.get("general", "EnableLagencyOilGalactiCraft", false) && FluidRegistry.getFluid("oilgc") != null) { GT_Values.RA.addUniversalDistillationRecipe(new FluidStack(FluidRegistry.getFluid("oilgc"), 50), new FluidStack[]{Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); } - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new FluidStack(ItemList.sOilExtraHeavy,10), Materials.OilHeavy.getFluid(15), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.HeavyFuel.getFluid(10L), new FluidStack(ItemList.sToluene,4), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new FluidStack(ItemList.sToluene,30), Materials.LightFuel.getFluid(30L), 16, 24, false); - - - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.Creosote.getFluid(3L), Materials.Lubricant.getFluid(1L), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.SeedOil.getFluid(4L), Materials.Lubricant.getFluid(1L), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.FishOil.getFluid(3L), Materials.Lubricant.getFluid(1L), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.Biomass.getFluid(40L), Materials.Ethanol.getFluid(12L), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 5L, new Object[0]), Materials.Biomass.getFluid(40L), Materials.Water.getFluid(12L), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 5L, new Object[0]), Materials.Water.getFluid(5L), GT_ModHandler.getDistilledWater(5L), 16, 10, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), FluidRegistry.getFluidStack("potion.potatojuice", 2), FluidRegistry.getFluidStack("potion.vodka", 1), 16, 16, true); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), FluidRegistry.getFluidStack("potion.lemonade", 2), FluidRegistry.getFluidStack("potion.alcopops", 1), 16, 16, true); - - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.OilLight.getFluid(300L), Materials.Oil.getFluid(100L), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.OilMedium.getFluid(200L), Materials.Oil.getFluid(100L), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.OilHeavy.getFluid(100L), Materials.Oil.getFluid(100L), 16, 24, false); - addPotionRecipes("waterbreathing", new ItemStack(Items.fish, 1, 3)); addPotionRecipes("fireresistance", new ItemStack(Items.magma_cream, 1, 0)); addPotionRecipes("nightvision", new ItemStack(Items.golden_carrot, 1, 0)); @@ -430,11 +409,6 @@ public void run() { } - GT_Values.RA.addDistillationTowerRecipe(Materials.Creosote.getFluid(24L), new FluidStack[]{Materials.Lubricant.getFluid(12L)}, null, 16, 96); - GT_Values.RA.addDistillationTowerRecipe(Materials.SeedOil.getFluid(32L), new FluidStack[]{Materials.Lubricant.getFluid(12L)}, null, 16, 96); - GT_Values.RA.addDistillationTowerRecipe(Materials.FishOil.getFluid(24L), new FluidStack[]{Materials.Lubricant.getFluid(12L)}, null, 16, 96); - GT_Values.RA.addDistillationTowerRecipe(Materials.Biomass.getFluid(600L), new FluidStack[]{Materials.Ethanol.getFluid(240L), Materials.Water.getFluid(240L)}, GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 1L), 16, 400); - GT_Values.RA.addDistillationTowerRecipe(Materials.Water.getFluid(576), new FluidStack[]{GT_ModHandler.getDistilledWater(520L)}, null, 16, 120); if(!GregTech_API.mIC2Classic){ GT_Values.RA.addDistillationTowerRecipe(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 2000), new FluidStack[]{new FluidStack(FluidRegistry.getFluid("ic2biogas"), 8000), Materials.Water.getFluid(125L)}, ItemList.IC2_Fertilizer.get(1, new Object[0]), 250, 480); GT_Values.RA.addFuel(GT_ModHandler.getIC2Item("biogasCell", 1L), null, 32, 1); @@ -1665,10 +1639,6 @@ private void run2(){ if (!GT_Mod.gregtechproxy.mDisableOldChemicalRecipes) { addOldChemicalRecipes(); - } else if (GT_Mod.gregtechproxy.mMoreComplicatedChemicalRecipes) { - GT_Values.RA.addChemicalRecipe(Materials.Sodium.getDust(2), Materials.Sulfur.getDust(1), Materials.SodiumSulfide.getDust(3), 60); - GT_Values.RA.addChemicalRecipe(Materials.HydricSulfide.getCells(1), GT_Values.NI, Materials.Water.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(2000), Materials.Empty.getCells(1), 60); - GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(1), GT_Values.NI, Materials.HydricSulfide.getGas(1000), Materials.DilutedSulfuricAcid.getFluid(2000), Materials.Empty.getCells(1), 60); } addChemicalRecipesShared(); if (GT_Mod.gregtechproxy.mMoreComplicatedChemicalRecipes) { @@ -1676,603 +1646,111 @@ private void run2(){ } else { addChemicalRecipesSimple(); } - GT_Values.RA.addAutoclaveRecipe(Materials.SiliconDioxide.getDust(1), Materials.Water.getFluid(200L), Materials.Quartzite.getGems(1), 750, 2000, 24); - GT_Values.RA.addAutoclaveRecipe(Materials.SiliconDioxide.getDust(1), GT_ModHandler.getDistilledWater(200L), Materials.Quartzite.getGems(1), 1000, 1500, 24); - addRecipesMay2017OilRefining(); addPyrometallurgicalRecipes(); } private void addChemicalRecipesSimple(){ - GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(1), Materials.AceticAcid.getCells(2), Materials.Methanol.getFluid(1000), Materials.Glue.getFluid(4000), Materials.Empty.getCells(3), 240); - GT_Values.RA.addChemicalRecipe(Materials.AceticAcid.getCells(2), Materials.Methanol.getCells(1), Materials.Ethylene.getGas(1000), Materials.Glue.getFluid(4000), Materials.Empty.getCells(3), 240); - GT_Values.RA.addChemicalRecipe(Materials.Methanol.getCells(1), Materials.Ethylene.getCells(1), Materials.AceticAcid.getFluid(2000), Materials.Glue.getFluid(4000), Materials.Empty.getCells(2), 240); - - GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodVinegar.getFluid(1000), - new FluidStack[]{Materials.AceticAcid.getFluid(150), Materials.Water.getFluid(500), Materials.Ethanol.getFluid(20), Materials.Methanol.getFluid(300)}, - GT_Values.NI, 40, 256); - GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodTar.getFluid(1000), - new FluidStack[]{Materials.Creosote.getFluid(500), Materials.Benzene.getFluid(425), Materials.Toluene.getFluid(75)}, - GT_Values.NI, 40, 256); - - GT_Values.RA.addChemicalRecipe(Materials.Propene.getCells(2), Materials.Benzene.getCells(2), Materials.Chlorine.getGas(1000), Materials.Epoxid.getMolten(4000), Materials.Empty.getCells(4), 240, 240); - GT_Values.RA.addChemicalRecipe(Materials.Benzene.getCells(2), Materials.Chlorine.getCells(1), Materials.Propene.getGas(2000), Materials.Epoxid.getMolten(4000), Materials.Empty.getCells(3), 240, 240); - GT_Values.RA.addChemicalRecipe(Materials.Chlorine.getCells(1), Materials.Propene.getCells(2), Materials.Benzene.getFluid(2000), Materials.Epoxid.getMolten(4000), Materials.Empty.getCells(3), 240, 240); - - GT_Values.RA.addChemicalRecipe( Materials.Ethylene.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Fluorine.getGas(4000), Materials.Tetrafluoroethylene.getGas(6000), Materials.Empty.getCells(2), 360, 180); - GT_Values.RA.addChemicalRecipe( Materials.Fluorine.getCells(4), GT_Utility.getIntegratedCircuit(1), Materials.Ethylene.getGas(2000), Materials.Tetrafluoroethylene.getGas(6000), Materials.Empty.getCells(4), 360, 180); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethylene.getCells(2), Materials.Empty.getCells(4), Materials.Fluorine.getGas(4000), GT_Values.NF, Materials.Tetrafluoroethylene.getCells(6), GT_Values.NI, 360, 180); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Fluorine.getCells(4), Materials.Empty.getCells(2), Materials.Ethylene.getGas(2000), GT_Values.NF, Materials.Tetrafluoroethylene.getCells(6), GT_Values.NI, 360, 180); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethylene.getCells(2), Materials.Fluorine.getCells(4), GT_Values.NF, GT_Values.NF, Materials.Tetrafluoroethylene.getCells(6), GT_Values.NI, 360, 180); - - GT_Values.RA.addChemicalRecipe(Materials.Silicon.getDust(1), Materials.Methane.getCells(2), Materials.Chlorine.getGas(1000), GT_Values.NF, Materials.Polydimethylsiloxane.getDust(3), Materials.Empty.getCells(2), 240, 120); - GT_Values.RA.addChemicalRecipe(Materials.Silicon.getDust(1), Materials.Chlorine.getCells(1), Materials.Methane.getGas(2000), GT_Values.NF, Materials.Polydimethylsiloxane.getDust(3), Materials.Empty.getCells(1), 240, 120); - - GT_Values.RA.addChemicalRecipe(Materials.Ammonia.getCells(3), Materials.Methanol.getCells(4), Materials.Chlorine.getGas(1000), new FluidStack(ItemList.sRocketFuel, 7000), Materials.Empty.getCells(7), 3600, 480); - GT_Values.RA.addChemicalRecipe(Materials.Methanol.getCells(4), Materials.Chlorine.getCells(1), Materials.Ammonia.getGas(3000), new FluidStack(ItemList.sRocketFuel, 7000), Materials.Empty.getCells(5), 3600, 480); - GT_Values.RA.addChemicalRecipe(Materials.Chlorine.getCells(1), Materials.Ammonia.getCells(3), Materials.Methanol.getFluid(4000), new FluidStack(ItemList.sRocketFuel, 7000), Materials.Empty.getCells(4), 3600, 480); - - GT_Values.RA.addChemicalRecipe(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(1000), Materials.NitricAcid.getFluid(1000), Materials.Water.getCells(1), 160); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Ammonia.getGas(1000), Materials.NitricAcid.getFluid(1000), Materials.Water.getCells(1), 160); - GT_Values.RA.addChemicalRecipe(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(11), Materials.Oxygen.getGas(1000), Materials.Water.getFluid(1000), Materials.NitricAcid.getCells(1), 160); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(11), Materials.Ammonia.getGas(1000), Materials.Water.getFluid(1000), Materials.NitricAcid.getCells(1), 160); - GT_Values.RA.addChemicalRecipe(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(1000), Materials.NitricAcid.getFluid(1000), Materials.Empty.getCells(1), 160); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(2), Materials.Ammonia.getGas(1000), Materials.NitricAcid.getFluid(1000), Materials.Empty.getCells(1), 160); - GT_Values.RA.addChemicalRecipe(Materials.Ammonia.getCells(1), GT_Utility.getIntegratedCircuit(12), Materials.Oxygen.getGas(1000), GT_Values.NF, Materials.NitricAcid.getCells(1), 160); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(12), Materials.Ammonia.getGas(1000), GT_Values.NF, Materials.NitricAcid.getCells(1), 160); - - GT_Values.RA.addChemicalRecipe(Materials.Sulfur.getDust(1), Materials.Oxygen.getCells(3), Materials.Water.getFluid(3000), Materials.SulfuricAcid.getFluid(7000), Materials.Empty.getCells(3), 480); - GT_Values.RA.addChemicalRecipe(Materials.Sulfur.getDust(1), Materials.Water.getCells(3), Materials.Oxygen.getGas(3000), Materials.SulfuricAcid.getFluid(7000), Materials.Empty.getCells(3), 480); - - GT_Values.RA.addChemicalRecipe(Materials.Sulfur.getDust(1), Materials.Oxygen.getCells(4), Materials.Hydrogen.getGas(2000), Materials.SulfuricAcid.getFluid(7000), Materials.Empty.getCells(4), 240); - GT_Values.RA.addChemicalRecipe(Materials.Sulfur.getDust(1), Materials.Hydrogen.getCells(2), Materials.Oxygen.getGas(4000), Materials.SulfuricAcid.getFluid(7000), Materials.Empty.getCells(2), 240); - - GT_Values.RA.addChemicalRecipe( Materials.HydricSulfide.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(4000), Materials.SulfuricAcid.getFluid(7000), Materials.Empty.getCells(3), 240); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(4), GT_Utility.getIntegratedCircuit(1), Materials.HydricSulfide.getGas(3000), Materials.SulfuricAcid.getFluid(7000), Materials.Empty.getCells(4), 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.HydricSulfide.getCells(3), Materials.Empty.getCells(4), Materials.Oxygen.getGas(4000), GT_Values.NF, Materials.SulfuricAcid.getCells(7), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(4), Materials.Empty.getCells(3), Materials.HydricSulfide.getGas(3000), GT_Values.NF, Materials.SulfuricAcid.getCells(7), GT_Values.NI, 240, 30); - - GT_Values.RA.addChemicalRecipe( Materials.Ethylene.getCells(5), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(1000), Materials.VinylChloride.getGas(6000), Materials.Empty.getCells(5), 240); - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Ethylene.getGas(5000), Materials.VinylChloride.getGas(6000), Materials.Empty.getCells(1), 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethylene.getCells(5), Materials.Empty.getCells(1), Materials.Chlorine.getGas(1000), GT_Values.NF, Materials.VinylChloride.getCells(6), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(1), Materials.Empty.getCells(5), Materials.Ethylene.getGas(5000), GT_Values.NF, Materials.VinylChloride.getCells(6), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethylene.getCells(5), Materials.Chlorine.getCells(1), GT_Values.NF, GT_Values.NF, Materials.VinylChloride.getCells(6), GT_Values.NI, 240, 30); - - GT_Values.RA.addChemicalRecipe(Materials.LightFuel.getCells(1), GT_Values.NI, Materials.NitricAcid.getFluid(250), Materials.NitroFuel.getFluid(1000), Materials.Empty.getCells(1), 80, 8); - GT_Values.RA.addChemicalRecipe(Materials.Fuel.getCells(2), GT_Values.NI, Materials.NitricAcid.getFluid(250), Materials.NitroFuel.getFluid(1000), Materials.Empty.getCells(2), 80, 8); - GT_Values.RA.addChemicalRecipe(Materials.BioDiesel.getCells(4), GT_Values.NI, Materials.NitricAcid.getFluid(1000), Materials.NitroFuel.getFluid(3000), Materials.Empty.getCells(4), 320, 8); - GT_Values.RA.addChemicalRecipe(Materials.NitricAcid.getCells(1), GT_Values.NI, Materials.LightFuel.getFluid(4000), Materials.NitroFuel.getFluid(4000), Materials.Empty.getCells(1), 320, 8); - GT_Values.RA.addChemicalRecipe(Materials.NitricAcid.getCells(1), GT_Values.NI, Materials.Fuel.getFluid(8000), Materials.NitroFuel.getFluid(4000), Materials.Empty.getCells(1), 320, 8); - GT_Values.RA.addChemicalRecipe(Materials.NitricAcid.getCells(1), GT_Values.NI, Materials.BioDiesel.getFluid(4000), Materials.NitroFuel.getFluid(3000), Materials.Empty.getCells(1), 320, 8); - - GT_Values.RA.addChemicalRecipe( Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Benzene.getFluid(1000), Materials.PolyphenyleneSulfide.getMolten(2000), GT_Values.NI, 320, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Sulfur.getDust(1), Materials.Benzene.getCells(1), GT_Values.NF, Materials.PolyphenyleneSulfide.getMolten(2000), Materials.Empty.getCells(1), GT_Values.NI, 320, 30); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), Materials.Oxygen.getGas(4000L), Materials.SodiumPersulfate.getFluid(6000L), GT_Values.NI, 8000); + try { + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_simple.json"); + if (tStream != null) { + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); + GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tRecipeList); + tStream.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading resource chemical_simple.json"); + e.printStackTrace(GT_Log.err); + } + try { + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_simple_small.json"); + if (tStream != null) { + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); + tStream.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading resource chemical_simple_small.json"); + e.printStackTrace(GT_Log.err); + } } private void addChemicalRecipesComplicated(){ - GT_Values.RA.addElectrolyzerRecipe(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.HydrochloricAcid.getFluid(2000), Materials.Chlorine.getGas(1000), Materials.Hydrogen.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI,GT_Values.NI, GT_Values.NI, null, 720, 30); - GT_Values.RA.addElectrolyzerRecipe(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(11), Materials.HydrochloricAcid.getFluid(2000), Materials.Hydrogen.getGas(1000), Materials.Chlorine.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI,GT_Values.NI, GT_Values.NI, null, 720, 30); - GT_Values.RA.addElectrolyzerRecipe(Materials.HydrochloricAcid.getCells(2), GT_Values.NI, GT_Values.NF, GT_Values.NF, Materials.Hydrogen.getCells(1), Materials.Chlorine.getCells(1), GT_Values.NI, GT_Values.NI,GT_Values.NI, GT_Values.NI, null, 720, 30); - GT_Values.RA.addUniversalDistillationRecipe(Materials.DilutedHydrochloricAcid.getFluid(2000), new FluidStack[]{Materials.Water.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000)}, GT_Values.NI, 300, 64); - GT_Values.RA.addDistilleryRecipe(3, Materials.HeavyFuel.getFluid(100), Materials.Phenol.getFluid(25), 160, 24, false); - - GT_Values.RA.addMixerRecipe(Materials.Calcite.getDust(5), GT_Utility.getIntegratedCircuit(1), GT_Values.NI, GT_Values.NI, Materials.AceticAcid.getFluid(16000), Materials.CalciumAcetateSolution.getFluid(18000), GT_Values.NI, 240, 16); - GT_Values.RA.addMixerRecipe(Materials.Quicklime.getDust(2), GT_Utility.getIntegratedCircuit(1), GT_Values.NI, GT_Values.NI, Materials.AceticAcid.getFluid(16000), Materials.CalciumAcetateSolution.getFluid(18000), GT_Values.NI, 80, 16); - GT_Values.RA.addMixerRecipe(Materials.Quicklime.getDustSmall(8), GT_Utility.getIntegratedCircuit(1), GT_Values.NI, GT_Values.NI, Materials.AceticAcid.getFluid(16000), Materials.CalciumAcetateSolution.getFluid(18000), GT_Values.NI, 80, 16); - - GT_Values.RA.addFluidHeaterRecipe(GT_Utility.getIntegratedCircuit(1), Materials.CalciumAcetateSolution.getFluid(900), Materials.Acetone.getFluid(500), 80, 30); - GT_Values.RA.addUniversalDistillationRecipe(Materials.CalciumAcetateSolution.getFluid(4500), new FluidStack[]{Materials.Acetone.getFluid(2500), Materials.Water.getFluid(750), Materials.CarbonDioxide.getGas(750)}, Materials.Quicklime.getDustSmall(1), 100, 240); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Calcite.getDustSmall(5), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.AceticAcid.getFluid(8000)}, new FluidStack[]{Materials.Acetone.getFluid(5000), Materials.CarbonDioxide.getGas(3000)}, null, 400, 480); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Quicklime.getDustSmall(2), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.AceticAcid.getFluid(8000)}, new FluidStack[]{Materials.Acetone.getFluid(5000), Materials.CarbonDioxide.getGas(3000)}, null, 400, 480); - - GT_Values.RA.addChemicalRecipe( Materials.AceticAcid.getCells(8), GT_Utility.getIntegratedCircuit(1), Materials.Methanol.getFluid(6000), Materials.MethylAcetate.getFluid(11000), Materials.Water.getCells(3), Materials.Empty.getCells(5), 240); - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(1), Materials.AceticAcid.getFluid(8000), Materials.MethylAcetate.getFluid(11000), Materials.Water.getCells(3), Materials.Empty.getCells(3), 240); - GT_Values.RA.addChemicalRecipe( Materials.AceticAcid.getCells(8), GT_Utility.getIntegratedCircuit(2), Materials.Methanol.getFluid(6000), Materials.MethylAcetate.getFluid(11000), Materials.Empty.getCells(8), 240); - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(2), Materials.AceticAcid.getFluid(8000), Materials.MethylAcetate.getFluid(11000), Materials.Empty.getCells(6), 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.AceticAcid.getCells(8), Materials.Empty.getCells(3), Materials.Methanol.getFluid(6000), Materials.Water.getFluid(3000), Materials.MethylAcetate.getCells(11), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Methanol.getCells(6), Materials.Empty.getCells(5), Materials.AceticAcid.getFluid(8000), Materials.Water.getFluid(3000), Materials.MethylAcetate.getCells(11), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Methanol.getCells(6), Materials.AceticAcid.getCells(8), GT_Values.NF, GT_Values.NF, Materials.MethylAcetate.getCells(11), Materials.Water.getCells(3), 240, 30); - - GT_Values.RA.addMixerRecipe(Materials.Acetone.getCells(3), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.PolyvinylAcetate.getFluid(2000), Materials.Glue.getFluid(5000), Materials.Empty.getCells(3), 100, 8); - GT_Values.RA.addMixerRecipe(Materials.PolyvinylAcetate.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Acetone.getFluid(3000), Materials.Glue.getFluid(5000), Materials.Empty.getCells(2), 100, 8); - GT_Values.RA.addMixerRecipe(Materials.MethylAcetate.getCells(3), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.PolyvinylAcetate.getFluid(2000), Materials.Glue.getFluid(5000), Materials.Empty.getCells(3), 100, 8); - GT_Values.RA.addMixerRecipe(Materials.PolyvinylAcetate.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.MethylAcetate.getFluid(3000), Materials.Glue.getFluid(5000), Materials.Empty.getCells(2), 100, 8); - - GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodVinegar.getFluid(1000), - new FluidStack[]{Materials.AceticAcid.getFluid(100), Materials.Water.getFluid(500), Materials.Ethanol.getFluid(10), Materials.Methanol.getFluid(300), Materials.Acetone.getFluid(50), Materials.MethylAcetate.getFluid(10)}, - GT_Values.NI, 40, 256); - GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodTar.getFluid(1000), - new FluidStack[]{Materials.Creosote.getFluid(500), Materials.Phenol.getFluid(75), Materials.Benzene.getFluid(350), Materials.Toluene.getFluid(75)}, - GT_Values.NI, 40, 256); - - GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(6), Materials.AceticAcid.getCells(8), Materials.Oxygen.getGas(1000), Materials.VinylAcetate.getFluid(12000), Materials.Empty.getCells(14), 180); - GT_Values.RA.addChemicalRecipe(Materials.AceticAcid.getCells(8),Materials.Oxygen.getCells(1), Materials.Ethylene.getGas(6000), Materials.VinylAcetate.getFluid(12000), Materials.Empty.getCells(9), 180); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(1), Materials.Ethylene.getCells(6), Materials.AceticAcid.getFluid(8000), Materials.VinylAcetate.getFluid(12000), Materials.Empty.getCells(7), 180); - + try { + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated.json"); + if (tStream != null) { + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); + GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tRecipeList); + tStream.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading resource chemical_complicated.json"); + e.printStackTrace(GT_Log.err); + } + try { + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated_small.json"); + if (tStream != null) { + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); + tStream.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading resource chemical_complicated.json"); + e.printStackTrace(GT_Log.err); + } + try { + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated_large.json"); + if (tStream != null) { + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tRecipeList); + tStream.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading resource chemical_complicated.json"); + e.printStackTrace(GT_Log.err); + } GT_Values.RA.addDefaultPolymerizationRecipes(Materials.VinylAcetate.mFluid, Materials.VinylAcetate.getCells(1), Materials.PolyvinylAcetate.mFluid); - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Hydrogen.getGas(1000), Materials.HydrochloricAcid.getFluid(2000), Materials.Empty.getCells(1), 60, 8); - GT_Values.RA.addChemicalRecipe( Materials.Hydrogen.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(1000), Materials.HydrochloricAcid.getFluid(2000), Materials.Empty.getCells(1), 60, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(1), Materials.Empty.getCells(1), Materials.Hydrogen.getGas(1000), GT_Values.NF, Materials.HydrochloricAcid.getCells(2), GT_Values.NI, 60, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Hydrogen.getCells(1), Materials.Empty.getCells(1), Materials.Chlorine.getGas(1000), GT_Values.NF, Materials.HydrochloricAcid.getCells(2), GT_Values.NI, 60, 8); - - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Propene.getGas(9000), Materials.AllylChloride.getFluid(9000), Materials.HydrochloricAcid.getCells(2), 160); - GT_Values.RA.addChemicalRecipe( Materials.Propene.getCells(9), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(2000), Materials.AllylChloride.getFluid(9000), Materials.HydrochloricAcid.getCells(2), Materials.Empty.getCells(7), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(2), Materials.Empty.getCells(7), Materials.Propene.getGas(9000), Materials.HydrochloricAcid.getFluid(2000), Materials.AllylChloride.getCells(9), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipe( Materials.Propene.getCells(9), GT_Utility.getIntegratedCircuit(11), Materials.Chlorine.getGas(2000), Materials.HydrochloricAcid.getFluid(2000), Materials.AllylChloride.getCells(9), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Propene.getCells(9), Materials.Chlorine.getCells(2), GT_Values.NF, GT_Values.NF, Materials.AllylChloride.getCells(9), Materials.HydrochloricAcid.getCells(2), 160, 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(5), Materials.Mercury.getCells(1), Materials.Water.getFluid(15000), Materials.HypochlorousAcid.getFluid(15000), Materials.Empty.getCells(6), GT_Values.NI, 600, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Water.getCells(15), Materials.Mercury.getCells(1), Materials.Chlorine.getGas(5000), Materials.HypochlorousAcid.getFluid(15000), Materials.Empty.getCells(16), GT_Values.NI, 600, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(1), Materials.Water.getCells(3), Materials.Mercury.getFluid(200), Materials.HypochlorousAcid.getFluid(3000), Materials.Empty.getCells(4), GT_Values.NI, 120, 8); - GT_Values.RA.addMultiblockChemicalRecipe(null, new FluidStack[]{Materials.Chlorine.getGas(5000), Materials.Water.getFluid(15000), Materials.Mercury.getFluid(1000)}, new FluidStack[]{Materials.HypochlorousAcid.getFluid(10000)}, null, 600, 8); - - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Water.getFluid(3000), Materials.HypochlorousAcid.getFluid(3000), Materials.DilutedHydrochloricAcid.getCells(2), GT_Values.NI, 120); - GT_Values.RA.addChemicalRecipe( Materials.Water.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(2000), Materials.HypochlorousAcid.getFluid(3000), Materials.DilutedHydrochloricAcid.getCells(2), Materials.Empty.getCells(1), 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(2), Materials.Empty.getCells(1), Materials.Water.getFluid(3000), Materials.DilutedHydrochloricAcid.getFluid(2000), Materials.HypochlorousAcid.getCells(3), GT_Values.NI, 120, 30); - GT_Values.RA.addChemicalRecipe( Materials.Water.getCells(3), GT_Utility.getIntegratedCircuit(11), Materials.Chlorine.getGas(2000), Materials.DilutedHydrochloricAcid.getFluid(2000), Materials.HypochlorousAcid.getCells(3), GT_Values.NI, 120); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SodiumHydroxide.getDust(3), Materials.AllylChloride.getCells(9), Materials.HypochlorousAcid.getFluid(3000), Materials.Epichlorohydrin.getFluid(12000), Materials.SaltWater.getCells(3), Materials.Empty.getCells(6), 480, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SodiumHydroxide.getDust(3), Materials.HypochlorousAcid.getCells(3), Materials.AllylChloride.getFluid(9000), Materials.Epichlorohydrin.getFluid(12000), Materials.SaltWater.getCells(3), GT_Values.NI, 480, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(23)}, new FluidStack[]{Materials.Propene.getGas(9000), Materials.Chlorine.getGas(4000), Materials.Water.getFluid(3000)}, new FluidStack[]{Materials.Epichlorohydrin.getFluid(10000), Materials.SaltWater.getFluid(5000), Materials.HydrochloricAcid.getFluid(2000)}, null, 640, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Propene.getGas(9000), Materials.Chlorine.getGas(3000), Materials.Water.getFluid(3000), Materials.Mercury.getFluid(200)}, new FluidStack[]{Materials.Epichlorohydrin.getFluid(10000), Materials.SaltWater.getFluid(5000), Materials.HydrochloricAcid.getFluid(2000)}, null, 640, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.SodiumHydroxide.getDust(3), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Propene.getGas(9000), Materials.Chlorine.getGas(2000), Materials.HypochlorousAcid.getFluid(3000)}, new FluidStack[]{Materials.Epichlorohydrin.getFluid(10000), Materials.SaltWater.getFluid(5000), Materials.HydrochloricAcid.getFluid(2000)}, null, 640, 30); - - GT_Values.RA.addChemicalRecipe( Materials.Glycerol.getCells(14), GT_Utility.getIntegratedCircuit(1), Materials.HydrochloricAcid.getFluid(2000), Materials.Epichlorohydrin.getFluid(10000), Materials.Water.getCells(6), Materials.Empty.getCells(8), 480); - GT_Values.RA.addChemicalRecipe( Materials.Glycerol.getCells(14), GT_Utility.getIntegratedCircuit(11), Materials.HydrochloricAcid.getFluid(2000), Materials.Water.getFluid(6000), Materials.Epichlorohydrin.getCells(10), Materials.Empty.getCells(4), 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.HydrochloricAcid.getCells(2), Materials.Empty.getCells(8), Materials.Glycerol.getFluid(14000), Materials.Water.getFluid(6000), Materials.Epichlorohydrin.getCells(10), GT_Values.NI, 480, 30); - GT_Values.RA.addChemicalRecipe( Materials.HydrochloricAcid.getCells(2), GT_Utility.getIntegratedCircuit(2), Materials.Glycerol.getFluid(14000), Materials.Epichlorohydrin.getFluid(10000), Materials.Empty.getCells(2), 480); - GT_Values.RA.addChemicalRecipe( Materials.Glycerol.getCells(14), GT_Utility.getIntegratedCircuit(2), Materials.HydrochloricAcid.getFluid(2000), Materials.Epichlorohydrin.getFluid(10000), Materials.Empty.getCells(14), 480); - GT_Values.RA.addChemicalRecipe( Materials.Glycerol.getCells(14), GT_Utility.getIntegratedCircuit(12), Materials.HydrochloricAcid.getFluid(2000), GT_Values.NF, Materials.Epichlorohydrin.getCells(10), Materials.Empty.getCells(4), 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.HydrochloricAcid.getCells(2), Materials.Glycerol.getCells(14), GT_Values.NF, GT_Values.NF, Materials.Epichlorohydrin.getCells(10), Materials.Water.getCells(6), 480, 30); - - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Apatite.getDust(21)}, new FluidStack[]{Materials.SulfuricAcid.getFluid(35000), Materials.Water.getFluid(10000)}, new FluidStack[]{Materials.PhosphoricAcid.getFluid(24000), Materials.HydrochloricAcid.getFluid(2000)}, new ItemStack[]{Materials.Gypsum.getDust(40)}, 320, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Phosphorus.getDust(2), GT_Values.NI, Materials.Oxygen.getGas(5000), GT_Values.NF, Materials.PhosphorousPentoxide.getDust(7), GT_Values.NI, 80, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Phosphorus.getDust(2), GT_Utility.getIntegratedCircuit(1)}, new FluidStack[]{Materials.Oxygen.getGas(5000)}, null, new ItemStack[]{Materials.PhosphorousPentoxide.getDust(7)}, 80, 30); - GT_Values.RA.addChemicalRecipe(Materials.PhosphorousPentoxide.getDust(7), GT_Utility.getIntegratedCircuit(1), Materials.Water.getFluid(9000), Materials.PhosphoricAcid.getFluid(16000), GT_Values.NI, 120); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Phosphorus.getDust(1), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Oxygen.getGas(2500), Materials.Water.getFluid(4500)}, new FluidStack[]{Materials.PhosphoricAcid.getFluid(8000)}, null, 320, 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Propene.getCells(6), Materials.PhosphoricAcid.getCells(1), Materials.Benzene.getFluid(8000), Materials.Cumene.getFluid(14000), Materials.Empty.getCells(7), GT_Values.NI, 360, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.PhosphoricAcid.getCells(1), Materials.Benzene.getCells(8), Materials.Propene.getGas(6000), Materials.Cumene.getFluid(14000), Materials.Empty.getCells(9), GT_Values.NI, 360, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Benzene.getCells(8), Materials.Propene.getCells(6), Materials.PhosphoricAcid.getFluid(1000), GT_Values.NF, Materials.Cumene.getCells(14), GT_Values.NI, 360, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(1)}, new FluidStack[]{Materials.Propene.getGas(6000), Materials.Benzene.getFluid(8000), Materials.PhosphoricAcid.getFluid(1000)}, new FluidStack[]{Materials.Cumene.getFluid(14000)}, null, 360, 30); - - GT_Values.RA.addChemicalRecipe( Materials.Cumene.getCells(11), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(2000), Materials.Acetone.getFluid(6000), Materials.Phenol.getCells(6), Materials.Empty.getCells(5), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(1), Materials.Empty.getCells(5), Materials.Cumene.getFluid(21000), Materials.Acetone.getFluid(6000), Materials.Phenol.getCells(6), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipe( Materials.Cumene.getCells(11), GT_Utility.getIntegratedCircuit(11), Materials.Oxygen.getGas(2000), Materials.Phenol.getFluid(6000), Materials.Acetone.getCells(6), Materials.Empty.getCells(5), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(1), Materials.Empty.getCells(5), Materials.Cumene.getFluid(21000), Materials.Phenol.getFluid(6000), Materials.Acetone.getCells(6), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Cumene.getCells(11), Materials.Oxygen.getCells(1), GT_Values.NF, GT_Values.NF, Materials.Phenol.getCells(6), Materials.Acetone.getCells(6), 160, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Propene.getGas(9000), Materials.Benzene.getFluid(12000), Materials.PhosphoricAcid.getFluid(1000), Materials.Oxygen.getGas(2000)}, new FluidStack[]{Materials.Phenol.getFluid(13000), Materials.Acetone.getFluid(10000)}, null, 480, 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Acetone.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Phenol.getFluid(2000), Materials.BisphenolA.getFluid(3000), Materials.Empty.getCells(1), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Acetone.getCells(1), Materials.Empty.getCells(2), Materials.Phenol.getFluid(2000), GT_Values.NF, Materials.BisphenolA.getCells(3), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Phenol.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Acetone.getFluid(1000), Materials.BisphenolA.getFluid(3000), Materials.Empty.getCells(2), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Phenol.getCells(2), Materials.Empty.getCells(1), Materials.Acetone.getFluid(1000), GT_Values.NF, Materials.BisphenolA.getCells(3), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Acetone.getCells(1), Materials.Phenol.getCells(2), GT_Values.NF, GT_Values.NF, Materials.BisphenolA.getCells(3), GT_Values.NI, 160, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(1)}, new FluidStack[]{Materials.Acetone.getFluid(1000), Materials.Phenol.getFluid(2000)}, new FluidStack[]{Materials.BisphenolA.getFluid(3000)}, null, 160, 30); - - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDust(1), Materials.BisphenolA.getCells(12), Materials.Epichlorohydrin.getFluid(4000), Materials.Epoxid.getMolten(16000), Materials.SaltWater.getCells(1), Materials.Empty.getCells(11), 200); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDust(1), Materials.Epichlorohydrin.getCells(4), Materials.BisphenolA.getFluid(12000), Materials.Epoxid.getMolten(16000), Materials.SaltWater.getCells(1), Materials.Empty.getCells(3), 200); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.SodiumHydroxide.getDust(1), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Acetone.getFluid(4000), Materials.Phenol.getFluid(8000), Materials.Epichlorohydrin.getFluid(4000)}, new FluidStack[]{Materials.Epoxid.getMolten(16000), Materials.SaltWater.getFluid(1000)}, null, 640, 30); - - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(1), Materials.HydrochloricAcid.getFluid(2000), Materials.Chloromethane.getGas(5000), Materials.Water.getCells(3), Materials.Empty.getCells(3), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(11), Materials.HydrochloricAcid.getFluid(2000), Materials.Water.getFluid(3000), Materials.Chloromethane.getCells(5), Materials.Empty.getCells(1), 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.HydrochloricAcid.getCells(2), Materials.Empty.getCells(3), Materials.Methanol.getFluid(6000), Materials.Water.getFluid(3000), Materials.Chloromethane.getCells(5), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(2), Materials.HydrochloricAcid.getFluid(2000), Materials.Chloromethane.getGas(5000), Materials.Empty.getCells(6), 160); - GT_Values.RA.addChemicalRecipe( Materials.HydrochloricAcid.getCells(2), GT_Utility.getIntegratedCircuit(2), Materials.Methanol.getFluid(6000), Materials.Chloromethane.getGas(5000), Materials.Empty.getCells(2), 160); - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(12), Materials.HydrochloricAcid.getFluid(2000), GT_Values.NF, Materials.Chloromethane.getCells(5), Materials.Empty.getCells(1), 160, 30); - - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Methane.getGas(5000), Materials.Chloromethane.getGas(5000), Materials.HydrochloricAcid.getCells(2), 80); - GT_Values.RA.addChemicalRecipe( Materials.Methane.getCells(5), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(2000), Materials.Chloromethane.getGas(5000), Materials.HydrochloricAcid.getCells(2), Materials.Empty.getCells(3), 80); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(2), Materials.Empty.getCells(3), Materials.Methane.getGas(5000), Materials.HydrochloricAcid.getFluid(2000), Materials.Chloromethane.getCells(5), GT_Values.NI, 80, 30); - GT_Values.RA.addChemicalRecipe( Materials.Methane.getCells(5), GT_Utility.getIntegratedCircuit(11), Materials.Chlorine.getGas(2000), Materials.HydrochloricAcid.getFluid(2000), Materials.Chloromethane.getCells(5), 80); - - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(6), GT_Utility.getIntegratedCircuit(3), Materials.Methane.getGas(5000), Materials.Chloroform.getFluid(5000), Materials.HydrochloricAcid.getCells(6), 80); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Methane.getCells(5), Materials.Empty.getCells(1), Materials.Chlorine.getGas(6000), Materials.Chloroform.getFluid(5000), Materials.HydrochloricAcid.getCells(6), GT_Values.NI, 80, 30); - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(6), GT_Utility.getIntegratedCircuit(13), Materials.Methane.getGas(5000), Materials.HydrochloricAcid.getFluid(6000), Materials.Chloroform.getCells(5), Materials.Empty.getCells(1), 80); - GT_Values.RA.addChemicalRecipe( Materials.Methane.getCells(5), GT_Utility.getIntegratedCircuit(13), Materials.Chlorine.getGas(6000), Materials.HydrochloricAcid.getFluid(6000), Materials.Chloroform.getCells(5), 80); - - GT_Values.RA.addChemicalRecipe( Materials.Fluorine.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Hydrogen.getGas(1000), Materials.HydrofluoricAcid.getFluid(2000), Materials.Empty.getCells(1), 60, 8); - GT_Values.RA.addChemicalRecipe( Materials.Hydrogen.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Fluorine.getGas(1000), Materials.HydrofluoricAcid.getFluid(2000), Materials.Empty.getCells(1), 60, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Fluorine.getCells(1), Materials.Empty.getCells(1), Materials.Hydrogen.getGas(1000), GT_Values.NF, Materials.HydrofluoricAcid.getCells(2), GT_Values.NI, 60, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Hydrogen.getCells(1), Materials.Empty.getCells(1), Materials.Fluorine.getGas(1000), GT_Values.NF, Materials.HydrofluoricAcid.getCells(2), GT_Values.NI, 60, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Hydrogen.getCells(1), Materials.Fluorine.getCells(1), GT_Values.NF, GT_Values.NF, Materials.HydrofluoricAcid.getCells(2), GT_Values.NI, 60, 8); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chloroform.getCells(5), Materials.Empty.getCells(1), Materials.HydrofluoricAcid.getFluid(4000), Materials.Tetrafluoroethylene.getGas(3000), Materials.DilutedHydrochloricAcid.getCells(6), GT_Values.NI, 480, 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.HydrofluoricAcid.getCells(4), Materials.Empty.getCells(2), Materials.Chloroform.getFluid(5000), Materials.Tetrafluoroethylene.getGas(3000), Materials.DilutedHydrochloricAcid.getCells(6), GT_Values.NI, 480, 240); - GT_Values.RA.addChemicalRecipe( Materials.HydrofluoricAcid.getCells(4), GT_Utility.getIntegratedCircuit(11), Materials.Chloroform.getFluid(5000), Materials.DilutedHydrochloricAcid.getFluid(6000), Materials.Tetrafluoroethylene.getCells(3), Materials.Empty.getCells(1), 480, 240); - GT_Values.RA.addChemicalRecipe( Materials.Chloroform.getCells(5), GT_Utility.getIntegratedCircuit(11), Materials.HydrofluoricAcid.getFluid(4000), Materials.DilutedHydrochloricAcid.getFluid(6000), Materials.Tetrafluoroethylene.getCells(3), Materials.Empty.getCells(2), 480, 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chloroform.getCells(5), Materials.HydrofluoricAcid.getCells(4), GT_Values.NF, GT_Values.NF, Materials.Tetrafluoroethylene.getCells(3), Materials.DilutedHydrochloricAcid.getCells(6), 480, 240); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(1)}, new FluidStack[]{Materials.HydrofluoricAcid.getFluid(4000), Materials.Chloroform.getFluid(5000)}, new FluidStack[]{Materials.Tetrafluoroethylene.getGas(3000), Materials.DilutedHydrochloricAcid.getFluid(6000)}, null, 480, 240); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.HydrofluoricAcid.getFluid(4000), Materials.Methane.getGas(5000), Materials.Chlorine.getGas(6000)}, new FluidStack[]{Materials.Tetrafluoroethylene.getGas(6000), Materials.HydrochloricAcid.getFluid(6000), Materials.DilutedHydrochloricAcid.getFluid(6000)}, null, 540, 240); - - GT_Values.RA.addChemicalRecipe( Materials.Silicon.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Chloromethane.getGas(10000), Materials.Dimethyldichlorosilane.getFluid(11000), GT_Values.NI, 240, 96); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Silicon.getDust(1), Materials.Chloromethane.getCells(10), GT_Values.NF, Materials.Dimethyldichlorosilane.getFluid(11000), Materials.Empty.getCells(10), GT_Values.NI, 240, 96); - - GT_Values.RA.addChemicalRecipe( Materials.Dimethyldichlorosilane.getCells(11), GT_Utility.getIntegratedCircuit(1), Materials.Water.getFluid(3000), Materials.DilutedHydrochloricAcid.getFluid(4000), Materials.Polydimethylsiloxane.getDust(10), Materials.Empty.getCells(11), 240, 96); - GT_Values.RA.addChemicalRecipe( Materials.Water.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Dimethyldichlorosilane.getFluid(11000), Materials.DilutedHydrochloricAcid.getFluid(4000), Materials.Polydimethylsiloxane.getDust(10), Materials.Empty.getCells(3), 240, 96); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Water.getCells(3), Materials.Empty.getCells(1), Materials.Dimethyldichlorosilane.getFluid(11000), GT_Values.NF, Materials.Polydimethylsiloxane.getDust(10), Materials.DilutedHydrochloricAcid.getCells(4), 240, 96); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Silicon.getDust(1), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Methane.getGas(10000), Materials.Chlorine.getGas(4000), Materials.Water.getFluid(3000)}, new FluidStack[]{Materials.HydrochloricAcid.getFluid(4000), Materials.DilutedHydrochloricAcid.getFluid(4000)}, new ItemStack[]{Materials.Polydimethylsiloxane.getDust(10)}, 480, 96); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Silicon.getDust(1), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Methanol.getFluid(12000), Materials.HydrochloricAcid.getFluid(4000)}, new FluidStack[]{Materials.DilutedHydrochloricAcid.getFluid(4000)}, new ItemStack[]{Materials.Polydimethylsiloxane.getDust(10)}, 480, 96); - - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(1), Materials.Ammonia.getGas(2000), Materials.Dimethylamine.getGas(5000), Materials.Water.getCells(3), Materials.Empty.getCells(3), 240, 120); - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(11), Materials.Ammonia.getGas(2000), Materials.Water.getFluid(3000), Materials.Dimethylamine.getCells(5), Materials.Empty.getCells(1), 240, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ammonia.getCells(2), Materials.Empty.getCells(3), Materials.Methanol.getFluid(6000), Materials.Water.getFluid(3000), Materials.Dimethylamine.getCells(5), GT_Values.NI, 240, 120); - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(2), Materials.Ammonia.getGas(2000), Materials.Dimethylamine.getGas(5000), Materials.Empty.getCells(6), 240, 120); - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(12), Materials.Ammonia.getGas(2000), GT_Values.NF, Materials.Dimethylamine.getCells(5), Materials.Empty.getCells(1), 240, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Methanol.getCells(6), Materials.Ammonia.getCells(2), GT_Values.NF, GT_Values.NF, Materials.Dimethylamine.getCells(5), Materials.Water.getCells(3), 240, 120); - - GT_Values.RA.addChemicalRecipe( Materials.Ammonia.getCells(4), GT_Utility.getIntegratedCircuit(1), Materials.HypochlorousAcid.getFluid(3000), Materials.Chloramine.getFluid(4000), Materials.Water.getCells(3), Materials.Empty.getCells(1), 160); - GT_Values.RA.addChemicalRecipe( Materials.HypochlorousAcid.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Ammonia.getGas(4000), Materials.Chloramine.getFluid(4000), Materials.Water.getCells(3), 160); - GT_Values.RA.addChemicalRecipe( Materials.Ammonia.getCells(4), GT_Utility.getIntegratedCircuit(11), Materials.HypochlorousAcid.getFluid(3000), Materials.Water.getFluid(3000), Materials.Chloramine.getCells(4), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.HypochlorousAcid.getCells(3), Materials.Empty.getCells(1), Materials.Ammonia.getGas(4000), Materials.Water.getFluid(3000), Materials.Chloramine.getCells(4), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipe( Materials.Ammonia.getCells(4), GT_Utility.getIntegratedCircuit(2), Materials.HypochlorousAcid.getFluid(3000), Materials.Chloramine.getFluid(4000), Materials.Empty.getCells(4), 160); - GT_Values.RA.addChemicalRecipe( Materials.HypochlorousAcid.getCells(3), GT_Utility.getIntegratedCircuit(2), Materials.Ammonia.getGas(4000), Materials.Chloramine.getFluid(4000), Materials.Empty.getCells(3), 160); - GT_Values.RA.addChemicalRecipe( Materials.Ammonia.getCells(4), GT_Utility.getIntegratedCircuit(12), Materials.HypochlorousAcid.getFluid(3000), GT_Values.NF, Materials.Chloramine.getCells(4), 160); - - GT_Values.RA.addChemicalRecipe( Materials.Chloramine.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Dimethylamine.getGas(5000), Materials.Dimethylhydrazine.getFluid(6000), Materials.DilutedHydrochloricAcid.getCells(1), Materials.Empty.getCells(1), 960, 480); - GT_Values.RA.addChemicalRecipe( Materials.Dimethylamine.getCells(5), GT_Utility.getIntegratedCircuit(1), Materials.Chloramine.getFluid(2000), Materials.Dimethylhydrazine.getFluid(6000), Materials.DilutedHydrochloricAcid.getCells(1), Materials.Empty.getCells(4), 960, 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chloramine.getCells(2), Materials.Empty.getCells(4), Materials.Dimethylamine.getGas(5000), Materials.DilutedHydrochloricAcid.getFluid(1000), Materials.Dimethylhydrazine.getCells(6), GT_Values.NI, 960, 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Dimethylamine.getCells(5), Materials.Empty.getCells(1), Materials.Chloramine.getFluid(2000), Materials.DilutedHydrochloricAcid.getFluid(1000), Materials.Dimethylhydrazine.getCells(6), GT_Values.NI, 960, 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Dimethylamine.getCells(5), Materials.Chloramine.getCells(2), Materials.Chloramine.getFluid(2000), Materials.DilutedHydrochloricAcid.getFluid(1000), Materials.Dimethylhydrazine.getCells(6), Materials.DilutedHydrochloricAcid.getCells(1), 960, 480); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.HypochlorousAcid.getFluid(3000), Materials.Ammonia.getGas(8000), Materials.Methanol.getFluid(12000)}, new FluidStack[]{Materials.Dimethylhydrazine.getFluid(12000), Materials.DilutedHydrochloricAcid.getFluid(2000), Materials.Water.getFluid(9000)}, null, 1040, 480); - - GT_Values.RA.addChemicalRecipe(GT_Utility.getIntegratedCircuit(2), GT_Values.NI, Materials.NitrogenDioxide.getGas(1000), Materials.DinitrogenTetroxide.getGas(1000), GT_Values.NI, 640); - GT_Values.RA.addChemicalRecipe(Materials.NitrogenDioxide.getCells(1), GT_Utility.getIntegratedCircuit(2), GT_Values.NF, Materials.DinitrogenTetroxide.getGas(1000), Materials.Empty.getCells(1), 640); - GT_Values.RA.addChemicalRecipe(Materials.NitrogenDioxide.getCells(1), GT_Utility.getIntegratedCircuit(12), GT_Values.NF, GT_Values.NF, Materials.DinitrogenTetroxide.getCells(1), 640); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(23)}, new FluidStack[]{Materials.Ammonia.getGas(8000), Materials.Oxygen.getGas(7000)}, new FluidStack[]{Materials.DinitrogenTetroxide.getGas(6000), Materials.Water.getFluid(9000)}, null, 480, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(23)}, new FluidStack[]{Materials.Nitrogen.getGas(2000), Materials.Hydrogen.getGas(6000), Materials.Oxygen.getGas(7000)}, new FluidStack[]{Materials.DinitrogenTetroxide.getGas(6000), Materials.Water.getFluid(9000)}, null, 1100, 480); - - GT_Values.RA.addMixerRecipe(Materials.Dimethylhydrazine.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.DinitrogenTetroxide.getGas(1000), new FluidStack(ItemList.sRocketFuel, 2000), Materials.Empty.getCells(1), 60, 16); - GT_Values.RA.addMixerRecipe(Materials.DinitrogenTetroxide.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Dimethylhydrazine.getFluid(1000), new FluidStack(ItemList.sRocketFuel, 2000), Materials.Empty.getCells(1), 60, 16); - GT_Values.RA.addMixerRecipe(Materials.Dimethylhydrazine.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Oxygen.getGas(1000), new FluidStack(ItemList.sRocketFuel, 3000), Materials.Empty.getCells(2), 60, 16); - GT_Values.RA.addMixerRecipe(Materials.Oxygen.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Dimethylhydrazine.getFluid(2000), new FluidStack(ItemList.sRocketFuel, 3000), Materials.Empty.getCells(1), 60, 16); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ammonia.getCells(8), Materials.Empty.getCells(1), Materials.Oxygen.getGas(5000), Materials.NitricOxide.getGas(4000), Materials.Water.getCells(9), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(5), Materials.Empty.getCells(4), Materials.Ammonia.getGas(8000), Materials.NitricOxide.getGas(4000), Materials.Water.getCells(9), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipe( Materials.Ammonia.getCells(8), GT_Utility.getIntegratedCircuit(11), Materials.Oxygen.getGas(5000), Materials.Water.getFluid(9000), Materials.NitricOxide.getCells(4), Materials.Empty.getCells(4), 160); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(5), GT_Utility.getIntegratedCircuit(11), Materials.Ammonia.getGas(8000), Materials.Water.getFluid(9000), Materials.NitricOxide.getCells(4), Materials.Empty.getCells(1), 160); - GT_Values.RA.addChemicalRecipe( Materials.Ammonia.getCells(8), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(5000), Materials.NitricOxide.getGas(4000), Materials.Empty.getCells(8), 320); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(5), GT_Utility.getIntegratedCircuit(2), Materials.Ammonia.getGas(8000), Materials.NitricOxide.getGas(4000), Materials.Empty.getCells(5), 320); - GT_Values.RA.addChemicalRecipe( Materials.Ammonia.getCells(8), GT_Utility.getIntegratedCircuit(12), Materials.Oxygen.getGas(5000), GT_Values.NF, Materials.NitricOxide.getCells(4), Materials.Empty.getCells(4), 160); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(5), GT_Utility.getIntegratedCircuit(12), Materials.Ammonia.getGas(8000), GT_Values.NF, Materials.NitricOxide.getCells(4), Materials.Empty.getCells(1), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ammonia.getCells(8), Materials.Oxygen.getCells(5), GT_Values.NF, GT_Values.NF, Materials.NitricOxide.getCells(4), Materials.Water.getCells(9), 160, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(1)}, new FluidStack[]{Materials.Ammonia.getGas(8000), Materials.Oxygen.getGas(5000)}, new FluidStack[]{Materials.NitricOxide.getGas(4000), Materials.Water.getFluid(9000)}, null, 160, 30); - - GT_Values.RA.addChemicalRecipe( Materials.NitricOxide.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(1000), Materials.NitrogenDioxide.getGas(3000), Materials.Empty.getCells(2), 160); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.NitricOxide.getGas(2000), Materials.NitrogenDioxide.getGas(3000), Materials.Empty.getCells(1), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.NitricOxide.getCells(2), Materials.Empty.getCells(1), Materials.Oxygen.getGas(1000), GT_Values.NF, Materials.NitrogenDioxide.getCells(3), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(1), Materials.Empty.getCells(2), Materials.NitricOxide.getGas(2000), GT_Values.NF, Materials.NitrogenDioxide.getCells(3), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.NitricOxide.getCells(2), Materials.Oxygen.getCells(1), GT_Values.NF, GT_Values.NF, Materials.NitrogenDioxide.getCells(3), GT_Values.NI, 160, 30); - - GT_Values.RA.addChemicalRecipe( Materials.Water.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.NitrogenDioxide.getGas(9000), Materials.NitricAcid.getFluid(10000), Materials.NitricOxide.getCells(2), Materials.Empty.getCells(1), 240); - GT_Values.RA.addChemicalRecipe( Materials.NitrogenDioxide.getCells(9), GT_Utility.getIntegratedCircuit(1), Materials.Water.getFluid(3000), Materials.NitricAcid.getFluid(10000), Materials.NitricOxide.getCells(2), Materials.Empty.getCells(7), 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Water.getCells(3), Materials.Empty.getCells(7), Materials.NitrogenDioxide.getGas(9000), Materials.NitricOxide.getGas(2000), Materials.NitricAcid.getCells(10), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.NitrogenDioxide.getCells(9), Materials.Empty.getCells(1), Materials.Water.getFluid(3000), Materials.NitricOxide.getGas(2000), Materials.NitricAcid.getCells(10), GT_Values.NI, 240, 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.NitrogenDioxide.getCells(6), Materials.Oxygen.getCells(1), Materials.Water.getFluid(3000), Materials.NitricAcid.getFluid(10000), Materials.Empty.getCells(7), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(1), Materials.Water.getCells(3), Materials.NitrogenDioxide.getGas(6000), Materials.NitricAcid.getFluid(10000), Materials.Empty.getCells(4), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Water.getCells(3), Materials.NitrogenDioxide.getCells(6), Materials.Oxygen.getGas(1000), Materials.NitricAcid.getFluid(10000), Materials.Empty.getCells(9), GT_Values.NI, 240, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, new FluidStack[]{Materials.NitrogenDioxide.getGas(6000), Materials.Water.getFluid(3000), Materials.Oxygen.getGas(1000)}, new FluidStack[]{Materials.NitricAcid.getFluid(1000), Materials.Water.getFluid(1000)}, null, 240, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Hydrogen.getGas(3000), Materials.Nitrogen.getGas(1000), Materials.Oxygen.getGas(4000)}, new FluidStack[]{Materials.NitricAcid.getFluid(5000), Materials.Water.getFluid(3000)}, null, 320, 480); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Ammonia.getGas(4000), Materials.Oxygen.getGas(4000)}, new FluidStack[]{Materials.NitricAcid.getFluid(5000), Materials.Water.getFluid(3000)}, null, 320, 30); - - GT_Values.RA.addChemicalRecipe(Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(2000), Materials.SulfurDioxide.getGas(3000), GT_Values.NI, 60, 8); - - GT_Values.RA.addChemicalRecipe( Materials.HydricSulfide.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(3000), Materials.SulfurDioxide.getGas(3000), Materials.Water.getCells(3), 120); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.HydricSulfide.getGas(3000), Materials.SulfurDioxide.getGas(3000), Materials.Water.getCells(3), 120); - GT_Values.RA.addChemicalRecipe( Materials.HydricSulfide.getCells(3), GT_Utility.getIntegratedCircuit(11), Materials.Oxygen.getGas(3000), Materials.Water.getFluid(3000), Materials.SulfurDioxide.getCells(3), 120); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(3), GT_Utility.getIntegratedCircuit(11), Materials.HydricSulfide.getGas(3000), Materials.Water.getFluid(3000), Materials.SulfurDioxide.getCells(3), 120); - GT_Values.RA.addChemicalRecipe( Materials.HydricSulfide.getCells(3), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(3000), Materials.SulfurDioxide.getGas(3000), Materials.Empty.getCells(3), 120); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(3), GT_Utility.getIntegratedCircuit(2), Materials.HydricSulfide.getGas(3000), Materials.SulfurDioxide.getGas(3000), Materials.Empty.getCells(3), 120); - GT_Values.RA.addChemicalRecipe( Materials.HydricSulfide.getCells(3), GT_Utility.getIntegratedCircuit(12), Materials.Oxygen.getGas(3000), GT_Values.NF, Materials.SulfurDioxide.getCells(3), 120); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(3), GT_Utility.getIntegratedCircuit(12), Materials.HydricSulfide.getGas(3000), GT_Values.NF, Materials.SulfurDioxide.getCells(3), 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(3), Materials.HydricSulfide.getCells(3), GT_Values.NF, GT_Values.NF, Materials.SulfurDioxide.getCells(3), Materials.Water.getCells(3), 120, 30); - - GT_Values.RA.addChemicalRecipe(Materials.SulfurDioxide.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.HydricSulfide.getGas(2000), Materials.Water.getFluid(2000), Materials.Sulfur.getDust(1), Materials.Empty.getCells(1), 120); - GT_Values.RA.addChemicalRecipe(Materials.HydricSulfide.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.SulfurDioxide.getGas(1000), Materials.Water.getFluid(2000), Materials.Sulfur.getDust(1), Materials.Empty.getCells(2), 120); - GT_Values.RA.addChemicalRecipe(Materials.SulfurDioxide.getCells(1), GT_Utility.getIntegratedCircuit(2), Materials.HydricSulfide.getGas(2000), GT_Values.NF, Materials.Sulfur.getDust(1), Materials.Empty.getCells(1), 120); - GT_Values.RA.addChemicalRecipe(Materials.HydricSulfide.getCells(2), GT_Utility.getIntegratedCircuit(2), Materials.SulfurDioxide.getGas(1000), GT_Values.NF, Materials.Sulfur.getDust(1), Materials.Empty.getCells(2), 120); - GT_Values.RA.addChemicalRecipe(Materials.HydricSulfide.getCells(2), GT_Utility.getIntegratedCircuit(2), Materials.SulfurDioxide.getGas(1000), GT_Values.NF, Materials.Sulfur.getDust(1), Materials.Empty.getCells(2), 120); - - GT_Values.RA.addChemicalRecipe( Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(3), Materials.Oxygen.getGas(3000), Materials.SulfurTrioxide.getGas(4000), GT_Values.NI, 280); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Sulfur.getDust(1), Materials.Empty.getCells(4), Materials.Oxygen.getGas(3000), GT_Values.NF, Materials.SulfurTrioxide.getCells(4), GT_Values.NI, 280, 30); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.SulfurDioxide.getGas(3000), Materials.SulfurTrioxide.getGas(4000), Materials.Empty.getCells(1), 200); - GT_Values.RA.addChemicalRecipe( Materials.SulfurDioxide.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(1000), Materials.SulfurTrioxide.getGas(4000), Materials.Empty.getCells(3), 200); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(1), Materials.Empty.getCells(3), Materials.SulfurDioxide.getGas(3000), GT_Values.NF, Materials.SulfurTrioxide.getCells(4), 200); - GT_Values.RA.addChemicalRecipe( Materials.SulfurDioxide.getCells(3), Materials.Empty.getCells(1), Materials.Oxygen.getGas(1000), GT_Values.NF, Materials.SulfurTrioxide.getCells(4), 200); - - GT_Values.RA.addChemicalRecipe( Materials.Water.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.SulfurTrioxide.getGas(4000), Materials.SulfuricAcid.getFluid(7000), Materials.Empty.getCells(3), 320, 8); - GT_Values.RA.addChemicalRecipe( Materials.SulfurTrioxide.getCells(4), GT_Utility.getIntegratedCircuit(1), Materials.Water.getFluid(3000), Materials.SulfuricAcid.getFluid(7000), Materials.Empty.getCells(4), 320, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Water.getCells(3), Materials.Empty.getCells(4), Materials.SulfurTrioxide.getGas(4000), GT_Values.NF, Materials.SulfuricAcid.getCells(7), GT_Values.NI, 320, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SulfurTrioxide.getCells(4), Materials.Empty.getCells(3), Materials.Water.getFluid(3000), GT_Values.NF, Materials.SulfuricAcid.getCells(7), GT_Values.NI, 320, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SulfurTrioxide.getCells(4), Materials.Water.getCells(3), GT_Values.NF, GT_Values.NF, Materials.SulfuricAcid.getCells(7), GT_Values.NI, 320, 8); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Oxygen.getGas(3000), Materials.Water.getFluid(3000)}, new FluidStack[]{Materials.SulfuricAcid.getFluid(7000)}, null, 480, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.HydricSulfide.getGas(3000), Materials.Oxygen.getGas(4000)}, new FluidStack[]{Materials.SulfuricAcid.getFluid(7000)}, null, 480, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.SulfurDioxide.getGas(3000), Materials.Oxygen.getGas(1000), Materials.Water.getFluid(3000)}, new FluidStack[]{Materials.SulfuricAcid.getFluid(7000)}, null, 480, 30); - - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Ethylene.getGas(6000), Materials.VinylChloride.getGas(6000), Materials.HydrochloricAcid.getCells(2), 160); - GT_Values.RA.addChemicalRecipe( Materials.Ethylene.getCells(6), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(2000), Materials.VinylChloride.getGas(6000), Materials.HydrochloricAcid.getCells(2), Materials.Empty.getCells(4), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(2), Materials.Empty.getCells(4), Materials.Ethylene.getGas(6000), Materials.HydrochloricAcid.getFluid(2000), Materials.VinylChloride.getCells(6), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipe( Materials.Ethylene.getCells(6), GT_Utility.getIntegratedCircuit(11), Materials.Chlorine.getGas(2000), Materials.HydrochloricAcid.getFluid(2000), Materials.VinylChloride.getCells(6), 160); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethylene.getCells(6), Materials.Chlorine.getCells(2), GT_Values.NF, GT_Values.NF, Materials.VinylChloride.getCells(6), Materials.HydrochloricAcid.getCells(2), 160, 30); - - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethylene.getCells(6), Materials.HydrochloricAcid.getCells(2), Materials.Oxygen.getGas(1000), Materials.VinylChloride.getGas(6000), Materials.Empty.getCells(8), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.HydrochloricAcid.getCells(2), Materials.Oxygen.getCells(1), Materials.Ethylene.getGas(6000), Materials.VinylChloride.getGas(6000), Materials.Empty.getCells(3), GT_Values.NI, 160, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(1), Materials.Ethylene.getCells(6), Materials.HydrochloricAcid.getFluid(2000), Materials.VinylChloride.getGas(6000), Materials.Empty.getCells(7), GT_Values.NI, 160, 30); - - GT_Values.RA.addUniversalDistillationRecipe(Materials.Acetone.getFluid(1000), new FluidStack[]{Materials.Ethenone.getGas(500), Materials.Methane.getGas(500)}, GT_Values.NI, 50, 640); - GT_Values.RA.addFluidHeaterRecipe(GT_Utility.getIntegratedCircuit(1), Materials.Acetone.getFluid(1000), Materials.Ethenone.getGas(500), 160, 30); - GT_Values.RA.addChemicalRecipe( Materials.AceticAcid.getCells(8), GT_Utility.getIntegratedCircuit(1), Materials.SulfuricAcid.getFluid(7000), Materials.DilutedSulfuricAcid.getFluid(10000), Materials.Ethenone.getCells(5), Materials.Empty.getCells(3), 160, 120); - GT_Values.RA.addChemicalRecipe( Materials.SulfuricAcid.getCells(7), GT_Utility.getIntegratedCircuit(1), Materials.AceticAcid.getFluid(8000), Materials.DilutedSulfuricAcid.getFluid(10000), Materials.Ethenone.getCells(5), Materials.Empty.getCells(2), 160, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.AceticAcid.getCells(8), Materials.Empty.getCells(2), Materials.SulfuricAcid.getFluid(7000), Materials.Ethenone.getGas(5000), Materials.DilutedSulfuricAcid.getCells(10), GT_Values.NI, 160, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SulfuricAcid.getCells(7), Materials.Empty.getCells(3), Materials.AceticAcid.getFluid(8000), Materials.Ethenone.getGas(5000), Materials.DilutedSulfuricAcid.getCells(10), GT_Values.NI, 160, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.AceticAcid.getCells(8), Materials.SulfuricAcid.getCells(7), GT_Values.NF, GT_Values.NF, Materials.Ethenone.getCells(5), Materials.DilutedSulfuricAcid.getCells(10), 160, 120); - - GT_Values.RA.addChemicalRecipe(Materials.Ethenone.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.NitricAcid.getFluid(8000), Materials.Tetranitromethane.getFluid(9000), Materials.Empty.getCells(1), 480, 16); - GT_Values.RA.addChemicalRecipe(Materials.NitricAcid.getCells(8), GT_Utility.getIntegratedCircuit(1), Materials.Ethenone.getGas(1000), Materials.Tetranitromethane.getFluid(9000), Materials.Empty.getCells(8), 480, 16); - - GT_Values.RA.addMixerRecipe(Materials.LightFuel.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Tetranitromethane.getFluid(250), Materials.NitroFuel.getFluid(1000), Materials.Empty.getCells(1), 80, 8); - GT_Values.RA.addMixerRecipe(Materials.Fuel.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Tetranitromethane.getFluid(250), Materials.NitroFuel.getFluid(1000), Materials.Empty.getCells(2), 80, 8); - GT_Values.RA.addMixerRecipe(Materials.BioDiesel.getCells(4), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Tetranitromethane.getFluid(1000), Materials.NitroFuel.getFluid(3000), Materials.Empty.getCells(4), 320, 8); - GT_Values.RA.addMixerRecipe(Materials.Tetranitromethane.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.LightFuel.getFluid(4000), Materials.NitroFuel.getFluid(4000), Materials.Empty.getCells(1), 320, 8); - GT_Values.RA.addMixerRecipe(Materials.Tetranitromethane.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Fuel.getFluid(8000), Materials.NitroFuel.getFluid(4000), Materials.Empty.getCells(1), 320, 8); - GT_Values.RA.addMixerRecipe(Materials.Tetranitromethane.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.BioDiesel.getFluid(4000), Materials.NitroFuel.getFluid(3000), Materials.Empty.getCells(1), 320, 8); - - GT_Values.RA.addChemicalRecipe( Materials.Benzene.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(1000), Materials.Dichlorobenzene.getFluid(3000), Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(2), 240); - GT_Values.RA.addChemicalRecipe( Materials.Chlorine.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Benzene.getFluid(3000), Materials.Dichlorobenzene.getFluid(3000), Materials.HydrochloricAcid.getCells(1), 240); - GT_Values.RA.addChemicalRecipe( Materials.Benzene.getCells(3), GT_Utility.getIntegratedCircuit(12), Materials.Chlorine.getGas(1000), Materials.HydrochloricAcid.getFluid(1000), Materials.Dichlorobenzene.getCells(3), 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorine.getCells(1), Materials.Empty.getCells(2), Materials.Benzene.getFluid(3000), Materials.HydrochloricAcid.getFluid(1000), Materials.Dichlorobenzene.getCells(3), GT_Values.NI, 240, 30); - - GT_Values.RA.addChemicalRecipe(Materials.SodiumSulfide.getDust(1), Materials.Oxygen.getCells(8), Materials.Dichlorobenzene.getFluid(1000), Materials.PolyphenyleneSulfide.getMolten(1000), Materials.Salt.getDust(1), Materials.Empty.getCells(8), 240, 360); - - GT_Values.RA.addChemicalRecipe(Materials.Salt.getDust(2), GT_Utility.getIntegratedCircuit(1), Materials.SulfuricAcid.getFluid(7000), Materials.HydrochloricAcid.getFluid(2000), Materials.SodiumBisulfate.getDust(7), 60); - GT_Values.RA.addElectrolyzerRecipe(Materials.SodiumBisulfate.getDust(7), Materials.Empty.getCells(2), null, Materials.SodiumPersulfate.getFluid(12000), Materials.Hydrogen.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 600, 30); - - GT_Values.RA.addChemicalRecipe(Materials.Benzene.getCells(6), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(1000), Materials.Chlorobenzene.getFluid(6000), Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(5), 240); - GT_Values.RA.addChemicalRecipe(Materials.Chlorine.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Benzene.getFluid(6000), Materials.Chlorobenzene.getFluid(6000), Materials.HydrochloricAcid.getCells(1), 240); - GT_Values.RA.addChemicalRecipe(Materials.Benzene.getCells(6), GT_Utility.getIntegratedCircuit(11), Materials.Chlorine.getGas(1000), Materials.HydrochloricAcid.getFluid(1000), Materials.Chlorobenzene.getCells(6), 240); - - GT_Values.RA.addChemicalRecipe( Materials.Water.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Chlorobenzene.getFluid(12000), Materials.Phenol.getFluid(13000), Materials.DilutedHydrochloricAcid.getCells(2), Materials.Empty.getCells(1), 240); - GT_Values.RA.addChemicalRecipe( Materials.Chlorobenzene.getCells(12), GT_Utility.getIntegratedCircuit(1), Materials.Water.getFluid(3000), Materials.Phenol.getFluid(13000), Materials.DilutedHydrochloricAcid.getCells(2), Materials.Empty.getCells(10), 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Water.getCells(3), Materials.Empty.getCells(10), Materials.Chlorobenzene.getFluid(12000), Materials.DilutedHydrochloricAcid.getFluid(2000), Materials.Phenol.getCells(13), GT_Values.NI, 240, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chlorobenzene.getCells(12), Materials.Empty.getCells(1), Materials.Water.getFluid(3000), Materials.DilutedHydrochloricAcid.getFluid(2000), Materials.Phenol.getCells(13), GT_Values.NI, 240, 30); - - GT_Values.RA.addChemicalRecipe( Materials.SodiumHydroxide.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Chlorobenzene.getFluid(4000), Materials.Phenol.getFluid(4000), GT_Values.NI, 960); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SodiumHydroxide.getDust(1), Materials.Empty.getCells(4), Materials.Chlorobenzene.getFluid(4000), GT_Values.NF, Materials.Phenol.getCells(4), GT_Values.NI, 960, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SodiumHydroxide.getDust(1), Materials.Chlorobenzene.getCells(4), GT_Values.NF, GT_Values.NF, Materials.Phenol.getCells(4), GT_Values.NI, 960, 30); - - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Benzene.getFluid(12000), Materials.Chlorine.getGas(2000), Materials.Water.getFluid(3000)}, new FluidStack[]{Materials.Phenol.getFluid(13000), Materials.HydrochloricAcid.getFluid(2000), Materials.DilutedHydrochloricAcid.getFluid(2000)}, null, 560, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.SodiumHydroxide.getDust(1), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Benzene.getFluid(12000), Materials.Chlorine.getGas(2000)}, new FluidStack[]{Materials.Phenol.getFluid(13000), Materials.HydrochloricAcid.getFluid(2000)}, null, 560, 30); - - } private void addChemicalRecipesShared(){ - GT_Values.RA.addElectrolyzerRecipe(GT_Utility.getIntegratedCircuit(1), GT_Values.NI, Materials.CarbonDioxide.getGas(3000), Materials.Oxygen.getGas(2000), Materials.Carbon.getDust(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 300, 120); - GT_Values.RA.addElectrolyzerRecipe(GT_Utility.getIntegratedCircuit(11), Materials.Empty.getCells(2), Materials.CarbonDioxide.getGas(3000), GT_Values.NF, Materials.Carbon.getDust(1), Materials.Oxygen.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 300, 120); - GT_Values.RA.addElectrolyzerRecipe(GT_Utility.getIntegratedCircuit(1), GT_Values.NI, Materials.SulfurDioxide.getGas(3000), Materials.Oxygen.getGas(2000), Materials.Sulfur.getDust(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 300, 120); - GT_Values.RA.addElectrolyzerRecipe(GT_Utility.getIntegratedCircuit(11), Materials.Empty.getCells(2), Materials.SulfurDioxide.getGas(3000), GT_Values.NF, Materials.Sulfur.getDust(1), Materials.Oxygen.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 300, 120); - - GT_Values.RA.addUniversalDistillationRecipe(FluidRegistry.getFluidStack("potion.vinegar", 40), new FluidStack[]{Materials.AceticAcid.getFluid(5), Materials.Water.getFluid(35)}, GT_Values.NI, 20, 64); - GT_Values.RA.addElectrolyzerRecipe(Materials.Salt.getDust(2), GT_Values.NI, GT_Values.NF, Materials.Chlorine.getGas(1000), Materials.Sodium.getDust(1), GT_Values.NI, GT_Values.NI, GT_Values.NI,GT_Values.NI, GT_Values.NI, null, 320, 30); - GT_Values.RA.addMixerRecipe(Materials.Salt.getDust(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(3000), Materials.SaltWater.getFluid(4000), GT_Values.NI, 80, 8); - GT_Values.RA.addDistilleryRecipe(1, Materials.SaltWater.getFluid(1000), GT_ModHandler.getDistilledWater(750), Materials.Salt.getDustSmall(1), 2400, 16, false); - GT_Values.RA.addElectrolyzerRecipe(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.SaltWater.getFluid(8000), Materials.Chlorine.getGas(1000), Materials.SodiumHydroxide.getDust(3), Materials.Hydrogen.getCells(1), GT_Values.NI, GT_Values.NI,GT_Values.NI, GT_Values.NI, null, 720, 30); - GT_Values.RA.addElectrolyzerRecipe(Materials.Empty.getCells(1), GT_Utility.getIntegratedCircuit(11), Materials.SaltWater.getFluid(8000), Materials.Hydrogen.getGas(1000), Materials.SodiumHydroxide.getDust(3), Materials.Chlorine.getCells(1), GT_Values.NI, GT_Values.NI,GT_Values.NI, GT_Values.NI, null, 720, 30); - - GT_Values.RA.addChemicalRecipe(Materials.Potassium.getDust(1), Materials.Oxygen.getCells(3), Materials.Nitrogen.getGas(1000), GT_Values.NF, Materials.Saltpeter.getDust(5), Materials.Empty.getCells(3), 180); - GT_Values.RA.addChemicalRecipe(Materials.Potassium.getDust(1), Materials.Nitrogen.getCells(1), Materials.Oxygen.getGas(3000), GT_Values.NF, Materials.Saltpeter.getDust(5), Materials.Empty.getCells(1), 180); - - GT_Values.RA.addChemicalRecipe(Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(1000), Materials.CarbonMonoxide.getGas(2000), GT_Values.NI, 40, 8); - GT_Values.RA.addChemicalRecipe(Materials.Coal.getGems(1), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(1000), Materials.CarbonMonoxide.getGas(2000), Materials.Ash.getDustTiny(1), 80, 8); - GT_Values.RA.addChemicalRecipe(Materials.Coal.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(1000), Materials.CarbonMonoxide.getGas(2000), Materials.Ash.getDustTiny(1), 80, 8); - GT_Values.RA.addChemicalRecipe(Materials.Charcoal.getGems(1), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(1000), Materials.CarbonMonoxide.getGas(2000), Materials.Ash.getDustTiny(1), 80, 8); - GT_Values.RA.addChemicalRecipe(Materials.Charcoal.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(1000), Materials.CarbonMonoxide.getGas(2000), Materials.Ash.getDustTiny(1), 80, 8); - GT_Values.RA.addChemicalRecipe(Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(2000), Materials.CarbonDioxide.getGas(3000), GT_Values.NI, 40, 8); - GT_Values.RA.addChemicalRecipe(Materials.Coal.getGems(1), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(2000), Materials.CarbonDioxide.getGas(3000), Materials.Ash.getDustTiny(1), 40, 8); - GT_Values.RA.addChemicalRecipe(Materials.Coal.getDust(1), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(2000), Materials.CarbonDioxide.getGas(3000), Materials.Ash.getDustTiny(1), 40, 8); - GT_Values.RA.addChemicalRecipe(Materials.Charcoal.getGems(1), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(2000), Materials.CarbonDioxide.getGas(3000), Materials.Ash.getDustTiny(1), 40, 8); - GT_Values.RA.addChemicalRecipe(Materials.Charcoal.getDust(1), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(2000), Materials.CarbonDioxide.getGas(3000), Materials.Ash.getDustTiny(1), 40, 8); - GT_Values.RA.addChemicalRecipe(Materials.Carbon.getDust(1), GT_Values.NI, Materials.CarbonDioxide.getGas(3000), Materials.CarbonMonoxide.getGas(4000), GT_Values.NI, 800); - - GT_Values.RA.addChemicalRecipe( Materials.CarbonMonoxide.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Hydrogen.getGas(4000), Materials.Methanol.getFluid(6000), Materials.Empty.getCells(2), 600, 120); - GT_Values.RA.addChemicalRecipe( Materials.Hydrogen.getCells(4), GT_Utility.getIntegratedCircuit(1), Materials.CarbonMonoxide.getGas(2000), Materials.Methanol.getFluid(6000), Materials.Empty.getCells(4), 600, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.CarbonMonoxide.getCells(2), Materials.Empty.getCells(4), Materials.Hydrogen.getGas(4000), GT_Values.NF, Materials.Methanol.getCells(6), GT_Values.NI, 600, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Hydrogen.getCells(4), Materials.Empty.getCells(2), Materials.CarbonMonoxide.getGas(2000), GT_Values.NF, Materials.Methanol.getCells(6), GT_Values.NI, 600, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.CarbonMonoxide.getCells(2), Materials.Hydrogen.getCells(4), GT_Values.NF, GT_Values.NF, Materials.Methanol.getCells(6), GT_Values.NI, 600, 120); - GT_Values.RA.addChemicalRecipe( Materials.CarbonDioxide.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Hydrogen.getGas(6000), Materials.Methanol.getFluid(6000), Materials.Water.getCells(3), 600, 120); - GT_Values.RA.addChemicalRecipe( Materials.Hydrogen.getCells(6), GT_Utility.getIntegratedCircuit(1), Materials.CarbonDioxide.getGas(3000), Materials.Methanol.getFluid(6000), Materials.Water.getCells(3), Materials.Empty.getCells(3), 600, 120); - GT_Values.RA.addChemicalRecipe( Materials.CarbonDioxide.getCells(3), GT_Utility.getIntegratedCircuit(2), Materials.Hydrogen.getGas(6000), Materials.Methanol.getFluid(6000), Materials.Empty.getCells(3), 600, 120); - GT_Values.RA.addChemicalRecipe( Materials.Hydrogen.getCells(6), GT_Utility.getIntegratedCircuit(2), Materials.CarbonDioxide.getGas(3000), Materials.Methanol.getFluid(6000), Materials.Empty.getCells(6), 600, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.CarbonDioxide.getCells(3), Materials.Empty.getCells(3), Materials.Hydrogen.getGas(6000), GT_Values.NF, Materials.Methanol.getCells(6), GT_Values.NI, 600, 120); - GT_Values.RA.addChemicalRecipe( Materials.Hydrogen.getCells(6), GT_Utility.getIntegratedCircuit(12), Materials.CarbonDioxide.getGas(3000), GT_Values.NF, Materials.Methanol.getCells(6), 600, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.CarbonDioxide.getCells(3), Materials.Hydrogen.getCells(6), GT_Values.NF, GT_Values.NF, Materials.Methanol.getCells(6), Materials.Water.getCells(3), 600, 120); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Carbon.getDust(1), GT_Utility.getIntegratedCircuit(23)}, new FluidStack[]{Materials.Hydrogen.getGas(4000), Materials.Oxygen.getGas(1000)}, new FluidStack[]{Materials.Methanol.getFluid(6000)}, null, 720, 120); - - GT_Values.RA.addChemicalRecipe( Materials.Methanol.getCells(6), GT_Utility.getIntegratedCircuit(1), Materials.CarbonMonoxide.getGas(2000), Materials.AceticAcid.getFluid(8000), Materials.Empty.getCells(6), 300); - GT_Values.RA.addChemicalRecipe( Materials.CarbonMonoxide.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Methanol.getFluid(6000), Materials.AceticAcid.getFluid(8000), Materials.Empty.getCells(2), 300); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Methanol.getCells(6), Materials.Empty.getCells(2), Materials.CarbonMonoxide.getGas(2000), GT_Values.NF, Materials.AceticAcid.getCells(8), GT_Values.NI, 300, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.CarbonMonoxide.getCells(2), Materials.Empty.getCells(6), Materials.Methanol.getFluid(6000), GT_Values.NF, Materials.AceticAcid.getCells(8), GT_Values.NI, 300, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Methanol.getCells(6), Materials.CarbonMonoxide.getCells(2), GT_Values.NF, GT_Values.NF, Materials.AceticAcid.getCells(8), GT_Values.NI, 300, 30); - GT_Values.RA.addChemicalRecipe( Materials.Ethylene.getCells(6), GT_Utility.getIntegratedCircuit(9), Materials.Oxygen.getGas(2000), Materials.AceticAcid.getFluid(8000), Materials.Empty.getCells(6), 100); - GT_Values.RA.addChemicalRecipe( Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(9), Materials.Ethylene.getGas(6000), Materials.AceticAcid.getFluid(8000), Materials.Empty.getCells(2), 100); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethylene.getCells(6), Materials.Empty.getCells(2), Materials.Oxygen.getGas(2000), GT_Values.NF, Materials.AceticAcid.getCells(8), GT_Values.NI, 100, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(2), Materials.Empty.getCells(6), Materials.Ethylene.getGas(6000), GT_Values.NF, Materials.AceticAcid.getCells(8), GT_Values.NI, 100, 30); - - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{Materials.Carbon.getDust(2), GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.Hydrogen.getGas(4000), Materials.Oxygen.getGas(2000)}, new FluidStack[]{Materials.AceticAcid.getFluid(8000)}, null, 480, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.CarbonMonoxide.getGas(4000), Materials.Hydrogen.getGas(4000)}, new FluidStack[]{Materials.AceticAcid.getFluid(8000)}, null, 320, 30); - - GT_Values.RA.addFermentingRecipe(Materials.Biomass.getFluid(100), Materials.FermentedBiomass.getFluid(100), 150, false); if(!GregTech_API.mIC2Classic){ GT_Values.RA.addFermentingRecipe(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 100), Materials.FermentedBiomass.getFluid(100), 150, false); GT_Values.RA.addPyrolyseRecipe(GT_ModHandler.getIC2Item("biochaff", 1), Materials.Water.getFluid(1500), 2, GT_Values.NI, Materials.FermentedBiomass.getFluid(1500), 200, 10); GT_Values.RA.addPyrolyseRecipe(GT_Values.NI, new FluidStack(FluidRegistry.getFluid("ic2biomass"), 1000), 2, GT_Values.NI, Materials.FermentedBiomass.getFluid(1000), 100, 10); } - GT_Values.RA.addPyrolyseRecipe(GT_Values.NI, Materials.Biomass.getFluid(1000), 2, GT_Values.NI, Materials.FermentedBiomass.getFluid(1000), 100, 10); - - GT_Values.RA.addDistillationTowerRecipe(Materials.FermentedBiomass.getFluid(1000), new FluidStack[]{ - Materials.AceticAcid.getFluid(25), Materials.Water.getFluid(375), Materials.Ethanol.getFluid(150), - Materials.Methanol.getFluid(150),Materials.Ammonia.getGas(100), Materials.CarbonDioxide.getGas(400), - Materials.Methane.getGas(600)}, ItemList.IC2_Fertilizer.get(1, new Object[0]), 75, 180); - GT_Values.RA.addDistilleryRecipe(1, Materials.FermentedBiomass.getFluid(1000), Materials.AceticAcid.getFluid(25), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); - GT_Values.RA.addDistilleryRecipe(2, Materials.FermentedBiomass.getFluid(1000), Materials.Water.getFluid(375), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); - GT_Values.RA.addDistilleryRecipe(3, Materials.FermentedBiomass.getFluid(1000), Materials.Ethanol.getFluid(150), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); - GT_Values.RA.addDistilleryRecipe(4, Materials.FermentedBiomass.getFluid(1000), Materials.Methanol.getFluid(150), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); - GT_Values.RA.addDistilleryRecipe(5, Materials.FermentedBiomass.getFluid(1000), Materials.Ammonia.getGas(100), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); - GT_Values.RA.addDistilleryRecipe(6, Materials.FermentedBiomass.getFluid(1000), Materials.CarbonDioxide.getGas(400), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); - GT_Values.RA.addDistilleryRecipe(7, Materials.FermentedBiomass.getFluid(1000), Materials.Methane.getGas(600), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); - if(!GregTech_API.mIC2Classic){ GT_Values.RA.addDistilleryRecipe(17, Materials.FermentedBiomass.getFluid(1000), new FluidStack(FluidRegistry.getFluid("ic2biogas"), 1800), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1600, 8, false); GT_Values.RA.addDistilleryRecipe(1, Materials.Methane.getGas(1000), new FluidStack(FluidRegistry.getFluid("ic2biogas"), 3000), GT_Values.NI, 160, 8, false); } - GT_Values.RA.addPyrolyseRecipe(Materials.Sugar.getDust(23), GT_Values.NF, 1, Materials.Charcoal.getDust(12), Materials.Water.getFluid(11000), 320, 64); - GT_Values.RA.addPyrolyseRecipe(Materials.Sugar.getDust(23), Materials.Nitrogen.getGas(500), 2, Materials.Charcoal.getDust(12), Materials.Water.getFluid(11000), 160, 96); - - GT_Values.RA.addUniversalDistillationRecipe(Materials.CharcoalByproducts.getGas(1000), - new FluidStack[]{Materials.WoodTar.getFluid(250), Materials.WoodVinegar.getFluid(500), Materials.WoodGas.getGas(250)}, - Materials.Charcoal.getDustSmall(1), 40, 256); - GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodGas.getGas(1000), - new FluidStack[]{Materials.CarbonDioxide.getGas(490), Materials.Ethylene.getGas(20), Materials.Methane.getGas(130), Materials.CarbonMonoxide.getGas(340), Materials.Hydrogen.getGas(20)}, - GT_Values.NI, 40, 256); - - GT_Values.RA.addChemicalRecipe( Materials.Ethanol.getCells(9), GT_Utility.getIntegratedCircuit(1), Materials.SulfuricAcid.getFluid(6000), Materials.DilutedSulfuricAcid.getFluid(9000), Materials.Ethylene.getCells(6), Materials.Empty.getCells(3), 1200, 120); - GT_Values.RA.addChemicalRecipe( Materials.SulfuricAcid.getCells(6), GT_Utility.getIntegratedCircuit(1), Materials.Ethanol.getFluid(9000), Materials.DilutedSulfuricAcid.getFluid(9000), Materials.Ethylene.getCells(6), 1200, 120); - GT_Values.RA.addChemicalRecipe( Materials.Ethanol.getCells(9), GT_Utility.getIntegratedCircuit(11), Materials.SulfuricAcid.getFluid(6000), Materials.Ethylene.getGas(6000), Materials.DilutedSulfuricAcid.getCells(9), GT_Values.NI, 1200, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.SulfuricAcid.getCells(6), Materials.Empty.getCells(3), Materials.Ethanol.getFluid(9000), Materials.Ethylene.getGas(6000), Materials.DilutedSulfuricAcid.getCells(9), GT_Values.NI, 1200, 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethanol.getCells(9), Materials.SulfuricAcid.getCells(6), GT_Values.NF, GT_Values.NF, Materials.DilutedSulfuricAcid.getCells(9), Materials.Ethylene.getCells(6), 1200, 120); - GT_Values.RA.addDefaultPolymerizationRecipes(Materials.Ethylene.mGas, Materials.Ethylene.getCells(1), Materials.Plastic.mStandardMoltenFluid); - GT_Values.RA.addChemicalRecipe( Materials.Sodium.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Water.getFluid(3000), Materials.Hydrogen.getGas(1000), Materials.SodiumHydroxide.getDust(3), 600, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Sodium.getDust(1), Materials.Empty.getCells(1), Materials.Water.getFluid(3000), GT_Values.NF, Materials.SodiumHydroxide.getDust(3), Materials.Hydrogen.getCells(1), 600, 30); - - GT_Values.RA.addDistilleryRecipe(2, Materials.HeavyFuel.getFluid(100), Materials.Benzene.getFluid(40), 160, 24, false); - GT_Values.RA.addDefaultPolymerizationRecipes(Materials.Tetrafluoroethylene.mGas, Materials.Tetrafluoroethylene.getCells(1), Materials.Polytetrafluoroethylene.mStandardMoltenFluid); - GT_Values.RA.addChemicalRecipe(Materials.Polydimethylsiloxane.getDust(9), Materials.Sulfur.getDust(1), GT_Values.NF, Materials.Silicone.getMolten(1296), GT_Values.NI, 600); - - GT_Values.RA.addChemicalRecipe( Materials.Nitrogen.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Hydrogen.getGas(3000), Materials.Ammonia.getGas(4000), Materials.Empty.getCells(1), 320, 384); - GT_Values.RA.addChemicalRecipe( Materials.Hydrogen.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Nitrogen.getGas(1000), Materials.Ammonia.getGas(4000), Materials.Empty.getCells(3), 320, 384); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Nitrogen.getCells(1), Materials.Empty.getCells(3), Materials.Hydrogen.getGas(3000), GT_Values.NF, Materials.Ammonia.getCells(4), GT_Values.NI, 320, 384); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Hydrogen.getCells(3), Materials.Empty.getCells(1), Materials.Nitrogen.getGas(1000), GT_Values.NF, Materials.Ammonia.getCells(4), GT_Values.NI, 320, 384); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Nitrogen.getCells(1), Materials.Hydrogen.getCells(3), GT_Values.NF, GT_Values.NF, Materials.Ammonia.getCells(4), GT_Values.NI, 320, 384); - - GT_Values.RA.addChemicalRecipe( Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.Hydrogen.getGas(2000), Materials.HydricSulfide.getGas(3000), GT_Values.NI, 60, 8); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Sulfur.getDust(1), Materials.Empty.getCells(3), Materials.Hydrogen.getGas(2000), GT_Values.NF, Materials.HydricSulfide.getCells(3), GT_Values.NI, 60, 8); - - GT_Values.RA.addUniversalDistillationRecipe(Materials.DilutedSulfuricAcid.getFluid(2000), new FluidStack[]{Materials.SulfuricAcid.getFluid(1000), Materials.Water.getFluid(1000)}, GT_Values.NI, 600, 120); - GT_Values.RA.addDefaultPolymerizationRecipes(Materials.VinylChloride.mGas, Materials.VinylChloride.getCells(1), Materials.PolyvinylChloride.mStandardMoltenFluid); - GT_Values.RA.addMixerRecipe(Materials.Sugar.getDust(4), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.SulfuricAcid.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(1000), Materials.Charcoal.getGems(1), 600, 2); - GT_Values.RA.addMixerRecipe(Materials.Wood.getDust(4), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.SulfuricAcid.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(1000), Materials.Charcoal.getGems(1), 600, 2); - - GT_Values.RA.addChemicalRecipe(Materials.Propene.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Ethylene.getGas(2000), Materials.Isoprene.getFluid(5000), Materials.Empty.getCells(3), 120); - GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Propene.getGas(3000), Materials.Isoprene.getFluid(5000), Materials.Empty.getCells(2), 120); - GT_Values.RA.addChemicalRecipe(Materials.Propene.getCells(3), Materials.Empty.getCells(2), Materials.Ethylene.getGas(2000), GT_Values.NF, Materials.Isoprene.getCells(5), 120); - GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(2), Materials.Empty.getCells(3), Materials.Propene.getGas(3000), GT_Values.NF, Materials.Isoprene.getCells(5), 120); - - GT_Values.RA.addChemicalRecipe(ItemList.Cell_Air.get(1, new Object[0]), GT_Utility.getIntegratedCircuit(1), Materials.Isoprene.getFluid(244), GT_Values.NF, Materials.RawRubber.getDust(2), Materials.Empty.getCells(1), 320); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Isoprene.getFluid(288), GT_Values.NF, Materials.RawRubber.getDust(3), Materials.Empty.getCells(2), 320); - GT_Values.RA.addChemicalRecipe(Materials.Isoprene.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Air.getGas(14000), GT_Values.NF, Materials.RawRubber.getDust(7), Materials.Empty.getCells(1), 1120); - GT_Values.RA.addChemicalRecipe(Materials.Isoprene.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(14000), GT_Values.NF, Materials.RawRubber.getDust(21), Materials.Empty.getCells(2), 2240); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, new FluidStack[]{Materials.Isoprene.getFluid(288), Materials.Air.getGas(2000), Materials.Titaniumtetrachloride.getFluid(80)}, null, new ItemStack[]{Materials.RawRubber.getDust(3)}, 320, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, new FluidStack[]{Materials.Isoprene.getFluid(144), Materials.Oxygen.getGas(1000), Materials.Titaniumtetrachloride.getFluid(80)}, null, new ItemStack[]{Materials.RawRubber.getDust(2)}, 160, 30); - - GT_Values.RA.addChemicalRecipe( Materials.Benzene.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Ethylene.getGas(1000), Materials.Styrene.getFluid(3000), Materials.Empty.getCells(2), 120); - GT_Values.RA.addChemicalRecipe( Materials.Ethylene.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Benzene.getFluid(2000), Materials.Styrene.getFluid(3000), Materials.Empty.getCells(1), 120); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Benzene.getCells(2), Materials.Empty.getCells(1), Materials.Ethylene.getGas(1000), GT_Values.NF, Materials.Styrene.getCells(3), GT_Values.NI, 120, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Ethylene.getCells(1), Materials.Empty.getCells(2), Materials.Benzene.getFluid(2000), GT_Values.NF, Materials.Styrene.getCells(3), GT_Values.NI, 120, 30); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Benzene.getCells(2), Materials.Ethylene.getCells(1), GT_Values.NF, GT_Values.NF, Materials.Styrene.getCells(3), GT_Values.NI, 120, 30); - GT_Values.RA.addDefaultPolymerizationRecipes(Materials.Styrene.mFluid, Materials.Styrene.getCells(1), Materials.Polystyrene.mStandardMoltenFluid); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Butadiene.getCells(3), ItemList.Cell_Air.get(4, new Object[0]), Materials.Styrene.getFluid(1000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(4), Materials.Empty.getCells(7), 160, 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Butadiene.getCells(3), Materials.Oxygen.getCells(4), Materials.Styrene.getFluid(1000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(6), Materials.Empty.getCells(7), 160, 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), ItemList.Cell_Air.get(4, new Object[0]), Materials.Butadiene.getGas(3000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(4), Materials.Empty.getCells(5), 160, 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), Materials.Oxygen.getCells(4), Materials.Butadiene.getGas(3000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(6), Materials.Empty.getCells(5), 160, 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), Materials.Butadiene.getCells(3), Materials.Air.getGas(4000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(4), Materials.Empty.getCells(4), 160, 240); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), Materials.Butadiene.getCells(3), Materials.Oxygen.getGas(4000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(6), Materials.Empty.getCells(4), 160, 240); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(3)}, new FluidStack[]{Materials.Styrene.getFluid(1000), Materials.Butadiene.getGas(3000), Materials.Air.getGas(8000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(4)}, 160, 240); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(3)}, new FluidStack[]{Materials.Styrene.getFluid(1000), Materials.Butadiene.getGas(3000), Materials.Oxygen.getGas(4000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(6)}, 160, 240); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(4)}, new FluidStack[]{Materials.Styrene.getFluid(1000), Materials.Butadiene.getGas(3000), Materials.Titaniumtetrachloride.getFluid(100), Materials.Air.getGas(8000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(6)}, 160, 240); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(4)}, new FluidStack[]{Materials.Styrene.getFluid(1000), Materials.Butadiene.getGas(3000), Materials.Titaniumtetrachloride.getFluid(100), Materials.Oxygen.getGas(4000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(8)}, 160, 240); - - GT_Values.RA.addChemicalRecipe(Materials.RawStyreneButadieneRubber.getDust(9), Materials.Sulfur.getDust(1), GT_Values.NF, Materials.StyreneButadieneRubber.getMolten(1296), GT_Values.NI, 600); - - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.Methanol.getCells(1), Materials.SeedOil.getFluid(6000), Materials.BioDiesel.getFluid(6000), Materials.Glycerol.getCells(1), 600); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.SeedOil.getCells(6), Materials.Methanol.getFluid(1000), Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getCells(6), 600); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.Methanol.getCells(1), Materials.FishOil.getFluid(6000), Materials.BioDiesel.getFluid(6000), Materials.Glycerol.getCells(1), 600); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.FishOil.getCells(6), Materials.Methanol.getFluid(1000), Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getCells(6), 600); - - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.Ethanol.getCells(1), Materials.SeedOil.getFluid(6000), Materials.BioDiesel.getFluid(6000), Materials.Glycerol.getCells(1), 600); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.SeedOil.getCells(6), Materials.Ethanol.getFluid(1000), Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getCells(6), 600); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.Ethanol.getCells(1), Materials.FishOil.getFluid(6000), Materials.BioDiesel.getFluid(6000), Materials.Glycerol.getCells(1), 600); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.FishOil.getCells(6), Materials.Ethanol.getFluid(1000), Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getCells(6), 600); - - GT_Values.RA.addChemicalRecipe( Materials.Glycerol.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.NitrationMixture.getFluid(3000), Materials.DilutedSulfuricAcid.getFluid(3000), Materials.Glyceryl.getCells(1), 180); - GT_Values.RA.addChemicalRecipe( Materials.NitrationMixture.getCells(3), GT_Utility.getIntegratedCircuit(1), Materials.Glycerol.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(3000), Materials.Glyceryl.getCells(1), Materials.Empty.getCells(2), 180); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Glycerol.getCells(1), Materials.Empty.getCells(2), Materials.NitrationMixture.getFluid(3000), Materials.Glyceryl.getFluid(1000), Materials.DilutedSulfuricAcid.getCells(3), GT_Values.NI, 180, 30); - GT_Values.RA.addChemicalRecipe( Materials.NitrationMixture.getCells(3), GT_Utility.getIntegratedCircuit(11), Materials.Glycerol.getFluid(1000), Materials.Glyceryl.getFluid(1000), Materials.DilutedSulfuricAcid.getCells(3), 180); - - GT_Values.RA.addChemicalRecipe(Materials.Methane.getCells(5), Materials.Empty.getCells(3), Materials.Water.getFluid(6000), Materials.CarbonDioxide.getGas(3000), Materials.Hydrogen.getCells(8), 40, 240); - GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(6), Materials.Empty.getCells(2), Materials.Methane.getGas(5000), Materials.CarbonDioxide.getGas(3000), Materials.Hydrogen.getCells(8), 40, 240); - GT_Values.RA.addChemicalRecipe(Materials.Methane.getCells(5), GT_Utility.getIntegratedCircuit(11), Materials.Water.getFluid(6000), Materials.Hydrogen.getGas(8000), Materials.CarbonDioxide.getCells(3), Materials.Empty.getCells(2), 40, 240); - GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(6), GT_Utility.getIntegratedCircuit(11), Materials.Methane.getGas(5000), Materials.Hydrogen.getGas(8000), Materials.CarbonDioxide.getCells(3), Materials.Empty.getCells(3), 40, 240); - GT_Values.RA.addChemicalRecipe(Materials.Methane.getCells(5), GT_Utility.getIntegratedCircuit(12), Materials.Water.getFluid(6000), Materials.Hydrogen.getGas(8000), Materials.Empty.getCells(5), 40, 240); - GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(6), GT_Utility.getIntegratedCircuit(12), Materials.Methane.getGas(5000), Materials.Hydrogen.getGas(8000), Materials.Empty.getCells(6), 40, 240); - - GT_Values.RA.addChemicalRecipe(Materials.Quicklime.getDust(2), GT_Values.NI, Materials.CarbonDioxide.getGas(3000), GT_Values.NF, Materials.Calcite.getDust(5), 80); - GT_Values.RA.addChemicalRecipe(Materials.Calcite.getDust(5), GT_Utility.getIntegratedCircuit(1), GT_Values.NF, Materials.CarbonDioxide.getGas(3000), Materials.Quicklime.getDust(2), 240); - GT_Values.RA.addChemicalRecipe(Materials.Magnesia.getDust(2), GT_Values.NI, Materials.CarbonDioxide.getGas(3000), GT_Values.NF, Materials.Magnesite.getDust(5), 80); - GT_Values.RA.addChemicalRecipe(Materials.Magnesite.getDust(5), GT_Utility.getIntegratedCircuit(1), GT_Values.NF, Materials.CarbonDioxide.getGas(3000), Materials.Magnesia.getDust(2), 240); - } private void addOldChemicalRecipes() { - GT_Values.RA.setIsAddingDeprecatedRecipes(true); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L), ItemList.Circuit_Integrated.getWithDamage(0, 1, new Object[0]), Materials.Oxygen.getGas(2000L), Materials.NitrogenDioxide.getGas(3000L), ItemList.Cell_Empty.get(1L, new Object[0]), 1250); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 2L), ItemList.Circuit_Integrated.getWithDamage(0, 1, new Object[0]), Materials.Nitrogen.getGas(1000L), Materials.NitrogenDioxide.getGas(3000L), ItemList.Cell_Empty.get(2L, new Object[0]), 1250); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.Water.getFluid(2000L), Materials.SulfuricAcid.getFluid(3000L), GT_Values.NI, 1150); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), Materials.Oxygen.getGas(4000L), Materials.SulfuricAcid.getFluid(7000L), ItemList.Cell_Empty.get(2L, new Object[0]), 1150); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 4L), Materials.Hydrogen.getGas(2000L), Materials.SulfuricAcid.getFluid(7000L), ItemList.Cell_Empty.get(4L, new Object[0]), 1150); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), ItemList.Cell_Water.get(1, new Object[0]), null, Materials.SulfuricAcid.getFluid(1500), ItemList.Cell_Empty.get(2, new Object[0]), 320); - GT_Values.RA.addChemicalRecipe(ItemList.Cell_Water.get(1, new Object[0]), null, new FluidStack(ItemList.sHydricSulfur, 1000), Materials.SulfuricAcid.getFluid(1500), ItemList.Cell_Empty.get(1, new Object[0]), 320); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), null, Materials.Water.getFluid(1000), Materials.SulfuricAcid.getFluid(1500), ItemList.Cell_Empty.get(1, new Object[0]), 320); - - GT_Values.RA.addChemicalRecipe(ItemList.Cell_Air.get(2, new Object[0]), null, Materials.Naphtha.getFluid(288), Materials.Plastic.getMolten(144), ItemList.Cell_Empty.get(2, new Object[0]), 640); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Titanium, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 16L), Materials.Naphtha.getFluid(1296), Materials.Plastic.getMolten(1296), ItemList.Cell_Empty.get(16, new Object[0]), 640); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naphtha, 3L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitrogenDioxide, 1L), new FluidStack(ItemList.sEpichlorhydrin, 144), Materials.Epoxid.getMolten(288), ItemList.Cell_Empty.get(4, new Object[0]), 240, 30); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Chlorine, 1L), Materials.LPG.getFluid(432), new FluidStack(ItemList.sEpichlorhydrin, 432), ItemList.Cell_Empty.get(1, new Object[0]), 480, 30); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naphtha, 3L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fluorine, 1L), new FluidStack(ItemList.sEpichlorhydrin, 432), Materials.Polytetrafluoroethylene.getMolten(432), ItemList.Cell_Empty.get(4, new Object[0]), 240, 256); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1L), null, new FluidStack(ItemList.sEpichlorhydrin, 144), Materials.Silicone.getMolten(144), GT_Values.NI, 240, 96); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitrogenDioxide, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3L), Materials.Air.getGas(500), new FluidStack(ItemList.sRocketFuel,3000), ItemList.Cell_Water.get(4, new Object[0]), 1000, 388); - - GT_Values.RA.addCentrifugeRecipe(GT_Utility.getIntegratedCircuit(1), GT_Values.NI, Materials.Gas.getGas(8000), Materials.LPG.getFluid(4000), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{10000}, 200, 5); - GT_Values.RA.addCentrifugeRecipe(ItemList.Cell_Empty.get(4, new Object[0]), GT_Values.NI, Materials.Gas.getGas(8000), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LPG, 4), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{10000}, 200, 5); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 1L), GT_Values.NI, Materials.Glyceryl.getFluid(250L), Materials.NitroFuel.getFluid(1000L), ItemList.Cell_Empty.get(1L, new Object[0]), 250); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glyceryl, 1L), GT_Values.NI, Materials.Fuel.getFluid(4000L), Materials.NitroFuel.getFluid(4000L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 1L), GT_Values.NI, Materials.Glyceryl.getFluid(250L), Materials.NitroFuel.getFluid(1250L), ItemList.Cell_Empty.get(1L, new Object[0]), 250); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glyceryl, 1L), GT_Values.NI, Materials.LightFuel.getFluid(4000L), Materials.NitroFuel.getFluid(5000L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); - - GT_Values.RA.addMixerRecipe(Materials.Sodium.getDust(2), Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(2), null, null, null, Materials.SodiumSulfide.getDust(1), 60, 30); - - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), Materials.Water.getFluid(2000L), Materials.Glyceryl.getFluid(4000L), ItemList.Cell_Empty.get(1L, new Object[0]), 2700); - GT_Values.RA.setIsAddingDeprecatedRecipes(false); + try { + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_old.json"); + if (tStream != null) { + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); + GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tRecipeList); + tStream.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading resource chemical_old.json"); + e.printStackTrace(GT_Log.err); + } } private void addRecipesMay2017OilRefining() { diff --git a/src/main/resources/assets/gregtech/recipes/Explanation.cfg b/src/main/resources/assets/gregtech/recipes/Explanation.cfg index 59aafeca43..827369650c 100644 --- a/src/main/resources/assets/gregtech/recipes/Explanation.cfg +++ b/src/main/resources/assets/gregtech/recipes/Explanation.cfg @@ -3,12 +3,14 @@ Top level is an array of recipe objects. Each recipe object allows the following keys, in any order: "inputs" - an array of the items input to the machine, each of which allows the following keys: "ore" or "oredict" - an oredictionary name such as "ingotIron". - "item" - an internal item name, such as "minecraft:dirt" or "gregtech:gt.metaitem.02:27513" + "item" - an internal item name, such as "minecraft:dirt" or "gregtech:gt.metaitem.02:27513"; also allows a special fake modid "GTItemList" to reference an item from GregTech's ItemList enum, which is often more readable. The "*" character can be used as a wildcard for metadata. "alts" - an array of oredictionary and/or item specifiers that can be used interchangeably (or even mix and matched, if the machine has enough slots) in this recipe. - "count" - the number of copies of the item (or oredictionary entry) needed for the recipe. Can be 0 to indicate the item should only be required in the slot, but not consumed. + "count" - the number of copies of the item (or oredictionary entry) needed for the recipe. Can be 0 to indicate the item should only be required in the slot, + but not consumed. "nbt" - NBT tags required for the input item. Details below. + "circuit" - a programmed circuit with the specified configuration number, and count automatically set to 0. "comment", "displayName" - string value, ignored by the recipe reader, but may help make the recipe more human-readable in case the item's internal name is cryptic. "outputs" - an array of the items output by the machine, similar to "inputs", but does not allow "alts", and allows the following additional key: "chance" - for a given output, a floating point value clamped between 0.0 and 1.0 indicating how likely the output should be. @@ -19,6 +21,8 @@ Each recipe object allows the following keys, in any order: "solderFluids" - special value for input fluids, specify the volume of molten soldering alloy the recipe should use, and if configuration allows, additional recipes for lower-quality soldering fluids (molten tin and molten lead) will automatically be generated with correspondingly higher fluid volumes. "outputFluids" or "fluidOutputs" - an array of fluid objects output by the machine, defined similar to "inputFluids". +"fluidsPerCircuit" - an array of output fluids to generate separate recipes for, selected by programmed circuits, starting at configuration 1. Overrides solderFluids + and useCuttingFluids, though it isn't likely to make sense to use them together anyway. "duration" - integer value for the time in ticks to complete the recipe at default voltage. "EUt" - integer value for the EU/t required for the recipe. "specialValue" - string, can be "lowgravity" or "cleanroom" to indicate those requirements for the recipe, otherwise the string will be parsed as an integer diff --git a/src/main/resources/assets/gregtech/recipes/autoclave.json b/src/main/resources/assets/gregtech/recipes/autoclave.json index 0c0f636aa3..46eae2c043 100644 --- a/src/main/resources/assets/gregtech/recipes/autoclave.json +++ b/src/main/resources/assets/gregtech/recipes/autoclave.json @@ -86,4 +86,16 @@ "outputs":[{"item": "GTItemList:Gravistar", "count": 1}], "duration": 480, "EUt": 7680}, + +{"inputs": [{"ore": "dustSiliconDioxide", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 200}], +"outputs": [{"ore": "gemQuartzite", "count": 1, "chance": 0.075}], +"duration": 2000, +"EUt": 24}, +{"inputs": [{"ore": "dustSiliconDioxide", "count": 1}], +"inputFluids": [{"fluid": "ic2distilledwater", "amount": 200}], +"outputs": [{"ore": "gemQuartzite", "count": 1, "chance": 0.1}], +"duration": 1500, +"EUt": 24}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/centrifuge.json b/src/main/resources/assets/gregtech/recipes/centrifuge.json index 39896b46a9..58c2094050 100644 --- a/src/main/resources/assets/gregtech/recipes/centrifuge.json +++ b/src/main/resources/assets/gregtech/recipes/centrifuge.json @@ -9,4 +9,20 @@ "outputs":[{"ore": "dustSiliconDioxide", "count": 1}, {"ore": "dustTinyGold", "count": 1}, {"ore": "dustTinyPlatinum", "count": 1}, {"ore": "dustTinyPalladium", "count": 1, "chance": 0.8}, {"ore": "dustTinyIridium", "count": 1, "chance": 0.6}, {"ore": "dustTinyOsmium", "count": 1, "chance": 0.6}], "duration": 900, "EUt": 30}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"gas": "Gas", "amount": 8000}], +"outputFluids": [{"materialFluid": "LPG", "amount": 4000}], +"enableCondition": "!DisableOldChemicalRecipes", +"specialValue": -300, +"duration": 200, +"EUt": 5}, +{"inputs": [{"item": "GTItemList:Cell_Empty", "count": 4}], +"inputFluids": [{"gas": "Gas", "amount": 8000}], +"outputs": [{"ore": "cellLPG", "count": 4}], +"enableCondition": "!DisableOldChemicalRecipes", +"specialValue": -300, +"duration": 200, +"EUt": 5}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_complicated.json b/src/main/resources/assets/gregtech/recipes/chemical_complicated.json new file mode 100644 index 0000000000..ae8fbec2fa --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_complicated.json @@ -0,0 +1,651 @@ +[ + +{"inputs": [{"ore": "dustSodium", "count": 2}, {"ore": "dustSulfur", "count": 1}], +"outputs": [{"ore": "dustSodiumSulfide", "count": 3}], +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 30}, + +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 5}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellAceticAcid", "count": 8}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 14}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"ore": "cellOxygen", "count": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 9}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEthylene", "count": 6}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"duration": 180, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Propene", "amount": 9000}], +"outputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellPropene", "count": 9}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 7}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellPropene", "count": 9}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellAllylChloride", "count": 9}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellHypochlorousAcid", "count": 3}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellWater", "count": 6}, {"ore": "cellEmpty", "count": 8}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 6000}], +"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellEmpty", "count": 4}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Glycerol", "amount": 14000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 14}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellEmpty", "count": 4}], +"duration": 480, +"EUt": 30}, + +{"inputs": [{"ore": "dustPhosphorousPentoxide", "count": 7}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 9000}], +"outputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 16000}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellCumene", "count": 11}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "Acetone", "amount": 6000}], +"outputs":[{"ore": "cellPhenol", "count": 6}, {"ore": "cellEmpty", "count": 5}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellCumene", "count": 11}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 6000}], +"outputs":[{"ore": "cellAcetone", "count": 6}, {"ore": "cellEmpty", "count": 5}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"ore": "cellBisphenolA", "count": 12}], +"inputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 4000}], +"outputFluids": [{"molten": "Epoxid", "amount": 16000}], +"outputs":[{"ore": "cellSaltWater", "count": 1}, {"ore": "cellEmpty", "count": 11}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"ore": "cellEpichlorohydrin", "count": 4}], +"inputFluids": [{"materialFluid": "BisphenolA", "amount": 12000}], +"outputFluids": [{"molten": "Epoxid", "amount": 16000}], +"outputs":[{"ore": "cellSaltWater", "count": 1}, {"ore": "cellEmpty", "count": 3}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 3}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}], +"duration": 80, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 6}, {"circuit": 3}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 6}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 6}, {"circuit": 13}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 6000}], +"outputs":[{"ore": "cellChloroform", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 13}], +"inputFluids": [{"gas": "Chlorine", "amount": 6000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 6000}], +"outputs":[{"ore": "cellChloroform", "count": 5}], +"duration": 80, +"EUt": 30}, + +{"inputs": [{"ore": "cellFluorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Fluorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrofluoricAcid", "count": 4}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "cellChloroform", "count": 5}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Chloromethane", "amount": 10000}], +"outputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellDimethyldichlorosilane", "count": 11}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellEmpty", "count": 11}], +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellChloramine", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellChloramine", "count": 4}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChloramine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 6000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"duration": 960, +"EUt": 480}, +{"inputs": [{"ore": "cellDimethylamine", "count": 5}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chloramine", "amount": 2000}], +"outputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 6000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 1}, {"ore": "cellEmpty", "count": 4}], +"duration": 960, +"EUt": 480}, +{"inputs": [{"circuit": 2}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 1000}], +"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"circuit": 2}], +"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"circuit": 12}], +"outputs":[{"ore": "cellDinitrogenTetroxide", "count": 1}], +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputFluids": [{"fluid": "water", "amount": 9000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputFluids": [{"fluid": "water", "amount": 9000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellNitricOxide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "NitricOxide", "amount": 2000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 9000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 9}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 7}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 2}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 2}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 3}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"duration": 280, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], +"duration": 200, +"EUt": 30}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellSulfurTrioxide", "count": 4}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellEmpty", "count": 3}], +"duration": 160, +"EUt": 120}, +{"inputs": [{"ore": "cellSulfuricAcid", "count": 7}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellEmpty", "count": 2}], +"duration": 160, +"EUt": 120}, +{"inputs": [{"ore": "cellEthenone", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "Tetranitromethane", "amount": 9000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 480, +"EUt": 16}, +{"inputs": [{"ore": "cellNitricAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethenone", "amount": 1000}], +"outputFluids": [{"materialFluid": "Tetranitromethane", "amount": 9000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"duration": 480, +"EUt": 16}, + +{"inputs": [{"ore": "cellBenzene", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 3000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 3000}], +"outputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 3000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 1}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 1000}], +"outputs":[{"ore": "cellDichlorobenzene", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumSulfide", "count": 1}, {"ore": "cellOxygen", "count": 8}], +"inputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 1000}], +"outputFluids": [{"molten": "PolyphenyleneSulfide", "amount": 1000}], +"outputs":[{"ore": "dustSalt", "count": 1}, {"ore": "cellEmpty", "count": 8}], +"duration": 240, +"EUt": 360}, + +{"inputs": [{"ore": "dustSalt", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "dustSodiumBisulfate", "count": 7}], +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "Chlorobenzene", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 1}, {"ore": "cellEmpty", "count": 5}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 6000}], +"outputFluids": [{"materialFluid": "Chlorobenzene", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 1}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 1000}], +"outputs":[{"ore": "cellChlorobenzene", "count": 6}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 12000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorobenzene", "count": 12}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 10}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 4000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 4000}], +"duration": 960, +"EUt": 30}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json b/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json new file mode 100644 index 0000000000..0347cd2122 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json @@ -0,0 +1,166 @@ +[ + +{"inputs": [{"ore": "dustSmallCalcite", "count": 5}, {"circuit": 24}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "Acetone", "amount": 5000}, {"gas": "CarbonDioxide", "amount": 3000}], +"duration": 400, +"EUt": 480}, +{"inputs": [{"ore": "dustSmallQuicklime", "count": 2}, {"circuit": 24}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "Acetone", "amount": 5000}, {"gas": "CarbonDioxide", "amount": 3000}], +"duration": 400, +"EUt": 480}, + +{"inputFluids": [{"gas": "Chlorine", "amount": 5000}, {"fluid": "water", "amount": 15000}, {"materialFluid": "Mercury", "amount": 1000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 10000}], +"duration": 600, +"EUt": 8}, + +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 23}], +"inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 4000}, {"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 24}], +"inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 3000}, {"fluid": "water", "amount": 3000}, {"materialFluid": "Mercury", "amount": 200}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 24}], +"inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 2000}, {"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"duration": 640, +"EUt": 30}, + +{"inputs": [{"ore": "dustApatite", "count": 21}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 35000}, {"fluid": "water", "amount": 10000}], +"outputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 24000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs": [{"ore": "dustGypsum", "count": 40}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "dustPhosphorus", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputs": [{"ore": "dustPhosphorousPentoxide", "count": 7}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "dustPhosphorus", "count": 1}, {"circuit": 24}], +"inputFluids": [{"gas": "Oxygen", "amount": 2500}, {"fluid": "water", "amount": 4500}], +"outputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 8000}], +"duration": 320, +"EUt": 30}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"gas": "Propene", "amount": 6000}, {"materialFluid": "Benzene", "amount": 8000}, {"materialFluid": "PhosphoricAcid", "amount": 1000}], +"outputFluids": [{"materialFluid": "Cumene", "amount": 14000}], +"duration": 360, +"EUt": 30}, + +{"inputs": [{"circuit": 24}], +"inputFluids": [{"gas": "Propene", "amount": 9000}, {"materialFluid": "Benzene", "amount": 12000}, {"materialFluid": "PhosphoricAcid", "amount": 1000}, {"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "Acetone", "amount": 10000}], +"duration": 480, +"EUt": 30}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"materialFluid": "Acetone", "amount": 1000}, {"materialFluid": "Phenol", "amount": 2000}], +"outputFluids": [{"materialFluid": "BisphenolA", "amount": 3000}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"circuit": 24}], +"inputFluids": [{"materialFluid": "Acetone", "amount": 4000}, {"materialFluid": "Phenol", "amount": 8000}, {"materialFluid": "Epichlorohydrin", "amount": 4000}], +"outputFluids": [{"molten": "Epoxid", "amount": 16000}, {"materialFluid": "SaltWater", "amount": 1000}], +"duration": 640, +"EUt": 30}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}, {"materialFluid": "Chloroform", "amount": 5000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 3000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], +"duration": 480, +"EUt": 240}, +{"inputs": [{"circuit": 24}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}, {"gas": "Methane", "amount": 5000}, {"gas": "Chlorine", "amount": 6000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}, {"materialFluid": "HydrochloricAcid", "amount": 6000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], +"duration": 540, +"EUt": 240}, + +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 24}], +"inputFluids": [{"gas": "Methane", "amount": 10000}, {"gas": "Chlorine", "amount": 4000}, {"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 4000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], +"outputs": [{"ore": "dustPolydimethylsiloxane", "count": 10}], +"duration": 480, +"EUt": 96}, +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 24}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 12000}, {"materialFluid": "HydrochloricAcid", "amount": 4000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], +"outputs": [{"ore": "dustPolydimethylsiloxane", "count": 10}], +"duration": 480, +"EUt": 96}, + +{"inputs": [{"circuit": 24}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}, {"gas": "Ammonia", "amount": 8000}, {"materialFluid": "Methanol", "amount": 12000}], +"outputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 12000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}, {"fluid": "water", "amount": 9000}], +"duration": 1040, +"EUt": 480}, + +{"inputs": [{"circuit": 23}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}, {"gas": "Oxygen", "amount": 7000}], +"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 6000}, {"fluid": "water", "amount": 9000}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"circuit": 23}], +"inputFluids": [{"gas": "Nitrogen", "amount": 2000}, {"gas": "Hydrogen", "amount": 6000}, {"gas": "Oxygen", "amount": 7000}], +"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 6000}, {"fluid": "water", "amount": 9000}], +"duration": 1100, +"EUt": 480}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}, {"gas": "Oxygen", "amount": 5000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}, {"fluid": "water", "amount": 9000}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"circuit": 2}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 6000}, {"fluid": "water", "amount": 3000}, {"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}, {"fluid": "water", "amount": 1000}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"circuit": 24}], +"inputFluids": [{"gas": "Hydrogen", "amount": 3000}, {"gas": "Nitrogen", "amount": 1000}, {"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 5000}, {"fluid": "water", "amount": 3000}], +"duration": 320, +"EUt": 480}, +{"inputs": [{"circuit": 24}], +"inputFluids": [{"gas": "Ammonia", "amount": 4000}, {"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 5000}, {"fluid": "water", "amount": 3000}], +"duration": 320, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 24}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}, {"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"circuit": 24}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}, {"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"circuit": 24}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}, {"gas": "Oxygen", "amount": 1000}, {"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"duration": 480, +"EUt": 30}, + +{"inputs": [{"circuit": 24}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 12000}, {"gas": "Chlorine", "amount": 2000}, {"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"duration": 560, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"circuit": 24}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 12000}, {"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"duration": 560, +"EUt": 30}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_complicated_small.json b/src/main/resources/assets/gregtech/recipes/chemical_complicated_small.json new file mode 100644 index 0000000000..fdcb663eaf --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_complicated_small.json @@ -0,0 +1,420 @@ +[ + +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellMethylAcetate", "count": 11}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"ore": "cellEmpty", "count": 5}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellMethylAcetate", "count": 11}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"ore": "cellAceticAcid", "count": 8}], +"outputs":[{"ore": "cellMethylAcetate", "count": 11}, {"ore": "cellWater", "count": 3}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"ore": "cellEmpty", "count": 7}], +"inputFluids": [{"gas": "Propene", "amount": 9000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellAllylChloride", "count": 9}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellPropene", "count": 9}, {"ore": "cellChlorine", "count": 2}], +"outputs":[{"ore": "cellAllylChloride", "count": 9}, {"ore": "cellHydrochloricAcid", "count": 2}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 5}, {"ore": "cellMercury", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 15000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 15000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 600, +"EUt": 8}, +{"inputs": [{"ore": "cellWater", "count": 15}, {"ore": "cellMercury", "count": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 5000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 15000}], +"outputs":[{"ore": "cellEmpty", "count": 16}], +"duration": 600, +"EUt": 8}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellWater", "count": 3}], +"inputFluids": [{"materialFluid": "Mercury", "amount": 200}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 120, +"EUt": 8}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellHypochlorousAcid", "count": 3}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"ore": "cellAllylChloride", "count": 9}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 12000}], +"outputs":[{"ore": "cellSaltWater", "count": 3}, {"ore": "cellEmpty", "count": 6}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"ore": "cellHypochlorousAcid", "count": 3}], +"inputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 12000}], +"outputs":[{"ore": "cellSaltWater", "count": 3}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 8}], +"inputFluids": [{"materialFluid": "Glycerol", "amount": 14000}], +"outputFluids": [{"fluid": "water", "amount": 6000}], +"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellGlycerol", "count": 14}], +"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellWater", "count": 6}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "dustPhosphorus", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputs":[{"ore": "dustPhosphorousPentoxide", "count": 7}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellPropene", "count": 6}, {"ore": "cellPhosphoricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 8000}], +"outputFluids": [{"materialFluid": "Cumene", "amount": 14000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"duration": 360, +"EUt": 30}, +{"inputs": [{"ore": "cellPhosphoricAcid", "count": 1}, {"ore": "cellBenzene", "count": 8}], +"inputFluids": [{"gas": "Propene", "amount": 6000}], +"outputFluids": [{"materialFluid": "Cumene", "amount": 14000}], +"outputs":[{"ore": "cellEmpty", "count": 9}], +"duration": 360, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 8}, {"ore": "cellPropene", "count": 6}], +"inputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 1000}], +"outputs":[{"ore": "cellCumene", "count": 14}], +"duration": 360, +"EUt": 30}, + +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEmpty", "count": 5}], +"inputFluids": [{"materialFluid": "Cumene", "amount": 21000}], +"outputFluids": [{"materialFluid": "Acetone", "amount": 6000}], +"outputs":[{"ore": "cellPhenol", "count": 6}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEmpty", "count": 5}], +"inputFluids": [{"materialFluid": "Cumene", "amount": 21000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 6000}], +"outputs":[{"ore": "cellAcetone", "count": 6}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellCumene", "count": 11}, {"ore": "cellOxygen", "count": 1}], +"outputs":[{"ore": "cellPhenol", "count": 6}, {"ore": "cellAcetone", "count": 6}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellAcetone", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Phenol", "amount": 2000}], +"outputFluids": [{"materialFluid": "BisphenolA", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAcetone", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"materialFluid": "Phenol", "amount": 2000}], +"outputs":[{"ore": "cellBisphenolA", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellPhenol", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Acetone", "amount": 1000}], +"outputFluids": [{"materialFluid": "BisphenolA", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellPhenol", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"materialFluid": "Acetone", "amount": 1000}], +"outputs":[{"ore": "cellBisphenolA", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAcetone", "count": 1}, {"ore": "cellPhenol", "count": 2}], +"outputs":[{"ore": "cellBisphenolA", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 6000}], +"outputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid", "count": 6}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellFluorine", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputs":[{"ore": "cellHydrofluoricAcid", "count": 2}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Fluorine", "amount": 1000}], +"outputs":[{"ore": "cellHydrofluoricAcid", "count": 2}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"ore": "cellFluorine", "count": 1}], +"outputs":[{"ore": "cellHydrofluoricAcid", "count": 2}], +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellChloroform", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 3000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 6}], +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "cellHydrofluoricAcid", "count": 4}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 3000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 6}], +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "cellChloroform", "count": 5}, {"ore": "cellHydrofluoricAcid", "count": 4}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellDilutedHydrochloricAcid", "count": 6}], +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"ore": "cellChloromethane", "count": 10}], +"outputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], +"outputs":[{"ore": "cellEmpty", "count": 10}], +"duration": 240, +"EUt": 96}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellDilutedHydrochloricAcid", "count": 4}], +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellAmmonia", "count": 2}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellDimethylamine", "count": 5}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"ore": "cellAmmonia", "count": 2}], +"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellWater", "count": 3}], +"duration": 240, +"EUt": 120}, + +{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellChloramine", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellChloramine", "count": 2}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 1000}], +"outputs":[{"ore": "cellDimethylhydrazine", "count": 6}], +"duration": 960, +"EUt": 480}, +{"inputs": [{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"materialFluid": "Chloramine", "amount": 2000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 1000}], +"outputs":[{"ore": "cellDimethylhydrazine", "count": 6}], +"duration": 960, +"EUt": 480}, +{"inputs": [{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellChloramine", "count": 2}], +"inputFluids": [{"materialFluid": "Chloramine", "amount": 2000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 1000}], +"outputs":[{"ore": "cellDimethylhydrazine", "count": 6}, {"ore": "cellDilutedHydrochloricAcid", "count": 1}], +"duration": 960, +"EUt": 480}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], +"outputs":[{"ore": "cellWater", "count": 9}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], +"outputs":[{"ore": "cellWater", "count": 9}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"ore": "cellOxygen", "count": 5}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellWater", "count": 9}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputs":[{"ore": "cellNitrogenDioxide", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "NitricOxide", "amount": 2000}], +"outputs":[{"ore": "cellNitrogenDioxide", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellOxygen", "count": 1}], +"outputs":[{"ore": "cellNitrogenDioxide", "count": 3}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 7}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 9000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 2000}], +"outputs":[{"ore": "cellNitricAcid", "count": 10}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 9}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 2000}], +"outputs":[{"ore": "cellNitricAcid", "count": 10}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 6}, {"ore": "cellOxygen", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellWater", "count": 3}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 6000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellNitrogenDioxide", "count": 6}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 9}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"ore": "cellHydricSulfide", "count": 3}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}, {"ore": "cellWater", "count": 3}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], +"duration": 280, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputs":[{"ore": "cellSulfuricAcid", "count": 7}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellSulfurTrioxide", "count": 4}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellSulfuricAcid", "count": 7}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellSulfurTrioxide", "count": 4}, {"ore": "cellWater", "count": 3}], +"outputs":[{"ore": "cellSulfuricAcid", "count": 7}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellChlorine", "count": 2}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}, {"ore": "cellHydrochloricAcid", "count": 2}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellHydrochloricAcid", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellOxygen", "count": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEthylene", "count": 6}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputFluids": [{"gas": "Ethenone", "amount": 5000}], +"outputs":[{"ore": "cellDilutedSulfuricAcid", "count": 10}], +"duration": 160, +"EUt": 120}, +{"inputs": [{"ore": "cellSulfuricAcid", "count": 7}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"gas": "Ethenone", "amount": 5000}], +"outputs":[{"ore": "cellDilutedSulfuricAcid", "count": 10}], +"duration": 160, +"EUt": 120}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"ore": "cellSulfuricAcid", "count": 7}], +"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellDilutedSulfuricAcid", "count": 10}], +"duration": 160, +"EUt": 120}, + +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 3000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 1000}], +"outputs":[{"ore": "cellDichlorobenzene", "count": 3}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 10}], +"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 12000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellPhenol", "count": 13}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorobenzene", "count": 12}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputs":[{"ore": "cellPhenol", "count": 13}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 4000}], +"outputs":[{"ore": "cellPhenol", "count": 4}], +"duration": 960, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"ore": "cellChlorobenzene", "count": 4}], +"outputs":[{"ore": "cellPhenol", "count": 4}], +"duration": 960, +"EUt": 30}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_old.json b/src/main/resources/assets/gregtech/recipes/chemical_old.json new file mode 100644 index 0000000000..dce2db9951 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_old.json @@ -0,0 +1,148 @@ +[ + +{"inputs": [{"ore": "cellNitrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 1250, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Nitrogen", "amount": 1000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 2}], +"specialValue": -300, +"duration": 1250, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 2000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 3000}], +"specialValue": -300, +"duration": 1150, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellHydrogen", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 2}], +"specialValue": -300, +"duration": 1150, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 4}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 4}], +"specialValue": -300, +"duration": 1150, +"EUt": 30}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 1}, {"item": "GTItemList:Cell_Water", "count": 1}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1500}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 2}], +"specialValue": -300, +"duration": 320, +"EUt": 30}, +{"inputs": [{"item": "GTItemList:Cell_Water", "count": 1}], +"inputFluids": [{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1500}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 1000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1500}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 320, +"EUt": 30}, + +{"inputs": [{"item": "GTItemList:Cell_Air", "count": 2}], +"inputFluids": [{"materialFluid": "Naphtha", "amount": 288}], +"outputFluids": [{"molten": "Plastic", "amount": 144}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 2}], +"specialValue": -300, +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "dustTinyTitanium", "count": 1}, {"ore": "cellOxygen", "count": 16}], +"inputFluids": [{"materialFluid": "Naphtha", "amount": 1296}], +"outputFluids": [{"molten": "Plastic", "amount": 1296}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 16}], +"specialValue": -300, +"duration": 640, +"EUt": 30}, + +{"inputs": [{"ore": "cellNaphtha", "count": 3}, {"ore": "cellNitrogenDioxide", "count": 1}], +"inputFluids": [{"fluid": "liquid_epichlorhydrin", "amount": 144}], +"outputFluids": [{"molten": "Epoxid", "amount": 288}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 4}], +"specialValue": -300, +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"materialFluid": "LPG", "amount": 432}], +"outputFluids": [{"fluid": "liquid_epichlorhydrin", "amount": 432}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellNaphtha", "count": 3}, {"ore": "cellFluorine", "count": 1}], +"inputFluids": [{"fluid": "liquid_epichlorhydrin", "amount": 432}], +"outputFluids": [{"molten": "Polytetrafluoroethylene", "amount": 432}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 4}], +"specialValue": -300, +"duration": 240, +"EUt": 256}, +{"inputs": [{"ore": "dustSilicon", "count": 1}], +"inputFluids": [{"fluid": "liquid_epichlorhydrin", "amount": 144}], +"outputFluids": [{"molten": "Silicone", "amount": 144}], +"specialValue": -300, +"duration": 240, +"EUt": 96}, + +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"ore": "cellHydrogen", "count": 3}], +"inputFluids": [{"gas": "Air", "amount": 500}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 3000}], +"outputs":[{"item": "GTItemList:Cell_Water", "count": 4}], +"specialValue": -300, +"duration": 1000, +"EUt": 388}, + +{"inputs": [{"ore": "cellFuel", "count": 1}], +"inputFluids": [{"materialFluid": "Glyceryl", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 250, +"EUt": 30}, +{"inputs": [{"ore": "cellGlyceryl", "count": 1}], +"inputFluids": [{"materialFluid": "Fuel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 1000, +"EUt": 30}, +{"inputs": [{"ore": "cellLightFuel", "count": 1}], +"inputFluids": [{"materialFluid": "Glyceryl", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1250}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 250, +"EUt": 30}, +{"inputs": [{"ore": "cellGlyceryl", "count": 1}], +"inputFluids": [{"materialFluid": "LightFuel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 5000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 1000, +"EUt": 30}, + +{"inputs": [{"ore": "cellNitrogen", "count": 1}, {"ore": "dustCarbon", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 2000}], +"outputFluids": [{"materialFluid": "Glyceryl", "amount": 4000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"specialValue": -300, +"duration": 2700, +"EUt": 30}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json index df94438758..76f8759627 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json @@ -428,17 +428,17 @@ "EUt":30}, {"inputs": [{"ore": "dustNetherQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], -"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemNetherQuartz", "count": 3}], "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustCertusQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], -"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemCertusQuartz", "count": 3}], "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustQuartzite", "count": 3}, {"ore": "dustSodium", "count": 1}], -"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemQuartzite", "count": 3}], "duration": 500, "EUt": 30}, @@ -544,4 +544,514 @@ "duration": 50, "EUt": 30}, +{"inputs": [{"ore": "dustPotassium", "count": 1}, {"ore": "cellOxygen", "count": 3}], +"inputFluids": [{"gas": "Nitrogen", "amount": 1000}], +"outputs":[{"ore": "dustSaltpeter", "count": 5}, {"ore": "cellEmpty", "count": 3}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "dustPotassium", "count": 1}, {"ore": "cellNitrogen", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputs":[{"ore": "dustSaltpeter", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 180, +"EUt": 30}, + +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "gemCoal", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs":[{"ore": "dustTinyAsh", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "dustCoal", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs":[{"ore": "dustTinyAsh", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "gemCharcoal", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs":[{"ore": "dustTinyAsh", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "dustCharcoal", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs":[{"ore": "dustTinyAsh", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "gemCoal", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "dustTinyAsh", "count": 1}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "dustCoal", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "dustTinyAsh", "count": 1}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "gemCharcoal", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "dustTinyAsh", "count": 1}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "dustCharcoal", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "dustTinyAsh", "count": 1}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "dustCarbon", "count": 1}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 4000}], +"duration": 800, +"EUt": 30}, + +{"inputs": [{"ore": "cellCarbonMonoxide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 4000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 4}, {"circuit": 1}], +"inputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellCarbonMonoxide", "count": 2}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"gas": "Hydrogen", "amount": 4000}], +"outputs":[{"ore": "cellMethanol", "count": 6}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 4}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs":[{"ore": "cellMethanol", "count": 6}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellCarbonMonoxide", "count": 2}, {"ore": "cellHydrogen", "count": 4}], +"outputs":[{"ore": "cellMethanol", "count": 6}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 6000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "Hydrogen", "amount": 6000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 2}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "Hydrogen", "amount": 6000}], +"outputs":[{"ore": "cellMethanol", "count": 6}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 12}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "cellMethanol", "count": 6}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"ore": "cellHydrogen", "count": 6}], +"outputs":[{"ore": "cellMethanol", "count": 6}, {"ore": "cellWater", "count": 3}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 300, +"EUt": 30}, +{"inputs": [{"ore": "cellCarbonMonoxide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 300, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs":[{"ore": "cellAceticAcid", "count": 8}], +"duration": 300, +"EUt": 30}, +{"inputs": [{"ore": "cellCarbonMonoxide", "count": 2}, {"ore": "cellEmpty", "count": 6}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs":[{"ore": "cellAceticAcid", "count": 8}], +"duration": 300, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"ore": "cellCarbonMonoxide", "count": 2}], +"outputs":[{"ore": "cellAceticAcid", "count": 8}], +"duration": 300, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 9}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 100, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 2}, {"circuit": 9}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 100, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputs":[{"ore": "cellAceticAcid", "count": 8}], +"duration": 100, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 2}, {"ore": "cellEmpty", "count": 6}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputs":[{"ore": "cellAceticAcid", "count": 8}], +"duration": 100, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthanol", "count": 9}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 6000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 9000}], +"outputs":[{"ore": "cellEthylene", "count": 6}, {"ore": "cellEmpty", "count": 3}], +"duration": 1200, +"EUt": 120}, +{"inputs": [{"ore": "cellSulfuricAcid", "count": 6}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Ethanol", "amount": 9000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 9000}], +"outputs":[{"ore": "cellEthylene", "count": 6}], +"duration": 1200, +"EUt": 120}, +{"inputs": [{"ore": "cellEthanol", "count": 9}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 6000}], +"outputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputs":[{"ore": "cellDilutedSulfuricAcid", "count": 9}], +"duration": 1200, +"EUt": 120}, +{"inputs": [{"ore": "cellSulfuricAcid", "count": 6}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"materialFluid": "Ethanol", "amount": 9000}], +"outputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputs":[{"ore": "cellDilutedSulfuricAcid", "count": 9}], +"duration": 1200, +"EUt": 120}, +{"inputs": [{"ore": "cellEthanol", "count": 9}, {"ore": "cellSulfuricAcid", "count": 6}], +"outputs":[{"ore": "cellDilutedSulfuricAcid", "count": 9}, {"ore": "cellEthylene", "count": 6}], +"duration": 1200, +"EUt": 120}, + +{"inputs": [{"ore": "dustSodium", "count": 1}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputs":[{"ore": "dustSodiumHydroxide", "count": 3}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustSodium", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "dustSodiumHydroxide", "count": 3}, {"ore": "cellHydrogen", "count": 1}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "dustPolydimethylsiloxane", "count": 9}, {"ore": "dustSulfur", "count": 1}], +"outputFluids": [{"molten": "Silicone", "amount": 1296}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "cellNitrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 3000}], +"outputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 384}, +{"inputs": [{"ore": "cellHydrogen", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Nitrogen", "amount": 1000}], +"outputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 320, +"EUt": 384}, +{"inputs": [{"ore": "cellNitrogen", "count": 1}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "Hydrogen", "amount": 3000}], +"outputs":[{"ore": "cellAmmonia", "count": 4}], +"duration": 320, +"EUt": 384}, +{"inputs": [{"ore": "cellHydrogen", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Nitrogen", "amount": 1000}], +"outputs":[{"ore": "cellAmmonia", "count": 4}], +"duration": 320, +"EUt": 384}, +{"inputs": [{"ore": "cellNitrogen", "count": 1}, {"ore": "cellHydrogen", "count": 3}], +"outputs":[{"ore": "cellAmmonia", "count": 4}], +"duration": 320, +"EUt": 384}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputs":[{"ore": "cellHydricSulfide", "count": 3}], +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellPropene", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 2000}], +"outputFluids": [{"materialFluid": "Isoprene", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Propene", "amount": 3000}], +"outputFluids": [{"materialFluid": "Isoprene", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellPropene", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "Ethylene", "amount": 2000}], +"outputs":[{"ore": "cellIsoprene", "count": 5}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "Propene", "amount": 3000}], +"outputs":[{"ore": "cellIsoprene", "count": 5}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"item": "GTItemList:Cell_Air", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Isoprene", "amount": 244}], +"outputs":[{"ore": "dustRawRubber", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Isoprene", "amount": 288}], +"outputs":[{"ore": "dustRawRubber", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellIsoprene", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Air", "amount": 14000}], +"outputs":[{"ore": "dustRawRubber", "count": 7}, {"ore": "cellEmpty", "count": 1}], +"duration": 1120, +"EUt": 30}, +{"inputs": [{"ore": "cellIsoprene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 14000}], +"outputs":[{"ore": "dustRawRubber", "count": 21}, {"ore": "cellEmpty", "count": 2}], +"duration": 2240, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 1000}], +"outputFluids": [{"materialFluid": "Styrene", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 2000}], +"outputFluids": [{"materialFluid": "Styrene", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 1000}], +"outputs":[{"ore": "cellStyrene", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 2000}], +"outputs":[{"ore": "cellStyrene", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 2}, {"ore": "cellEthylene", "count": 1}], +"outputs":[{"ore": "cellStyrene", "count": 3}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "cellButadiene", "count": 3}, {"item": "GTItemList:Cell_Air", "count": 4}], +"inputFluids": [{"materialFluid": "Styrene", "amount": 1000}], +"outputs":[{"ore": "dustRawStyreneButadieneRubber", "count": 4}, {"ore": "cellEmpty", "count": 7}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"ore": "cellButadiene", "count": 3}, {"ore": "cellOxygen", "count": 4}], +"inputFluids": [{"materialFluid": "Styrene", "amount": 1000}], +"outputs":[{"ore": "dustRawStyreneButadieneRubber", "count": 6}, {"ore": "cellEmpty", "count": 7}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"ore": "cellStyrene", "count": 1}, {"item": "GTItemList:Cell_Air", "count": 4}], +"inputFluids": [{"gas": "Butadiene", "amount": 3000}], +"outputs":[{"ore": "dustRawStyreneButadieneRubber", "count": 4}, {"ore": "cellEmpty", "count": 5}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"ore": "cellStyrene", "count": 1}, {"ore": "cellOxygen", "count": 4}], +"inputFluids": [{"gas": "Butadiene", "amount": 3000}], +"outputs":[{"ore": "dustRawStyreneButadieneRubber", "count": 6}, {"ore": "cellEmpty", "count": 5}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"ore": "cellStyrene", "count": 1}, {"ore": "cellButadiene", "count": 3}], +"inputFluids": [{"gas": "Air", "amount": 4000}], +"outputs":[{"ore": "dustRawStyreneButadieneRubber", "count": 4}, {"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"ore": "cellStyrene", "count": 1}, {"ore": "cellButadiene", "count": 3}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputs":[{"ore": "dustRawStyreneButadieneRubber", "count": 6}, {"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 9}, {"ore": "dustSulfur", "count": 1}], +"outputFluids": [{"molten": "StyreneButadieneRubber", "amount": 1296}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], +"inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], +"outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], +"outputs":[{"ore": "cellGlycerol", "count": 1}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputs":[{"ore": "cellBioDiesel", "count": 6}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], +"inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], +"outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], +"outputs":[{"ore": "cellGlycerol", "count": 1}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputs":[{"ore": "cellBioDiesel", "count": 6}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], +"inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], +"outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], +"outputs":[{"ore": "cellGlycerol", "count": 1}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], +"inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputs":[{"ore": "cellBioDiesel", "count": 6}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], +"inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], +"outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], +"outputs":[{"ore": "cellGlycerol", "count": 1}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], +"inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputs":[{"ore": "cellBioDiesel", "count": 6}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "cellGlycerol", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "NitrationMixture", "amount": 3000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 3000}], +"outputs":[{"ore": "cellGlyceryl", "count": 1}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrationMixture", "count": 3}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 3000}], +"outputs":[{"ore": "cellGlyceryl", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"materialFluid": "NitrationMixture", "amount": 3000}], +"outputFluids": [{"materialFluid": "Glyceryl", "amount": 1000}], +"outputs":[{"ore": "cellDilutedSulfuricAcid", "count": 3}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrationMixture", "count": 3}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glyceryl", "amount": 1000}], +"outputs":[{"ore": "cellDilutedSulfuricAcid", "count": 3}], +"duration": 180, +"EUt": 30}, + +{"inputs": [{"ore": "cellMethane", "count": 5}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"fluid": "water", "amount": 6000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "cellHydrogen", "count": 8}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellWater", "count": 6}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "cellHydrogen", "count": 8}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 11}], +"inputFluids": [{"fluid": "water", "amount": 6000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 8000}], +"outputs":[{"ore": "cellCarbonDioxide", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellWater", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 8000}], +"outputs":[{"ore": "cellCarbonDioxide", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 12}], +"inputFluids": [{"fluid": "water", "amount": 6000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 8000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellWater", "count": 6}, {"circuit": 12}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 8000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 40, +"EUt": 240}, + +{"inputs": [{"ore": "dustQuicklime", "count": 2}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "dustCalcite", "count": 5}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "dustCalcite", "count": 5}, {"circuit": 1}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "dustQuicklime", "count": 2}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustMagnesia", "count": 2}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "dustMagnesite", "count": 5}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "dustMagnesite", "count": 5}, {"circuit": 1}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs":[{"ore": "dustMagnesia", "count": 2}], +"duration": 240, +"EUt": 30}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_simple.json b/src/main/resources/assets/gregtech/recipes/chemical_simple.json new file mode 100644 index 0000000000..7868ccb86a --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_simple.json @@ -0,0 +1,232 @@ +[ + +{"inputs": [{"ore": "cellEthylene", "count": 1}, {"ore": "cellAceticAcid", "count": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 2}, {"ore": "cellMethanol", "count": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 1}, {"ore": "cellEthylene", "count": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellPropene", "count": 2}, {"ore": "cellBenzene", "count": 2}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 240, +"EUt": 240}, +{"inputs": [{"ore": "cellBenzene", "count": 2}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Propene", "amount": 2000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 240}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellPropene", "count": 2}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 2000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 240}, + +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Fluorine", "amount": 4000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 360, +"EUt": 180}, +{"inputs": [{"ore": "cellFluorine", "count": 4}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 2000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 360, +"EUt": 180}, + +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"ore": "cellMethane", "count": 2}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Methane", "amount": 2000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 120}, + +{"inputs": [{"ore": "cellAmmonia", "count": 3}, {"ore": "cellMethanol", "count": 4}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"duration": 3600, +"EUt": 480}, +{"inputs": [{"ore": "cellMethanol", "count": 4}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 3000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"duration": 3600, +"EUt": 480}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellAmmonia", "count": 3}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 4000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 3600, +"EUt": 480}, + +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellWater", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellWater", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 3}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellWater", "count": 3}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 480, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 4}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellHydrogen", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 4}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthylene", "count": 5}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 5000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellLightFuel", "count": 1}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "cellFuel", "count": 2}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "cellBioDiesel", "count": 4}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "LightFuel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "Fuel", "amount": 8000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "BioDiesel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 8}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 1000}], +"outputFluids": [{"molten": "PolyphenyleneSulfide", "amount": 2000}], +"duration": 320, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "dustSodium", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SodiumPersulfate", "amount": 6000}], +"duration": 8000, +"EUt": 30}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_simple_small.json b/src/main/resources/assets/gregtech/recipes/chemical_simple_small.json new file mode 100644 index 0000000000..c9de72d94b --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_simple_small.json @@ -0,0 +1,50 @@ +[ + +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"gas": "Fluorine", "amount": 4000}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 6}], +"duration": 360, +"EUt": 180}, +{"inputs": [{"ore": "cellFluorine", "count": 4}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "Ethylene", "amount": 2000}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 6}], +"duration": 360, +"EUt": 180}, +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"ore": "cellFluorine", "count": 4}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 6}], +"duration": 360, +"EUt": 180}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"ore": "cellEmpty", "count": 4}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputs":[{"ore": "cellSulfuricAcid", "count": 7}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 4}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputs":[{"ore": "cellSulfuricAcid", "count": 7}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthylene", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellEmpty", "count": 5}], +"inputFluids": [{"gas": "Ethylene", "amount": 5000}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 5}, {"ore": "cellChlorine", "count": 1}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellBenzene", "count": 1}], +"outputFluids": [{"molten": "PolyphenyleneSulfide", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 30}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/distillation_tower.json b/src/main/resources/assets/gregtech/recipes/distillation_tower.json new file mode 100644 index 0000000000..1d76e76318 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/distillation_tower.json @@ -0,0 +1,85 @@ +[ +{"inputFluids": [{"materialFluid": "OilLight", "amount": 150}], +"outputFluids": [{"materialFluid": "SulfuricHeavyFuel", "amount": 10}, {"materialFluid": "SulfuricLightFuel", "amount": 20}, {"materialFluid": "SulfuricNaphtha", "amount": 30}, {"gas": "SulfuricGas", "amount": 240}], +"duration": 20, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "OilMedium", "amount": 100}], +"outputFluids": [{"materialFluid": "SulfuricHeavyFuel", "amount": 15}, {"materialFluid": "SulfuricLightFuel", "amount": 50}, {"materialFluid": "SulfuricNaphtha", "amount": 20}, {"gas": "SulfuricGas", "amount": 60}], +"duration": 20, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "Oil", "amount": 50}], +"outputFluids": [{"materialFluid": "SulfuricHeavyFuel", "amount": 15}, {"materialFluid": "SulfuricLightFuel", "amount": 50}, {"materialFluid": "SulfuricNaphtha", "amount": 20}, {"gas": "SulfuricGas", "amount": 60}], +"duration": 20, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "OilHeavy", "amount": 100}], +"outputFluids": [{"materialFluid": "SulfuricHeavyFuel", "amount": 250}, {"materialFluid": "SulfuricLightFuel", "amount": 45}, {"materialFluid": "SulfuricNaphtha", "amount": 15}, {"gas": "SulfuricGas", "amount": 60}], +"duration": 20, +"EUt": 288}, +{"inputFluids": [{"materialFluid": "Creosote", "amount": 24}], +"outputFluids": [{"materialFluid": "Lubricant", "amount": 12}], +"duration": 16, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "SeedOil", "amount": 32}], +"outputFluids": [{"materialFluid": "Lubricant", "amount": 12}], +"duration": 16, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "FishOil", "amount": 24}], +"outputFluids": [{"materialFluid": "Lubricant", "amount": 12}], +"duration": 16, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "Biomass", "amount": 600}], +"outputFluids": [{"materialFluid": "Ethanol", "amount": 240}, {"fluid": "water", "amount": 240}], +"outputs": [{"ore": "dustSmallWood", "count": 1}], +"duration": 16, +"EUt": 400}, +{"inputFluids": [{"fluid": "water", "amount": 576}], +"outputFluids": [{"fluid": "ic2distilledwater", "amount": 520}], +"duration": 16, +"EUt": 120}, +{"inputFluids": [{"fluid": "potion.vinegar", "amount": 40}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 5}, {"fluid": "water", "amount": 35}], +"duration": 20, +"EUt": 64}, +{"inputFluids": [{"gas": "CharcoalByproducts", "amount": 1000}], +"outputFluids": [{"materialFluid": "WoodTar", "amount": 250}, {"materialFluid": "WoodVinegar", "amount": 500}, {"gas": "WoodGas", "amount": 250}], +"outputs": [{"ore": "dustSmallCharcoal", "count": 1}], +"duration": 40, +"EUt": 256}, +{"inputFluids": [{"gas": "WoodGas", "amount": 1000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 490}, {"gas": "Ethylene", "amount": 20}, {"gas": "Methane", "amount": 130}, {"gas": "CarbonMonoxide", "amount": 340}, {"gas": "Hydrogen", "amount": 20}], +"duration": 40, +"EUt": 256}, +{"inputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1000}, {"fluid": "water", "amount": 1000}], +"duration": 600, +"EUt": 120}, + +{"inputFluids": [{"materialFluid": "WoodVinegar", "amount": 1000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 150}, {"fluid": "water", "amount": 500}, {"materialFluid": "Ethanol", "amount": 20}, {"materialFluid": "Methanol", "amount": 300}], +"enableCondition": "!MoreComplicatedChemicalRecipes", +"duration": 40, +"EUt": 256}, +{"inputFluids": [{"materialFluid": "WoodTar", "amount": 1000}], +"outputFluids": [{"materialFluid": "Creosote", "amount": 500}, {"materialFluid": "Benzene", "amount": 425}, {"materialFluid": "Toluene", "amount": 75}], +"enableCondition": "!MoreComplicatedChemicalRecipes", +"duration": 40, +"EUt": 256}, + +{"inputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 1000}, {"materialFluid": "HydrochloricAcid", "amount": 1000}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 300, +"EUt": 64}, + +{"inputFluids": [{"materialFluid": "CalciumAcetateSolution", "amount": 4500}], +"outputFluids": [{"materialFluid": "Acetone", "amount": 2500}, {"fluid": "water", "amount": 750}, {"gas": "CarbonDioxide", "amount": 750}], +"outputs": [{"ore": "dustSmallQuicklime", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 100, +"EUt": 240}, +{"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 25}, {"fluid": "water", "amount": 375}, {"materialFluid": "Ethanol", "amount": 150}, {"materialFluid": "Methanol", "amount": 150},{"gas": "Ammonia", "amount": 100}, {"gas": "CarbonDioxide", "amount": 400}, {"gas": "Methane", "amount": 600}], +"outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 75, +"EUt": 180}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/distillery.json b/src/main/resources/assets/gregtech/recipes/distillery.json new file mode 100644 index 0000000000..d7068649cb --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/distillery.json @@ -0,0 +1,215 @@ +[ +{"inputFluids": [{"materialFluid": "OilLight", "amount": 150}], +"fluidsPerCircuit": [{"materialFluid": "SulfuricHeavyFuel", "amount": 10}, {"materialFluid": "SulfuricLightFuel", "amount": 20}, {"materialFluid": "SulfuricNaphtha", "amount": 30}, {"gas": "SulfuricGas", "amount": 240}], +"duration": 20, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "OilMedium", "amount": 100}], +"fluidsPerCircuit": [{"materialFluid": "SulfuricHeavyFuel", "amount": 15}, {"materialFluid": "SulfuricLightFuel", "amount": 50}, {"materialFluid": "SulfuricNaphtha", "amount": 20}, {"gas": "SulfuricGas", "amount": 60}], +"duration": 20, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "Oil", "amount": 50}], +"fluidsPerCircuit": [{"materialFluid": "SulfuricHeavyFuel", "amount": 15}, {"materialFluid": "SulfuricLightFuel", "amount": 50}, {"materialFluid": "SulfuricNaphtha", "amount": 20}, {"gas": "SulfuricGas", "amount": 60}], +"duration": 20, +"EUt": 96}, +{"inputFluids": [{"materialFluid": "OilHeavy", "amount": 100}], +"fluidsPerCircuit": [{"materialFluid": "SulfuricHeavyFuel", "amount": 250}, {"materialFluid": "SulfuricLightFuel", "amount": 45}, {"materialFluid": "SulfuricNaphtha", "amount": 15}, {"gas": "SulfuricGas", "amount": 60}], +"duration": 20, +"EUt": 288}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"fluid": "liquid_extra_heavy_oil", "amount": 10}], +"outputFluids": [{"materialFluid": "OilHeavy", "amount": 15}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 1}], +"inputFluids": [{"materialFluid": "HeavyFuel", "amount": 10}], +"outputFluids": [{"fluid": "liquid_toluene", "amount": 4}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 1}], +"inputFluids": [{"fluid": "liquid_toluene", "amount": 30}], +"outputFluids": [{"materialFluid": "LightFuel", "amount": 30}], +"duration": 16, +"EUt": 24}, + + +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "Creosote", "amount": 3}], +"outputFluids": [{"materialFluid": "Lubricant", "amount": 1}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "SeedOil", "amount": 4}], +"outputFluids": [{"materialFluid": "Lubricant", "amount": 1}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "FishOil", "amount": 3}], +"outputFluids": [{"materialFluid": "Lubricant", "amount": 1}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 1}], +"inputFluids": [{"materialFluid": "Biomass", "amount": 40}], +"outputFluids": [{"materialFluid": "Ethanol", "amount": 12}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 5}], +"inputFluids": [{"materialFluid": "Biomass", "amount": 40}], +"outputFluids": [{"fluid": "water", "amount": 12}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 5}], +"inputFluids": [{"fluid": "water", "amount": 5}], +"outputFluids": [{"fluid": "ic2distilledwater", "amount": 5}], +"duration": 16, +"EUt": 10}, +{"inputs": [{"circuit": 1}], +"inputFluids": [{"fluid": "potion.potatojuice", "amount": 2}], +"outputFluids": [{"fluid": "potion.vodka", "amount": 1}], +"hidden": true, +"duration": 16, +"EUt": 16}, +{"inputs": [{"circuit": 1}], +"inputFluids": [{"fluid": "potion.lemonade", "amount": 2}], +"outputFluids": [{"fluid": "potion.alcopops", "amount": 1}], +"hidden": true, +"duration": 16, +"EUt": 16}, + +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "OilLight", "amount": 300}], +"outputFluids": [{"materialFluid": "Oil", "amount": 100}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "OilMedium", "amount": 200}], +"outputFluids": [{"materialFluid": "Oil", "amount": 100}], +"duration": 16, +"EUt": 24}, +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "OilHeavy", "amount": 100}], +"outputFluids": [{"materialFluid": "Oil", "amount": 100}], +"duration": 16, +"EUt": 24}, +{"inputFluids": [{"fluid": "potion.vinegar", "amount": 40}], +"fluidsPerCircuit": [{"materialFluid": "AceticAcid", "amount": 5}, {"fluid": "water", "amount": 35}], +"duration": 20, +"EUt": 64}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"materialFluid": "SaltWater", "amount": 1000}], +"outputFluids": [{"fluid": "ic2distilledwater", "amount": 750}], +"outputs": [{"ore": "dustSmallSalt", "count": 1}], +"duration": 2400, +"EUt": 16}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 25}], +"outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 1500, +"EUt": 8}, +{"inputs": [{"circuit": 2}], +"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 375}], +"outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 1500, +"EUt": 8}, +{"inputs": [{"circuit": 3}], +"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"outputFluids": [{"materialFluid": "Ethanol", "amount": 150}], +"outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 1500, +"EUt": 8}, +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 150}], +"outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 1500, +"EUt": 8}, +{"inputs": [{"circuit": 5}], +"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"outputFluids": [{"gas": "Ammonia", "amount": 100}], +"outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 1500, +"EUt": 8}, +{"inputs": [{"circuit": 6}], +"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 400}], +"outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 1500, +"EUt": 8}, +{"inputs": [{"circuit": 7}], +"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"outputFluids": [{"gas": "Methane", "amount": 600}], +"outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"duration": 1500, +"EUt": 8}, +{"inputFluids": [{"gas": "CharcoalByproducts", "amount": 1000}], +"fluidsPerCircuit": [{"materialFluid": "WoodTar", "amount": 250}, {"materialFluid": "WoodVinegar", "amount": 500}, {"gas": "WoodGas", "amount": 250}], +"outputs": [{"ore": "dustSmallCharcoal", "count": 1}], +"duration": 40, +"EUt": 256}, +{"inputFluids": [{"gas": "WoodGas", "amount": 1000}], +"fluidsPerCircuit": [{"gas": "CarbonDioxide", "amount": 490}, {"gas": "Ethylene", "amount": 20}, {"gas": "Methane", "amount": 130}, {"gas": "CarbonMonoxide", "amount": 340}, {"gas": "Hydrogen", "amount": 20}], +"duration": 40, +"EUt": 256}, +{"inputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], +"fluidsPerCircuit": [{"materialFluid": "SulfuricAcid", "amount": 1000}, {"fluid": "water", "amount": 1000}], +"duration": 600, +"EUt": 120}, + +{"inputFluids": [{"materialFluid": "WoodVinegar", "amount": 1000}], +"fluidsPerCircuit": [{"materialFluid": "AceticAcid", "amount": 150}, {"fluid": "water", "amount": 500}, {"materialFluid": "Ethanol", "amount": 20}, {"materialFluid": "Methanol", "amount": 300}], +"enableCondition": "!MoreComplicatedChemicalRecipes", +"duration": 40, +"EUt": 256}, +{"inputFluids": [{"materialFluid": "WoodTar", "amount": 1000}], +"fluidsPerCircuit": [{"materialFluid": "Creosote", "amount": 500}, {"materialFluid": "Benzene", "amount": 425}, {"materialFluid": "Toluene", "amount": 75}], +"enableCondition": "!MoreComplicatedChemicalRecipes", +"duration": 40, +"EUt": 256}, + +{"inputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"fluidsPerCircuit": [{"fluid": "water", "amount": 1000}, {"materialFluid": "HydrochloricAcid", "amount": 1000}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 300, +"EUt": 64}, + +{"inputs": [{"circuit": 3}], +"inputFluids": [{"materialFluid": "HeavyFuel", "amount": 100}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 25}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 160, +"EUt": 24}, + +{"inputFluids": [{"materialFluid": "CalciumAcetateSolution", "amount": 4500}], +"fluidsPerCircuit": [{"materialFluid": "Acetone", "amount": 2500}, {"fluid": "water", "amount": 750}, {"gas": "CarbonDioxide", "amount": 750}], +"outputs": [{"ore": "dustSmallQuicklime", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 100, +"EUt": 240}, + +{"inputFluids": [{"materialFluid": "WoodVinegar", "amount": 1000}], +"fluidsPerCircuit": [{"materialFluid": "AceticAcid", "amount": 100}, {"fluid": "water", "amount": 500}, {"materialFluid": "Ethanol", "amount": 10}, {"materialFluid": "Methanol", "amount": 300}, {"materialFluid": "Acetone", "amount": 50}, {"materialFluid": "MethylAcetate", "amount": 10}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 40, +"EUt": 256}, +{"inputFluids": [{"materialFluid": "WoodTar", "amount": 1000}], +"fluidsPerCircuit": [{"materialFluid": "Creosote", "amount": 500}, {"materialFluid": "Phenol", "amount": 75}, {"materialFluid": "Benzene", "amount": 350}, {"materialFluid": "Toluene", "amount": 75}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 40, +"EUt": 256}, + +{"inputFluids": [{"materialFluid": "Acetone", "amount": 1000}], +"fluidsPerCircuit": [{"gas": "Ethenone", "amount": 500}, {"gas": "Methane", "amount": 500}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 50, +"EUt": 640}, +{"inputs": [{"circuit": 2}], +"inputFluids": [{"materialFluid": "HeavyFuel", "amount": 100}], +"outputFluids": [{"materialFluid": "Benzene", "amount": 40}], +"duration": 160, +"EUt": 24}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/electrolyzer.json b/src/main/resources/assets/gregtech/recipes/electrolyzer.json index 2bc9d816fa..c8db492f22 100644 --- a/src/main/resources/assets/gregtech/recipes/electrolyzer.json +++ b/src/main/resources/assets/gregtech/recipes/electrolyzer.json @@ -62,4 +62,71 @@ "duration": 100, "EUt": 64}, +{"inputs": [{"ore": "cellEmpty", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputs": [{"ore": "cellHydrogen", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 720, +"EUt": 30}, +{"inputs": [{"ore": "cellEmpty", "count": 1}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputs": [{"ore": "cellChlorine", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 720, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}], +"outputs": [{"ore": "cellHydrogen", "count": 1}, {"ore": "cellChlorine", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 720, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumBisulfate", "count": 7}, {"ore": "cellEmpty", "count": 2}], +"outputFluids": [{"materialFluid": "SodiumPersulfate", "amount": 12000}], +"outputs": [{"ore": "cellHydrogen", "count": 2}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 600, +"EUt": 30}, + +{"inputs": [{"circuit": 1}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputs": [{"ore": "dustCarbon", "count": 1}], +"duration": 300, +"EUt": 120}, +{"inputs": [{"circuit": 11}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustCarbon", "count": 1}, {"ore": "cellOxygen", "count": 2}], +"duration": 300, +"EUt": 120}, +{"inputs": [{"circuit": 1}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputs": [{"ore": "dustSulfur", "count": 1}], +"duration": 300, +"EUt": 120}, +{"inputs": [{"circuit": 11}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 2}], +"duration": 300, +"EUt": 120}, + +{"inputs": [{"ore": "dustSalt", "count": 2}], +"outputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputs": [{"ore": "dustSodium", "count": 1}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellEmpty", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SaltWater", "amount": 8000}], +"outputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"ore": "cellHydrogen", "count": 1}], +"duration": 720, +"EUt": 30}, +{"inputs": [{"ore": "cellEmpty", "count": 1}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "SaltWater", "amount": 8000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"ore": "cellChlorine", "count": 1}], +"duration": 720, +"EUt": 30}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/fermenter.json b/src/main/resources/assets/gregtech/recipes/fermenter.json index d2485f1410..6ab1f48b37 100644 --- a/src/main/resources/assets/gregtech/recipes/fermenter.json +++ b/src/main/resources/assets/gregtech/recipes/fermenter.json @@ -175,4 +175,8 @@ "duration": 2048, "EUt": 2}, +{"inputFluids": [{"materialFluid": "Biomass", "amount": 100}], +"outputFluids": [{"materialFluid": "FermentedBiomass", "amount": 100}], +"duration": 150, +"EUt": 2}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json index 532fa4b692..8fff46c730 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json @@ -98,7 +98,7 @@ "EUt": 128}, {"inputs":[{"ore": "dustQuartzite", "count": 1}], -"outputs":[{"molten": "Glass", "amount": 72}], +"fluidOutputs":[{"molten": "Glass", "amount": 72}], "duration": 600, "EUt": 28}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_heater.json b/src/main/resources/assets/gregtech/recipes/fluid_heater.json index 85f14f863e..8e1b8baf6a 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_heater.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_heater.json @@ -31,4 +31,16 @@ "duration": 16, "EUt":32}, +{"inputs": [{"circuit": 1}], +"fluidInputs": [{"materialFluid": "CalciumAcetateSolution", "amount": 900}], +"fluidOutputs": [{"materialFluid": "Acetone", "amount": 500}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 80, +"EUt": 30}, +{"inputs": [{"circuit": 1}], +"fluidInputs": [{"materialFluid": "Acetone", "amount": 1000}], +"fluidOutputs": [{"gas": "Ethenone", "amount": 500}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 160, +"EUt": 30}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json index b81fadf350..db2abb236b 100644 --- a/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json +++ b/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json @@ -428,17 +428,17 @@ "EUt":30}, {"inputs": [{"ore": "dustNetherQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], -"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemNetherQuartz", "count": 3}], "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustCertusQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], -"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemCertusQuartz", "count": 3}], "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustQuartzite", "count": 3}, {"ore": "dustSodium", "count": 1}], -"inputFluids":[{"materialFluid": "Water", "amount": 1000}], +"inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemQuartzite", "count": 3}], "duration": 500, "EUt": 30}, @@ -532,4 +532,421 @@ "duration": 50, "EUt": 30}, +{"inputs": [{"ore": "dustPotassium", "count": 1}, {"ore": "cellOxygen", "count": 3}], +"inputFluids": [{"gas": "Nitrogen", "amount": 1000}], +"outputs": [{"ore": "dustSaltpeter", "count": 5}, {"ore": "cellEmpty", "count": 3}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "dustPotassium", "count": 1}, {"ore": "cellNitrogen", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputs": [{"ore": "dustSaltpeter", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 180, +"EUt": 30}, + +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "gemCoal", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs": [{"ore": "dustTinyAsh", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "dustCoal", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs": [{"ore": "dustTinyAsh", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "gemCharcoal", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs": [{"ore": "dustTinyAsh", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "dustCharcoal", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputs": [{"ore": "dustTinyAsh", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "gemCoal", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustTinyAsh", "count": 1}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "dustCoal", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustTinyAsh", "count": 1}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "gemCharcoal", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustTinyAsh", "count": 1}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "dustCharcoal", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustTinyAsh", "count": 1}], +"duration": 40, +"EUt": 8}, +{"inputs": [{"ore": "dustCarbon", "count": 1}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputFluids": [{"gas": "CarbonMonoxide", "amount": 4000}], +"duration": 800, +"EUt": 30}, + +{"inputs": [{"ore": "cellCarbonMonoxide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 4000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 4}, {"circuit": 1}], +"inputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs": [{"ore": "cellEmpty", "count": 4}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 6000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs": [{"ore": "cellWater", "count": 3}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "Hydrogen", "amount": 6000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs": [{"ore": "cellEmpty", "count": 3}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 2}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputs": [{"ore": "cellEmpty", "count": 6}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 12}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "cellMethanol", "count": 6}], +"duration": 600, +"EUt": 120}, +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"circuit": 23}], +"inputFluids": [{"gas": "Hydrogen", "amount": 4000}, {"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"duration": 720, +"EUt": 120}, + +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputs": [{"ore": "cellEmpty", "count": 6}], +"duration": 300, +"EUt": 30}, +{"inputs": [{"ore": "cellCarbonMonoxide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"duration": 300, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 9}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputs": [{"ore": "cellEmpty", "count": 6}], +"duration": 100, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 2}, {"circuit": 9}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"duration": 100, +"EUt": 30}, +{"inputs": [{"ore": "dustCarbon", "count": 2}, {"circuit": 24}], +"inputFluids": [{"gas": "Hydrogen", "amount": 4000}, {"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"circuit": 24}], +"inputFluids": [{"gas": "CarbonMonoxide", "amount": 4000}, {"gas": "Hydrogen", "amount": 4000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"duration": 320, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthanol", "count": 9}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 6000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 9000}], +"outputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellEmpty", "count": 3}], +"duration": 1200, +"EUt": 120}, +{"inputs": [{"ore": "cellSulfuricAcid", "count": 6}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Ethanol", "amount": 9000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 9000}], +"outputs": [{"ore": "cellEthylene", "count": 6}], +"duration": 1200, +"EUt": 120}, +{"inputs": [{"ore": "cellEthanol", "count": 9}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 6000}], +"outputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputs": [{"ore": "cellDilutedSulfuricAcid", "count": 9}], +"duration": 1200, +"EUt": 120}, +{"inputs": [{"ore": "dustSodium", "count": 1}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputs": [{"ore": "dustSodiumHydroxide", "count": 3}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustPolydimethylsiloxane", "count": 9}, {"ore": "dustSulfur", "count": 1}], +"outputFluids": [{"molten": "Silicone", "amount": 1296}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "cellNitrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 3000}], +"outputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 384}, +{"inputs": [{"ore": "cellHydrogen", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Nitrogen", "amount": 1000}], +"outputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputs": [{"ore": "cellEmpty", "count": 3}], +"duration": 320, +"EUt": 384}, +{"inputs": [{"ore": "cellPropene", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 2000}], +"outputFluids": [{"materialFluid": "Isoprene", "amount": 5000}], +"outputs": [{"ore": "cellEmpty", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Propene", "amount": 3000}], +"outputFluids": [{"materialFluid": "Isoprene", "amount": 5000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellPropene", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "Ethylene", "amount": 2000}], +"outputs": [{"ore": "cellIsoprene", "count": 5}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "Propene", "amount": 3000}], +"outputs": [{"ore": "cellIsoprene", "count": 5}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"item": "GTItemList:Cell_Air", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Isoprene", "amount": 244}], +"outputs": [{"ore": "dustRawRubber", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Isoprene", "amount": 288}], +"outputs": [{"ore": "dustRawRubber", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellIsoprene", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Air", "amount": 14000}], +"outputs": [{"ore": "dustRawRubber", "count": 7}, {"ore": "cellEmpty", "count": 1}], +"duration": 1120, +"EUt": 30}, +{"inputs": [{"ore": "cellIsoprene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 14000}], +"outputs": [{"ore": "dustRawRubber", "count": 21}, {"ore": "cellEmpty", "count": 2}], +"duration": 2240, +"EUt": 30}, +{"inputs": [{"circuit": 2}], +"inputFluids": [{"materialFluid": "Isoprene", "amount": 288}, {"gas": "Air", "amount": 2000}, {"materialFluid": "Titaniumtetrachloride", "amount": 80}], +"outputs": [{"ore": "dustRawRubber", "count": 3}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"circuit": 2}], +"inputFluids": [{"materialFluid": "Isoprene", "amount": 144}, {"gas": "Oxygen", "amount": 1000}, {"materialFluid": "Titaniumtetrachloride", "amount": 80}], +"outputs": [{"ore": "dustRawRubber", "count": 2}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellBenzene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 1000}], +"outputFluids": [{"materialFluid": "Styrene", "amount": 3000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 2000}], +"outputFluids": [{"materialFluid": "Styrene", "amount": 3000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"circuit": 3}], +"inputFluids": [{"materialFluid": "Styrene", "amount": 1000}, {"gas": "Butadiene", "amount": 3000}, {"gas": "Air", "amount": 8000}], +"outputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 4}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"circuit": 3}], +"inputFluids": [{"materialFluid": "Styrene", "amount": 1000}, {"gas": "Butadiene", "amount": 3000}, {"gas": "Oxygen", "amount": 4000}], +"outputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 6}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "Styrene", "amount": 1000}, {"gas": "Butadiene", "amount": 3000}, {"materialFluid": "Titaniumtetrachloride", "amount": 100}, {"gas": "Air", "amount": 8000}], +"outputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 6}], +"duration": 160, +"EUt": 240}, +{"inputs": [{"circuit": 4}], +"inputFluids": [{"materialFluid": "Styrene", "amount": 1000}, {"gas": "Butadiene", "amount": 3000}, {"materialFluid": "Titaniumtetrachloride", "amount": 100}, {"gas": "Oxygen", "amount": 4000}], +"outputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 8}], +"duration": 160, +"EUt": 240}, + +{"inputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 9}, {"ore": "dustSulfur", "count": 1}], +"outputFluids": [{"molten": "StyreneButadieneRubber", "amount": 1296}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], +"inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], +"outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], +"outputs": [{"ore": "cellGlycerol", "count": 1}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputs": [{"ore": "cellBioDiesel", "count": 6}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], +"inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], +"outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], +"outputs": [{"ore": "cellGlycerol", "count": 1}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputs": [{"ore": "cellBioDiesel", "count": 6}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], +"inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], +"outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], +"outputs": [{"ore": "cellGlycerol", "count": 1}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], +"inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputs": [{"ore": "cellBioDiesel", "count": 6}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], +"inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], +"outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], +"outputs": [{"ore": "cellGlycerol", "count": 1}], +"duration": 600, +"EUt": 30}, +{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], +"inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputs": [{"ore": "cellBioDiesel", "count": 6}], +"duration": 600, +"EUt": 30}, + +{"inputs": [{"ore": "cellGlycerol", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "NitrationMixture", "amount": 3000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 3000}], +"outputs": [{"ore": "cellGlyceryl", "count": 1}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrationMixture", "count": 3}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 3000}], +"outputs": [{"ore": "cellGlyceryl", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrationMixture", "count": 3}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glyceryl", "amount": 1000}], +"outputs": [{"ore": "cellDilutedSulfuricAcid", "count": 3}], +"duration": 180, +"EUt": 30}, + +{"inputs": [{"ore": "cellMethane", "count": 5}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"fluid": "water", "amount": 6000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "cellHydrogen", "count": 8}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellWater", "count": 6}, {"ore": "cellEmpty", "count": 2}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "cellHydrogen", "count": 8}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 11}], +"inputFluids": [{"fluid": "water", "amount": 6000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 8000}], +"outputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellWater", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 8000}], +"outputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 12}], +"inputFluids": [{"fluid": "water", "amount": 6000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 8000}], +"outputs": [{"ore": "cellEmpty", "count": 5}], +"duration": 40, +"EUt": 240}, +{"inputs": [{"ore": "cellWater", "count": 6}, {"circuit": 12}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "Hydrogen", "amount": 8000}], +"outputs": [{"ore": "cellEmpty", "count": 6}], +"duration": 40, +"EUt": 240}, + +{"inputs": [{"ore": "dustQuicklime", "count": 2}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustCalcite", "count": 5}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "dustCalcite", "count": 5}, {"circuit": 1}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustQuicklime", "count": 2}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustMagnesia", "count": 2}], +"inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustMagnesite", "count": 5}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "dustMagnesite", "count": 5}, {"circuit": 1}], +"outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"outputs": [{"ore": "dustMagnesia", "count": 2}], +"duration": 240, +"EUt": 30}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/mixer.json b/src/main/resources/assets/gregtech/recipes/mixer.json index f3eeffc803..ba102c17e6 100644 --- a/src/main/resources/assets/gregtech/recipes/mixer.json +++ b/src/main/resources/assets/gregtech/recipes/mixer.json @@ -770,4 +770,149 @@ "outputs": [{"item": "GTItemList:Cell_Empty", "count": 1}], "duration": 480, "EUt": 2}, + +{"inputs": [{"ore": "dustCalcite", "count": 5}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 16000}], +"outputFluids": [{"materialFluid": "CalciumAcetateSolution", "amount": 18000}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 240, +"EUt": 16}, +{"inputs": [{"ore": "dustQuicklime", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 16000}], +"outputFluids": [{"materialFluid": "CalciumAcetateSolution", "amount": 18000}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 80, +"EUt": 16}, +{"inputs": [{"ore": "dustSmallQuicklime", "count": 8}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 16000}], +"outputFluids": [{"materialFluid": "CalciumAcetateSolution", "amount": 18000}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 80, +"EUt": 16}, + +{"inputs": [{"ore": "cellAcetone", "count": 3}], +"inputFluids": [{"materialFluid": "PolyvinylAcetate", "amount": 2000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 5000}], +"outputs": [{"ore": "cellEmpty", "count": 3}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 100, +"EUt": 8}, +{"inputs": [{"ore": "cellPolyvinylAcetate", "count": 2}], +"inputFluids": [{"materialFluid": "Acetone", "amount": 3000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 5000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 100, +"EUt": 8}, +{"inputs": [{"ore": "cellMethylAcetate", "count": 3}], +"inputFluids": [{"materialFluid": "PolyvinylAcetate", "amount": 2000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 5000}], +"outputs": [{"ore": "cellEmpty", "count": 3}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 100, +"EUt": 8}, +{"inputs": [{"ore": "cellPolyvinylAcetate", "count": 2}], +"inputFluids": [{"materialFluid": "MethylAcetate", "amount": 3000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 5000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 100, +"EUt": 8}, + +{"inputs": [{"ore": "cellDimethylhydrazine", "count": 1}], +"inputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 2000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 60, +"EUt": 16}, +{"inputs": [{"ore": "cellDinitrogenTetroxide", "count": 1}], +"inputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 1000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 2000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 60, +"EUt": 16}, +{"inputs": [{"ore": "cellDimethylhydrazine", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 3000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 60, +"EUt": 16}, +{"inputs": [{"ore": "cellOxygen", "count": 1}], +"inputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 2000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 3000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 60, +"EUt": 16}, + +{"inputs": [{"ore": "cellLightFuel", "count": 1}], +"inputFluids": [{"materialFluid": "Tetranitromethane", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "cellFuel", "count": 2}], +"inputFluids": [{"materialFluid": "Tetranitromethane", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs": [{"ore": "cellEmpty", "count": 2}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "cellBioDiesel", "count": 4}], +"inputFluids": [{"materialFluid": "Tetranitromethane", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 3000}], +"outputs": [{"ore": "cellEmpty", "count": 4}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellTetranitromethane", "count": 1}], +"inputFluids": [{"materialFluid": "LightFuel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellTetranitromethane", "count": 1}], +"inputFluids": [{"materialFluid": "Fuel", "amount": 8000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellTetranitromethane", "count": 1}], +"inputFluids": [{"materialFluid": "BioDiesel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 3000}], +"outputs": [{"ore": "cellEmpty", "count": 1}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 320, +"EUt": 8}, + +{"inputs": [{"ore": "dustSalt", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SaltWater", "amount": 4000}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "dustSugar", "count": 4}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 1000}], +"outputs": [{"ore": "gemCharcoal", "count": 1}], +"duration": 600, +"EUt": 2}, +{"inputs": [{"ore": "dustWood", "count": 4}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 1000}], +"outputs": [{"ore": "gemCharcoal", "count": 1}], +"duration": 600, +"EUt": 2}, + +{"inputs": [{"ore": "dustSodium", "count": 2}, {"ore": "dustSulfur", "count": 1}, {"circuit": 2}], +"outputs": [{"ore": "dustSodiumSulfide", "count": 1}], +"enableCondition": "!DisableOldChemicalRecipes", +"specialValue": -300, +"duration": 60, +"EUt": 30}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/pyrolyse_oven.json b/src/main/resources/assets/gregtech/recipes/pyrolyse_oven.json new file mode 100644 index 0000000000..592d22a611 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/pyrolyse_oven.json @@ -0,0 +1,22 @@ +[ + +{"inputFluids": [{"materialFluid": "Biomass", "amount": 1000}], +"inputs": [{"circuit": 2}], +"outputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], +"duration": 100, +"EUt": 10}, + +{"inputs": [{"ore": "dustSugar", "count": 23}, {"circuit": 1}], +"outputs": [{"ore": "dustCharcoal", "count": 12}], +"outputFluids": [{"fluid": "water", "amount": 11000}], +"duration": 320, +"EUt": 64}, + +{"inputs": [{"ore": "dustSugar", "count": 23}, {"circuit": 2}], +"inputFluids": [{"gas": "Nitrogen", "amount": 500}], +"outputs": [{"ore": "dustCharcoal", "count": 12}], +"outputFluids": [{"fluid": "water", "amount": 11000}], +"duration": 160, +"EUt": 96}, + +{}] From c000a709f522266b71d4b068c524d5e3bc855194 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Mon, 16 Nov 2020 11:09:17 -0800 Subject: [PATCH 17/21] Reverted machines etc. to original recipe system. --- src/main/java/gregtech/GT_Mod.java | 94 ++- .../GT_MetaTileEntity_BasicGenerator.java | 15 +- .../GT_MetaTileEntity_BasicMachine.java | 25 +- ...MetaTileEntity_BasicMachine_GT_Recipe.java | 12 +- .../GT_MetaTileEntity_Hatch_Input.java | 4 +- .../GT_MetaTileEntity_Hatch_InputBus.java | 4 +- .../GT_MetaTileEntity_MultiBlockBase.java | 4 +- .../java/gregtech/api/util/GT_ModHandler.java | 5 +- .../api/util/GT_ProcessingArray_Manager.java | 9 +- src/main/java/gregtech/common/GT_Client.java | 4 +- src/main/java/gregtech/common/GT_Proxy.java | 3 +- .../items/GT_MetaGenerated_Item_01.java | 6 +- .../GT_MetaTileEntity_DieselGenerator.java | 5 +- ...T_MetaTileEntity_FluidNaquadahReactor.java | 5 +- .../GT_MetaTileEntity_GasTurbine.java | 5 +- ...T_MetaTileEntity_MagicEnergyConverter.java | 5 +- ..._MetaTileEntity_MagicalEnergyAbsorber.java | 5 +- .../GT_MetaTileEntity_PlasmaGenerator.java | 5 +- ...T_MetaTileEntity_SolidNaquadahReactor.java | 5 +- .../GT_MetaTileEntity_SteamTurbine.java | 3 +- .../basic/GT_MetaTileEntity_Boxinator.java | 12 +- .../GT_MetaTileEntity_Massfabricator.java | 5 +- .../GT_MetaTileEntity_OrganicReplicator.java | 5 +- .../basic/GT_MetaTileEntity_PotionBrewer.java | 5 +- .../basic/GT_MetaTileEntity_Printer.java | 3 +- .../basic/GT_MetaTileEntity_Replicator.java | 5 +- .../basic/GT_MetaTileEntity_RockBreaker.java | 5 +- .../basic/GT_MetaTileEntity_Scanner.java | 49 +- ...etaTileEntity_AdvancedProcessingArray.java | 19 +- .../multi/GT_MetaTileEntity_AssemblyLine.java | 3 +- .../multi/GT_MetaTileEntity_Charcoal_Pit.java | 3 +- .../multi/GT_MetaTileEntity_Cleanroom.java | 3 +- .../multi/GT_MetaTileEntity_DieselEngine.java | 8 +- .../GT_MetaTileEntity_DistillationTower.java | 8 +- ...T_MetaTileEntity_ElectricBlastFurnace.java | 8 +- .../GT_MetaTileEntity_FusionComputer.java | 8 +- ...GT_MetaTileEntity_ImplosionCompressor.java | 8 +- .../multi/GT_MetaTileEntity_LargeBoiler.java | 10 +- ...T_MetaTileEntity_LargeChemicalReactor.java | 8 +- .../GT_MetaTileEntity_LargeTurbine_Gas.java | 11 +- ...GT_MetaTileEntity_LargeTurbine_Plasma.java | 11 +- .../multi/GT_MetaTileEntity_MultiFurnace.java | 5 +- .../multi/GT_MetaTileEntity_OilCracker.java | 6 +- ...T_MetaTileEntity_OreDrillingPlantBase.java | 6 +- ..._MetaTileEntity_PrimitiveBlastFurnace.java | 8 +- .../GT_MetaTileEntity_ProcessingArray.java | 26 +- .../multi/GT_MetaTileEntity_PyrolyseOven.java | 4 +- .../GT_MetaTileEntity_VacuumFreezer.java | 8 +- ...GT_MetaTileEntity_AlloySmelter_Bronze.java | 8 +- .../GT_MetaTileEntity_AlloySmelter_Steel.java | 8 +- .../GT_MetaTileEntity_Compressor_Bronze.java | 8 +- .../GT_MetaTileEntity_Compressor_Steel.java | 8 +- .../GT_MetaTileEntity_Extractor_Bronze.java | 8 +- .../GT_MetaTileEntity_Extractor_Steel.java | 8 +- .../GT_MetaTileEntity_ForgeHammer_Bronze.java | 8 +- .../GT_MetaTileEntity_ForgeHammer_Steel.java | 8 +- .../GT_MetaTileEntity_Macerator_Bronze.java | 11 +- .../GT_MetaTileEntity_Macerator_Steel.java | 11 +- .../common/tools/GT_Tool_HardHammer.java | 8 +- .../common/tools/GT_Tool_JackHammer.java | 6 +- .../gregtech/loaders/load/GT_FuelLoader.java | 16 +- .../loaders/misc/GT_Achievements.java | 10 +- .../loaders/oreprocessing/ProcessingOre.java | 2 +- .../GT_ProcessingArrayRecipeLoader.java | 88 +-- .../preload/GT_Loader_MetaTileEntities.java | 746 +++++++++--------- .../gregtech/nei/GT_NEI_AssLineHandler.java | 24 +- .../gregtech/nei/GT_NEI_DefaultHandler.java | 30 +- src/main/java/gregtech/nei/NEI_GT_Config.java | 6 +- 68 files changed, 702 insertions(+), 803 deletions(-) diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index 743570717a..3287048e51 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -14,10 +14,8 @@ import gregtech.api.objects.ItemData; import gregtech.api.objects.MaterialStack; import gregtech.api.objects.XSTR; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import gregtech.common.GT_DummyWorld; -import gregtech.common.GT_MachineRecipeAdder; import gregtech.common.GT_Network; import gregtech.common.GT_Proxy; import gregtech.common.GT_RecipeAdder; @@ -97,7 +95,7 @@ public GT_Mod() { GT_Values.GT = this; GT_Values.DW = new GT_DummyWorld(); GT_Values.NW = new GT_Network(); - GregTech_API.sRecipeAdder = GT_Values.RA = new GT_MachineRecipeAdder(); + GregTech_API.sRecipeAdder = GT_Values.RA = new GT_RecipeAdder(); Textures.BlockIcons.VOID.name(); Textures.ItemIcons.VOID.name(); @@ -667,11 +665,11 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { //GT_Log.out.println("GT_Mod: sRodMaterialList cycles: " + GT_RecipeRegistrator.sRodMaterialList_cycles); //Add default IC2 recipe to GT - GT_ModHandler.addIC2RecipesToGT(aMaceratorRecipeList, GT_RecipeMap.sMaceratorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(aCompressorRecipeList, GT_RecipeMap.sCompressorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(aExtractorRecipeList, GT_RecipeMap.sExtractorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(aOreWashingRecipeList, GT_RecipeMap.sOreWasherRecipes, false, true, true); - GT_ModHandler.addIC2RecipesToGT(aThermalCentrifugeRecipeList, GT_RecipeMap.sThermalCentrifugeRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(aMaceratorRecipeList, GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(aCompressorRecipeList, GT_Recipe.GT_Recipe_Map.sCompressorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(aExtractorRecipeList, GT_Recipe.GT_Recipe_Map.sExtractorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(aOreWashingRecipeList, GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, false, true, true); + GT_ModHandler.addIC2RecipesToGT(aThermalCentrifugeRecipeList, GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, true, true, true); if (GT_Values.D1) { IRecipe tRecipe; @@ -689,11 +687,11 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { ItemStack ILdata0 = ItemList.Bottle_Empty.get(1L, new Object[0]); for (FluidContainerRegistry.FluidContainerData tData : FluidContainerRegistry.getRegisteredFluidContainerData()) { if ((tData.filledContainer.getItem() == Items.potionitem) && (tData.filledContainer.getItemDamage() == 0)) { - GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{ILdata0}, new ItemStack[]{ISdata0}, null, new FluidStack[]{Materials.Water.getFluid(250L)}, null, 4, 1, 0); - GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{ISdata0}, new ItemStack[]{ILdata0}, null, null, null, 4, 1, 0); + GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{ILdata0}, new ItemStack[]{ISdata0}, null, new FluidStack[]{Materials.Water.getFluid(250L)}, null, 4, 1, 0); + GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{ISdata0}, new ItemStack[]{ILdata0}, null, null, null, 4, 1, 0); } else { - GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{tData.emptyContainer}, new ItemStack[]{tData.filledContainer}, null, new FluidStack[]{tData.fluid}, null, tData.fluid.amount / 62, 1, 0); - GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{tData.filledContainer}, new ItemStack[]{GT_Utility.getContainerItem(tData.filledContainer, true)}, null, null, new FluidStack[]{tData.fluid}, tData.fluid.amount / 62, 1, 0); + GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{tData.emptyContainer}, new ItemStack[]{tData.filledContainer}, null, new FluidStack[]{tData.fluid}, null, tData.fluid.amount / 62, 1, 0); + GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{tData.filledContainer}, new ItemStack[]{GT_Utility.getContainerItem(tData.filledContainer, true)}, null, null, new FluidStack[]{tData.fluid}, tData.fluid.amount / 62, 1, 0); } } try { @@ -707,7 +705,7 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { tOutputs[i] = entry.getKey().copy(); i++; } - GT_RecipeMap.sCentrifugeRecipes.addRecipe(true, new ItemStack[]{tRecipe.getInput()}, tOutputs, null, tChances, null, null, 128, 5, 0); + GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe(true, new ItemStack[]{tRecipe.getInput()}, tOutputs, null, tChances, null, null, 128, 5, 0); } } catch (Throwable e) { if (GT_Values.D1) { @@ -717,7 +715,7 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { try { for (ISqueezerRecipe tRecipe : RecipeManagers.squeezerManager.recipes()) { if ((tRecipe.getResources().length == 1) && (tRecipe.getFluidOutput() != null)) { - GT_RecipeMap.sFluidExtractionRecipes.addRecipe(true, new ItemStack[]{tRecipe.getResources()[0]}, new ItemStack[]{tRecipe.getRemnants()}, null, new int[]{(int) (tRecipe.getRemnantsChance() * 10000)}, null, new FluidStack[]{tRecipe.getFluidOutput()}, 400, 2, 0); + GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(true, new ItemStack[]{tRecipe.getResources()[0]}, new ItemStack[]{tRecipe.getRemnants()}, null, new int[]{(int) (tRecipe.getRemnantsChance() * 10000)}, null, new FluidStack[]{tRecipe.getFluidOutput()}, 400, 2, 0); } } } catch (Throwable e) { @@ -827,40 +825,40 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { } catch (Throwable e) {e.printStackTrace(GT_Log.err);} GT_Log.out.println("GT_Mod: Adding Fake Recipes for NEI"); if (ItemList.FR_Bee_Drone.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Drone.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Drone.getWithName(1L, "Scanned Drone", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Drone.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Drone.getWithName(1L, "Scanned Drone", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Bee_Princess.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Princess.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Princess.getWithName(1L, "Scanned Princess", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Princess.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Princess.getWithName(1L, "Scanned Princess", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Bee_Queen.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Queen.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Queen.getWithName(1L, "Scanned Queen", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Bee_Queen.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Bee_Queen.getWithName(1L, "Scanned Queen", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Tree_Sapling.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Tree_Sapling.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Tree_Sapling.getWithName(1L, "Scanned Sapling", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Tree_Sapling.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Tree_Sapling.getWithName(1L, "Scanned Sapling", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Butterfly.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Butterfly.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Butterfly.getWithName(1L, "Scanned Butterfly", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Butterfly.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Butterfly.getWithName(1L, "Scanned Butterfly", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Larvae.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Larvae.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Larvae.getWithName(1L, "Scanned Larvae", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Larvae.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Larvae.getWithName(1L, "Scanned Larvae", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Serum.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Serum.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Serum.getWithName(1L, "Scanned Serum", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Serum.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Serum.getWithName(1L, "Scanned Serum", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_Caterpillar.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Caterpillar.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Caterpillar.getWithName(1L, "Scanned Caterpillar", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_Caterpillar.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_Caterpillar.getWithName(1L, "Scanned Caterpillar", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.FR_PollenFertile.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_PollenFertile.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_PollenFertile.getWithName(1L, "Scanned Pollen", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.FR_PollenFertile.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.FR_PollenFertile.getWithName(1L, "Scanned Pollen", new Object[0])}, null, new FluidStack[]{Materials.Honey.getFluid(100L)}, null, 500, 2, 0); } if (ItemList.IC2_Crop_Seeds.get(1L, new Object[0]) != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.IC2_Crop_Seeds.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1L, "Scanned Seeds", new Object[0])}, null, null, null, 160, 8, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.IC2_Crop_Seeds.getWildcard(1L, new Object[0])}, new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1L, "Scanned Seeds", new Object[0])}, null, null, null, 160, 8, 0); } - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{new ItemStack(Items.written_book, 1, 32767)}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Scanned Book Data", new Object[0])}, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0); - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{new ItemStack(Items.filled_map, 1, 32767)}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Scanned Map Data", new Object[0])}, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0); - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataOrb.getWithName(1L, "Orb to overwrite", new Object[0])}, new ItemStack[]{ItemList.Tool_DataOrb.getWithName(1L, "Copy of the Orb", new Object[0])}, ItemList.Tool_DataOrb.getWithName(0L, "Orb to copy", new Object[0]), null, null, 512, 32, 0); - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Stick to overwrite", new Object[0])}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Copy of the Stick", new Object[0])}, ItemList.Tool_DataStick.getWithName(0L, "Stick to copy", new Object[0]), null, null, 128, 32, 0); - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Raw Prospection Data", new Object[0])}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Analyzed Prospection Data", new Object[0])}, null, null, null, 1000, 32, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{new ItemStack(Items.written_book, 1, 32767)}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Scanned Book Data", new Object[0])}, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{new ItemStack(Items.filled_map, 1, 32767)}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Scanned Map Data", new Object[0])}, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataOrb.getWithName(1L, "Orb to overwrite", new Object[0])}, new ItemStack[]{ItemList.Tool_DataOrb.getWithName(1L, "Copy of the Orb", new Object[0])}, ItemList.Tool_DataOrb.getWithName(0L, "Orb to copy", new Object[0]), null, null, 512, 32, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Stick to overwrite", new Object[0])}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Copy of the Stick", new Object[0])}, ItemList.Tool_DataStick.getWithName(0L, "Stick to copy", new Object[0]), null, null, 128, 32, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Raw Prospection Data", new Object[0])}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Analyzed Prospection Data", new Object[0])}, null, null, null, 1000, 32, 0); for (Materials tMaterial : Materials.values()) { if ((tMaterial.mElement != null) && (!tMaterial.mElement.mIsIsotope) && (tMaterial != Materials.Magic) && (tMaterial.getMass() > 0L)) { ItemStack tOutput = ItemList.Tool_DataOrb.get(1L, new Object[0]); @@ -870,25 +868,25 @@ public void onPostLoad(FMLPostInitializationEvent aEvent) { ItemStack[] ISmat0 = new ItemStack[]{tInput}; ItemStack[] ISmat1 = new ItemStack[]{tOutput}; if (tInput != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, ISmat0, ISmat1, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int) (tMaterial.getMass() * 8192L), 32, 0); - GT_RecipeMap.sReplicatorFakeRecipes.addFakeRecipe(false, null, ISmat0, ISmat1, new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int) (tMaterial.getMass() * 512L), 32, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, ISmat0, ISmat1, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int) (tMaterial.getMass() * 8192L), 32, 0); + GT_Recipe.GT_Recipe_Map.sReplicatorFakeRecipes.addFakeRecipe(false, null, ISmat0, ISmat1, new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int) (tMaterial.getMass() * 512L), 32, 0); } tInput = GT_OreDictUnificator.get(OrePrefixes.cell, tMaterial, 1L); ISmat0 = new ItemStack[]{tInput}; if (tInput != null) { - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, ISmat0, ISmat1, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int) (tMaterial.getMass() * 8192L), 32, 0); - GT_RecipeMap.sReplicatorFakeRecipes.addFakeRecipe(false, null, ISmat0, ISmat1, new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int) (tMaterial.getMass() * 512L), 32, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, ISmat0, ISmat1, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int) (tMaterial.getMass() * 8192L), 32, 0); + GT_Recipe.GT_Recipe_Map.sReplicatorFakeRecipes.addFakeRecipe(false, null, ISmat0, ISmat1, new FluidStack[]{Materials.UUMatter.getFluid(tMaterial.getMass())}, null, (int) (tMaterial.getMass() * 512L), 32, 0); } } } - GT_RecipeMap.sOrganicReplicatorFakeRecipes.addFakeRecipe(false,(new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1,"Instance seeds to duplicate(does not get consumed in progress)",new Object[0])}),(new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1,"Duplicated seeds; Chance equals efficiency")}),null, (new FluidStack[]{Materials.UUMatter.getFluid(1L)}),null,200,32,0); - if (!GT_MetaTileEntity_Massfabricator.sRequiresUUA) GT_RecipeMap.sMassFabFakeRecipes.addFakeRecipe(false, null, null, null, null, new FluidStack[]{Materials.UUMatter.getFluid(1L)}, GT_MetaTileEntity_Massfabricator.sDurationMultiplier, 256, 0); - GT_RecipeMap.sMassFabFakeRecipes.addFakeRecipe(false, null, null, null, new FluidStack[]{Materials.UUAmplifier.getFluid(GT_MetaTileEntity_Massfabricator.sUUAperUUM)}, new FluidStack[]{Materials.UUMatter.getFluid(1L)}, GT_MetaTileEntity_Massfabricator.sDurationMultiplier / GT_MetaTileEntity_Massfabricator.sUUASpeedBonus, 256, 0); - GT_RecipeMap.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Side", new Object[0])}, new ItemStack[]{new ItemStack(Blocks.cobblestone, 1)}, null, null, null, 16, 32, 0); - GT_RecipeMap.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Top", new Object[0])}, new ItemStack[]{new ItemStack(Blocks.stone, 1)}, null, null, null, 16, 32, 0); - GT_RecipeMap.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)}, new ItemStack[]{new ItemStack(Blocks.obsidian, 1)}, null, null, null, 128, 32, 0); + GT_Recipe.GT_Recipe_Map.sOrganicReplicatorFakeRecipes.addFakeRecipe(false,(new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1,"Instance seeds to duplicate(does not get consumed in progress)",new Object[0])}),(new ItemStack[]{ItemList.IC2_Crop_Seeds.getWithName(1,"Duplicated seeds; Chance equals efficiency")}),null, (new FluidStack[]{Materials.UUMatter.getFluid(1L)}),null,200,32,0); + if (!GT_MetaTileEntity_Massfabricator.sRequiresUUA) GT_Recipe.GT_Recipe_Map.sMassFabFakeRecipes.addFakeRecipe(false, null, null, null, null, new FluidStack[]{Materials.UUMatter.getFluid(1L)}, GT_MetaTileEntity_Massfabricator.sDurationMultiplier, 256, 0); + GT_Recipe.GT_Recipe_Map.sMassFabFakeRecipes.addFakeRecipe(false, null, null, null, new FluidStack[]{Materials.UUAmplifier.getFluid(GT_MetaTileEntity_Massfabricator.sUUAperUUM)}, new FluidStack[]{Materials.UUMatter.getFluid(1L)}, GT_MetaTileEntity_Massfabricator.sDurationMultiplier / GT_MetaTileEntity_Massfabricator.sUUASpeedBonus, 256, 0); + GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Side", new Object[0])}, new ItemStack[]{new ItemStack(Blocks.cobblestone, 1)}, null, null, null, 16, 32, 0); + GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Top", new Object[0])}, new ItemStack[]{new ItemStack(Blocks.stone, 1)}, null, null, null, 16, 32, 0); + GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)}, new ItemStack[]{new ItemStack(Blocks.obsidian, 1)}, null, null, null, 128, 32, 0); if(GregTech_API.mOutputRF||GregTech_API.mInputRF){ GT_Utility.checkAvailabilities(); @@ -919,11 +917,11 @@ public void onServerStarting(FMLServerStartingEvent aEvent) { } catch (Throwable e) {e.printStackTrace(GT_Log.err);} gregtechproxy.onServerStarting(); //Check for more IC2 recipes on ServerStart to also catch MineTweaker additions - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getMaceratorRecipeList(), GT_RecipeMap.sMaceratorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getCompressorRecipeList(), GT_RecipeMap.sCompressorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getExtractorRecipeList(), GT_RecipeMap.sExtractorRecipes, true, true, true); - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getOreWashingRecipeList(), GT_RecipeMap.sOreWasherRecipes, false, true, true); - GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getThermalCentrifugeRecipeList(), GT_RecipeMap.sThermalCentrifugeRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getMaceratorRecipeList(), GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getCompressorRecipeList(), GT_Recipe.GT_Recipe_Map.sCompressorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getExtractorRecipeList(), GT_Recipe.GT_Recipe_Map.sExtractorRecipes, true, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getOreWashingRecipeList(), GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, false, true, true); + GT_ModHandler.addIC2RecipesToGT(GT_ModHandler.getThermalCentrifugeRecipeList(), GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, true, true, true); GT_Log.out.println("GT_Mod: Unificating outputs of all known Recipe Types."); ArrayList tStacks = new ArrayList(10000); GT_Log.out.println("GT_Mod: IC2 Machines"); @@ -1071,7 +1069,7 @@ public void onServerStarted(FMLServerStartedEvent aEvent) { @Mod.EventHandler public void onIDChangingEvent(FMLModIdMappingEvent aEvent) { GT_Utility.reInit(); - GT_RecipeMap.reInitAll(); + GT_Recipe.reInit(); try { for (Iterator i$ = GregTech_API.sItemStackMappings.iterator(); i$.hasNext(); ) { Map tMap = (Map) i$.next(); @@ -1196,7 +1194,7 @@ public void doSonictronSound(ItemStack aStack, World aWorld, double aX, double a } private void addSolidFakeLargeBoilerFuels(){ - GT_RecipeMap.sLargeBoilerFakeFuels.addSolidRecipes( + GT_Recipe.GT_Recipe_Map.sLargeBoilerFakeFuels.addSolidRecipes( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Charcoal, 1), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 1), GT_OreDictUnificator.get(OrePrefixes.block, Materials.Charcoal, 1), @@ -1221,7 +1219,7 @@ private void addSolidFakeLargeBoilerFuels(){ GT_OreDictUnificator.get(ItemList.Block_MSSFUEL.get(1, new Object[0])), GT_OreDictUnificator.get(OrePrefixes.rod, Materials.Blaze, 1)); if (Loader.isModLoaded("Thaumcraft")) { - GT_RecipeMap.sLargeBoilerFakeFuels.addSolidRecipe(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1)); + GT_Recipe.GT_Recipe_Map.sLargeBoilerFakeFuels.addSolidRecipe(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1)); } } @@ -1232,4 +1230,4 @@ public static int calculateTotalGTVersion(int minorVersion){ public static int calculateTotalGTVersion(int majorVersion, int minorVersion){ return majorVersion * 1000 + minorVersion; } -} +} \ No newline at end of file diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java index cbe3db4aed..81c513a921 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java @@ -3,9 +3,8 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Pollution; import net.minecraft.entity.player.EntityPlayer; @@ -227,7 +226,7 @@ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { public abstract int getPollution(); - public abstract GT_RecipeMap getRecipes(); + public abstract GT_Recipe_Map getRecipes(); public abstract int getEfficiency(); @@ -238,9 +237,9 @@ public int consumedFluidPerOperation(FluidStack aLiquid) { public int getFuelValue(FluidStack aLiquid) { if (aLiquid == null || getRecipes() == null) return 0; FluidStack tLiquid; - Collection tRecipeList = getRecipes().mRecipeList; - if (tRecipeList != null) for (GT_MachineRecipe tFuel : tRecipeList) - if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0).get(0), true)) != null) + Collection tRecipeList = getRecipes().mRecipeList; + if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList) + if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null) if (aLiquid.isFluidEqual(tLiquid)) return (int) (((long) tFuel.mSpecialValue * getEfficiency() * consumedFluidPerOperation(tLiquid)) / 100); return 0; @@ -248,14 +247,14 @@ public int getFuelValue(FluidStack aLiquid) { public int getFuelValue(ItemStack aStack) { if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return 0; - GT_MachineRecipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), null, false, Long.MAX_VALUE, null, aStack); + GT_Recipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack); if (tFuel != null) return (int) ((tFuel.mSpecialValue * 1000L * getEfficiency()) / 100); return 0; } public ItemStack getEmptyContainer(ItemStack aStack) { if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return null; - GT_MachineRecipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), null, false, Long.MAX_VALUE, null, aStack); + GT_Recipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack); if (tFuel != null) return GT_Utility.copy(tFuel.getOutput(0)); return GT_Utility.getContainerItem(aStack, true); } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java index 12c3142c64..dbab45cedf 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java @@ -11,10 +11,9 @@ import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.objects.XSTR; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; @@ -55,7 +54,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B /** * Contains the Recipe which has been previously used, or null if there was no previous Recipe, which could have been buffered */ - protected GT_MachineRecipe mLastRecipe = null; + protected GT_Recipe mLastRecipe = null; private FluidStack mFluidOut; /** @@ -560,7 +559,7 @@ protected boolean drainEnergyForProcess(long aEUt) { return getBaseMetaTileEntity().decreaseStoredEnergyUnits(aEUt, false); } - protected void calculateOverclockedNess(GT_MachineRecipe aRecipe) { + protected void calculateOverclockedNess(GT_Recipe aRecipe) { calculateOverclockedNess(aRecipe.mEUt, aRecipe.mDuration); } @@ -592,8 +591,8 @@ protected ItemStack[] getAllOutputs() { return rOutputs; } - protected boolean canOutput(GT_MachineRecipe aRecipe) { - return aRecipe != null && (aRecipe.mNeedsEmptyOutput ? isOutputEmpty() && getDrainableStack() == null : canOutput(aRecipe.getFluidOutput(0)) && canOutput(GT_MachineRecipe.unwrapOutputs(aRecipe.mOutputs))); + protected boolean canOutput(GT_Recipe aRecipe) { + return aRecipe != null && (aRecipe.mNeedsEmptyOutput ? isOutputEmpty() && getDrainableStack() == null : canOutput(aRecipe.getFluidOutput(0)) && canOutput(aRecipe.mOutputs)); } protected boolean canOutput(ItemStack... aOutputs) { @@ -752,7 +751,7 @@ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex /** * @return the Recipe List which is used for this Machine, this is a useful Default Handler */ - public GT_RecipeMap getRecipeList() { + public GT_Recipe_Map getRecipeList() { return null; } @@ -769,7 +768,7 @@ public int checkRecipe() { return checkRecipe(false); } - public static boolean isValidForLowGravity(GT_MachineRecipe tRecipe, int dimId){ + public static boolean isValidForLowGravity(GT_Recipe tRecipe, int dimId){ return //TODO check or get a better solution DimensionManager.getProvider(dimId).getClass().getName().contains("Orbit") || DimensionManager.getProvider(dimId).getClass().getName().endsWith("Space") || @@ -785,9 +784,9 @@ public static boolean isValidForLowGravity(GT_MachineRecipe tRecipe, int dimId){ * @return */ public int checkRecipe(boolean skipOC){ - GT_RecipeMap tMap = getRecipeList(); + GT_Recipe_Map tMap = getRecipeList(); if (tMap == null) return DID_NOT_FIND_RECIPE; - GT_MachineRecipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, V[mTier], new FluidStack[]{getFillableStack()}, getSpecialSlot(), getAllInputs()); + GT_Recipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[mTier], new FluidStack[]{getFillableStack()}, getSpecialSlot(), getAllInputs()); if (tRecipe == null) return DID_NOT_FIND_RECIPE; if (GT_Mod.gregtechproxy.mLowGravProcessing && tRecipe.mSpecialValue == -100 && @@ -802,11 +801,9 @@ public int checkRecipe(boolean skipOC){ return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS; if (!tRecipe.isRecipeInputEqual(true, new FluidStack[]{getFillableStack()}, getAllInputs())) return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS; - for (int i = 0; i < mOutputItems.length; i++) { - if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(i)) { + for (int i = 0; i < mOutputItems.length; i++) + if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(i)) mOutputItems[i] = tRecipe.getOutput(i); - } - } if (tRecipe.mSpecialValue == -200) for (int i = 0; i < mOutputItems.length; i++) if (mOutputItems[i] != null && getBaseMetaTileEntity().getRandomNumber(10000) > mCleanroom.mEfficiency) diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java index 1e9bec31dd..2162d5cf80 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java @@ -9,6 +9,7 @@ import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_ModHandler.RecipeBits; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.api.util.GT_OreDictUnificator; import ic2.core.Ic2Items; @@ -21,7 +22,6 @@ import java.util.Random; import cpw.mods.fml.common.Loader; -import gregtech.api.recipes.GT_RecipeMap; import static gregtech.api.enums.GT_Values.V; import static gregtech.api.enums.GT_Values.W; @@ -33,13 +33,13 @@ * Extend this class to make a simple Machine */ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_BasicMachine { - private final GT_RecipeMap mRecipes; + private final GT_Recipe_Map mRecipes; private final int mTankCapacity, mSpecialEffect; private final String mSound; private final boolean mSharedTank, mRequiresFluidForFiltering; private final byte mGUIParameterA, mGUIParameterB; - public GT_MetaTileEntity_BasicMachine_GT_Recipe(int aID, String aName, String aNameRegional, int aTier, String aDescription, GT_RecipeMap aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aGUIParameterA, int aGUIParameterB, String aGUIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect, String aOverlays, Object[] aRecipe) { + public GT_MetaTileEntity_BasicMachine_GT_Recipe(int aID, String aName, String aNameRegional, int aTier, String aDescription, GT_Recipe_Map aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aGUIParameterA, int aGUIParameterB, String aGUIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect, String aOverlays, Object[] aRecipe) { super(aID, aName, aNameRegional, aTier, aRecipes.mAmperage, aDescription, aInputSlots, aOutputSlots, aGUIName, aRecipes.mNEIName, new ITexture[]{new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_SIDE_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_SIDE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_FRONT_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_FRONT")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_TOP_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_TOP")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_BOTTOM_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/" + aOverlays.toLowerCase(Locale.ENGLISH) + "/OVERLAY_BOTTOM"))}); mSharedTank = aSharedTank; mTankCapacity = aTankCapacity; @@ -610,7 +610,7 @@ else if (mTier < 3) } } - public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String aDescription, GT_RecipeMap aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aAmperage, int aGUIParameterA, int aGUIParameterB, ITexture[][][] aTextures, String aGUIName, String aNEIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect) { + public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String aDescription, GT_Recipe_Map aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aAmperage, int aGUIParameterA, int aGUIParameterB, ITexture[][][] aTextures, String aGUIName, String aNEIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect) { super(aName, aTier, aAmperage, aDescription, aTextures, aInputSlots, aOutputSlots, aGUIName, aNEIName); mSharedTank = aSharedTank; mTankCapacity = aTankCapacity; @@ -622,7 +622,7 @@ public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String mGUIParameterB = (byte) aGUIParameterB; } - public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String[] aDescription, GT_RecipeMap aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aAmperage, int aGUIParameterA, int aGUIParameterB, ITexture[][][] aTextures, String aGUIName, String aNEIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect) { + public GT_MetaTileEntity_BasicMachine_GT_Recipe(String aName, int aTier, String[] aDescription, GT_Recipe_Map aRecipes, int aInputSlots, int aOutputSlots, int aTankCapacity, int aAmperage, int aGUIParameterA, int aGUIParameterB, ITexture[][][] aTextures, String aGUIName, String aNEIName, String aSound, boolean aSharedTank, boolean aRequiresFluidForFiltering, int aSpecialEffect) { super(aName, aTier, aAmperage, aDescription, aTextures, aInputSlots, aOutputSlots, aGUIName, aNEIName); mSharedTank = aSharedTank; mTankCapacity = aTankCapacity; @@ -688,7 +688,7 @@ public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { } @Override - public GT_RecipeMap getRecipeList() { + public GT_Recipe_Map getRecipeList() { return mRecipes; } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java index 49b58b1d8f..33430851c3 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java @@ -5,14 +5,14 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; public class GT_MetaTileEntity_Hatch_Input extends GT_MetaTileEntity_Hatch { - public GT_RecipeMap mRecipeMap = null; + public GT_Recipe_Map mRecipeMap = null; public GT_MetaTileEntity_Hatch_Input(int aID, String aName, String aNameRegional, int aTier) { super(aID, aName, aNameRegional, aTier, 3, new String[]{"Fluid Input for Multiblocks", "Capacity: "+ 8000 * (aTier + 1) + "L"}); diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java index 9a528b6bb6..4b81f39d93 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java @@ -6,8 +6,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_LanguageManager; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; @@ -15,7 +15,7 @@ import net.minecraft.nbt.NBTTagCompound; public class GT_MetaTileEntity_Hatch_InputBus extends GT_MetaTileEntity_Hatch { - public GT_RecipeMap mRecipeMap = null; + public GT_Recipe_Map mRecipeMap = null; public boolean disableSort; public GT_MetaTileEntity_Hatch_InputBus(int aID, String aName, String aNameRegional, int aTier) { diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index 68e5507521..066851052d 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -12,9 +12,9 @@ import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_ItemStack; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Pollution; import gregtech.common.items.GT_MetaGenerated_Tool_01; @@ -771,7 +771,7 @@ public ArrayList getStoredInputs() { return rList; } - public GT_RecipeMap getRecipeMap() { + public GT_Recipe_Map getRecipeMap() { return null; } diff --git a/src/main/java/gregtech/api/util/GT_ModHandler.java b/src/main/java/gregtech/api/util/GT_ModHandler.java index 583fb45245..1419ed562d 100644 --- a/src/main/java/gregtech/api/util/GT_ModHandler.java +++ b/src/main/java/gregtech/api/util/GT_ModHandler.java @@ -37,7 +37,6 @@ import gregtech.api.objects.GT_HashSet; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.ItemData; -import gregtech.api.recipes.GT_RecipeMap; import ic2.api.item.IBoxable; import ic2.api.item.IC2Items; import ic2.api.item.IElectricItem; @@ -774,14 +773,14 @@ public static boolean addOreToIngotSmeltingRecipe(ItemStack aInput, ItemStack aO /** * Adds GT versions of the IC2 recipes from the supplied IC2RecipeList. */ - public static void addIC2RecipesToGT(Map aIC2RecipeList, GT_RecipeMap aGTRecipeMap, boolean aAddGTRecipe, boolean aRemoveIC2Recipe, boolean aExcludeGTIC2Items) { + public static void addIC2RecipesToGT(Map aIC2RecipeList, GT_Recipe.GT_Recipe_Map aGTRecipeMap, boolean aAddGTRecipe, boolean aRemoveIC2Recipe, boolean aExcludeGTIC2Items) { Map aRecipesToRemove = new HashMap<>(); for (Iterator i$ = aIC2RecipeList.entrySet().iterator(); i$.hasNext(); ) { Entry tRecipe = (Map.Entry) i$.next(); if (((RecipeOutput) tRecipe.getValue()).items.size() > 0) { for (ItemStack tStack : ((IRecipeInput) tRecipe.getKey()).getInputs()) { if (GT_Utility.isStackValid(tStack)) { - if (aAddGTRecipe && (aGTRecipeMap.findRecipe(null, null, false, Long.MAX_VALUE, null, tStack) == null)) { + if (aAddGTRecipe && (aGTRecipeMap.findRecipe(null, false, Long.MAX_VALUE, null, tStack) == null)) { try{ if (aExcludeGTIC2Items && ((tStack.getUnlocalizedName().contains("gt.metaitem.01") || tStack.getUnlocalizedName().contains("gt.blockores") || tStack.getUnlocalizedName().contains("ic2.itemCrushed") || tStack.getUnlocalizedName().contains("ic2.itemPurifiedCrushed")))) continue; switch (aGTRecipeMap.mUnlocalizedName) { diff --git a/src/main/java/gregtech/api/util/GT_ProcessingArray_Manager.java b/src/main/java/gregtech/api/util/GT_ProcessingArray_Manager.java index 57593ec896..d048f1f8b5 100644 --- a/src/main/java/gregtech/api/util/GT_ProcessingArray_Manager.java +++ b/src/main/java/gregtech/api/util/GT_ProcessingArray_Manager.java @@ -1,14 +1,15 @@ package gregtech.api.util; -import gregtech.api.recipes.GT_RecipeMap; import java.util.HashMap; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; + public class GT_ProcessingArray_Manager { private static final HashMap mMetaKeyMap = new HashMap(); - private static final HashMap mRecipeCache = new HashMap(); + private static final HashMap mRecipeCache = new HashMap(); - public static boolean registerRecipeMapForMeta(int aMeta, GT_RecipeMap aMap) { + public static boolean registerRecipeMapForMeta(int aMeta, GT_Recipe_Map aMap) { if (aMeta < 0 || aMeta > Short.MAX_VALUE || aMap == null) { return false; } @@ -23,7 +24,7 @@ public static boolean registerRecipeMapForMeta(int aMeta, GT_RecipeMap aMap) { return true; } - public static GT_RecipeMap getRecipeMapForMeta(int aMeta) { + public static GT_Recipe_Map getRecipeMapForMeta(int aMeta) { return mRecipeCache.get(mMetaKeyMap.get(aMeta)); } diff --git a/src/main/java/gregtech/common/GT_Client.java b/src/main/java/gregtech/common/GT_Client.java index 7540de0aa9..17336e7f0e 100644 --- a/src/main/java/gregtech/common/GT_Client.java +++ b/src/main/java/gregtech/common/GT_Client.java @@ -18,8 +18,6 @@ import gregtech.api.metatileentity.BaseMetaPipeEntity; import gregtech.api.metatileentity.BaseTileEntity; import gregtech.api.objects.GT_ItemStack; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_PlayedSound; import gregtech.api.util.GT_Recipe; @@ -374,7 +372,7 @@ public void onPlayerTickEventClient(TickEvent.PlayerTickEvent aEvent) { afterSomeTime=0; StatFileWriter sfw= Minecraft.getMinecraft().thePlayer.getStatFileWriter(); try { - for(GT_MachineRecipe recipe: GT_RecipeMap.sAssemblyLineVisualRecipes.mRecipeList){ + for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList){ recipe.mHidden=!sfw.hasAchievementUnlocked(GT_Mod.achievements.getAchievement(recipe.getOutput(0).getUnlocalizedName())); } }catch (Exception e){} diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java index 9b293ec357..2d0f4e287e 100644 --- a/src/main/java/gregtech/common/GT_Proxy.java +++ b/src/main/java/gregtech/common/GT_Proxy.java @@ -21,7 +21,6 @@ import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.net.GT_Packet_Pollution; import gregtech.api.objects.*; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import gregtech.common.entities.GT_Entity_Arrow; import gregtech.common.gui.GT_ContainerVolumetricFlask; @@ -1768,7 +1767,7 @@ public void registerUnificationEntries() { } GregTech_API.sUnificationEntriesRegistered = true; GregTech_API.sUnification.mConfig.save(); - GT_RecipeMap.reInitAll(); + GT_Recipe.reInit(); } public void activateOreDictHandler() { diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java index 87aff9ce73..4881773279 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java @@ -11,8 +11,6 @@ import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.objects.ItemData; import gregtech.api.objects.MaterialStack; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import gregtech.common.covers.*; import gregtech.common.items.behaviors.*; @@ -862,9 +860,9 @@ protected void addAdditionalToolTips(List aList, ItemStack aStack, EntityPlayer } public boolean isPlasmaCellUsed(OrePrefixes aPrefix, Materials aMaterial) { - Collection fusionRecipes = GT_RecipeMap.sFusionRecipes.mRecipeList; + Collection fusionRecipes = GT_Recipe.GT_Recipe_Map.sFusionRecipes.mRecipeList; if(aPrefix == OrePrefixes.cellPlasma && aMaterial.getPlasma(1L) != null) { //Materials has a plasma fluid - for(GT_MachineRecipe recipe : fusionRecipes) { //Loop through fusion recipes + for(GT_Recipe recipe : fusionRecipes) { //Loop through fusion recipes if(recipe.getFluidOutput(0) != null) { //Make sure fluid output can't be null (not sure if possible) if (recipe.getFluidOutput(0).isFluidEqual(aMaterial.getPlasma(1L))) return true; //Fusion recipe output matches current plasma cell fluid diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java index a7a8081672..503a1f7efb 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java @@ -10,7 +10,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -48,8 +47,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_DieselGenerator(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_RecipeMap getRecipes() { - return GT_RecipeMap.sDieselFuels; + public GT_Recipe.GT_Recipe_Map getRecipes() { + return GT_Recipe.GT_Recipe_Map.sDieselFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_FluidNaquadahReactor.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_FluidNaquadahReactor.java index a54642a872..504b511de1 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_FluidNaquadahReactor.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_FluidNaquadahReactor.java @@ -9,7 +9,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_FluidNaquadahReactor @@ -39,8 +38,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_FluidNaquadahReactor(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_RecipeMap getRecipes() { - return GT_RecipeMap.sFluidNaquadahReactorFuels; + public GT_Recipe.GT_Recipe_Map getRecipes() { + return GT_Recipe.GT_Recipe_Map.sFluidNaquadahReactorFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java index 69ab800c90..293669094b 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java @@ -8,7 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_GasTurbine @@ -44,8 +43,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_GasTurbine(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_RecipeMap getRecipes() { - return GT_RecipeMap.sTurbineFuels; + public GT_Recipe.GT_Recipe_Map getRecipes() { + return GT_Recipe.GT_Recipe_Map.sTurbineFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java index 3aeb74ab1e..eda960bf2b 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java @@ -8,7 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_MagicEnergyConverter @@ -39,8 +38,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_MagicEnergyConverter(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_RecipeMap getRecipes() { - return GT_RecipeMap.sMagicFuels; + public GT_Recipe.GT_Recipe_Map getRecipes() { + return GT_Recipe.GT_Recipe_Map.sMagicFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java index 2f008d8aef..2ca0a3d7bc 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java @@ -10,7 +10,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; import net.minecraft.block.Block; import net.minecraft.block.BlockDragonEgg; @@ -287,8 +286,8 @@ public int getPollution() { } @Override - public GT_RecipeMap getRecipes() { - return GT_RecipeMap.sMagicFuels; + public GT_Recipe.GT_Recipe_Map getRecipes() { + return GT_Recipe.GT_Recipe_Map.sMagicFuels; } @Override diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java index 653aecae9b..a8c0908ca4 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java @@ -8,7 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_PlasmaGenerator @@ -39,8 +38,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_PlasmaGenerator(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_RecipeMap getRecipes() { - return GT_RecipeMap.sPlasmaFuels; + public GT_Recipe.GT_Recipe_Map getRecipes() { + return GT_Recipe.GT_Recipe_Map.sPlasmaFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SolidNaquadahReactor.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SolidNaquadahReactor.java index d3602ac1fc..422901c850 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SolidNaquadahReactor.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SolidNaquadahReactor.java @@ -8,7 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_SolidNaquadahReactor @@ -38,8 +37,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_SolidNaquadahReactor(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_RecipeMap getRecipes() { - return GT_RecipeMap.sSmallNaquadahReactorFuels; + public GT_Recipe.GT_Recipe_Map getRecipes() { + return GT_Recipe.GT_Recipe_Map.sSmallNaquadahReactorFuels; } public int getCapacity() { diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java index 31625b32dd..e63fbe0579 100644 --- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java +++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java @@ -8,7 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import net.minecraftforge.fluids.FluidStack; @@ -42,7 +41,7 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_SteamTurbine(this.mName, this.mTier, this.mDescriptionArray, this.mTextures); } - public GT_RecipeMap getRecipes() { + public GT_Recipe.GT_Recipe_Map getRecipes() { return null; } diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java index 010ff94ae5..865c31285b 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java @@ -7,7 +7,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -31,8 +30,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_Boxinator(this.mName, this.mTier, this.mDescriptionArray, this.mTextures, this.mGUIName, this.mNEIName); } - public GT_RecipeMap getRecipeList() { - return GT_RecipeMap.sBoxinatorRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeList() { + return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes; } public int checkRecipe() { @@ -84,12 +83,11 @@ public int checkRecipe() { public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { if (super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) { if ((ItemList.Schematic_1by1.isStackEqual(getInputAt(1))) || (ItemList.Schematic_2by2.isStackEqual(getInputAt(1))) || (ItemList.Schematic_3by3.isStackEqual(getInputAt(1)))) { - if (GT_RecipeMap.sBoxinatorRecipes.findRecipe(getBaseMetaTileEntity(), null, true, gregtech.api.enums.GT_Values.V[this.mTier], null, null, new ItemStack[]{GT_Utility.copyAmount(64L, new Object[]{aStack}), getInputAt(1)}) != null) { + if (GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.findRecipe(getBaseMetaTileEntity(), true, gregtech.api.enums.GT_Values.V[this.mTier], null, new ItemStack[]{GT_Utility.copyAmount(64L, new Object[]{aStack}), getInputAt(1)}) != null) { return true; } - if (ItemList.Schematic_1by1.isStackEqual(getInputAt(1)) && GT_ModHandler.getRecipeOutput(new ItemStack[]{aStack}) != null) { + if (ItemList.Schematic_1by1.isStackEqual(getInputAt(1)) && GT_ModHandler.getRecipeOutput(new ItemStack[]{aStack}) != null) return true; - } if (ItemList.Schematic_2by2.isStackEqual(getInputAt(1)) && GT_ModHandler.getRecipeOutput(new ItemStack[]{aStack, aStack, null, aStack, aStack}) != null) { return true; } @@ -97,7 +95,7 @@ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex return true; } } else { - return GT_RecipeMap.sBoxinatorRecipes.containsInput(aStack); + return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.containsInput(aStack); } } return false; diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java index 1681f23e7b..9de7168cf4 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java @@ -9,7 +9,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Config; import gregtech.api.util.GT_Recipe; import net.minecraftforge.fluids.FluidStack; @@ -75,8 +74,8 @@ public int checkRecipe() { } @Override - public GT_RecipeMap getRecipeList() { - return GT_RecipeMap.sMassFabFakeRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeList() { + return GT_Recipe.GT_Recipe_Map.sMassFabFakeRecipes; } public boolean isFluidInputAllowed(FluidStack aFluid) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_OrganicReplicator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_OrganicReplicator.java index 00bd827b9b..9cfb933cd2 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_OrganicReplicator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_OrganicReplicator.java @@ -7,7 +7,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Config; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -81,8 +80,8 @@ public void onConfigLoad(GT_Config aConfig){ } @Override - public GT_RecipeMap getRecipeList() { - return GT_RecipeMap.sOrganicReplicatorFakeRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeList() { + return GT_Recipe.GT_Recipe_Map.sOrganicReplicatorFakeRecipes; } public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java index 5ebb0db3c2..0f3f618737 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java @@ -8,7 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -35,8 +34,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_PotionBrewer(this.mName, this.mTier, this.mDescriptionArray, this.mTextures, this.mGUIName, this.mNEIName); } - public GT_RecipeMap getRecipeList() { - return GT_RecipeMap.sBrewingRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeList() { + return GT_Recipe.GT_Recipe_Map.sBrewingRecipes; } public int checkRecipe() { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Printer.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Printer.java index 6bdeecb733..2f1eecdd91 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Printer.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Printer.java @@ -5,7 +5,6 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -16,7 +15,7 @@ public class GT_MetaTileEntity_Printer extends GT_MetaTileEntity_BasicMachine { public GT_MetaTileEntity_Printer(int aID, String aName, String aNameRegional, int aTier) { - super(aID, aName, aNameRegional, aTier, 1, "It can copy Books and paint Stuff", 1, 1, "Printer.png", GT_RecipeMap.sPrinterRecipes.mNEIName, new ITexture[0]); + super(aID, aName, aNameRegional, aTier, 1, "It can copy Books and paint Stuff", 1, 1, "Printer.png", GT_Recipe.GT_Recipe_Map.sPrinterRecipes.mNEIName, new ITexture[0]); } public GT_MetaTileEntity_Printer(String aName, int aTier, String aDescription, ITexture[][][] aTextures, String aGUIName, String aNEIName) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java index fd53468644..591cf2f7b6 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java @@ -7,7 +7,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -81,8 +80,8 @@ public int checkRecipe() { } @Override - public GT_RecipeMap getRecipeList() { - return GT_RecipeMap.sReplicatorFakeRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeList() { + return GT_Recipe.GT_Recipe_Map.sReplicatorFakeRecipes; } public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java index 46a4401a51..2698d9efc4 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java @@ -8,7 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -33,8 +32,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_RockBreaker(this.mName, this.mTier, this.mDescriptionArray, this.mTextures, this.mGUIName, this.mNEIName); } - public GT_RecipeMap getRecipeList() { - return GT_RecipeMap.sRockBreakerFakeRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeList() { + return GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes; } public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java index 3e48374e19..355335a03d 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java @@ -16,8 +16,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.objects.ItemData; -import gregtech.api.recipes.GT_AssemblyLineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Assemblyline_Server; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; @@ -163,14 +161,14 @@ public int checkRecipe() { } } if(ItemList.Tool_DataStick.isStackEqual(getSpecialSlot(), false, true)&& aStack !=null){ - for(GT_AssemblyLineRecipe tRecipe:GT_AssemblyLineRecipe.sAssemblyLineRecipes){ + for(GT_Recipe.GT_Recipe_AssemblyLine tRecipe:GT_Recipe.GT_Recipe_AssemblyLine.sAssemblylineRecipes){ if(GT_Utility.areStacksEqual(tRecipe.mResearchItem, aStack, true)){ - String s = tRecipe.mOutputs[0].getShownOutput().getDisplayName(); + String s = tRecipe.mOutput.getDisplayName(); if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { - s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mOutputs[0].getShownOutput().getDisplayName()); + s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mOutput.getDisplayName()); if (s==null) - s=tRecipe.mOutputs[0].getShownOutput().getDisplayName(); + s=tRecipe.mOutput.getDisplayName(); } this.mOutputItems[0] = GT_Utility.copyAmount(1L, new Object[]{getSpecialSlot()}); GT_Utility.ItemNBT.setBookTitle(this.mOutputItems[0], s+" Construction Data"); @@ -179,17 +177,17 @@ public int checkRecipe() { if (tNBT == null) { tNBT = new NBTTagCompound(); } - tNBT.setTag("output", tRecipe.mOutputs[0].getShownOutput().writeToNBT(new NBTTagCompound())); + tNBT.setTag("output", tRecipe.mOutput.writeToNBT(new NBTTagCompound())); tNBT.setInteger("time", tRecipe.mDuration); tNBT.setInteger("eu", tRecipe.mEUt); for(int i = 0 ; i < tRecipe.mInputs.length ; i++){ - tNBT.setTag(""+i, tRecipe.mInputs[i].getInputStacks().get(0).writeToNBT(new NBTTagCompound())); + tNBT.setTag(""+i, tRecipe.mInputs[i].writeToNBT(new NBTTagCompound())); } - for(int i = 0 ; i < tRecipe.mInputs.length ; i++){ - if (tRecipe.mInputs[i] != null && tRecipe.mInputs[i].getInputStacks().size() > 1) { - tNBT.setInteger("a" + i, tRecipe.mInputs[i].getInputStacks().size()); - for (int j = 0; j < tRecipe.mInputs[i].getInputStacks().size(); j++) { - tNBT.setTag("a" + i + ":" + j, tRecipe.mInputs[i].getInputStacks().get(j).writeToNBT(new NBTTagCompound())); + for(int i = 0 ; i < tRecipe.mOreDictAlt.length ; i++){ + if (tRecipe.mOreDictAlt[i] != null && tRecipe.mOreDictAlt[i].length > 0) { + tNBT.setInteger("a" + i, tRecipe.mOreDictAlt[i].length); + for (int j = 0; j < tRecipe.mOreDictAlt[i].length; j++) { + tNBT.setTag("a" + i + ":" + j, tRecipe.mOreDictAlt[i][j].writeToNBT(new NBTTagCompound())); } } } @@ -198,18 +196,18 @@ public int checkRecipe() { } tNBT.setString("author", "Assembling Line Recipe Generator"); NBTTagList tNBTList = new NBTTagList(); - s=tRecipe.mOutputs[0].getShownOutput().getDisplayName(); + s=tRecipe.mOutput.getDisplayName(); if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { - s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mOutputs[0].getShownOutput().getDisplayName()); + s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mOutput.getDisplayName()); if (s==null) - s=tRecipe.mOutputs[0].getShownOutput().getDisplayName(); + s=tRecipe.mOutput.getDisplayName(); } - tNBTList.appendTag(new NBTTagString("Construction plan for "+tRecipe.mOutputs[0].getShownOutput().stackSize+" "+s+". Needed EU/t: "+tRecipe.mEUt+" Production time: "+(tRecipe.mDuration/20))); + tNBTList.appendTag(new NBTTagString("Construction plan for "+tRecipe.mOutput.stackSize+" "+s+". Needed EU/t: "+tRecipe.mEUt+" Production time: "+(tRecipe.mDuration/20))); for(int i=0;i 1) { + if (tRecipe.mOreDictAlt[i] != null) { int count = 0; StringBuilder tBuilder = new StringBuilder("Input Bus "+(i+1)+": "); - for (ItemStack tStack : tRecipe.mInputs[i].getInputStacks()) { + for (ItemStack tStack : tRecipe.mOreDictAlt[i]) { if (tStack != null) { s=tStack.getDisplayName(); if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { @@ -218,19 +216,20 @@ public int checkRecipe() { s=tStack.getDisplayName(); } + tBuilder.append((count == 0 ? "" : "\nOr ") + tStack.stackSize+" "+s); count++; } } if (count > 0) tNBTList.appendTag(new NBTTagString(tBuilder.toString())); } else if(tRecipe.mInputs[i]!=null){ - s=tRecipe.mInputs[i].getInputStacks().get(0).getDisplayName(); + s=tRecipe.mInputs[i].getDisplayName(); if (FMLCommonHandler.instance().getEffectiveSide().isServer()) { - s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mInputs[i].getInputStacks().get(0).getDisplayName()); + s = GT_Assemblyline_Server.lServerNames.get(tRecipe.mInputs[i].getDisplayName()); if (s==null) - s=tRecipe.mInputs[i].getInputStacks().get(0).getDisplayName(); + s=tRecipe.mInputs[i].getDisplayName(); } - tNBTList.appendTag(new NBTTagString("Input Bus "+(i+1)+": "+tRecipe.mInputs[i].getInputStacks().get(0).stackSize+" "+s)); + tNBTList.appendTag(new NBTTagString("Input Bus "+(i+1)+": "+tRecipe.mInputs[i].stackSize+" "+s)); } } for(int i=0;i tInputList = getStoredInputs(); int tTier = 0; @@ -129,7 +127,7 @@ public boolean checkRecipe(ItemStack aStack) { FluidStack[] tFluids = (FluidStack[]) tFluidList.toArray(new FluidStack[tFluidList.size()]); if (tInputList.size() > 0 || tFluids.length > 0) { - GT_MachineRecipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, gregtech.api.enums.GT_Values.V[tTier], tFluids, null, tInputs); + GT_Recipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs); if (tRecipe != null) { if (GT_Mod.gregtechproxy.mLowGravProcessing && tRecipe.mSpecialValue == -100 && !isValidForLowGravity(tRecipe,getBaseMetaTileEntity().getWorld().provider.dimensionId)) @@ -173,9 +171,8 @@ public boolean checkRecipe(ItemStack aStack) { for (int f = 0; f < tOut.length; f++) { if (tRecipe.mOutputs[f] != null && tOut[f] != null) { for (int g = 0; g < i; g++) { - if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f)) { - tOut[f].stackSize += tRecipe.mOutputs[f].getShownOutput().stackSize; - } + if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f)) + tOut[f].stackSize += tRecipe.mOutputs[f].stackSize; } } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java index 6c777bf8f4..ae324dcb3a 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java @@ -13,7 +13,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_DataAccess; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -64,7 +63,7 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "AssemblyLine.png"); } - public GT_RecipeMap getRecipeMap() { + public GT_Recipe.GT_Recipe_Map getRecipeMap() { return null; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java index 38d87c36dc..ff3af18e53 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java @@ -8,7 +8,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.common.GT_Pollution; import net.minecraft.block.Block; @@ -56,7 +55,7 @@ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[10]}; } - public GT_RecipeMap getRecipeMap() { + public GT_Recipe.GT_Recipe_Map getRecipeMap() { return null; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java index 6d6cdba669..0949e65d07 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java @@ -10,7 +10,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import net.minecraft.block.Block; import net.minecraft.entity.player.InventoryPlayer; @@ -176,7 +175,7 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MultiblockDisplay.png"); } - public GT_RecipeMap getRecipeMap() { + public GT_Recipe.GT_Recipe_Map getRecipeMap() { return null; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java index 8ed9a22c2c..1bdf46de40 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java @@ -11,8 +11,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Dynamo; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -76,13 +74,13 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT @Override public boolean checkRecipe(ItemStack aStack) { ArrayList tFluids = getStoredFluids(); - Collection tRecipeList = GT_RecipeMap.sDieselFuels.mRecipeList; + Collection tRecipeList = GT_Recipe.GT_Recipe_Map.sDieselFuels.mRecipeList; if(tFluids.size() > 0 && tRecipeList != null) { //Does input hatch have a diesel fuel? for (FluidStack hatchFluid1 : tFluids) { //Loops through hatches - for(GT_MachineRecipe aFuel : tRecipeList) { //Loops through diesel fuel recipes + for(GT_Recipe aFuel : tRecipeList) { //Loops through diesel fuel recipes FluidStack tLiquid; - if ((tLiquid = GT_Utility.getFluidForFilledItem(aFuel.getRepresentativeInput(0).get(0), true)) != null) { //Create fluidstack from current recipe + if ((tLiquid = GT_Utility.getFluidForFilledItem(aFuel.getRepresentativeInput(0), true)) != null) { //Create fluidstack from current recipe if (hatchFluid1.isFluidEqual(tLiquid)) { //Has a diesel fluid fuelConsumption = tLiquid.amount = boostEu ? (4096 / aFuel.mSpecialValue) : (2048 / aFuel.mSpecialValue); //Calc fuel consumption if(depleteInput(tLiquid)) { //Deplete that amount diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java index ec634f8def..4105c2495b 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java @@ -9,8 +9,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -66,8 +64,8 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "DistillationTower.png"); } - public GT_RecipeMap getRecipeMap() { - return GT_RecipeMap.sDistillationRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeMap() { + return GT_Recipe.GT_Recipe_Map.sDistillationRecipes; } public boolean isCorrectMachinePart(ItemStack aStack) { @@ -99,7 +97,7 @@ public boolean checkRecipe(ItemStack aStack) { FluidStack[] tFluids = tFluidList.toArray(new FluidStack[tFluidList.size()]); if (tFluids.length > 0) { for(int i = 0;i 0) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_MachineRecipe tRecipe = GT_RecipeMap.sBlastRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[tTier], tFluids, null, tInputs); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sBlastRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs); if ((tRecipe != null) && (this.mHeatingCapacity >= tRecipe.mSpecialValue) && (tRecipe.isRecipeInputEqual(true, tFluids, tInputs))) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java index 1d20f853a5..f435ec8999 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java @@ -15,8 +15,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.gui.GT_GUIContainer_FusionReactor; @@ -31,7 +29,7 @@ public abstract class GT_MetaTileEntity_FusionComputer extends GT_MetaTileEntity_MultiBlockBase { - public GT_MachineRecipe mLastRecipe; + public GT_Recipe mLastRecipe; public int mEUStore; public GT_MetaTileEntity_FusionComputer(int aID, String aName, String aNameRegional, int tier) { @@ -53,7 +51,7 @@ public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT @Override public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_FusionReactor(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "FusionComputer.png", GT_RecipeMap.sFusionRecipes.mNEIName); + return new GT_GUIContainer_FusionReactor(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "FusionComputer.png", GT_Recipe.GT_Recipe_Map.sFusionRecipes.mNEIName); } public abstract MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity); @@ -256,7 +254,7 @@ public boolean checkRecipe(ItemStack aStack) { } if (tFluidList.size() > 1) { FluidStack[] tFluids = tFluidList.toArray(new FluidStack[tFluidList.size()]); - GT_MachineRecipe tRecipe = GT_RecipeMap.sFusionRecipes.findRecipe(this.getBaseMetaTileEntity(), this.mLastRecipe, false, GT_Values.V[8], tFluids, null, new ItemStack[]{}); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sFusionRecipes.findRecipe(this.getBaseMetaTileEntity(), this.mLastRecipe, false, GT_Values.V[8], tFluids, new ItemStack[]{}); if ((tRecipe == null && !mRunningOnLoad) || (maxEUStore() < tRecipe.mSpecialValue)) { turnCasingActive(false); this.mLastRecipe = null; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java index b2b2bdceb6..631b311720 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java @@ -8,8 +8,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -57,8 +55,8 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "ImplosionCompressor.png"); } - public GT_RecipeMap getRecipeMap() { - return GT_RecipeMap.sImplosionRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeMap() { + return GT_Recipe.GT_Recipe_Map.sImplosionRecipes; } public boolean isCorrectMachinePart(ItemStack aStack) { @@ -86,7 +84,7 @@ public boolean checkRecipe(ItemStack aStack) { } ItemStack[] tInputs = tInputList.toArray(new ItemStack[tInputList.size()]); if (tInputList.size() > 0) { - GT_MachineRecipe tRecipe = GT_RecipeMap.sImplosionRecipes.findRecipe(getBaseMetaTileEntity(), null, Long.MAX_VALUE, null, null, tInputs); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sImplosionRecipes.findRecipe(getBaseMetaTileEntity(), false, 9223372036854775807L, null, tInputs); if ((tRecipe != null) && (tRecipe.isRecipeInputEqual(true, null, tInputs))) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java index b10dd326b9..476496eb05 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java @@ -9,8 +9,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -115,8 +113,8 @@ public boolean checkRecipe(ItemStack aStack) { } this.mSuperEfficencyIncrease = 0; - for (GT_MachineRecipe tRecipe : GT_RecipeMap.sDieselFuels.mRecipeList) { - FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0).get(0), true); + for (GT_Recipe tRecipe : GT_Recipe.GT_Recipe_Map.sDieselFuels.mRecipeList) { + FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0), true); if (tFluid != null && tRecipe.mSpecialValue > 1) { tFluid.amount = 1000; if (depleteInput(tFluid)) { @@ -127,8 +125,8 @@ public boolean checkRecipe(ItemStack aStack) { } } } - for (GT_MachineRecipe tRecipe : GT_RecipeMap.sDenseLiquidFuels.mRecipeList) { - FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0).get(0), true); + for (GT_Recipe tRecipe : GT_Recipe.GT_Recipe_Map.sDenseLiquidFuels.mRecipeList) { + FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0), true); if (tFluid != null) { tFluid.amount = 1000; if (depleteInput(tFluid)) { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java index 30820402ba..d053693e42 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java @@ -8,8 +8,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -119,8 +117,8 @@ public boolean checkRecipe(ItemStack aStack) { if (inputs.length > 0 || fluids.length > 0) { long voltage = getMaxInputVoltage(); byte tier = (byte) Math.max(1, GT_Utility.getTier(voltage)); - GT_MachineRecipe recipe = GT_RecipeMap.sMultiblockChemicalRecipes.findRecipe(getBaseMetaTileEntity(), null, - false, gregtech.api.enums.GT_Values.V[tier], fluids, null, inputs); + GT_Recipe recipe = GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes.findRecipe(getBaseMetaTileEntity(), false, + false, gregtech.api.enums.GT_Values.V[tier], fluids, inputs); if (recipe != null && recipe.isRecipeInputEqual(true, fluids, inputs)) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; @@ -139,7 +137,7 @@ public boolean checkRecipe(ItemStack aStack) { this.mEUt = -EUt; this.mMaxProgresstime = maxProgresstime; - this.mOutputItems = GT_MachineRecipe.unwrapOutputs(recipe.mOutputs); + this.mOutputItems = recipe.mOutputs; this.mOutputFluids = recipe.mFluidOutputs; this.updateSlots(); return true; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java index bd101c9dec..14dec4e8e2 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java @@ -6,9 +6,8 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; @@ -48,11 +47,11 @@ public String[] getDescription() { } public int getFuelValue(FluidStack aLiquid) { - if (aLiquid == null || GT_RecipeMap.sTurbineFuels == null) return 0; + if (aLiquid == null || GT_Recipe_Map.sTurbineFuels == null) return 0; FluidStack tLiquid; - Collection tRecipeList = GT_RecipeMap.sTurbineFuels.mRecipeList; - if (tRecipeList != null) for (GT_MachineRecipe tFuel : tRecipeList) - if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0).get(0), true)) != null) + Collection tRecipeList = GT_Recipe_Map.sTurbineFuels.mRecipeList; + if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList) + if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null) if (aLiquid.isFluidEqual(tLiquid)) return tFuel.mSpecialValue; return 0; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java index be823291e1..548cb0c677 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java @@ -6,9 +6,8 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; @@ -47,11 +46,11 @@ public String[] getDescription() { } public int getFuelValue(FluidStack aLiquid) { - if (aLiquid == null || GT_RecipeMap.sTurbineFuels == null) return 0; + if (aLiquid == null || GT_Recipe_Map.sTurbineFuels == null) return 0; FluidStack tLiquid; - Collection tRecipeList = GT_RecipeMap.sPlasmaFuels.mRecipeList; - if (tRecipeList != null) for (GT_MachineRecipe tFuel : tRecipeList) - if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0).get(0), true)) != null) + Collection tRecipeList = GT_Recipe_Map.sPlasmaFuels.mRecipeList; + if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList) + if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null) if (aLiquid.isFluidEqual(tLiquid)) return tFuel.mSpecialValue; return 0; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java index 05ce7355f3..edd4696335 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java @@ -8,7 +8,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -61,8 +60,8 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MultiFurnace.png"); } - public GT_RecipeMap getRecipeMap() { - return GT_RecipeMap.sFurnaceRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeMap() { + return GT_Recipe.GT_Recipe_Map.sFurnaceRecipes; } public boolean isCorrectMachinePart(ItemStack aStack) { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java index fd0c76489c..540f2a32f3 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java @@ -10,8 +10,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -68,8 +66,8 @@ public boolean checkRecipe(ItemStack aStack) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_MachineRecipe tRecipe = GT_RecipeMap.sCrackingRecipes.findRecipe( - getBaseMetaTileEntity(), null, false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs, null, new ItemStack[]{mInventory[1]}); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCrakingRecipes.findRecipe( + getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs ,new ItemStack[]{mInventory[1]}); if (tRecipe != null && tRecipe.isRecipeInputEqual(true, tFluidInputs, new ItemStack[]{mInventory[1]})) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java index 585df95435..4e963d53ca 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java @@ -10,8 +10,6 @@ import gregtech.api.gui.GT_GUIContainer_MultiMachine; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.objects.ItemData; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -105,14 +103,14 @@ private ItemStack[] getOutputByDrops(ArrayList oreBlockDrops) { continue; } - GT_MachineRecipe tRecipe = GT_RecipeMap.sMaceratorRecipes.findRecipe(getBaseMetaTileEntity(), null, false, voltage, null, currentItem); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.findRecipe(getBaseMetaTileEntity(), false, voltage, null, currentItem); if (tRecipe == null) { outputItems.add(currentItem); continue; } for (int i = 0; i < tRecipe.mOutputs.length; i++) { - ItemStack recipeOutput = tRecipe.getOutput(i); + ItemStack recipeOutput = tRecipe.mOutputs[i].copy(); if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(i)) multiplyStackSize(recipeOutput); outputItems.add(recipeOutput); diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java index 1bb8b5adf8..f89e749d38 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java @@ -6,8 +6,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.XSTR; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Pollution; @@ -141,7 +139,7 @@ public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_PrimitiveBlastFurnace(aPlayerInventory, aBaseMetaTileEntity, getName(), GT_RecipeMap.sPrimitiveBlastRecipes.mNEIName); + return new GT_GUIContainer_PrimitiveBlastFurnace(aPlayerInventory, aBaseMetaTileEntity, getName(), GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.mNEIName); } private boolean checkMachine() { @@ -279,7 +277,7 @@ private boolean checkRecipe() { } ItemStack[] inputs = new ItemStack[INPUT_SLOTS]; System.arraycopy(mInventory, 0, inputs, 0, INPUT_SLOTS); - GT_MachineRecipe recipe = GT_RecipeMap.sPrimitiveBlastRecipes.findRecipe(getBaseMetaTileEntity(), null, false, 0, null, null, inputs); + GT_Recipe recipe = GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.findRecipe(getBaseMetaTileEntity(), false, 0, null, inputs); if (recipe == null) { this.mOutputItems = null; return false; @@ -302,7 +300,7 @@ private boolean checkRecipe() { } this.mMaxProgresstime = recipe.mDuration; - this.mOutputItems = GT_MachineRecipe.unwrapOutputs(recipe.mOutputs); + this.mOutputItems = recipe.mOutputs; return true; } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java index a6de66d446..c4bdc065bb 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java @@ -9,10 +9,9 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_ProcessingArray_Manager; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; @@ -29,7 +28,7 @@ public class GT_MetaTileEntity_ProcessingArray extends GT_MetaTileEntity_MultiBlockBase { - GT_MachineRecipe mLastRecipe; + GT_Recipe mLastRecipe; public GT_MetaTileEntity_ProcessingArray(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); @@ -67,10 +66,9 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "ProcessingArray.png"); } - @Override - public GT_RecipeMap getRecipeMap() { + public GT_Recipe_Map getRecipeMap() { if (isCorrectMachinePart(mInventory[1])) { - GT_RecipeMap aTemp = GT_ProcessingArray_Manager.getRecipeMapForMeta(mInventory[1].getItemDamage()); + GT_Recipe_Map aTemp = GT_ProcessingArray_Manager.getRecipeMapForMeta(mInventory[1].getItemDamage()); if (aTemp != null) { return aTemp; } @@ -94,7 +92,7 @@ public boolean checkRecipe(ItemStack aStack) { if (!isCorrectMachinePart(mInventory[1])) { return false; } - GT_RecipeMap map = getRecipeMap(); + GT_Recipe.GT_Recipe_Map map = getRecipeMap(); if (map == null) return false; ArrayList tInputList = getStoredInputs(); int tTier = 0; @@ -124,7 +122,7 @@ public boolean checkRecipe(ItemStack aStack) { FluidStack[] tFluids = (FluidStack[]) tFluidList.toArray(new FluidStack[tFluidList.size()]); if (tInputList.size() > 0 || tFluids.length > 0) { - GT_MachineRecipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, gregtech.api.enums.GT_Values.V[tTier], tFluids, null, tInputs); + GT_Recipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs); if (tRecipe != null) { if (GT_Mod.gregtechproxy.mLowGravProcessing && tRecipe.mSpecialValue == -100 && !isValidForLowGravity(tRecipe,getBaseMetaTileEntity().getWorld().provider.dimensionId)) @@ -164,19 +162,17 @@ public boolean checkRecipe(ItemStack aStack) { } ItemStack[] tOut = new ItemStack[tRecipe.mOutputs.length]; for (int h = 0; h < tRecipe.mOutputs.length; h++) { - if (tRecipe.getOutput(h) != null) { - tOut[h] = tRecipe.getOutput(h).copy(); - tOut[h].stackSize = 0; - } + if(tRecipe.getOutput(h)!=null){ + tOut[h] = tRecipe.getOutput(h).copy(); + tOut[h].stackSize = 0;} } FluidStack tFOut = null; if (tRecipe.getFluidOutput(0) != null) tFOut = tRecipe.getFluidOutput(0).copy(); for (int f = 0; f < tOut.length; f++) { if (tRecipe.mOutputs[f] != null && tOut[f] != null) { for (int g = 0; g < i; g++) { - if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f)) { - tOut[f].stackSize += tRecipe.mOutputs[f].getShownOutput().stackSize; - } + if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f)) + tOut[f].stackSize += tRecipe.mOutputs[f].stackSize; } } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java index c838ec43c2..6f3d3e9a47 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java @@ -11,8 +11,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_CopiedBlockTexture; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -74,7 +72,7 @@ public boolean checkRecipe(ItemStack aStack) { for (ItemStack tInput : tInputList) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_MachineRecipe tRecipe = GT_RecipeMap.sPyrolyseRecipes.findRecipe(getBaseMetaTileEntity(), null, false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs.isEmpty() ? null : new FluidStack[]{tFluidInputs.get(0)}, null, new ItemStack[]{mInventory[1], tInput}); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sPyrolyseRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs.isEmpty() ? null : new FluidStack[]{tFluidInputs.get(0)}, new ItemStack[]{mInventory[1], tInput}); if (tRecipe != null) { if (tRecipe.isRecipeInputEqual(true, tFluidInputs.isEmpty() ? null : new FluidStack[]{tFluidInputs.get(0)}, new ItemStack[]{tInput, mInventory[1]})) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java index 921753aa88..d21503ef89 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java @@ -8,8 +8,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -55,8 +53,8 @@ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechT return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "VacuumFreezer.png"); } - public GT_RecipeMap getRecipeMap() { - return GT_RecipeMap.sVacuumRecipes; + public GT_Recipe.GT_Recipe_Map getRecipeMap() { + return GT_Recipe.GT_Recipe_Map.sVacuumRecipes; } public boolean isCorrectMachinePart(ItemStack aStack) { @@ -73,7 +71,7 @@ public boolean checkRecipe(ItemStack aStack) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_MachineRecipe tRecipe = GT_RecipeMap.sVacuumRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[tTier], null, null, new ItemStack[]{tInput}); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sVacuumRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], null, new ItemStack[]{tInput}); if (tRecipe != null) { if (tRecipe.isRecipeInputEqual(true, null, new ItemStack[]{tInput})) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java index 57ea951439..0fbd7383a8 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java @@ -8,8 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -33,12 +31,12 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeAlloySmelter.png", GT_RecipeMap.sAlloySmelterRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeAlloySmelter.png", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.mUnlocalizedName); } public int checkRecipe() { - GT_MachineRecipe tRecipe = GT_RecipeMap.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); - if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs()); + if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = tRecipe.mEUt; this.mMaxProgresstime = (tRecipe.mDuration * 2); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java index 14c865f649..75a3f6447b 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java @@ -8,8 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -33,12 +31,12 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelAlloySmelter.png", GT_RecipeMap.sAlloySmelterRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelAlloySmelter.png", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.mUnlocalizedName); } public int checkRecipe() { - GT_MachineRecipe tRecipe = GT_RecipeMap.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); - if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs()); + if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = (tRecipe.mEUt * 3); this.mMaxProgresstime = tRecipe.mDuration; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java index eaef615920..67bde86f16 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java @@ -8,8 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -29,7 +27,7 @@ public GT_MetaTileEntity_Compressor_Bronze(String aName, String[] aDescription, } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeCompressor.png", GT_RecipeMap.sCompressorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeCompressor.png", GT_Recipe.GT_Recipe_Map.sCompressorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -37,8 +35,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public int checkRecipe() { - GT_MachineRecipe tRecipe = GT_RecipeMap.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); - if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs()); + if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = tRecipe.mEUt; this.mMaxProgresstime = (tRecipe.mDuration * 2); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java index 41649b3d84..10d1f71d0d 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java @@ -8,8 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -29,7 +27,7 @@ public GT_MetaTileEntity_Compressor_Steel(String aName, String[] aDescription, I } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelCompressor.png", GT_RecipeMap.sCompressorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelCompressor.png", GT_Recipe.GT_Recipe_Map.sCompressorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -37,8 +35,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public int checkRecipe() { - GT_MachineRecipe tRecipe = GT_RecipeMap.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); - if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs()); + if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = (tRecipe.mEUt * 3); this.mMaxProgresstime = tRecipe.mDuration; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java index 928e5903ee..f1d4ae1b86 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java @@ -8,8 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -29,7 +27,7 @@ public GT_MetaTileEntity_Extractor_Bronze(String aName, String[] aDescription, I } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeExtractor.png", GT_RecipeMap.sExtractorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeExtractor.png", GT_Recipe.GT_Recipe_Map.sExtractorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -37,8 +35,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public int checkRecipe() { - GT_MachineRecipe tRecipe = GT_RecipeMap.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); - if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs()); + if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = tRecipe.mEUt; this.mMaxProgresstime = (tRecipe.mDuration * 2); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java index 748c6534c2..9aa892a4fc 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java @@ -8,8 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -29,7 +27,7 @@ public GT_MetaTileEntity_Extractor_Steel(String aName, String[] aDescription, IT } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelExtractor.png", GT_RecipeMap.sExtractorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelExtractor.png", GT_Recipe.GT_Recipe_Map.sExtractorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -37,8 +35,8 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public int checkRecipe() { - GT_MachineRecipe tRecipe = GT_RecipeMap.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); - if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs()); + if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = (tRecipe.mEUt * 3); this.mMaxProgresstime = tRecipe.mDuration; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java index 5b932b0c03..7a24222701 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java @@ -8,8 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -33,12 +31,12 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeHammer.png", GT_RecipeMap.sHammerRecipes.mUnlocalizedName, (byte) 6, (byte) 3); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeHammer.png", GT_Recipe.GT_Recipe_Map.sHammerRecipes.mUnlocalizedName, (byte) 6, (byte) 3); } public int checkRecipe() { - GT_MachineRecipe tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); - if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs()); + if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = tRecipe.mEUt; this.mMaxProgresstime = (tRecipe.mDuration * 2); diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java index ca409ca505..66c40990cf 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java @@ -8,8 +8,6 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; @@ -33,12 +31,12 @@ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelHammer.png", GT_RecipeMap.sHammerRecipes.mUnlocalizedName, (byte) 6, (byte) 3); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelHammer.png", GT_Recipe.GT_Recipe_Map.sHammerRecipes.mUnlocalizedName, (byte) 6, (byte) 3); } public int checkRecipe() { - GT_MachineRecipe tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), null, gregtech.api.enums.GT_Values.V[1], null, null, getAllInputs()); - if ((tRecipe != null) && (canOutput(GT_MachineRecipe.unwrapOutputs(tRecipe.mOutputs))) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs()); + if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) { this.mOutputItems[0] = tRecipe.getOutput(0); this.mEUt = (tRecipe.mEUt * 3); this.mMaxProgresstime = tRecipe.mDuration; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java index 100bbf107b..95d185227e 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java @@ -8,9 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; @@ -35,7 +34,7 @@ public GT_MetaTileEntity_Macerator_Bronze(String aName, String[] aDescription, I } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeMacerator.png", GT_RecipeMap.sMaceratorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "BronzeMacerator.png", GT_Recipe_Map.sMaceratorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -51,9 +50,9 @@ public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { } public int checkRecipe() { - GT_RecipeMap tMap = GT_RecipeMap.sMaceratorRecipes; + GT_Recipe_Map tMap = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; if (tMap == null) return DID_NOT_FIND_RECIPE; - GT_MachineRecipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs()); + GT_Recipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs()); if (tRecipe == null) return DID_NOT_FIND_RECIPE; if (tRecipe.mCanBeBuffered) mLastRecipe = tRecipe; if (!canOutput(tRecipe)) { @@ -72,7 +71,7 @@ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex if (!super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) { return false; } - return GT_RecipeMap.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64L, new Object[]{aStack})); + return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64L, new Object[]{aStack})); } public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) { diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java index 0e3a075bce..0f7d98f72e 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java @@ -8,9 +8,8 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; @@ -35,7 +34,7 @@ public GT_MetaTileEntity_Macerator_Steel(String aName, String[] aDescription, IT } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { - return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelMacerator.png", GT_RecipeMap.sMaceratorRecipes.mUnlocalizedName); + return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelMacerator.png", GT_Recipe_Map.sMaceratorRecipes.mUnlocalizedName); } public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { @@ -51,9 +50,9 @@ public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { } public int checkRecipe() { - GT_RecipeMap tMap = GT_RecipeMap.sMaceratorRecipes; + GT_Recipe_Map tMap = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; if (tMap == null) return DID_NOT_FIND_RECIPE; - GT_MachineRecipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs()); + GT_Recipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs()); if (tRecipe == null) return DID_NOT_FIND_RECIPE; if (tRecipe.mCanBeBuffered) mLastRecipe = tRecipe; if (!canOutput(tRecipe)) { @@ -72,7 +71,7 @@ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex if (!super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) { return false; } - return GT_RecipeMap.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64L, new Object[]{aStack})); + return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64L, new Object[]{aStack})); } public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) { diff --git a/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java b/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java index 6ab93c1dbd..e7558fb432 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java @@ -4,8 +4,6 @@ import gregtech.api.GregTech_API; import gregtech.api.interfaces.IIconContainer; import gregtech.api.items.GT_MetaGenerated_Tool; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.items.behaviors.Behaviour_Prospecting; @@ -100,15 +98,15 @@ public boolean isWeapon() { public boolean isMinableBlock(Block aBlock, byte aMetaData) { String tTool = aBlock.getHarvestTool(aMetaData); - return ((tTool != null) && ((tTool.equals("hammer")) || (tTool.equals("pickaxe")))) || (aBlock.getMaterial() == Material.rock) || (aBlock.getMaterial() == Material.glass) || (aBlock.getMaterial() == Material.ice) || (aBlock.getMaterial() == Material.packedIce) || (GT_RecipeMap.sHammerRecipes.containsInput(new ItemStack(aBlock, 1, aMetaData))); + return ((tTool != null) && ((tTool.equals("hammer")) || (tTool.equals("pickaxe")))) || (aBlock.getMaterial() == Material.rock) || (aBlock.getMaterial() == Material.glass) || (aBlock.getMaterial() == Material.ice) || (aBlock.getMaterial() == Material.packedIce) || (GT_Recipe.GT_Recipe_Map.sHammerRecipes.containsInput(new ItemStack(aBlock, 1, aMetaData))); } public int convertBlockDrops(List aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) { int rConversions = 0; - GT_MachineRecipe tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(null, null, true, 2147483647L, null, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); if ((tRecipe == null) || (aBlock.hasTileEntity(aMetaData))) { for (ItemStack tDrop : aDrops) { - tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(null, null, true, 2147483647L, null, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); + tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); if (tRecipe != null) { ItemStack tHammeringOutput = tRecipe.getOutput(0); if (tHammeringOutput != null) { diff --git a/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java b/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java index e6f655b814..a1ad88c69f 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java @@ -3,8 +3,6 @@ import gregtech.GT_Mod; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -60,10 +58,10 @@ public boolean isMinableBlock(Block aBlock, byte aMetaData) { public int convertBlockDrops(List aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) { int rConversions = 0; - GT_MachineRecipe tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(null, null, true, 2147483647L, null, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); if ((tRecipe == null) || (aBlock.hasTileEntity(aMetaData))) { for (ItemStack tDrop : aDrops) { - tRecipe = GT_RecipeMap.sHammerRecipes.findRecipe(null, null, true, 2147483647L, null, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); + tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); if (tRecipe != null) { ItemStack tHammeringOutput = tRecipe.getOutput(0); if (tHammeringOutput != null) { diff --git a/src/main/java/gregtech/loaders/load/GT_FuelLoader.java b/src/main/java/gregtech/loaders/load/GT_FuelLoader.java index 09ef7fdea4..188a6590b9 100644 --- a/src/main/java/gregtech/loaders/load/GT_FuelLoader.java +++ b/src/main/java/gregtech/loaders/load/GT_FuelLoader.java @@ -7,8 +7,6 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -27,17 +25,11 @@ public void run() { ItemList.sIndiumConcentrate = GT_Mod.gregtechproxy.addFluid("indiumconcentrate", "Indium Concentrate", null, 1, 295); ItemList.sLeadZincSolution = GT_Mod.gregtechproxy.addFluid("leadzincsolution", "Lead-Zinc solution", null, 1, 295); ItemList.sRocketFuel = GT_Mod.gregtechproxy.addFluid("rocket_fuel", "Rocket Fuel", null, 1, 295); - GT_RecipeMap.sHotFuels.addRecipe(false, - new ItemStack[]{new ItemStack(Items.lava_bucket)}, - new ItemStack[]{new ItemStack(Blocks.obsidian), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), - GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Electrum, 1L)}, - null, null, null, 0, 0, 30); + new GT_Recipe(new ItemStack(Items.lava_bucket), new ItemStack(Blocks.obsidian), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Copper, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Electrum, 1L), 30, 2); - GT_RecipeMap.sSmallNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 25000); - GT_RecipeMap.sLargeNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 200000); - GT_RecipeMap.sFluidNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 1400000); + GT_Recipe.GT_Recipe_Map.sSmallNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 25000); + GT_Recipe.GT_Recipe_Map.sLargeNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 200000); + GT_Recipe.GT_Recipe_Map.sFluidNaquadahReactorFuels.addRecipe(true, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NaquadahEnriched, 1L)}, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naquadah, 1L)}, null, null, null, 0, 0, 1400000); GT_Values.RA.addFuel(GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 1L, 4), null, 4, 5); GT_Values.RA.addFuel(new ItemStack(Items.experience_bottle, 1), null, 10, 5); diff --git a/src/main/java/gregtech/loaders/misc/GT_Achievements.java b/src/main/java/gregtech/loaders/misc/GT_Achievements.java index 71792f49dc..5c73296a77 100644 --- a/src/main/java/gregtech/loaders/misc/GT_Achievements.java +++ b/src/main/java/gregtech/loaders/misc/GT_Achievements.java @@ -13,8 +13,6 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.objects.ItemData; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -80,7 +78,7 @@ public GT_Achievements() { } } - for(GT_MachineRecipe recipe: GT_RecipeMap.sAssemblyLineVisualRecipes.mRecipeList) + for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList) registerAssAchievement(recipe); registerAchievement("flintpick", 0, 0, GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.PICKAXE, 1, Materials.Flint, Materials.Wood, null), "", false); @@ -285,7 +283,7 @@ public Achievement registerOreAchievement(Materials aMaterial) { return null; } - public Achievement registerAssAchievement(GT_MachineRecipe recipe) { + public Achievement registerAssAchievement(GT_Recipe recipe) { if (this.achievementList.get(recipe.getOutput(0).getUnlocalizedName()) == null) { assReg++; return registerAchievement(recipe.getOutput(0).getUnlocalizedName(), -(11 + assReg % 5), ((assReg) / 5) - 8, recipe.getOutput(0) @@ -639,12 +637,12 @@ public void onItemPickup(EntityItemPickupEvent event) { issueAchievement(player, "stepforward"); } if(player.capabilities.isCreativeMode && stack.getUnlocalizedName().equals("gt.metaitem.01.32761")){//Debug Scanner pickup shows all assline recipes. - for(GT_MachineRecipe recipe: GT_RecipeMap.sAssemblyLineVisualRecipes.mRecipeList) { + for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList) { issueAchievement(player, recipe.getOutput(0).getUnlocalizedName()); recipe.mHidden=false; } } - for(GT_MachineRecipe recipe: GT_RecipeMap.sAssemblyLineVisualRecipes.mRecipeList){ + for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList){ if(recipe.getOutput(0).getUnlocalizedName().equals(stack.getUnlocalizedName())) { issueAchievement(player, recipe.getOutput(0).getUnlocalizedName()); recipe.mHidden=false; diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java index d98f2cc014..a9528ae872 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java @@ -68,7 +68,7 @@ private boolean registerStandardOreRecipes(OrePrefixes aPrefix, Materials aMater } if ((!tByProductStacks.isEmpty()) && (!this.mAlreadyListedOres.contains(aMaterial))) { this.mAlreadyListedOres.add(aMaterial); - gregtech.api.recipes.GT_RecipeMap.sByproductList.addFakeRecipe(false, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ore, aMaterial, aOreStack, 1L)}, (ItemStack[]) tByProductStacks.toArray(new ItemStack[tByProductStacks.size()]), null, null, null, null, 0, 0, 0); + gregtech.api.util.GT_Recipe.GT_Recipe_Map.sByProductList.addFakeRecipe(false, new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.ore, aMaterial, aOreStack, 1L)}, (ItemStack[]) tByProductStacks.toArray(new ItemStack[tByProductStacks.size()]), null, null, null, null, 0, 0, 0); } if (tPrimaryByMaterial == null) tPrimaryByMaterial = tMaterial; diff --git a/src/main/java/gregtech/loaders/postload/GT_ProcessingArrayRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_ProcessingArrayRecipeLoader.java index 67ad4d2689..8ce9a82f98 100644 --- a/src/main/java/gregtech/loaders/postload/GT_ProcessingArrayRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_ProcessingArrayRecipeLoader.java @@ -2,141 +2,141 @@ import gregtech.api.util.GT_ProcessingArray_Manager; import gregtech.api.util.GT_Recipe; -import gregtech.api.recipes.GT_RecipeMap; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; public class GT_ProcessingArrayRecipeLoader { public static void registerDefaultGregtechMaps() { // Centrifuge - registerMapBetweenRange(361, 368, GT_RecipeMap.sCentrifugeRecipes); + registerMapBetweenRange(361, 368, GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes); // Electrolyzer - registerMapBetweenRange(371, 378, GT_RecipeMap.sElectrolyzerRecipes); + registerMapBetweenRange(371, 378, GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes); // Assembler - registerMapBetweenRange(211, 218, GT_RecipeMap.sAssemblerRecipes); + registerMapBetweenRange(211, 218, GT_Recipe.GT_Recipe_Map.sAssemblerRecipes); // Compressor - registerMapBetweenRange(241, 248, GT_RecipeMap.sCompressorRecipes); + registerMapBetweenRange(241, 248, GT_Recipe.GT_Recipe_Map.sCompressorRecipes); //Extractor - registerMapBetweenRange(271, 278, GT_RecipeMap.sExtractorRecipes); + registerMapBetweenRange(271, 278, GT_Recipe.GT_Recipe_Map.sExtractorRecipes); //Macerator - registerMapBetweenRange(301, 308, GT_RecipeMap.sMaceratorRecipes); + registerMapBetweenRange(301, 308, GT_Recipe.GT_Recipe_Map.sMaceratorRecipes); // Microwave (New) - registerMapBetweenRange(311, 318, GT_RecipeMap.sMicrowaveRecipes); + registerMapBetweenRange(311, 318, GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes); //Recycler - registerMapBetweenRange(331, 338, GT_RecipeMap.sRecyclerRecipes); + registerMapBetweenRange(331, 338, GT_Recipe.GT_Recipe_Map.sRecyclerRecipes); //Thermal Centrifuge - registerMapBetweenRange(381, 388, GT_RecipeMap.sThermalCentrifugeRecipes); + registerMapBetweenRange(381, 388, GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes); // Ore Washer - registerMapBetweenRange(391, 398, GT_RecipeMap.sOreWasherRecipes); + registerMapBetweenRange(391, 398, GT_Recipe.GT_Recipe_Map.sOreWasherRecipes); // Chemical Reactor - registerMapBetweenRange(421, 428, GT_RecipeMap.sChemicalRecipes); + registerMapBetweenRange(421, 428, GT_Recipe.GT_Recipe_Map.sChemicalRecipes); // Chemical Bath - registerMapBetweenRange(541, 548, GT_RecipeMap.sChemicalBathRecipes); + registerMapBetweenRange(541, 548, GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes); // Magnetic Seperator - registerMapBetweenRange(561, 568, GT_RecipeMap.sElectroMagneticSeparatorRecipes); + registerMapBetweenRange(561, 568, GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes); // Autoclave - registerMapBetweenRange(571, 578, GT_RecipeMap.sAutoclaveRecipes); + registerMapBetweenRange(571, 578, GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes); // Mixer - registerMapBetweenRange(581, 588, GT_RecipeMap.sMixerRecipes); + registerMapBetweenRange(581, 588, GT_Recipe.GT_Recipe_Map.sMixerRecipes); // Forge Hammer - registerMapBetweenRange(611, 618, GT_RecipeMap.sHammerRecipes); + registerMapBetweenRange(611, 618, GT_Recipe.GT_Recipe_Map.sHammerRecipes); // Sifter - registerMapBetweenRange(641, 648, GT_RecipeMap.sSifterRecipes); + registerMapBetweenRange(641, 648, GT_Recipe.GT_Recipe_Map.sSifterRecipes); // Extruder - registerMapBetweenRange(281, 288, GT_RecipeMap.sExtruderRecipes); + registerMapBetweenRange(281, 288, GT_Recipe.GT_Recipe_Map.sExtruderRecipes); // Laser Engraver - registerMapBetweenRange(591, 598, GT_RecipeMap.sLaserEngraverRecipes); + registerMapBetweenRange(591, 598, GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes); // Bender - registerMapBetweenRange(221, 228, GT_RecipeMap.sBenderRecipes); + registerMapBetweenRange(221, 228, GT_Recipe.GT_Recipe_Map.sBenderRecipes); // Wiremill - registerMapBetweenRange(351, 358, GT_RecipeMap.sWiremillRecipes); + registerMapBetweenRange(351, 358, GT_Recipe.GT_Recipe_Map.sWiremillRecipes); // Arc Furnace - registerMapBetweenRange(651, 658, GT_RecipeMap.sArcFurnaceRecipes); + registerMapBetweenRange(651, 658, GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes); // Plasma Arc Furnace - registerMapBetweenRange(661, 668, GT_RecipeMap.sPlasmaArcFurnaceRecipes); + registerMapBetweenRange(661, 668, GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes); // Brewery - registerMapBetweenRange(491, 498, GT_RecipeMap.sBrewingRecipes); + registerMapBetweenRange(491, 498, GT_Recipe.GT_Recipe_Map.sBrewingRecipes); // Canner - registerMapBetweenRange(231, 238, GT_RecipeMap.sCannerRecipes); + registerMapBetweenRange(231, 238, GT_Recipe.GT_Recipe_Map.sCannerRecipes); // Cutter - registerMapBetweenRange(251, 258, GT_RecipeMap.sCutterRecipes); + registerMapBetweenRange(251, 258, GT_Recipe.GT_Recipe_Map.sCutterRecipes); // Fermenter - registerMapBetweenRange(501, 508, GT_RecipeMap.sFermentingRecipes); + registerMapBetweenRange(501, 508, GT_Recipe.GT_Recipe_Map.sFermentingRecipes); // Fluid Extractor - registerMapBetweenRange(511, 518, GT_RecipeMap.sFluidExtractionRecipes); + registerMapBetweenRange(511, 518, GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes); // Fluid Solidifier - registerMapBetweenRange(521, 528, GT_RecipeMap.sFluidSolidificationRecipes); + registerMapBetweenRange(521, 528, GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes); // Lathe - registerMapBetweenRange(291, 298, GT_RecipeMap.sLatheRecipes); + registerMapBetweenRange(291, 298, GT_Recipe.GT_Recipe_Map.sLatheRecipes); // Boxinator - registerMapBetweenRange(401, 408, GT_RecipeMap.sBoxinatorRecipes); + registerMapBetweenRange(401, 408, GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes); // Unboxinator - registerMapBetweenRange(411, 408, GT_RecipeMap.sUnboxinatorRecipes); + registerMapBetweenRange(411, 408, GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes); // Polarizer - registerMapBetweenRange(551, 558, GT_RecipeMap.sPolarizerRecipes); + registerMapBetweenRange(551, 558, GT_Recipe.GT_Recipe_Map.sPolarizerRecipes); // Printer - registerMapBetweenRange(321, 328, GT_RecipeMap.sPrinterRecipes); + registerMapBetweenRange(321, 328, GT_Recipe.GT_Recipe_Map.sPrinterRecipes); // Fluid Canner - registerMapBetweenRange(431, 438, GT_RecipeMap.sFluidCannerRecipes); + registerMapBetweenRange(431, 438, GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes); // Fluid Heater - registerMapBetweenRange(621, 628, GT_RecipeMap.sFluidHeaterRecipes); + registerMapBetweenRange(621, 628, GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes); // Distillery - registerMapBetweenRange(531, 538, GT_RecipeMap.sDistilleryRecipes); + registerMapBetweenRange(531, 538, GT_Recipe.GT_Recipe_Map.sDistilleryRecipes); // Slicer - registerMapBetweenRange(631, 638, GT_RecipeMap.sSlicerRecipes); + registerMapBetweenRange(631, 638, GT_Recipe.GT_Recipe_Map.sSlicerRecipes); // Matter Amplifier - registerMapBetweenRange(471, 478, GT_RecipeMap.sAmplifiers); + registerMapBetweenRange(471, 478, GT_Recipe.GT_Recipe_Map.sAmplifiers); // Circuit Assembler - registerMapBetweenRange(1180, 1187, GT_RecipeMap.sCircuitAssemblerRecipes); + registerMapBetweenRange(1180, 1187, GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes); // Alloy Smelter - registerMapBetweenRange(201, 208, GT_RecipeMap.sAlloySmelterRecipes); + registerMapBetweenRange(201, 208, GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes); // Forming Press - registerMapBetweenRange(601, 608, GT_RecipeMap.sPressRecipes); + registerMapBetweenRange(601, 608, GT_Recipe.GT_Recipe_Map.sPressRecipes); } - private static final void registerMapBetweenRange(int aMin, int aMax, GT_RecipeMap aMap) { + private static final void registerMapBetweenRange(int aMin, int aMax, GT_Recipe_Map aMap) { for (int i=aMin; i<=aMax;i++) { GT_ProcessingArray_Manager.registerRecipeMapForMeta(i, aMap); } diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java b/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java index a7dfda4ea0..2822b5111c 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java @@ -7,11 +7,11 @@ import gregtech.api.enums.*; import gregtech.api.interfaces.ITexture; import gregtech.api.metatileentity.implementations.*; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; import gregtech.common.tileentities.automation.*; import gregtech.common.tileentities.boilers.GT_MetaTileEntity_Boiler_Bronze; import gregtech.common.tileentities.boilers.GT_MetaTileEntity_Boiler_Lava; @@ -583,131 +583,131 @@ private static void run1() { private static void run2() { long bits = GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED; long bitsd = GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE | GT_ModHandler.RecipeBits.BUFFERED; - ItemList.Machine_LV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(201, "basicmachine.alloysmelter.tier.01", "Basic Alloy Smelter", 1, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_MV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(202, "basicmachine.alloysmelter.tier.02", "Advanced Alloy Smelter", 2, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_HV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(203, "basicmachine.alloysmelter.tier.03", "Advanced Alloy Smelter II", 3, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_EV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(204, "basicmachine.alloysmelter.tier.04", "Advanced Alloy Smelter III", 4, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_IV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(205, "basicmachine.alloysmelter.tier.05", "Advanced Alloy Smelter IV", 5, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_LuV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(206, "basicmachine.alloysmelter.tier.06", "Advanced Alloy Smelter V", 6, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_ZPM_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(207, "basicmachine.alloysmelter.tier.07", "Advanced Alloy Smelter VI", 7, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_UV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(208, "basicmachine.alloysmelter.tier.08", "Advanced Alloy Smelter VII", 8, "HighTech combination Smelter", GT_RecipeMap.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - - ItemList.Machine_LV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(211, "basicmachine.assembler.tier.01", "Basic Assembling Machine", 1, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(212, "basicmachine.assembler.tier.02", "Advanced Assembling Machine", 2, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(213, "basicmachine.assembler.tier.03", "Advanced Assembling Machine II", 3, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(214, "basicmachine.assembler.tier.04", "Advanced Assembling Machine III", 4, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(215, "basicmachine.assembler.tier.05", "Advanced Assembling Machine IV", 5, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(216, "basicmachine.assembler.tier.06", "Advanced Assembling Machine V", 6, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(217, "basicmachine.assembler.tier.07", "Advanced Assembling Machine VI", 7, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(218, "basicmachine.assembler.tier.08", "Advanced Assembling Machine VII", 8, "Avengers, Assemble!", GT_RecipeMap.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(221, "basicmachine.bender.tier.01", "Basic Bending Machine", 1, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(222, "basicmachine.bender.tier.02", "Advanced Bending Machine", 2, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(223, "basicmachine.bender.tier.03", "Advanced Bending Machine II", 3, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(224, "basicmachine.bender.tier.04", "Advanced Bending Machine III", 4, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(225, "basicmachine.bender.tier.05", "Advanced Bending Machine IV", 5, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(226, "basicmachine.bender.tier.06", "Advanced Bending Machine V", 6, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(227, "basicmachine.bender.tier.07", "Advanced Bending Machine VI", 7, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(228, "basicmachine.bender.tier.08", "Advanced Bending Machine VII", 8, "Boo, he's bad! We want BENDER!!!", GT_RecipeMap.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(231, "basicmachine.canner.tier.01", "Basic Canning Machine", 1, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(232, "basicmachine.canner.tier.02", "Advanced Canning Machine", 2, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(233, "basicmachine.canner.tier.03", "Advanced Canning Machine II", 3, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(234, "basicmachine.canner.tier.04", "Advanced Canning Machine III", 4, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(235, "basicmachine.canner.tier.05", "Advanced Canning Machine IV", 5, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(236, "basicmachine.canner.tier.06", "Advanced Canning Machine V", 6, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(237, "basicmachine.canner.tier.07", "Advanced Canning Machine VI", 7, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(238, "basicmachine.canner.tier.08", "Advanced Canning Machine VII", 8, "Unmobile Food Canning Machine GTA4", GT_RecipeMap.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(241, "basicmachine.compressor.tier.01", "Basic Compressor", 1, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(242, "basicmachine.compressor.tier.02", "Advanced Compressor", 2, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(243, "basicmachine.compressor.tier.03", "Advanced Compressor II", 3, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(244, "basicmachine.compressor.tier.04", "Advanced Compressor III", 4, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(245, "basicmachine.compressor.tier.05", "Singularity Compressor", 5, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(246, "basicmachine.compressor.tier.06", "Singularity Compressor", 6, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(247, "basicmachine.compressor.tier.07", "Singularity Compressor", 7, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(248, "basicmachine.compressor.tier.08", "Singularity Compressor", 8, "Compress-O-Matic C77", GT_RecipeMap.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(251, "basicmachine.cutter.tier.01", "Basic Cutting Machine", 1, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_MV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(252, "basicmachine.cutter.tier.02", "Advanced Cutting Machine", 2, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_HV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(253, "basicmachine.cutter.tier.03", "Advanced Cutting Machine II", 3, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_EV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(254, "basicmachine.cutter.tier.04", "Advanced Cutting Machine III", 4, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_IV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(255, "basicmachine.cutter.tier.05", "Advanced Cutting Machine IV", 5, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_LuV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(256, "basicmachine.cutter.tier.06", "Advanced Cutting Machine V", 6, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_ZPM_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(257, "basicmachine.cutter.tier.07", "Advanced Cutting Machine VI", 7, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - ItemList.Machine_UV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(258, "basicmachine.cutter.tier.08", "Advanced Cutting Machine VII", 8, "Slice'N Dice", GT_RecipeMap.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); - - ItemList.Machine_LV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(261, "basicmachine.e_furnace.tier.01", "Basic Electric Furnace", 1, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_MV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(262, "basicmachine.e_furnace.tier.02", "Advanced Electric Furnace", 2, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_HV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(263, "basicmachine.e_furnace.tier.03", "Advanced Electric Furnace II", 3, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_EV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(264, "basicmachine.e_furnace.tier.04", "Advanced Electric Furnace III", 4, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_IV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(265, "basicmachine.e_furnace.tier.05", "Electron Exitement Processor", 5, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_LuV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(266, "basicmachine.e_furnace.tier.06", "Electron Exitement Processor", 6, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_ZPM_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(267, "basicmachine.e_furnace.tier.07", "Electron Exitement Processor", 7, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_UV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(268, "basicmachine.e_furnace.tier.08", "Electron Exitement Processor", 8, "Not like using a Commodore 64", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - - ItemList.Machine_LV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(271, "basicmachine.extractor.tier.01", "Basic Extractor", 1, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(272, "basicmachine.extractor.tier.02", "Advanced Extractor", 2, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(273, "basicmachine.extractor.tier.03", "Advanced Extractor II", 3, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(274, "basicmachine.extractor.tier.04", "Advanced Extractor III", 4, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(275, "basicmachine.extractor.tier.05", "Vacuum Extractor", 5, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(276, "basicmachine.extractor.tier.06", "Vacuum Extractor", 6, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(277, "basicmachine.extractor.tier.07", "Vacuum Extractor", 7, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(278, "basicmachine.extractor.tier.08", "Vacuum Extractor", 8, "Dejuicer-Device of Doom - D123", GT_RecipeMap.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(281, "basicmachine.extruder.tier.01", "Basic Extruder", 1, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_MV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(282, "basicmachine.extruder.tier.02", "Advanced Extruder", 2, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_HV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(283, "basicmachine.extruder.tier.03", "Advanced Extruder II", 3, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_EV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(284, "basicmachine.extruder.tier.04", "Advanced Extruder III", 4, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_IV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(285, "basicmachine.extruder.tier.05", "Advanced Extruder IV", 5, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_LuV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(286, "basicmachine.extruder.tier.06", "Advanced Extruder V", 6, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_ZPM_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(287, "basicmachine.extruder.tier.07", "Advanced Extruder VI", 7, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_UV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(288, "basicmachine.extruder.tier.08", "Advanced Extruder VII", 8, "Universal Machine for Metal Working", GT_RecipeMap.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - - ItemList.Machine_LV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(291, "basicmachine.lathe.tier.01", "Basic Lathe", 1, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OrePrefixes.gem.get(Materials.Diamond)}).getStackForm(1L)); - ItemList.Machine_MV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(292, "basicmachine.lathe.tier.02", "Advanced Lathe", 2, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_HV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(293, "basicmachine.lathe.tier.03", "Advanced Lathe II", 3, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_EV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(294, "basicmachine.lathe.tier.04", "Advanced Lathe III", 4, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_IV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(295, "basicmachine.lathe.tier.05", "Advanced Lathe IV", 5, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_LuV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(296, "basicmachine.lathe.tier.06", "Advanced Lathe V", 6, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_ZPM_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(297, "basicmachine.lathe.tier.07", "Advanced Lathe VI", 7, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_UV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(298, "basicmachine.lathe.tier.08", "Advanced Lathe VII", 8, "Produces Rods more efficiently", GT_RecipeMap.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - - ItemList.Machine_LV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(301, "basicmachine.macerator.tier.01", "Basic Macerator", 1, "Schreddering your Ores", GT_RecipeMap.sMaceratorRecipes, 1, 1, 0, 0, 1, "Macerator1.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "MACERATOR", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.gem.get(Materials.Diamond)}).getStackForm(1L)); - ItemList.Machine_MV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(302, "basicmachine.macerator.tier.02", "Advanced Macerator", 2, "Schreddering your Ores", GT_RecipeMap.sMaceratorRecipes, 1, 1, 0, 0, 1, "Macerator1.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "MACERATOR", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); - ItemList.Machine_HV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(303, "basicmachine.macerator.tier.03", "Universal Macerator", 3, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 2, 0, 0, 1, "Macerator2.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_EV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(304, "basicmachine.macerator.tier.04", "Universal Pulverizer", 4, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 3, 0, 0, 1, "Macerator3.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_IV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(305, "basicmachine.macerator.tier.05", "Blend-O-Matic 9001", 5, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_LuV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(306, "basicmachine.macerator.tier.06", "Blend-O-Matic 9001", 6, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_ZPM_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(307, "basicmachine.macerator.tier.07", "Blend-O-Matic 9001", 7, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - ItemList.Machine_UV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(308, "basicmachine.macerator.tier.08", "Blend-O-Matic 9001", 8, "Schreddering your Ores with Byproducts", GT_RecipeMap.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); - - ItemList.Machine_LV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(311, "basicmachine.microwave.tier.01", "Basic Microwave", 1, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_MV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(312, "basicmachine.microwave.tier.02", "Advanced Microwave", 2, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_HV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(313, "basicmachine.microwave.tier.03", "Advanced Microwave II", 3, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_EV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(314, "basicmachine.microwave.tier.04", "Advanced Microwave III", 4, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_IV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(315, "basicmachine.microwave.tier.05", "Advanced Microwave IV", 5, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_LuV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(316, "basicmachine.microwave.tier.06", "Advanced Microwave V", 6, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_ZPM_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(317, "basicmachine.microwave.tier.07", "Advanced Microwave VI", 7, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - ItemList.Machine_UV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(318, "basicmachine.microwave.tier.08", "Advanced Microwave VII", 8, "Did you really read the instruction Manual?", GT_RecipeMap.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); - - ItemList.Machine_LV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(321, "basicmachine.printer.tier.01", "Basic Printer", 1, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(322, "basicmachine.printer.tier.02", "Advanced Printer", 2, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(323, "basicmachine.printer.tier.03", "Advanced Printer II", 3, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(324, "basicmachine.printer.tier.04", "Advanced Printer III", 4, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(325, "basicmachine.printer.tier.05", "Advanced Printer IV", 5, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(326, "basicmachine.printer.tier.06", "Advanced Printer V", 6, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(327, "basicmachine.printer.tier.07", "Advanced Printer VI", 7, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(328, "basicmachine.printer.tier.08", "Advanced Printer VII", 8, "It can copy Books and paint Stuff", GT_RecipeMap.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(331, "basicmachine.recycler.tier.01", "Basic Recycler", 1, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_MV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(332, "basicmachine.recycler.tier.02", "Advanced Recycler", 2, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_HV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(333, "basicmachine.recycler.tier.03", "Advanced Recycler II", 3, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_EV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(334, "basicmachine.recycler.tier.04", "Advanced Recycler III", 4, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_IV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(335, "basicmachine.recycler.tier.05", "The Oblitterator", 5, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_LuV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(336, "basicmachine.recycler.tier.06", "The Oblitterator", 6, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_ZPM_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(337, "basicmachine.recycler.tier.07", "The Oblitterator", 7, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); - ItemList.Machine_UV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(338, "basicmachine.recycler.tier.08", "The Oblitterator", 8, "Compress, burn, obliterate and filter EVERYTHING", GT_RecipeMap.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_LV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(201, "basicmachine.alloysmelter.tier.01", "Basic Alloy Smelter", 1, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_MV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(202, "basicmachine.alloysmelter.tier.02", "Advanced Alloy Smelter", 2, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_HV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(203, "basicmachine.alloysmelter.tier.03", "Advanced Alloy Smelter II", 3, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_EV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(204, "basicmachine.alloysmelter.tier.04", "Advanced Alloy Smelter III", 4, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_IV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(205, "basicmachine.alloysmelter.tier.05", "Advanced Alloy Smelter IV", 5, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_LuV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(206, "basicmachine.alloysmelter.tier.06", "Advanced Alloy Smelter V", 6, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_ZPM_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(207, "basicmachine.alloysmelter.tier.07", "Advanced Alloy Smelter VI", 7, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_UV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(208, "basicmachine.alloysmelter.tier.08", "Advanced Alloy Smelter VII", 8, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + + ItemList.Machine_LV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(211, "basicmachine.assembler.tier.01", "Basic Assembling Machine", 1, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(212, "basicmachine.assembler.tier.02", "Advanced Assembling Machine", 2, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(213, "basicmachine.assembler.tier.03", "Advanced Assembling Machine II", 3, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(214, "basicmachine.assembler.tier.04", "Advanced Assembling Machine III", 4, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(215, "basicmachine.assembler.tier.05", "Advanced Assembling Machine IV", 5, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(216, "basicmachine.assembler.tier.06", "Advanced Assembling Machine V", 6, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(217, "basicmachine.assembler.tier.07", "Advanced Assembling Machine VI", 7, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(218, "basicmachine.assembler.tier.08", "Advanced Assembling Machine VII", 8, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(221, "basicmachine.bender.tier.01", "Basic Bending Machine", 1, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(222, "basicmachine.bender.tier.02", "Advanced Bending Machine", 2, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(223, "basicmachine.bender.tier.03", "Advanced Bending Machine II", 3, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(224, "basicmachine.bender.tier.04", "Advanced Bending Machine III", 4, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(225, "basicmachine.bender.tier.05", "Advanced Bending Machine IV", 5, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(226, "basicmachine.bender.tier.06", "Advanced Bending Machine V", 6, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(227, "basicmachine.bender.tier.07", "Advanced Bending Machine VI", 7, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(228, "basicmachine.bender.tier.08", "Advanced Bending Machine VII", 8, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(231, "basicmachine.canner.tier.01", "Basic Canning Machine", 1, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(232, "basicmachine.canner.tier.02", "Advanced Canning Machine", 2, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(233, "basicmachine.canner.tier.03", "Advanced Canning Machine II", 3, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(234, "basicmachine.canner.tier.04", "Advanced Canning Machine III", 4, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(235, "basicmachine.canner.tier.05", "Advanced Canning Machine IV", 5, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(236, "basicmachine.canner.tier.06", "Advanced Canning Machine V", 6, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(237, "basicmachine.canner.tier.07", "Advanced Canning Machine VI", 7, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Canner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(238, "basicmachine.canner.tier.08", "Advanced Canning Machine VII", 8, "Unmobile Food Canning Machine GTA4", GT_Recipe.GT_Recipe_Map.sCannerRecipes, 2, 2, 0, 0, 1, "Canner.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CANNER", new Object[]{aTextWirePump, aTextCableHull, "GGG", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(241, "basicmachine.compressor.tier.01", "Basic Compressor", 1, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(242, "basicmachine.compressor.tier.02", "Advanced Compressor", 2, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(243, "basicmachine.compressor.tier.03", "Advanced Compressor II", 3, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(244, "basicmachine.compressor.tier.04", "Advanced Compressor III", 4, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(245, "basicmachine.compressor.tier.05", "Singularity Compressor", 5, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(246, "basicmachine.compressor.tier.06", "Singularity Compressor", 6, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(247, "basicmachine.compressor.tier.07", "Singularity Compressor", 7, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Compressor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(248, "basicmachine.compressor.tier.08", "Singularity Compressor", 8, "Compress-O-Matic C77", GT_Recipe.GT_Recipe_Map.sCompressorRecipes, 1, 1, 0, 0, 1, "Compressor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "COMPRESSOR", new Object[]{" C ", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(251, "basicmachine.cutter.tier.01", "Basic Cutting Machine", 1, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_MV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(252, "basicmachine.cutter.tier.02", "Advanced Cutting Machine", 2, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_HV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(253, "basicmachine.cutter.tier.03", "Advanced Cutting Machine II", 3, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_EV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(254, "basicmachine.cutter.tier.04", "Advanced Cutting Machine III", 4, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_IV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(255, "basicmachine.cutter.tier.05", "Advanced Cutting Machine IV", 5, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_LuV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(256, "basicmachine.cutter.tier.06", "Advanced Cutting Machine V", 6, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_ZPM_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(257, "basicmachine.cutter.tier.07", "Advanced Cutting Machine VI", 7, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + ItemList.Machine_UV_Cutter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(258, "basicmachine.cutter.tier.08", "Advanced Cutting Machine VII", 8, "Slice'N Dice", GT_Recipe.GT_Recipe_Map.sCutterRecipes, 1, 2, 1000, 0, 1, "Cutter.png", "", aBoolConst_0, aBoolConst_0, 0, "CUTTER", new Object[]{"WCG", "VMB", "CWE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingDiamondBlade}).getStackForm(1L)); + + ItemList.Machine_LV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(261, "basicmachine.e_furnace.tier.01", "Basic Electric Furnace", 1, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_MV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(262, "basicmachine.e_furnace.tier.02", "Advanced Electric Furnace", 2, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_HV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(263, "basicmachine.e_furnace.tier.03", "Advanced Electric Furnace II", 3, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_EV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(264, "basicmachine.e_furnace.tier.04", "Advanced Electric Furnace III", 4, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_IV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(265, "basicmachine.e_furnace.tier.05", "Electron Exitement Processor", 5, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_LuV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(266, "basicmachine.e_furnace.tier.06", "Electron Exitement Processor", 6, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_ZPM_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(267, "basicmachine.e_furnace.tier.07", "Electron Exitement Processor", 7, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_UV_E_Furnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(268, "basicmachine.e_furnace.tier.08", "Electron Exitement Processor", 8, "Not like using a Commodore 64", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_FURNACE", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + + ItemList.Machine_LV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(271, "basicmachine.extractor.tier.01", "Basic Extractor", 1, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(272, "basicmachine.extractor.tier.02", "Advanced Extractor", 2, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(273, "basicmachine.extractor.tier.03", "Advanced Extractor II", 3, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(274, "basicmachine.extractor.tier.04", "Advanced Extractor III", 4, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(275, "basicmachine.extractor.tier.05", "Vacuum Extractor", 5, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(276, "basicmachine.extractor.tier.06", "Vacuum Extractor", 6, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(277, "basicmachine.extractor.tier.07", "Vacuum Extractor", 7, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Extractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(278, "basicmachine.extractor.tier.08", "Vacuum Extractor", 8, "Dejuicer-Device of Doom - D123", GT_Recipe.GT_Recipe_Map.sExtractorRecipes, 1, 1, 0, 0, 1, "Extractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "EXTRACTOR", new Object[]{"GCG", "EMP", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(281, "basicmachine.extruder.tier.01", "Basic Extruder", 1, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_MV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(282, "basicmachine.extruder.tier.02", "Advanced Extruder", 2, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_HV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(283, "basicmachine.extruder.tier.03", "Advanced Extruder II", 3, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_EV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(284, "basicmachine.extruder.tier.04", "Advanced Extruder III", 4, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_IV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(285, "basicmachine.extruder.tier.05", "Advanced Extruder IV", 5, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_LuV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(286, "basicmachine.extruder.tier.06", "Advanced Extruder V", 6, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_ZPM_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(287, "basicmachine.extruder.tier.07", "Advanced Extruder VI", 7, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_UV_Extruder.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(288, "basicmachine.extruder.tier.08", "Advanced Extruder VII", 8, "Universal Machine for Metal Working", GT_Recipe.GT_Recipe_Map.sExtruderRecipes, 2, 1, 0, 0, 1, "Extruder.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "EXTRUDER", new Object[]{"CCE", "XMP", "CCE", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'X', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + + ItemList.Machine_LV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(291, "basicmachine.lathe.tier.01", "Basic Lathe", 1, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OrePrefixes.gem.get(Materials.Diamond)}).getStackForm(1L)); + ItemList.Machine_MV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(292, "basicmachine.lathe.tier.02", "Advanced Lathe", 2, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_HV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(293, "basicmachine.lathe.tier.03", "Advanced Lathe II", 3, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_EV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(294, "basicmachine.lathe.tier.04", "Advanced Lathe III", 4, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_IV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(295, "basicmachine.lathe.tier.05", "Advanced Lathe IV", 5, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_LuV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(296, "basicmachine.lathe.tier.06", "Advanced Lathe V", 6, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_ZPM_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(297, "basicmachine.lathe.tier.07", "Advanced Lathe VI", 7, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_UV_Lathe.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(298, "basicmachine.lathe.tier.08", "Advanced Lathe VII", 8, "Produces Rods more efficiently", GT_Recipe.GT_Recipe_Map.sLatheRecipes, 1, 2, 0, 0, 1, "Lathe.png", "", aBoolConst_0, aBoolConst_0, 0, "LATHE", new Object[]{aTextWireCoil, "EMD", "CWP", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'D', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + + ItemList.Machine_LV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(301, "basicmachine.macerator.tier.01", "Basic Macerator", 1, "Schreddering your Ores", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 1, 0, 0, 1, "Macerator1.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "MACERATOR", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.gem.get(Materials.Diamond)}).getStackForm(1L)); + ItemList.Machine_MV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(302, "basicmachine.macerator.tier.02", "Advanced Macerator", 2, "Schreddering your Ores", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 1, 0, 0, 1, "Macerator1.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "MACERATOR", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingIndustrialDiamond}).getStackForm(1L)); + ItemList.Machine_HV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(303, "basicmachine.macerator.tier.03", "Universal Macerator", 3, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 2, 0, 0, 1, "Macerator2.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_EV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(304, "basicmachine.macerator.tier.04", "Universal Pulverizer", 4, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 3, 0, 0, 1, "Macerator3.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_IV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(305, "basicmachine.macerator.tier.05", "Blend-O-Matic 9001", 5, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_LuV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(306, "basicmachine.macerator.tier.06", "Blend-O-Matic 9001", 6, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_ZPM_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(307, "basicmachine.macerator.tier.07", "Blend-O-Matic 9001", 7, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + ItemList.Machine_UV_Macerator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(308, "basicmachine.macerator.tier.08", "Blend-O-Matic 9001", 8, "Schreddering your Ores with Byproducts", GT_Recipe.GT_Recipe_Map.sMaceratorRecipes, 1, 4, 0, 0, 1, "Macerator4.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(201)), aBoolConst_0, aBoolConst_0, 1, "PULVERIZER", new Object[]{"PEG", "WWM", "CCW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OreDictNames.craftingGrinder}).getStackForm(1L)); + + ItemList.Machine_LV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(311, "basicmachine.microwave.tier.01", "Basic Microwave", 1, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_MV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(312, "basicmachine.microwave.tier.02", "Advanced Microwave", 2, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_HV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(313, "basicmachine.microwave.tier.03", "Advanced Microwave II", 3, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_EV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(314, "basicmachine.microwave.tier.04", "Advanced Microwave III", 4, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_IV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(315, "basicmachine.microwave.tier.05", "Advanced Microwave IV", 5, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_LuV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(316, "basicmachine.microwave.tier.06", "Advanced Microwave V", 6, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_ZPM_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(317, "basicmachine.microwave.tier.07", "Advanced Microwave VI", 7, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + ItemList.Machine_UV_Microwave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(318, "basicmachine.microwave.tier.08", "Advanced Microwave VII", 8, "Did you really read the instruction Manual?", GT_Recipe.GT_Recipe_Map.sMicrowaveRecipes, 1, 1, 0, 0, 1, "E_Furnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "MICROWAVE", new Object[]{"LWC", "LMR", "LEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'L', OrePrefixes.plate.get(Materials.Lead)}).getStackForm(1L)); + + ItemList.Machine_LV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(321, "basicmachine.printer.tier.01", "Basic Printer", 1, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(322, "basicmachine.printer.tier.02", "Advanced Printer", 2, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(323, "basicmachine.printer.tier.03", "Advanced Printer II", 3, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(324, "basicmachine.printer.tier.04", "Advanced Printer III", 4, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(325, "basicmachine.printer.tier.05", "Advanced Printer IV", 5, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(326, "basicmachine.printer.tier.06", "Advanced Printer V", 6, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(327, "basicmachine.printer.tier.07", "Advanced Printer VI", 7, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Printer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(328, "basicmachine.printer.tier.08", "Advanced Printer VII", 8, "It can copy Books and paint Stuff", GT_Recipe.GT_Recipe_Map.sPrinterRecipes, 1, 1, 16000, 0, 1, "Printer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 1, "PRINTER", new Object[]{aTextMotorWire, aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(331, "basicmachine.recycler.tier.01", "Basic Recycler", 1, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_MV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(332, "basicmachine.recycler.tier.02", "Advanced Recycler", 2, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_HV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(333, "basicmachine.recycler.tier.03", "Advanced Recycler II", 3, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_EV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(334, "basicmachine.recycler.tier.04", "Advanced Recycler III", 4, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_IV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(335, "basicmachine.recycler.tier.05", "The Oblitterator", 5, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_LuV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(336, "basicmachine.recycler.tier.06", "The Oblitterator", 6, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_ZPM_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(337, "basicmachine.recycler.tier.07", "The Oblitterator", 7, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); + ItemList.Machine_UV_Recycler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(338, "basicmachine.recycler.tier.08", "The Oblitterator", 8, "Compress, burn, obliterate and filter EVERYTHING", GT_Recipe.GT_Recipe_Map.sRecyclerRecipes, 1, 1, 0, 0, 1, "Recycler.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "RECYCLER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.dust.get(Materials.Glowstone)}).getStackForm(1L)); ItemList.Machine_LV_Scanner.set(new GT_MetaTileEntity_Scanner(341, "basicmachine.scanner.tier.01", "Basic Scanner", 1).getStackForm(1L)); ItemList.Machine_MV_Scanner.set(new GT_MetaTileEntity_Scanner(342, "basicmachine.scanner.tier.02", "Advanced Scanner", 2).getStackForm(1L)); @@ -727,50 +727,50 @@ private static void run2() { GT_ModHandler.addCraftingRecipe(ItemList.Machine_ZPM_Scanner.get(1L, new Object[0]), bitsd, new Object[]{"CTC", aTextWireHull, "CRC", 'M', ItemList.Hull_ZPM, 'T', ItemList.Emitter_ZPM, 'R', ItemList.Sensor_ZPM, 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'W', OrePrefixes.cableGt01.get(Materials.Naquadah)}); GT_ModHandler.addCraftingRecipe(ItemList.Machine_UV_Scanner.get(1L, new Object[0]), bitsd, new Object[]{"CTC", aTextWireHull, "CRC", 'M', ItemList.Hull_UV, 'T', ItemList.Emitter_UV, 'R', ItemList.Sensor_UV, 'C', OrePrefixes.circuit.get(Materials.Infinite), 'W', OrePrefixes.cableGt01.get(Materials.NaquadahAlloy)}); - ItemList.Machine_LV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(351, "basicmachine.wiremill.tier.01", "Basic Wiremill", 1, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(352, "basicmachine.wiremill.tier.02", "Advanced Wiremill", 2, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(353, "basicmachine.wiremill.tier.03", "Advanced Wiremill II", 3, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(354, "basicmachine.wiremill.tier.04", "Advanced Wiremill III", 4, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(355, "basicmachine.wiremill.tier.05", "Advanced Wiremill IV", 5, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(356, "basicmachine.wiremill.tier.06", "Advanced Wiremill V", 6, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(357, "basicmachine.wiremill.tier.07", "Advanced Wiremill VI", 7, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(358, "basicmachine.wiremill.tier.08", "Advanced Wiremill VII", 8, "Produces Wires more efficiently", GT_RecipeMap.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(361, "basicmachine.centrifuge.tier.01", "Basic Centrifuge", 1, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(362, "basicmachine.centrifuge.tier.02", "Advanced Centrifuge", 2, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(363, "basicmachine.centrifuge.tier.03", "Turbo Centrifuge", 3, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(364, "basicmachine.centrifuge.tier.04", "Molecular Separator", 4, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(365, "basicmachine.centrifuge.tier.05", "Molecular Cyclone", 5, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(366, "basicmachine.centrifuge.tier.06", "Molecular Cyclone", 6, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(367, "basicmachine.centrifuge.tier.07", "Molecular Cyclone", 7, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(368, "basicmachine.centrifuge.tier.08", "Molecular Cyclone", 8, "Separating Molecules", GT_RecipeMap.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(371, "basicmachine.electrolyzer.tier.01", "Basic Electrolyzer", 1, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Gold), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(372, "basicmachine.electrolyzer.tier.02", "Advanced Electrolyzer", 2, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Silver), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(373, "basicmachine.electrolyzer.tier.03", "Advanced Electrolyzer II", 3, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Electrum), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(374, "basicmachine.electrolyzer.tier.04", "Advanced Electrolyzer III", 4, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Platinum), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(375, "basicmachine.electrolyzer.tier.05", "Molecular Disintegrator E-4908", 5, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(376, "basicmachine.electrolyzer.tier.06", "Molecular Disintegrator E-4908", 6, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(377, "basicmachine.electrolyzer.tier.07", "Molecular Disintegrator E-4908", 7, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(378, "basicmachine.electrolyzer.tier.08", "Molecular Disintegrator E-4908", 8, "Electrolyzing Molecules", GT_RecipeMap.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(381, "basicmachine.thermalcentrifuge.tier.01", "Basic Thermal Centrifuge", 1, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_MV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(382, "basicmachine.thermalcentrifuge.tier.02", "Advanced Thermal Centrifuge", 2, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_HV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(383, "basicmachine.thermalcentrifuge.tier.03", "Advanced Thermal Centrifuge II", 3, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_EV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(384, "basicmachine.thermalcentrifuge.tier.04", "Advanced Thermal Centrifuge III", 4, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_IV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(385, "basicmachine.thermalcentrifuge.tier.05", "Blaze Sweatshop T-6350", 5, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_LuV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(386, "basicmachine.thermalcentrifuge.tier.06", "Blaze Sweatshop T-6350", 6, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_ZPM_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(387, "basicmachine.thermalcentrifuge.tier.07", "Blaze Sweatshop T-6350", 7, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - ItemList.Machine_UV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(388, "basicmachine.thermalcentrifuge.tier.08", "Blaze Sweatshop T-6350", 8, "Separating Ores more precisely", GT_RecipeMap.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); - - ItemList.Machine_LV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(391, "basicmachine.orewasher.tier.01", "Basic Ore Washing Plant", 1, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(392, "basicmachine.orewasher.tier.02", "Advanced Ore Washing Plant", 2, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(393, "basicmachine.orewasher.tier.03", "Advanced Ore Washing Plant II", 3, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(394, "basicmachine.orewasher.tier.04", "Advanced Ore Washing Plant III", 4, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(395, "basicmachine.orewasher.tier.05", "Repurposed Laundry-Washer I-360", 5, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(396, "basicmachine.orewasher.tier.06", "Repurposed Laundry-Washer I-360", 6, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(397, "basicmachine.orewasher.tier.07", "Repurposed Laundry-Washer I-360", 7, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(398, "basicmachine.orewasher.tier.08", "Repurposed Laundry-Washer I-360", 8, "Getting more Byproducts from your Ores", GT_RecipeMap.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(351, "basicmachine.wiremill.tier.01", "Basic Wiremill", 1, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(352, "basicmachine.wiremill.tier.02", "Advanced Wiremill", 2, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(353, "basicmachine.wiremill.tier.03", "Advanced Wiremill II", 3, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(354, "basicmachine.wiremill.tier.04", "Advanced Wiremill III", 4, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(355, "basicmachine.wiremill.tier.05", "Advanced Wiremill IV", 5, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(356, "basicmachine.wiremill.tier.06", "Advanced Wiremill V", 6, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(357, "basicmachine.wiremill.tier.07", "Advanced Wiremill VI", 7, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Wiremill.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(358, "basicmachine.wiremill.tier.08", "Advanced Wiremill VII", 8, "Produces Wires more efficiently", GT_Recipe.GT_Recipe_Map.sWiremillRecipes, 1, 1, 0, 0, 1, "Wiremill.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(204)), aBoolConst_0, aBoolConst_0, 0, "WIREMILL", new Object[]{aTextMotorWire, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(361, "basicmachine.centrifuge.tier.01", "Basic Centrifuge", 1, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(362, "basicmachine.centrifuge.tier.02", "Advanced Centrifuge", 2, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(363, "basicmachine.centrifuge.tier.03", "Turbo Centrifuge", 3, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(364, "basicmachine.centrifuge.tier.04", "Molecular Separator", 4, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(365, "basicmachine.centrifuge.tier.05", "Molecular Cyclone", 5, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(366, "basicmachine.centrifuge.tier.06", "Molecular Cyclone", 6, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(367, "basicmachine.centrifuge.tier.07", "Molecular Cyclone", 7, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Centrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(368, "basicmachine.centrifuge.tier.08", "Molecular Cyclone", 8, "Separating Molecules", GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, 2, 6, 64000, 0, 1, "Centrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "CENTRIFUGE", new Object[]{"CEC", aTextWireHull, "CEC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(371, "basicmachine.electrolyzer.tier.01", "Basic Electrolyzer", 1, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Gold), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(372, "basicmachine.electrolyzer.tier.02", "Advanced Electrolyzer", 2, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Silver), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(373, "basicmachine.electrolyzer.tier.03", "Advanced Electrolyzer II", 3, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Electrum), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(374, "basicmachine.electrolyzer.tier.04", "Advanced Electrolyzer III", 4, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Platinum), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(375, "basicmachine.electrolyzer.tier.05", "Molecular Disintegrator E-4908", 5, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(376, "basicmachine.electrolyzer.tier.06", "Molecular Disintegrator E-4908", 6, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(377, "basicmachine.electrolyzer.tier.07", "Molecular Disintegrator E-4908", 7, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Electrolyzer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(378, "basicmachine.electrolyzer.tier.08", "Molecular Disintegrator E-4908", 8, "Electrolyzing Molecules", GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, 2, 6, 64000, 0, 1, "Electrolyzer.png", "", aBoolConst_0, aBoolConst_0, 0, "ELECTROLYZER", new Object[]{"IGI", "IMI", "CWC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', OrePrefixes.wireGt01.get(Materials.Osmium), 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(381, "basicmachine.thermalcentrifuge.tier.01", "Basic Thermal Centrifuge", 1, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_MV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(382, "basicmachine.thermalcentrifuge.tier.02", "Advanced Thermal Centrifuge", 2, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_HV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(383, "basicmachine.thermalcentrifuge.tier.03", "Advanced Thermal Centrifuge II", 3, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_EV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(384, "basicmachine.thermalcentrifuge.tier.04", "Advanced Thermal Centrifuge III", 4, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_IV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(385, "basicmachine.thermalcentrifuge.tier.05", "Blaze Sweatshop T-6350", 5, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_LuV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(386, "basicmachine.thermalcentrifuge.tier.06", "Blaze Sweatshop T-6350", 6, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_ZPM_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(387, "basicmachine.thermalcentrifuge.tier.07", "Blaze Sweatshop T-6350", 7, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + ItemList.Machine_UV_ThermalCentrifuge.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(388, "basicmachine.thermalcentrifuge.tier.08", "Blaze Sweatshop T-6350", 8, "Separating Ores more precisely", GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes, 1, 3, 0, 0, 1, "ThermalCentrifuge.png", "", aBoolConst_0, aBoolConst_0, 0, "THERMAL_CENTRIFUGE", new Object[]{"CEC", "OMO", "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L)); + + ItemList.Machine_LV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(391, "basicmachine.orewasher.tier.01", "Basic Ore Washing Plant", 1, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(392, "basicmachine.orewasher.tier.02", "Advanced Ore Washing Plant", 2, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(393, "basicmachine.orewasher.tier.03", "Advanced Ore Washing Plant II", 3, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(394, "basicmachine.orewasher.tier.04", "Advanced Ore Washing Plant III", 4, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(395, "basicmachine.orewasher.tier.05", "Repurposed Laundry-Washer I-360", 5, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(396, "basicmachine.orewasher.tier.06", "Repurposed Laundry-Washer I-360", 6, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(397, "basicmachine.orewasher.tier.07", "Repurposed Laundry-Washer I-360", 7, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_OreWasher.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(398, "basicmachine.orewasher.tier.08", "Repurposed Laundry-Washer I-360", 8, "Getting more Byproducts from your Ores", GT_Recipe.GT_Recipe_Map.sOreWasherRecipes, 1, 3, 16000, 0, 1, "OreWasher.png", "", aBoolConst_0, aBoolConst_0, 0, "ORE_WASHER", new Object[]{"RGR", "CEC", aTextWireHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); ItemList.Machine_LV_Boxinator.set(new GT_MetaTileEntity_Boxinator(401, "basicmachine.boxinator.tier.01", "Basic Packager", 1).getStackForm(1L)); ItemList.Machine_MV_Boxinator.set(new GT_MetaTileEntity_Boxinator(402, "basicmachine.boxinator.tier.02", "Advanced Packager", 2).getStackForm(1L)); @@ -790,32 +790,32 @@ private static void run2() { GT_ModHandler.addCraftingRecipe(ItemList.Machine_ZPM_Boxinator.get(1L, new Object[0]), bitsd, new Object[]{"BCB", "RMV", aTextWireCoil, 'M', ItemList.Hull_ZPM, 'R', ItemList.Robot_Arm_ZPM, 'V', ItemList.Conveyor_Module_ZPM, 'C', OrePrefixes.circuit.get(Materials.Ultimate), 'W', OrePrefixes.cableGt01.get(Materials.Naquadah), 'B', OreDictNames.craftingChest}); GT_ModHandler.addCraftingRecipe(ItemList.Machine_UV_Boxinator.get(1L, new Object[0]), bitsd, new Object[]{"BCB", "RMV", aTextWireCoil, 'M', ItemList.Hull_UV, 'R', ItemList.Robot_Arm_UV, 'V', ItemList.Conveyor_Module_UV, 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'W', OrePrefixes.cableGt01.get(Materials.NaquadahAlloy), 'B', OreDictNames.craftingChest}); - ItemList.Machine_LV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(411, "basicmachine.unboxinator.tier.01", "Basic Unpackager", 1, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_MV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(412, "basicmachine.unboxinator.tier.02", "Advanced Unpackager", 2, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_HV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(413, "basicmachine.unboxinator.tier.03", "Advanced Unpackager II", 3, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_EV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(414, "basicmachine.unboxinator.tier.04", "Advanced Unpackager III", 4, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_IV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(415, "basicmachine.unboxinator.tier.05", "Unboxinator", 5, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_LuV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(416, "basicmachine.unboxinator.tier.06", "Unboxinator", 6, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_ZPM_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(417, "basicmachine.unboxinator.tier.07", "Unboxinator", 7, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_UV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(418, "basicmachine.unboxinator.tier.08", "Unboxinator", 8, "Grabs things out of Boxes", GT_RecipeMap.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - - ItemList.Machine_LV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(421, "basicmachine.chemicalreactor.tier.01", "Basic Chemical Reactor", 1, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(422, "basicmachine.chemicalreactor.tier.02", "Advanced Chemical Reactor", 2, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(423, "basicmachine.chemicalreactor.tier.03", "Advanced Chemical Reactor II", 3, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeMedium.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_EV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(424, "basicmachine.chemicalreactor.tier.04", "Advanced Chemical Reactor III", 4, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeLarge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_IV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(425, "basicmachine.chemicalreactor.tier.05", "Advanced Chemical Reactor IV", 5, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_LuV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(426, "basicmachine.chemicalreactor.tier.06", "Advanced Chemical Reactor V", 6, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_ZPM_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(427, "basicmachine.chemicalreactor.tier.07", "Advanced Chemical Reactor VI", 7, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_UV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(428, "basicmachine.chemicalreactor.tier.08", "Advanced Chemical Reactor VII", 8, "Letting Chemicals react with each other", GT_RecipeMap.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - - ItemList.Machine_LV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(431, "basicmachine.fluidcanner.tier.01", "Basic Fluid Canner", 1, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 16000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(432, "basicmachine.fluidcanner.tier.02", "Advanced Fluid Canner", 2, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 32000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(433, "basicmachine.fluidcanner.tier.03", "Quick Fluid Canner", 3, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 48000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(434, "basicmachine.fluidcanner.tier.04", "Turbo Fluid Canner", 4, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 64000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(435, "basicmachine.fluidcanner.tier.05", "Instant Fluid Canner", 5, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(436, "basicmachine.fluidcanner.tier.06", "Instant Fluid Canner", 6, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(437, "basicmachine.fluidcanner.tier.07", "Instant Fluid Canner", 7, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(438, "basicmachine.fluidcanner.tier.08", "Instant Fluid Canner", 8, "Puts Fluids into and out of Containers", GT_RecipeMap.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(411, "basicmachine.unboxinator.tier.01", "Basic Unpackager", 1, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_MV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(412, "basicmachine.unboxinator.tier.02", "Advanced Unpackager", 2, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_HV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(413, "basicmachine.unboxinator.tier.03", "Advanced Unpackager II", 3, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_EV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(414, "basicmachine.unboxinator.tier.04", "Advanced Unpackager III", 4, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_IV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(415, "basicmachine.unboxinator.tier.05", "Unboxinator", 5, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_LuV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(416, "basicmachine.unboxinator.tier.06", "Unboxinator", 6, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_ZPM_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(417, "basicmachine.unboxinator.tier.07", "Unboxinator", 7, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_UV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(418, "basicmachine.unboxinator.tier.08", "Unboxinator", 8, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + + ItemList.Machine_LV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(421, "basicmachine.chemicalreactor.tier.01", "Basic Chemical Reactor", 1, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(422, "basicmachine.chemicalreactor.tier.02", "Advanced Chemical Reactor", 2, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(423, "basicmachine.chemicalreactor.tier.03", "Advanced Chemical Reactor II", 3, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeMedium.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_EV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(424, "basicmachine.chemicalreactor.tier.04", "Advanced Chemical Reactor III", 4, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeLarge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_IV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(425, "basicmachine.chemicalreactor.tier.05", "Advanced Chemical Reactor IV", 5, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_LuV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(426, "basicmachine.chemicalreactor.tier.06", "Advanced Chemical Reactor V", 6, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_ZPM_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(427, "basicmachine.chemicalreactor.tier.07", "Advanced Chemical Reactor VI", 7, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_UV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(428, "basicmachine.chemicalreactor.tier.08", "Advanced Chemical Reactor VII", 8, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + + ItemList.Machine_LV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(431, "basicmachine.fluidcanner.tier.01", "Basic Fluid Canner", 1, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 16000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(432, "basicmachine.fluidcanner.tier.02", "Advanced Fluid Canner", 2, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 32000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(433, "basicmachine.fluidcanner.tier.03", "Quick Fluid Canner", 3, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 48000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(434, "basicmachine.fluidcanner.tier.04", "Turbo Fluid Canner", 4, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 64000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(435, "basicmachine.fluidcanner.tier.05", "Instant Fluid Canner", 5, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(436, "basicmachine.fluidcanner.tier.06", "Instant Fluid Canner", 6, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(437, "basicmachine.fluidcanner.tier.07", "Instant Fluid Canner", 7, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(438, "basicmachine.fluidcanner.tier.08", "Instant Fluid Canner", 8, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 80000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", "GMG", "WPW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); ItemList.Machine_LV_RockBreaker.set(new GT_MetaTileEntity_RockBreaker(441, "basicmachine.rockbreaker.tier.01", "Basic Rock Breaker", 1).getStackForm(1L)); ItemList.Machine_MV_RockBreaker.set(new GT_MetaTileEntity_RockBreaker(442, "basicmachine.rockbreaker.tier.02", "Advanced Rock Breaker", 2).getStackForm(1L)); @@ -871,14 +871,14 @@ private static void run2() { GT_ModHandler.addCraftingRecipe(ItemList.Machine_ZPM_Massfab.get(1L, new Object[0]), bitsd, new Object[]{"CFC", aTextWireHull, "CFC", 'M', ItemList.Hull_ZPM, 'F', ItemList.Field_Generator_ZPM, 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'W', OrePrefixes.cableGt04.get(Materials.Naquadah)}); GT_ModHandler.addCraftingRecipe(ItemList.Machine_UV_Massfab.get(1L, new Object[0]), bitsd, new Object[]{"CFC", aTextWireHull, "CFC", 'M', ItemList.Hull_UV, 'F', ItemList.Field_Generator_UV, 'C', OrePrefixes.circuit.get(Materials.Infinite), 'W', OrePrefixes.cableGt04.get(Materials.NaquadahAlloy)}); - ItemList.Machine_LV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(471, "basicmachine.amplifab.tier.01", "Basic Amplifabricator", 1, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_MV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(472, "basicmachine.amplifab.tier.02", "Advanced Amplifabricator", 2, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_HV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(473, "basicmachine.amplifab.tier.03", "Advanced Amplifabricator II", 3, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_EV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(474, "basicmachine.amplifab.tier.04", "Advanced Amplifabricator III", 4, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_IV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(475, "basicmachine.amplifab.tier.05", "Advanced Amplifabricator IV", 5, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_LuV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(476, "basicmachine.amplifab.tier.06", "Advanced Amplifabricator IV", 6, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_ZPM_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(477, "basicmachine.amplifab.tier.07", "Advanced Amplifabricator IV", 7, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); - ItemList.Machine_UV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(478, "basicmachine.amplifab.tier.08", "Advanced Amplifabricator IV", 8, "Extracting UU Amplifier", GT_RecipeMap.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_LV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(471, "basicmachine.amplifab.tier.01", "Basic Amplifabricator", 1, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_MV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(472, "basicmachine.amplifab.tier.02", "Advanced Amplifabricator", 2, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_HV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(473, "basicmachine.amplifab.tier.03", "Advanced Amplifabricator II", 3, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_EV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(474, "basicmachine.amplifab.tier.04", "Advanced Amplifabricator III", 4, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_IV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(475, "basicmachine.amplifab.tier.05", "Advanced Amplifabricator IV", 5, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_LuV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(476, "basicmachine.amplifab.tier.06", "Advanced Amplifabricator IV", 6, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_ZPM_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(477, "basicmachine.amplifab.tier.07", "Advanced Amplifabricator IV", 7, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); + ItemList.Machine_UV_Amplifab.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(478, "basicmachine.amplifab.tier.08", "Advanced Amplifabricator IV", 8, "Extracting UU Amplifier", GT_Recipe.GT_Recipe_Map.sAmplifiers, 1, 1, 1000, 0, 1, "Amplifabricator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "AMPLIFAB", new Object[]{aTextWirePump, aTextPlateMotor, "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4}).getStackForm(1L)); ItemList.Machine_LV_Replicator.set(new GT_MetaTileEntity_Replicator(481, "basicmachine.replicator.tier.01", "Basic Replicator", 1).getStackForm(1L)); ItemList.Machine_MV_Replicator.set(new GT_MetaTileEntity_Replicator(482, "basicmachine.replicator.tier.02", "Advanced Replicator", 2).getStackForm(1L)); @@ -916,167 +916,167 @@ private static void run2() { GT_ModHandler.addCraftingRecipe(ItemList.Machine_ZPM_Brewery.get(1L, new Object[0]), bitsd, new Object[]{"GPG", aTextWireHull, "CBC", 'M', ItemList.Hull_ZPM, 'P', ItemList.Electric_Pump_ZPM, 'B', OrePrefixes.stick.get(Materials.Blaze), 'C', OrePrefixes.circuit.get(Materials.Ultimate), 'W', OrePrefixes.cableGt01.get(Materials.Naquadah), 'G', Ic2Items.reinforcedGlass}); GT_ModHandler.addCraftingRecipe(ItemList.Machine_UV_Brewery.get(1L, new Object[0]), bitsd, new Object[]{"GPG", aTextWireHull, "CBC", 'M', ItemList.Hull_UV, 'P', ItemList.Electric_Pump_UV, 'B', OrePrefixes.stick.get(Materials.Blaze), 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'W', OrePrefixes.cableGt01.get(Materials.NaquadahAlloy), 'G', Ic2Items.reinforcedGlass}); - ItemList.Machine_LV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(501, "basicmachine.fermenter.tier.01", "Basic Fermenter", 1, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(502, "basicmachine.fermenter.tier.02", "Advanced Fermenter", 2, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(503, "basicmachine.fermenter.tier.03", "Advanced Fermenter II", 3, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(504, "basicmachine.fermenter.tier.04", "Advanced Fermenter III", 4, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(505, "basicmachine.fermenter.tier.05", "Advanced Fermenter IV", 5, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(506, "basicmachine.fermenter.tier.06", "Advanced Fermenter V", 6, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(507, "basicmachine.fermenter.tier.07", "Advanced Fermenter VI", 7, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(508, "basicmachine.fermenter.tier.08", "Advanced Fermenter VII", 8, "Fermenting Fluids", GT_RecipeMap.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(511, "basicmachine.fluidextractor.tier.01", "Basic Fluid Extractor", 1, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(512, "basicmachine.fluidextractor.tier.02", "Advanced Fluid Extractor", 2, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(513, "basicmachine.fluidextractor.tier.03", "Advanced Fluid Extractor II", 3, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(514, "basicmachine.fluidextractor.tier.04", "Advanced Fluid Extractor III", 4, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(515, "basicmachine.fluidextractor.tier.05", "Advanced Fluid Extractor IV", 5, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(516, "basicmachine.fluidextractor.tier.06", "Advanced Fluid Extractor V", 6, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(517, "basicmachine.fluidextractor.tier.07", "Advanced Fluid Extractor VI", 7, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(518, "basicmachine.fluidextractor.tier.08", "Advanced Fluid Extractor VII", 8, "Extracting Fluids from Items", GT_RecipeMap.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(521, "basicmachine.fluidsolidifier.tier.01", "Basic Fluid Solidifier", 1, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_MV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(522, "basicmachine.fluidsolidifier.tier.02", "Advanced Fluid Solidifier", 2, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_HV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(523, "basicmachine.fluidsolidifier.tier.03", "Advanced Fluid Solidifier II", 3, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_EV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(524, "basicmachine.fluidsolidifier.tier.04", "Advanced Fluid Solidifier III", 4, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_IV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(525, "basicmachine.fluidsolidifier.tier.05", "Advanced Fluid Solidifier IV", 5, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_LuV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(526, "basicmachine.fluidsolidifier.tier.06", "Advanced Fluid Solidifier V", 6, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_ZPM_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(527, "basicmachine.fluidsolidifier.tier.07", "Advanced Fluid Solidifier VI", 7, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - ItemList.Machine_UV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(528, "basicmachine.fluidsolidifier.tier.08", "Advanced Fluid Solidifier VII", 8, "Cools Fluids down to form Solids", GT_RecipeMap.sFluidSolidificationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); - - ItemList.Machine_LV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(531, "basicmachine.distillery.tier.01", "Basic Distillery", 1, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(532, "basicmachine.distillery.tier.02", "Advanced Distillery", 2, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(533, "basicmachine.distillery.tier.03", "Advanced Distillery II", 3, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(534, "basicmachine.distillery.tier.04", "Advanced Distillery III", 4, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(535, "basicmachine.distillery.tier.05", "Advanced Distillery IV", 5, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(536, "basicmachine.distillery.tier.06", "Advanced Distillery V", 6, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(537, "basicmachine.distillery.tier.07", "Advanced Distillery VI", 7, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(538, "basicmachine.distillery.tier.08", "Advanced Distillery VII", 8, "Extracting the most relevant Parts of Fluids", GT_RecipeMap.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(541, "basicmachine.chemicalbath.tier.01", "Basic Chemical Bath", 1, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(542, "basicmachine.chemicalbath.tier.02", "Advanced Chemical Bath", 2, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(543, "basicmachine.chemicalbath.tier.03", "Advanced Chemical Bath II", 3, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(544, "basicmachine.chemicalbath.tier.04", "Advanced Chemical Bath III", 4, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(545, "basicmachine.chemicalbath.tier.05", "Advanced Chemical Bath IV", 5, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(546, "basicmachine.chemicalbath.tier.06", "Advanced Chemical Bath V", 6, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(547, "basicmachine.chemicalbath.tier.07", "Advanced Chemical Bath VI", 7, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(548, "basicmachine.chemicalbath.tier.08", "Advanced Chemical Bath VII", 8, "Bathing Ores in Chemicals to separate them", GT_RecipeMap.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(551, "basicmachine.polarizer.tier.01", "Basic Polarizer", 1, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(552, "basicmachine.polarizer.tier.02", "Advanced Polarizer", 2, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(553, "basicmachine.polarizer.tier.03", "Advanced Polarizer II", 3, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(554, "basicmachine.polarizer.tier.04", "Advanced Polarizer III", 4, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(555, "basicmachine.polarizer.tier.05", "Advanced Polarizer IV", 5, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(556, "basicmachine.polarizer.tier.06", "Advanced Polarizer V", 6, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(557, "basicmachine.polarizer.tier.07", "Advanced Polarizer VI", 7, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(558, "basicmachine.polarizer.tier.08", "Advanced Polarizer VII", 8, "Bipolarising your Magnets", GT_RecipeMap.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(561, "basicmachine.electromagneticseparator.tier.01", "Basic Electromagnetic Separator", 1, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(562, "basicmachine.electromagneticseparator.tier.02", "Advanced Electromagnetic Separator", 2, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(563, "basicmachine.electromagneticseparator.tier.03", "Advanced Electromagnetic Separator II", 3, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(564, "basicmachine.electromagneticseparator.tier.04", "Advanced Electromagnetic Separator III", 4, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(565, "basicmachine.electromagneticseparator.tier.05", "Advanced Electromagnetic Separator IV", 5, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(566, "basicmachine.electromagneticseparator.tier.06", "Advanced Electromagnetic Separator V", 6, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(567, "basicmachine.electromagneticseparator.tier.07", "Advanced Electromagnetic Separator VI", 7, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(568, "basicmachine.electromagneticseparator.tier.08", "Advanced Electromagnetic Separator VII", 8, "Separating the magnetic Ores from the rest", GT_RecipeMap.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(571, "basicmachine.autoclave.tier.01", "Basic Autoclave", 1, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(572, "basicmachine.autoclave.tier.02", "Advanced Autoclave", 2, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(573, "basicmachine.autoclave.tier.03", "Advanced Autoclave II", 3, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(574, "basicmachine.autoclave.tier.04", "Advanced Autoclave III", 4, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(575, "basicmachine.autoclave.tier.05", "Advanced Autoclave IV", 5, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(576, "basicmachine.autoclave.tier.06", "Advanced Autoclave V", 6, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(577, "basicmachine.autoclave.tier.07", "Advanced Autoclave VI", 7, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(578, "basicmachine.autoclave.tier.08", "Advanced Autoclave VII", 8, "Crystallizing your Dusts", GT_RecipeMap.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(581, "basicmachine.mixer.tier.01", "Basic Mixer", 1, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(582, "basicmachine.mixer.tier.02", "Advanced Mixer", 2, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(583, "basicmachine.mixer.tier.03", "Advanced Mixer II", 3, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(584, "basicmachine.mixer.tier.04", "Advanced Mixer III", 4, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(585, "basicmachine.mixer.tier.05", "Advanced Mixer IV", 5, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(586, "basicmachine.mixer.tier.06", "Advanced Mixer V", 6, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(587, "basicmachine.mixer.tier.07", "Advanced Mixer VI", 7, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(588, "basicmachine.mixer.tier.08", "Advanced Mixer VII", 8, "Will it Blend?", GT_RecipeMap.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(591, "basicmachine.laserengraver.tier.01", "Basic Precision Laser Engraver", 1, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(592, "basicmachine.laserengraver.tier.02", "Advanced Precision Laser Engraver", 2, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(593, "basicmachine.laserengraver.tier.03", "Advanced Precision Laser Engraver II", 3, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(594, "basicmachine.laserengraver.tier.04", "Advanced Precision Laser Engraver III", 4, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(595, "basicmachine.laserengraver.tier.05", "Advanced Precision Laser Engraver IV", 5, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(596, "basicmachine.laserengraver.tier.06", "Advanced Precision Laser Engraver V", 6, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(597, "basicmachine.laserengraver.tier.07", "Advanced Precision Laser Engraver VI", 7, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(598, "basicmachine.laserengraver.tier.08", "Advanced Precision Laser Engraver VII", 8, "Don't look directly at the Laser", GT_RecipeMap.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(601, "basicmachine.press.tier.01", "Basic Forming Press", 1, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(602, "basicmachine.press.tier.02", "Advanced Forming Press", 2, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(603, "basicmachine.press.tier.03", "Advanced Forming Press II", 3, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(604, "basicmachine.press.tier.04", "Advanced Forming Press III", 4, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(605, "basicmachine.press.tier.05", "Advanced Forming Press IV", 5, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(606, "basicmachine.press.tier.06", "Advanced Forming Press V", 6, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(607, "basicmachine.press.tier.07", "Advanced Forming Press VI", 7, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(608, "basicmachine.press.tier.08", "Advanced Forming Press VII", 8, "Imprinting Images into things", GT_RecipeMap.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(611, "basicmachine.hammer.tier.01", "Basic Forge Hammer", 1, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_MV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(612, "basicmachine.hammer.tier.02", "Advanced Forge Hammer", 2, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_HV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(613, "basicmachine.hammer.tier.03", "Advanced Forge Hammer II", 3, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_EV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(614, "basicmachine.hammer.tier.04", "Advanced Forge Hammer III", 4, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_IV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(615, "basicmachine.hammer.tier.05", "Advanced Forge Hammer IV", 5, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_LuV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(616, "basicmachine.hammer.tier.06", "Advanced Forge Hammer V", 6, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_ZPM_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(617, "basicmachine.hammer.tier.07", "Advanced Forge Hammer VI", 7, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - ItemList.Machine_UV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(618, "basicmachine.hammer.tier.08", "Advanced Forge Hammer VII", 8, "Stop, Hammertime!", GT_RecipeMap.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); - - ItemList.Machine_LV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(621, "basicmachine.fluidheater.tier.01", "Basic Fluid Heater", 1, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(622, "basicmachine.fluidheater.tier.02", "Advanced Fluid Heater", 2, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_HV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(623, "basicmachine.fluidheater.tier.03", "Advanced Fluid Heater II", 3, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_EV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(624, "basicmachine.fluidheater.tier.04", "Advanced Fluid Heater III", 4, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_IV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(625, "basicmachine.fluidheater.tier.05", "Advanced Fluid Heater IV", 5, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_LuV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(626, "basicmachine.fluidheater.tier.06", "Advanced Fluid Heater V", 6, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_ZPM_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(627, "basicmachine.fluidheater.tier.07", "Advanced Fluid Heater VI", 7, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_UV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(628, "basicmachine.fluidheater.tier.08", "Advanced Fluid Heater VII", 8, "Heating up your Fluids", GT_RecipeMap.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - - ItemList.Machine_LV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(631, "basicmachine.slicer.tier.01", "Basic Slicing Machine", 1, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(632, "basicmachine.slicer.tier.02", "Advanced Slicing Machine", 2, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(633, "basicmachine.slicer.tier.03", "Advanced Slicing Machine II", 3, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(634, "basicmachine.slicer.tier.04", "Advanced Slicing Machine III", 4, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(635, "basicmachine.slicer.tier.05", "Advanced Slicing Machine IV", 5, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(636, "basicmachine.slicer.tier.06", "Advanced Slicing Machine V", 6, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(637, "basicmachine.slicer.tier.07", "Advanced Slicing Machine VI", 7, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(638, "basicmachine.slicer.tier.08", "Advanced Slicing Machine VII", 8, "Slice of Life", GT_RecipeMap.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(641, "basicmachine.sifter.tier.01", "Basic Sifting Machine", 1, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_MV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(642, "basicmachine.sifter.tier.02", "Advanced Sifting Machine", 2, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_HV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(643, "basicmachine.sifter.tier.03", "Advanced Sifting Machine II", 3, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_EV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(644, "basicmachine.sifter.tier.04", "Advanced Sifting Machine III", 4, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_IV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(645, "basicmachine.sifter.tier.05", "Advanced Sifting Machine IV", 5, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_LuV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(646, "basicmachine.sifter.tier.06", "Advanced Sifting Machine V", 6, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_ZPM_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(647, "basicmachine.sifter.tier.07", "Advanced Sifting Machine VI", 7, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - ItemList.Machine_UV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(648, "basicmachine.sifter.tier.08", "Advanced Sifting Machine VII", 8, "Stay calm and keep sifting", GT_RecipeMap.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); - - ItemList.Machine_LV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(651, "basicmachine.arcfurnace.tier.01", "Basic Arc Furnace", 1, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_MV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(652, "basicmachine.arcfurnace.tier.02", "Advanced Arc Furnace", 2, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_HV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(653, "basicmachine.arcfurnace.tier.03", "Advanced Arc Furnace II", 3, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_EV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(654, "basicmachine.arcfurnace.tier.04", "Advanced Arc Furnace III", 4, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_IV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(655, "basicmachine.arcfurnace.tier.05", "Advanced Arc Furnace IV", 5, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_LuV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(656, "basicmachine.arcfurnace.tier.06", "Advanced Arc Furnace V", 6, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_ZPM_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(657, "basicmachine.arcfurnace.tier.07", "Advanced Arc Furnace VI", 7, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_UV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(658, "basicmachine.arcfurnace.tier.08", "Advanced Arc Furnace VII", 8, "", GT_RecipeMap.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - - ItemList.Machine_LV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(661, "basicmachine.plasmaarcfurnace.tier.01", "Basic Plasma Arc Furnace", 1, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_MV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(662, "basicmachine.plasmaarcfurnace.tier.02", "Advanced Plasma Arc Furnace", 2, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_HV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(663, "basicmachine.plasmaarcfurnace.tier.03", "Advanced Plasma Arc Furnace II", 3, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_EV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(664, "basicmachine.plasmaarcfurnace.tier.04", "Advanced Plasma Arc Furnace III", 4, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_IV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(665, "basicmachine.plasmaarcfurnace.tier.05", "Advanced Plasma Arc Furnace IV", 5, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_LuV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(666, "basicmachine.plasmaarcfurnace.tier.06", "Advanced Plasma Arc Furnace V", 6, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_ZPM_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(667, "basicmachine.plasmaarcfurnace.tier.07", "Advanced Plasma Arc Furnace VI", 7, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - ItemList.Machine_UV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(668, "basicmachine.plasmaarcfurnace.tier.08", "Advanced Plasma Arc Furnace VII", 8, "", GT_RecipeMap.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); - - ItemList.Machine_LV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(671, "basicmachine.e_oven.tier.01", "Basic Electric Oven", 1, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_MV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(672, "basicmachine.e_oven.tier.02", "Advanced Electric Oven", 2, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_HV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(673, "basicmachine.e_oven.tier.03", "Advanced Electric Oven II", 3, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_EV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(674, "basicmachine.e_oven.tier.04", "Advanced Electric Oven III", 4, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_IV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(675, "basicmachine.e_oven.tier.05", "Advanced Electric Oven IV", 5, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_LuV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(676, "basicmachine.e_oven.tier.06", "Advanced Electric Oven V", 6, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_ZPM_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(677, "basicmachine.e_oven.tier.07", "Advanced Electric Oven VI", 7, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); - ItemList.Machine_UV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(678, "basicmachine.e_oven.tier.08", "Advanced Electric Oven VII", 8, "Just a Furnace with a different Design", GT_RecipeMap.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_LV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(501, "basicmachine.fermenter.tier.01", "Basic Fermenter", 1, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(502, "basicmachine.fermenter.tier.02", "Advanced Fermenter", 2, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(503, "basicmachine.fermenter.tier.03", "Advanced Fermenter II", 3, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(504, "basicmachine.fermenter.tier.04", "Advanced Fermenter III", 4, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(505, "basicmachine.fermenter.tier.05", "Advanced Fermenter IV", 5, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(506, "basicmachine.fermenter.tier.06", "Advanced Fermenter V", 6, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(507, "basicmachine.fermenter.tier.07", "Advanced Fermenter VI", 7, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Fermenter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(508, "basicmachine.fermenter.tier.08", "Advanced Fermenter VII", 8, "Fermenting Fluids", GT_Recipe.GT_Recipe_Map.sFermentingRecipes, 1, 1, 1000, 0, 1, "Fermenter.png", "", aBoolConst_0, aBoolConst_0, 0, "FERMENTER", new Object[]{aTextWirePump, "GMG", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(511, "basicmachine.fluidextractor.tier.01", "Basic Fluid Extractor", 1, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(512, "basicmachine.fluidextractor.tier.02", "Advanced Fluid Extractor", 2, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(513, "basicmachine.fluidextractor.tier.03", "Advanced Fluid Extractor II", 3, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(514, "basicmachine.fluidextractor.tier.04", "Advanced Fluid Extractor III", 4, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(515, "basicmachine.fluidextractor.tier.05", "Advanced Fluid Extractor IV", 5, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(516, "basicmachine.fluidextractor.tier.06", "Advanced Fluid Extractor V", 6, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(517, "basicmachine.fluidextractor.tier.07", "Advanced Fluid Extractor VI", 7, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_FluidExtractor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(518, "basicmachine.fluidextractor.tier.08", "Advanced Fluid Extractor VII", 8, "Extracting Fluids from Items", GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes, 1, 1, 16000, 0, 1, "FluidExtractor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "FLUID_EXTRACTOR", new Object[]{"GCG", "PME", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(521, "basicmachine.fluidsolidifier.tier.01", "Basic Fluid Solidifier", 1, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_MV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(522, "basicmachine.fluidsolidifier.tier.02", "Advanced Fluid Solidifier", 2, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_HV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(523, "basicmachine.fluidsolidifier.tier.03", "Advanced Fluid Solidifier II", 3, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_EV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(524, "basicmachine.fluidsolidifier.tier.04", "Advanced Fluid Solidifier III", 4, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_IV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(525, "basicmachine.fluidsolidifier.tier.05", "Advanced Fluid Solidifier IV", 5, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_LuV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(526, "basicmachine.fluidsolidifier.tier.06", "Advanced Fluid Solidifier V", 6, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_ZPM_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(527, "basicmachine.fluidsolidifier.tier.07", "Advanced Fluid Solidifier VI", 7, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + ItemList.Machine_UV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(528, "basicmachine.fluidsolidifier.tier.08", "Advanced Fluid Solidifier VII", 8, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L)); + + ItemList.Machine_LV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(531, "basicmachine.distillery.tier.01", "Basic Distillery", 1, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(532, "basicmachine.distillery.tier.02", "Advanced Distillery", 2, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(533, "basicmachine.distillery.tier.03", "Advanced Distillery II", 3, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(534, "basicmachine.distillery.tier.04", "Advanced Distillery III", 4, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(535, "basicmachine.distillery.tier.05", "Advanced Distillery IV", 5, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(536, "basicmachine.distillery.tier.06", "Advanced Distillery V", 6, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(537, "basicmachine.distillery.tier.07", "Advanced Distillery VI", 7, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(538, "basicmachine.distillery.tier.08", "Advanced Distillery VII", 8, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(541, "basicmachine.chemicalbath.tier.01", "Basic Chemical Bath", 1, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(542, "basicmachine.chemicalbath.tier.02", "Advanced Chemical Bath", 2, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(543, "basicmachine.chemicalbath.tier.03", "Advanced Chemical Bath II", 3, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(544, "basicmachine.chemicalbath.tier.04", "Advanced Chemical Bath III", 4, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(545, "basicmachine.chemicalbath.tier.05", "Advanced Chemical Bath IV", 5, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(546, "basicmachine.chemicalbath.tier.06", "Advanced Chemical Bath V", 6, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(547, "basicmachine.chemicalbath.tier.07", "Advanced Chemical Bath VI", 7, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(548, "basicmachine.chemicalbath.tier.08", "Advanced Chemical Bath VII", 8, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(551, "basicmachine.polarizer.tier.01", "Basic Polarizer", 1, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(552, "basicmachine.polarizer.tier.02", "Advanced Polarizer", 2, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(553, "basicmachine.polarizer.tier.03", "Advanced Polarizer II", 3, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(554, "basicmachine.polarizer.tier.04", "Advanced Polarizer III", 4, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(555, "basicmachine.polarizer.tier.05", "Advanced Polarizer IV", 5, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(556, "basicmachine.polarizer.tier.06", "Advanced Polarizer V", 6, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(557, "basicmachine.polarizer.tier.07", "Advanced Polarizer VI", 7, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Polarizer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(558, "basicmachine.polarizer.tier.08", "Advanced Polarizer VII", 8, "Bipolarising your Magnets", GT_Recipe.GT_Recipe_Map.sPolarizerRecipes, 1, 1, 0, 0, 1, "Polarizer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "POLARIZER", new Object[]{"ZSZ", aTextWireHull, "ZSZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(561, "basicmachine.electromagneticseparator.tier.01", "Basic Electromagnetic Separator", 1, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(562, "basicmachine.electromagneticseparator.tier.02", "Advanced Electromagnetic Separator", 2, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(563, "basicmachine.electromagneticseparator.tier.03", "Advanced Electromagnetic Separator II", 3, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(564, "basicmachine.electromagneticseparator.tier.04", "Advanced Electromagnetic Separator III", 4, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(565, "basicmachine.electromagneticseparator.tier.05", "Advanced Electromagnetic Separator IV", 5, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(566, "basicmachine.electromagneticseparator.tier.06", "Advanced Electromagnetic Separator V", 6, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(567, "basicmachine.electromagneticseparator.tier.07", "Advanced Electromagnetic Separator VI", 7, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_ElectromagneticSeparator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(568, "basicmachine.electromagneticseparator.tier.08", "Advanced Electromagnetic Separator VII", 8, "Separating the magnetic Ores from the rest", GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes, 1, 3, 0, 0, 1, "ElectromagneticSeparator.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "ELECTROMAGNETIC_SEPARATOR", new Object[]{"VWZ", "WMS", "CWZ", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'S', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC, 'Z', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(571, "basicmachine.autoclave.tier.01", "Basic Autoclave", 1, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(572, "basicmachine.autoclave.tier.02", "Advanced Autoclave", 2, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(573, "basicmachine.autoclave.tier.03", "Advanced Autoclave II", 3, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(574, "basicmachine.autoclave.tier.04", "Advanced Autoclave III", 4, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(575, "basicmachine.autoclave.tier.05", "Advanced Autoclave IV", 5, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(576, "basicmachine.autoclave.tier.06", "Advanced Autoclave V", 6, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(577, "basicmachine.autoclave.tier.07", "Advanced Autoclave VI", 7, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Autoclave.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(578, "basicmachine.autoclave.tier.08", "Advanced Autoclave VII", 8, "Crystallizing your Dusts", GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes, 1, 1, 8000, 0, 1, "Autoclave.png", "", aBoolConst_0, aBoolConst_0, 0, "AUTOCLAVE", new Object[]{"IGI", "IMI", "CPC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'I', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(581, "basicmachine.mixer.tier.01", "Basic Mixer", 1, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(582, "basicmachine.mixer.tier.02", "Advanced Mixer", 2, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(583, "basicmachine.mixer.tier.03", "Advanced Mixer II", 3, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(584, "basicmachine.mixer.tier.04", "Advanced Mixer III", 4, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(585, "basicmachine.mixer.tier.05", "Advanced Mixer IV", 5, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(586, "basicmachine.mixer.tier.06", "Advanced Mixer V", 6, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(587, "basicmachine.mixer.tier.07", "Advanced Mixer VI", 7, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_Mixer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(588, "basicmachine.mixer.tier.08", "Advanced Mixer VII", 8, "Will it Blend?", GT_Recipe.GT_Recipe_Map.sMixerRecipes, 4, 1, 8000, 0, 1, "Mixer.png", "", aBoolConst_0, aBoolConst_0, 0, "MIXER", new Object[]{"GRG", "GEG", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(591, "basicmachine.laserengraver.tier.01", "Basic Precision Laser Engraver", 1, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(592, "basicmachine.laserengraver.tier.02", "Advanced Precision Laser Engraver", 2, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(593, "basicmachine.laserengraver.tier.03", "Advanced Precision Laser Engraver II", 3, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(594, "basicmachine.laserengraver.tier.04", "Advanced Precision Laser Engraver III", 4, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(595, "basicmachine.laserengraver.tier.05", "Advanced Precision Laser Engraver IV", 5, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(596, "basicmachine.laserengraver.tier.06", "Advanced Precision Laser Engraver V", 6, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(597, "basicmachine.laserengraver.tier.07", "Advanced Precision Laser Engraver VI", 7, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_LaserEngraver.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(598, "basicmachine.laserengraver.tier.08", "Advanced Precision Laser Engraver VII", 8, "Don't look directly at the Laser", GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes, 2, 1, 0, 0, 1, "LaserEngraver.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(212)), aBoolConst_0, aBoolConst_0, 0, "LASER_ENGRAVER", new Object[]{"PEP", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(601, "basicmachine.press.tier.01", "Basic Forming Press", 1, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(602, "basicmachine.press.tier.02", "Advanced Forming Press", 2, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(603, "basicmachine.press.tier.03", "Advanced Forming Press II", 3, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(604, "basicmachine.press.tier.04", "Advanced Forming Press III", 4, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(605, "basicmachine.press.tier.05", "Advanced Forming Press IV", 5, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(606, "basicmachine.press.tier.06", "Advanced Forming Press V", 6, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(607, "basicmachine.press.tier.07", "Advanced Forming Press VI", 7, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Press.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(608, "basicmachine.press.tier.08", "Advanced Forming Press VII", 8, "Imprinting Images into things", GT_Recipe.GT_Recipe_Map.sPressRecipes, 2, 1, 0, 0, 1, "Press.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "PRESS", new Object[]{aTextWirePump, aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(611, "basicmachine.hammer.tier.01", "Basic Forge Hammer", 1, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_MV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(612, "basicmachine.hammer.tier.02", "Advanced Forge Hammer", 2, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_HV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(613, "basicmachine.hammer.tier.03", "Advanced Forge Hammer II", 3, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_EV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(614, "basicmachine.hammer.tier.04", "Advanced Forge Hammer III", 4, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_IV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(615, "basicmachine.hammer.tier.05", "Advanced Forge Hammer IV", 5, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_LuV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(616, "basicmachine.hammer.tier.06", "Advanced Forge Hammer V", 6, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_ZPM_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(617, "basicmachine.hammer.tier.07", "Advanced Forge Hammer VI", 7, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + ItemList.Machine_UV_Hammer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(618, "basicmachine.hammer.tier.08", "Advanced Forge Hammer VII", 8, "Stop, Hammertime!", GT_Recipe.GT_Recipe_Map.sHammerRecipes, 1, 1, 0, 6, 3, "Hammer.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), aBoolConst_0, aBoolConst_0, 0, "HAMMER", new Object[]{aTextWirePump, aTextCableHull, "WAW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'A', OreDictNames.craftingAnvil}).getStackForm(1L)); + + ItemList.Machine_LV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(621, "basicmachine.fluidheater.tier.01", "Basic Fluid Heater", 1, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_MV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(622, "basicmachine.fluidheater.tier.02", "Advanced Fluid Heater", 2, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_HV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(623, "basicmachine.fluidheater.tier.03", "Advanced Fluid Heater II", 3, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_EV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(624, "basicmachine.fluidheater.tier.04", "Advanced Fluid Heater III", 4, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_IV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(625, "basicmachine.fluidheater.tier.05", "Advanced Fluid Heater IV", 5, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_LuV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(626, "basicmachine.fluidheater.tier.06", "Advanced Fluid Heater V", 6, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_ZPM_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(627, "basicmachine.fluidheater.tier.07", "Advanced Fluid Heater VI", 7, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + ItemList.Machine_UV_FluidHeater.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(628, "basicmachine.fluidheater.tier.08", "Advanced Fluid Heater VII", 8, "Heating up your Fluids", GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes, 1, 0, 8000, 0, 1, "FluidHeater.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_HEATER", new Object[]{"OGO", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'O', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); + + ItemList.Machine_LV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(631, "basicmachine.slicer.tier.01", "Basic Slicing Machine", 1, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(632, "basicmachine.slicer.tier.02", "Advanced Slicing Machine", 2, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(633, "basicmachine.slicer.tier.03", "Advanced Slicing Machine II", 3, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(634, "basicmachine.slicer.tier.04", "Advanced Slicing Machine III", 4, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(635, "basicmachine.slicer.tier.05", "Advanced Slicing Machine IV", 5, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(636, "basicmachine.slicer.tier.06", "Advanced Slicing Machine V", 6, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(637, "basicmachine.slicer.tier.07", "Advanced Slicing Machine VI", 7, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Slicer.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(638, "basicmachine.slicer.tier.08", "Advanced Slicing Machine VII", 8, "Slice of Life", GT_Recipe.GT_Recipe_Map.sSlicerRecipes, 2, 1, 0, 0, 1, "Slicer.png", "", aBoolConst_0, aBoolConst_0, 0, "SLICER", new Object[]{aTextWireCoil, "PMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(641, "basicmachine.sifter.tier.01", "Basic Sifting Machine", 1, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_MV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(642, "basicmachine.sifter.tier.02", "Advanced Sifting Machine", 2, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_HV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(643, "basicmachine.sifter.tier.03", "Advanced Sifting Machine II", 3, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_EV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(644, "basicmachine.sifter.tier.04", "Advanced Sifting Machine III", 4, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_IV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(645, "basicmachine.sifter.tier.05", "Advanced Sifting Machine IV", 5, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_LuV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(646, "basicmachine.sifter.tier.06", "Advanced Sifting Machine V", 6, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_ZPM_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(647, "basicmachine.sifter.tier.07", "Advanced Sifting Machine VI", 7, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + ItemList.Machine_UV_Sifter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(648, "basicmachine.sifter.tier.08", "Advanced Sifting Machine VII", 8, "Stay calm and keep sifting", GT_Recipe.GT_Recipe_Map.sSifterRecipes, 1, 9, 0, 2, 5, "Sifter.png", "", aBoolConst_0, aBoolConst_0, 0, "SIFTER", new Object[]{"WFW", aTextPlateMotor, "CFC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'F', OreDictNames.craftingFilter, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L)); + + ItemList.Machine_LV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(651, "basicmachine.arcfurnace.tier.01", "Basic Arc Furnace", 1, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_MV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(652, "basicmachine.arcfurnace.tier.02", "Advanced Arc Furnace", 2, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_HV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(653, "basicmachine.arcfurnace.tier.03", "Advanced Arc Furnace II", 3, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_EV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(654, "basicmachine.arcfurnace.tier.04", "Advanced Arc Furnace III", 4, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_IV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(655, "basicmachine.arcfurnace.tier.05", "Advanced Arc Furnace IV", 5, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_LuV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(656, "basicmachine.arcfurnace.tier.06", "Advanced Arc Furnace V", 6, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_ZPM_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(657, "basicmachine.arcfurnace.tier.07", "Advanced Arc Furnace VI", 7, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_UV_ArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(658, "basicmachine.arcfurnace.tier.08", "Advanced Arc Furnace VII", 8, "", GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes, 1, 4, 16000, 0, 1, "ArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "ARC_FURNACE", new Object[]{"WGW", aTextCableHull, aTextPlate, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + + ItemList.Machine_LV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(661, "basicmachine.plasmaarcfurnace.tier.01", "Basic Plasma Arc Furnace", 1, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_MV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(662, "basicmachine.plasmaarcfurnace.tier.02", "Advanced Plasma Arc Furnace", 2, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_HV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(663, "basicmachine.plasmaarcfurnace.tier.03", "Advanced Plasma Arc Furnace II", 3, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_EV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(664, "basicmachine.plasmaarcfurnace.tier.04", "Advanced Plasma Arc Furnace III", 4, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_IV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(665, "basicmachine.plasmaarcfurnace.tier.05", "Advanced Plasma Arc Furnace IV", 5, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_LuV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(666, "basicmachine.plasmaarcfurnace.tier.06", "Advanced Plasma Arc Furnace V", 6, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_ZPM_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(667, "basicmachine.plasmaarcfurnace.tier.07", "Advanced Plasma Arc Furnace VI", 7, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + ItemList.Machine_UV_PlasmaArcFurnace.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(668, "basicmachine.plasmaarcfurnace.tier.08", "Advanced Plasma Arc Furnace VII", 8, "", GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes, 1, 4, 1000, 0, 1, "PlasmaArcFurnace.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(202)), aBoolConst_0, aBoolConst_0, 0, "PLASMA_ARC_FURNACE", new Object[]{"WGW", aTextCableHull, "TPT", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4, 'T', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'G', OrePrefixes.cell.get(Materials.Graphite)}).getStackForm(1L)); + + ItemList.Machine_LV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(671, "basicmachine.e_oven.tier.01", "Basic Electric Oven", 1, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_MV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(672, "basicmachine.e_oven.tier.02", "Advanced Electric Oven", 2, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_HV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(673, "basicmachine.e_oven.tier.03", "Advanced Electric Oven II", 3, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_EV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(674, "basicmachine.e_oven.tier.04", "Advanced Electric Oven III", 4, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_IV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(675, "basicmachine.e_oven.tier.05", "Advanced Electric Oven IV", 5, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_LuV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(676, "basicmachine.e_oven.tier.06", "Advanced Electric Oven V", 6, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_ZPM_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(677, "basicmachine.e_oven.tier.07", "Advanced Electric Oven VI", 7, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); + ItemList.Machine_UV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(678, "basicmachine.e_oven.tier.08", "Advanced Electric Oven VII", 8, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L)); ItemList.Machine_LV_Miner.set(new GT_MetaTileEntity_Miner(679, "basicmachine.miner.tier.01", "Basic Miner", 1).getStackForm(1L)); ItemList.Machine_MV_Miner.set(new GT_MetaTileEntity_Miner(680, "basicmachine.miner.tier.02", "Advanced Miner", 2).getStackForm(1L)); @@ -1334,14 +1334,14 @@ private static void run3() { } } - ItemList.Machine_LV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1180, "basicmachine.circuitassembler.tier.01", "Basic Circuit Assembling Machine", 1, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_MV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1181, "basicmachine.circuitassembler.tier.02", "Advanced Circuit Assembling Machine", 2, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_HV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1182, "basicmachine.circuitassembler.tier.03", "Advanced Circuit Assembling Machine II", 3, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_EV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1183, "basicmachine.circuitassembler.tier.04", "Advanced Circuit Assembling Machine III", 4, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_IV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1184, "basicmachine.circuitassembler.tier.05", "Advanced Circuit Assembling Machine IV", 5, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_LuV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(1185, "basicmachine.circuitassembler.tier.06", "Advanced Circuit Assembling Machine V", 6, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_ZPM_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(1186, "basicmachine.circuitassembler.tier.07", "Advanced Circuit Assembling Machine VI", 7, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); - ItemList.Machine_UV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1187, "basicmachine.circuitassembler.tier.08", "Advanced Circuit Assembling Machine VII", 8, "Avengers, Assemble!", GT_RecipeMap.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_LV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1180, "basicmachine.circuitassembler.tier.01", "Basic Circuit Assembling Machine", 1, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_MV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1181, "basicmachine.circuitassembler.tier.02", "Advanced Circuit Assembling Machine", 2, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_HV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1182, "basicmachine.circuitassembler.tier.03", "Advanced Circuit Assembling Machine II", 3, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_EV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1183, "basicmachine.circuitassembler.tier.04", "Advanced Circuit Assembling Machine III", 4, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_IV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1184, "basicmachine.circuitassembler.tier.05", "Advanced Circuit Assembling Machine IV", 5, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_LuV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(1185, "basicmachine.circuitassembler.tier.06", "Advanced Circuit Assembling Machine V", 6, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_ZPM_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(1186, "basicmachine.circuitassembler.tier.07", "Advanced Circuit Assembling Machine VI", 7, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); + ItemList.Machine_UV_CircuitAssembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe( 1187, "basicmachine.circuitassembler.tier.08", "Advanced Circuit Assembling Machine VII", 8, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes, 6, 1, 16000, 0, 1, "CircuitAssembler.png", "", aBoolConst_0, aBoolConst_0, 0, "CIRCUITASSEMBLER", new Object[]{"ACE", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER}).getStackForm(1L)); ItemList.Machine_HV_LightningRod.set(new GT_MetaTileEntity_LightningRod(1174, "basicgenerator.lightningrod.03", "Lightning Rod", 3).getStackForm(1)); GT_ModHandler.addCraftingRecipe(ItemList.Machine_HV_LightningRod.get(1L, new Object[0]), bitsd, new Object[]{"LTL", "TMT", "LTL", 'M', ItemList.Hull_LuV, 'L', ItemList.Energy_LapotronicOrb, 'T', ItemList.Transformer_ZPM_LuV}); diff --git a/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java b/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java index a2dcc45dda..9dcc507f14 100644 --- a/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java +++ b/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java @@ -15,8 +15,6 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.gui.GT_GUIContainer_BasicMachine; import gregtech.api.objects.ItemData; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -47,9 +45,9 @@ public class GT_NEI_AssLineHandler GuiContainerManager.addTooltipHandler(new GT_RectHandler()); } - protected final GT_RecipeMap mRecipeMap; + protected final GT_Recipe.GT_Recipe_Map mRecipeMap; - public GT_NEI_AssLineHandler(GT_RecipeMap aRecipeMap) {//this is called when recipes should be shown + public GT_NEI_AssLineHandler(GT_Recipe.GT_Recipe_Map aRecipeMap) {//this is called when recipes should be shown this.mRecipeMap = aRecipeMap; this.transferRects.add(new RecipeTransferRect(new Rectangle(138, 18, 18, 18), getOverlayIdentifier(), new Object[0])); if (!NEI_GT_Config.sIsAdded) { @@ -70,8 +68,8 @@ public TemplateRecipeHandler newInstance() { public void loadCraftingRecipes(String outputId, Object... results) { if (outputId.equals(getOverlayIdentifier())) { - for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { - if (!tRecipe.mHidden && tRecipe.isEnabled()) { + for (GT_Recipe tRecipe : this.mRecipeMap.mRecipeList) { + if (!tRecipe.mHidden) { this.arecipes.add(new CachedDefaultRecipe(tRecipe)); }else{ this.arecipes.remove(new CachedDefaultRecipe(tRecipe)); @@ -102,8 +100,8 @@ public void loadCraftingRecipes(ItemStack aResult) { } } } - for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { - if (!tRecipe.mHidden && tRecipe.isEnabled()) { + for (GT_Recipe tRecipe : this.mRecipeMap.mRecipeList) { + if (!tRecipe.mHidden) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tResults) { if (tNEIRecipe.contains(tNEIRecipe.mOutputs, tStack)) { @@ -144,8 +142,8 @@ public void loadUsageRecipes(ItemStack aInput) { } } } - for (GT_MachineRecipe tRecipe : this.mRecipeMap.mRecipeList) { - if (!tRecipe.mHidden && tRecipe.isEnabled()) { + for (GT_Recipe tRecipe : this.mRecipeMap.mRecipeList) { + if (!tRecipe.mHidden) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tInputs) { if (tNEIRecipe.contains(tNEIRecipe.mInputs, tStack)) { @@ -370,16 +368,16 @@ public void generatePermutations() { public class CachedDefaultRecipe extends CachedRecipe { - public final GT_MachineRecipe mRecipe; + public final GT_Recipe mRecipe; public final List mOutputs = new ArrayList(); public final List mInputs = new ArrayList(); - public CachedDefaultRecipe(GT_MachineRecipe aRecipe) { + public CachedDefaultRecipe(GT_Recipe aRecipe) { super(); this.mRecipe = aRecipe; for (int i = 0; i < 16; i++) { - Object obj = aRecipe.getRepresentativeInput(i); + Object obj = aRecipe instanceof GT_Recipe_WithAlt ? ((GT_Recipe_WithAlt) aRecipe).getAltRepresentativeInput(i) : aRecipe.getRepresentativeInput(i); if (obj != null) { this.mInputs.add(new FixedPositionedStack(obj, 18 * (i % 4) + 12, 18 * (i / 4))); } diff --git a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java index 0aa9624e30..e0c616759f 100644 --- a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java +++ b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java @@ -15,8 +15,6 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.gui.GT_GUIContainer_BasicMachine; import gregtech.api.objects.ItemData; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -47,9 +45,9 @@ public class GT_NEI_DefaultHandler GuiContainerManager.addTooltipHandler(new GT_RectHandler()); } - protected final GT_RecipeMap mRecipeMap; + protected final GT_Recipe.GT_Recipe_Map mRecipeMap; - public GT_NEI_DefaultHandler(GT_RecipeMap aRecipeMap) { + public GT_NEI_DefaultHandler(GT_Recipe.GT_Recipe_Map aRecipeMap) { this.mRecipeMap = aRecipeMap; this.transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(65, 13, 36, 18), getOverlayIdentifier(), new Object[0])); if (!NEI_GT_Config.sIsAdded) { @@ -59,8 +57,8 @@ public GT_NEI_DefaultHandler(GT_RecipeMap aRecipeMap) { } } - public List getSortedRecipes() { - List result = new ArrayList<>(this.mRecipeMap.mRecipeList); + public List getSortedRecipes() { + List result = new ArrayList<>(this.mRecipeMap.mRecipeList); Collections.sort(result); return result; } @@ -75,8 +73,8 @@ public TemplateRecipeHandler newInstance() { public void loadCraftingRecipes(String outputId, Object... results) { if (outputId.equals(getOverlayIdentifier())) { - for (GT_MachineRecipe tRecipe : getSortedRecipes()) { - if (!tRecipe.mHidden && tRecipe.isEnabled()) { + for (GT_Recipe tRecipe : getSortedRecipes()) { + if (!tRecipe.mHidden) { this.arecipes.add(new CachedDefaultRecipe(tRecipe)); } } @@ -105,8 +103,8 @@ public void loadCraftingRecipes(ItemStack aResult) { } } } - for (GT_MachineRecipe tRecipe : getSortedRecipes()) { - if (!tRecipe.mHidden && tRecipe.isEnabled()) { + for (GT_Recipe tRecipe : getSortedRecipes()) { + if (!tRecipe.mHidden) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tResults) { if (tNEIRecipe.contains(tNEIRecipe.mOutputs, tStack)) { @@ -139,8 +137,8 @@ public void loadUsageRecipes(ItemStack aInput) { } } } - for (GT_MachineRecipe tRecipe : getSortedRecipes()) { - if (!tRecipe.mHidden && tRecipe.isEnabled()) { + for (GT_Recipe tRecipe : getSortedRecipes()) { + if (!tRecipe.mHidden) { CachedDefaultRecipe tNEIRecipe = new CachedDefaultRecipe(tRecipe); for (ItemStack tStack : tInputs) { if (tNEIRecipe.contains(tNEIRecipe.mInputs, tStack)) { @@ -373,11 +371,11 @@ public void generatePermutations() { public class CachedDefaultRecipe extends TemplateRecipeHandler.CachedRecipe { - public final GT_MachineRecipe mRecipe; + public final GT_Recipe mRecipe; public final List mOutputs; public final List mInputs; - public CachedDefaultRecipe(GT_MachineRecipe aRecipe) { + public CachedDefaultRecipe(GT_Recipe aRecipe) { super(); this.mRecipe = aRecipe; @@ -391,7 +389,7 @@ public CachedDefaultRecipe(GT_MachineRecipe aRecipe) { mInputs = new ArrayList(); int tStartIndex = 0; - switch (GT_NEI_DefaultHandler.this.mRecipeMap.mInputSlots) { + switch (GT_NEI_DefaultHandler.this.mRecipeMap.mUsualInputCount) { case 0: break; case 1: @@ -596,7 +594,7 @@ public CachedDefaultRecipe(GT_MachineRecipe aRecipe) { this.mInputs.add(new FixedPositionedStack(aRecipe.mSpecialItems, 120, 52)); } tStartIndex = 0; - switch (GT_NEI_DefaultHandler.this.mRecipeMap.mOutputSlots) { + switch (GT_NEI_DefaultHandler.this.mRecipeMap.mUsualOutputCount) { case 0: break; case 1: diff --git a/src/main/java/gregtech/nei/NEI_GT_Config.java b/src/main/java/gregtech/nei/NEI_GT_Config.java index 3257473472..3caaaa0911 100644 --- a/src/main/java/gregtech/nei/NEI_GT_Config.java +++ b/src/main/java/gregtech/nei/NEI_GT_Config.java @@ -2,7 +2,7 @@ import codechicken.nei.api.IConfigureNEI; import cpw.mods.fml.common.FMLCommonHandler; -import gregtech.api.recipes.GT_RecipeMap; +import gregtech.api.util.GT_Recipe; public class NEI_GT_Config implements IConfigureNEI { @@ -11,13 +11,13 @@ public class NEI_GT_Config public void loadConfig() { sIsAdded = false; - for (GT_RecipeMap tMap : GT_RecipeMap.sMappings) { + for (GT_Recipe.GT_Recipe_Map tMap : GT_Recipe.GT_Recipe_Map.sMappings) { if (tMap.mNEIAllowed) { new GT_NEI_DefaultHandler(tMap); } } if(FMLCommonHandler.instance().getEffectiveSide().isClient()) - ALH=new GT_NEI_AssLineHandler(GT_RecipeMap.sAssemblyLineVisualRecipes); + ALH=new GT_NEI_AssLineHandler(GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes); sIsAdded = true; } From 138578baefc4ff3846be3843d2b83299786d52f2 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Mon, 16 Nov 2020 20:05:19 -0800 Subject: [PATCH 18/21] Changed json reader to return a list of GT_Recipe. --- src/main/java/gregtech/GT_Mod.java | 2 +- .../api/recipes/GT_AssemblyLineRecipe.java | 35 - .../api/recipes/GT_MachineRecipe.java | 486 ------ .../gregtech/api/recipes/GT_RecipeInput.java | 78 - .../api/recipes/GT_RecipeInputAlts.java | 98 -- .../api/recipes/GT_RecipeInputOredict.java | 60 - .../api/recipes/GT_RecipeListJsonReader.java | 251 +-- .../gregtech/api/recipes/GT_RecipeMap.java | 1526 ----------------- .../gregtech/api/recipes/GT_RecipeOutput.java | 149 -- .../common/GT_MachineRecipeAdder.java | 1256 -------------- .../postload/GT_MachineRecipeLoader.java | 166 +- .../assets/gregtech/recipes/Explanation.cfg | 8 +- .../gregtech/recipes/alloy_smelter.json | 62 +- .../assets/gregtech/recipes/assembler.json | 74 +- .../assets/gregtech/recipes/brewery.json | 187 +- .../gregtech/recipes/circuit_assembler.json | 56 +- .../gregtech/recipes/fluid_extractor.json | 10 +- .../gregtech/recipes/laser_engraver.json | 4 + .../assets/gregtech/recipes/mixer.json | 30 +- 19 files changed, 599 insertions(+), 3939 deletions(-) delete mode 100644 src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java delete mode 100644 src/main/java/gregtech/api/recipes/GT_MachineRecipe.java delete mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeInput.java delete mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java delete mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java delete mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeMap.java delete mode 100644 src/main/java/gregtech/api/recipes/GT_RecipeOutput.java delete mode 100644 src/main/java/gregtech/common/GT_MachineRecipeAdder.java diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index 3287048e51..9ff12f4c6e 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -1230,4 +1230,4 @@ public static int calculateTotalGTVersion(int minorVersion){ public static int calculateTotalGTVersion(int majorVersion, int minorVersion){ return majorVersion * 1000 + minorVersion; } -} \ No newline at end of file +} diff --git a/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java b/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java deleted file mode 100644 index 97a095dda5..0000000000 --- a/src/main/java/gregtech/api/recipes/GT_AssemblyLineRecipe.java +++ /dev/null @@ -1,35 +0,0 @@ -package gregtech.api.recipes; - -import java.util.ArrayList; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - -public class GT_AssemblyLineRecipe extends GT_MachineRecipe { - - public static final ArrayList sAssemblyLineRecipes = new ArrayList<>(50); - - public ItemStack mResearchItem; - public int mResearchTime; - - public GT_AssemblyLineRecipe(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { - super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); - } - - public GT_AssemblyLineRecipe setResearchItem(ItemStack aResearchItem) { - mResearchItem = aResearchItem; - return this; - } - - public GT_AssemblyLineRecipe setResearchTime(int aResearchTime) { - mResearchTime = aResearchTime; - return this; - } - - @Override - public boolean isValidRecipe() { - if (mResearchItem == null) return false; - if (mResearchTime <= 0) return false; - return super.isValidRecipe(); - } - -} diff --git a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java b/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java deleted file mode 100644 index f120e18ad2..0000000000 --- a/src/main/java/gregtech/api/recipes/GT_MachineRecipe.java +++ /dev/null @@ -1,486 +0,0 @@ -package gregtech.api.recipes; - -import codechicken.nei.PositionedStack; -import gregtech.api.objects.GT_FluidStack; -import gregtech.api.util.GT_Utility; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - - - -/** - * Heavily modified version of GT_Recipe, which will eventually allow oredicted input and output as well as checking NBT tags, - * and loading of XML (or maybe other format) recipes. - */ -public class GT_MachineRecipe implements Comparable { - public GT_RecipeInput[] mInputs; - public GT_RecipeOutput[] mOutputs; - public FluidStack[] mFluidInputs; - public FluidStack[] mFluidOutputs; - - /** - * An Item that needs to be inside the Special Slot, like for example the Copy Slot inside the Printer. This is only useful for Fake Recipes in NEI, since findRecipe() and containsInput() don't give a shit about this Field. Lists are also possible. - */ - public Object mSpecialItems; - - public int mDuration, mEUt, mSpecialValue; - - /** - * Use this to just disable a specific Recipe, but the Configuration enables that already for every single Recipe. - */ - private boolean mEnabled = true; - /** - * Use this to make a recipe enabled depending on a certain config setting. - */ - public String mEnableCondition = null; - /** - * If this is true, having the setting specified in mEnableCondition false will enable this recipe. - */ - public boolean mInvertCondition = false; - /** - * If this Recipe is hidden from NEI - */ - public boolean mHidden = false; - /** - * If this Recipe is Fake and therefore doesn't get found by the findRecipe Function (It is still in the HashMaps, so that containsInput does return T on those fake Inputs) - */ - public boolean mFakeRecipe = false; - /** - * If this Recipe can be stored inside a Machine in order to make Recipe searching more Efficient by trying the previously used Recipe first. In case you have a Recipe Map overriding things and returning one time use Recipes, you have to set this to F. - */ - public boolean mCanBeBuffered = true; - /** - * If this Recipe needs the Output Slots to be completely empty. Needed in case you have randomised Outputs - */ - public boolean mNeedsEmptyOutput = false; - /** - * Used for describing recipes that do not fit the default recipe pattern (for example Large Boiler Fuels) - */ - private String[] neiDesc = null; - - private boolean mOptimized = false; - - /** - * The main constructor with inputs and outputs. Other details can be added with chainable setters. - */ - public GT_MachineRecipe(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { - mInputs = aInputs; - mOutputs = aOutputs; - mFluidInputs = aFluidInputs; - mFluidOutputs = aFluidOutputs; - - if (mInputs == null) mInputs = new GT_RecipeInput[0]; - if (mOutputs == null) mOutputs = new GT_RecipeOutput[0]; - if (mFluidInputs == null) mFluidInputs = new FluidStack[0]; - if (mFluidOutputs == null) mFluidOutputs = new FluidStack[0]; - - mInputs = GT_Utility.getArrayListWithoutNulls(mInputs).toArray(new GT_RecipeInput[0]); - mOutputs = GT_Utility.getArrayListWithoutNulls(mOutputs).toArray(new GT_RecipeOutput[0]); - mFluidInputs = GT_Utility.getArrayListWithoutNulls(mFluidInputs).toArray(new FluidStack[0]); - mFluidOutputs = GT_Utility.getArrayListWithoutNulls(mFluidOutputs).toArray(new FluidStack[0]); - - for (int i = 0; i < mFluidInputs.length; i++) mFluidInputs[i] = new GT_FluidStack(mFluidInputs[i]); - for (int i = 0; i < mFluidOutputs.length; i++) mFluidOutputs[i] = new GT_FluidStack(mFluidOutputs[i]); - } - - public static GT_RecipeInput[] wrapInputs(ItemStack[] aInputs) { - if (aInputs == null) { - return new GT_RecipeInput[0]; - } - GT_RecipeInput[] rInputs = new GT_RecipeInput[aInputs.length]; - for (int i = 0; i < aInputs.length; i++) { - if (aInputs[i] != null) { - rInputs[i] = new GT_RecipeInput(aInputs[i]); - } - } - return rInputs; - } - - public static GT_RecipeOutput[] wrapOutputs(ItemStack[] aOutputs) { - if (aOutputs == null) { - return new GT_RecipeOutput[0]; - } - GT_RecipeOutput[] rOutputs = new GT_RecipeOutput[aOutputs.length]; - for (int i = 0; i < aOutputs.length; i++) { - if (aOutputs[i] != null) { - rOutputs[i] = new GT_RecipeOutput(aOutputs[i]); - } - } - return rOutputs; - } - - public static ItemStack[] unwrapOutputs(GT_RecipeOutput[] aOutputs) { - if (aOutputs == null) { - return new ItemStack[0]; - } - ItemStack[] rOutputs = new ItemStack[aOutputs.length]; - for (int i = 0; i < aOutputs.length; i++) { - if (aOutputs[i] != null) { - rOutputs[i] = aOutputs[i].getShownOutput(); - } - } - return rOutputs; - } - - public GT_MachineRecipe(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { - this(wrapInputs(aInputs), wrapOutputs(aOutputs), aFluidInputs, aFluidOutputs); - } - - public GT_MachineRecipe setSpecialItems(Object aSpecialItems) { - mSpecialItems = aSpecialItems; - return this; - } - - public GT_MachineRecipe setDuration(int aDuration) { - mDuration = aDuration; - return this; - } - - public GT_MachineRecipe setEUt(int aEUt) { - mEUt = aEUt; - return this; - } - - public GT_MachineRecipe setSpecialValue(int aSpecialValue) { - mSpecialValue = aSpecialValue; - return this; - } - - public GT_MachineRecipe setEnabled(boolean aEnabled) { - mEnabled = aEnabled; - return this; - } - - public boolean isEnabled() { - if (mEnableCondition != null) { - return GT_RecipeConditions.getConditionValue(mEnableCondition) ^ mInvertCondition; - } - if (mDuration <= 0 || mEUt <= 0) { - return false; - } - return mEnabled; - } - - public GT_MachineRecipe setEnableCondition(String aEnableCondition) { - mEnableCondition = aEnableCondition; - return this; - } - - public GT_MachineRecipe setInvertCondition(boolean aInvertCondition) { - mInvertCondition = aInvertCondition; - return this; - } - - public GT_MachineRecipe setHidden(boolean aHidden) { - mHidden = aHidden; - return this; - } - - public GT_MachineRecipe setFakeRecipe(boolean aFakeRecipe) { - mFakeRecipe = aFakeRecipe; - return this; - } - - public GT_MachineRecipe setCanBeBuffered(boolean aCanBeBuffered) { - mCanBeBuffered = aCanBeBuffered; - return this; - } - - public GT_MachineRecipe setNeedsEmptyOutput(boolean aNeedsEmptyOutput) { - mNeedsEmptyOutput = aNeedsEmptyOutput; - return this; - } - - public GT_MachineRecipe setNeiDesc(String... aNeiDesc) { - neiDesc = aNeiDesc; - return this; - } - - public String[] getNeiDesc() { - return neiDesc; - } - - public List getRepresentativeInput(int aIndex) { - if (aIndex < 0 || aIndex >= mInputs.length || mInputs[aIndex] == null) { - return null; - } - return mInputs[aIndex].getInputStacks(); - } - - public FluidStack getFluidOutput(int aIndex) { - if (aIndex < 0 || aIndex >= mFluidOutputs.length || mFluidOutputs[aIndex] == null) { - return null; - } - return mFluidOutputs[aIndex].copy(); - } - - public ItemStack getOutput(int aIndex) { - if (aIndex < 0 || aIndex >= mOutputs.length || mOutputs[aIndex] == null) { - return null; - } - return mOutputs[aIndex].getShownOutput().copy(); - } - - public int getOutputChance(int aIndex) { - if (aIndex < 0 || aIndex >= mOutputs.length || mOutputs[aIndex] == null) { - return 0; - } - return mOutputs[aIndex].getChance(); - } - - /** - * Overriding this method and getOutputPositionedStacks allows for custom NEI stack placement - * @return A list of input stacks - */ - public ArrayList getInputPositionedStacks(){ - return null; - } - - /** - * Overriding this method and getInputPositionedStacks allows for custom NEI stack placement - * @return A list of output stacks - */ - public ArrayList getOutputPositionedStacks(){ - return null; - } - - /** - * Validates the recipe by making sure the duration and EU/t have been set, it has input items and/or fluid as well - * as output items and/or fluid, unless it is a fake recipe (fake recipes are always considered valid). - * Because of the chained setters, some details could accidentally be omitted, and this method should be used before - * adding a recipe to a list or map. Also, if the recipe has been disabled based on conditions, it should probably not - * be added to lists/maps, but if it has been deliberately disabled, either by setting "enabled" to false or by setting - * duration less than or equal to 0, it should be added for collision checking. - */ - public boolean isValidRecipe() { - if (mFakeRecipe) return true; - if (mEnableCondition != null && !(GT_RecipeConditions.getConditionValue(mEnableCondition) ^ mInvertCondition)) return false; - if (mEUt <= 0) return false; - if (mInputs.length == 0 && mFluidInputs.length == 0) return false; - if (mOutputs.length == 0 && mFluidOutputs.length == 0) return false; - // Ore dictionary inputs/outputs that refer to un-registered entries can be considered invalid. - for (GT_RecipeInput mInput : mInputs) { - if (mInput.getInputStacks().isEmpty()) { - return false; - } - } - for (GT_RecipeOutput mOutput : mOutputs) { - if (mOutput.getShownOutput() == null) { - return false; - } - } - return true; - } - - // Copied from StackOverflow - private static int gcd(int a, int b) { return b==0 ? a : gcd(b, a%b); } - - public GT_MachineRecipe optimize() { - assert(isValidRecipe()); - if (!mFakeRecipe && !mOptimized) { // fake recipes probably aren't worth optimizing - int tDivisor = mDuration; - if (tDivisor >= 32) { - for (int i = 0; i < mInputs.length && tDivisor > 1; i++) { - tDivisor = gcd(tDivisor, mInputs[i].getCount()); - } - for (int i = 0; i < mOutputs.length && tDivisor > 1; i++) { - tDivisor = gcd(tDivisor, mOutputs[i].getCount()); - } - for (int i = 0; i < mFluidInputs.length && tDivisor > 1; i++) { - tDivisor = gcd(tDivisor, mFluidInputs[i].amount); - } - for (int i = 0; i < mFluidOutputs.length && tDivisor > 1; i++) { - tDivisor = gcd(tDivisor, mFluidOutputs[i].amount); - } - if (tDivisor > 1) { - for (GT_RecipeInput tInput : mInputs) { - tInput.setCount(tInput.getCount() / tDivisor); - } - for (GT_RecipeOutput tOutput : mOutputs) { - tOutput.setCount(tOutput.getCount() / tDivisor); - } - for (FluidStack tFluidInput : mFluidInputs) { - tFluidInput.amount /= tDivisor; - } - for (FluidStack tFluidOutput : mFluidOutputs) { - tFluidOutput.amount /= tDivisor; - } - } - } - mOptimized = true; - } - return this; - } - - public GT_MachineRecipe copy() { - GT_MachineRecipe rRecipe = new GT_MachineRecipe(mInputs, mOutputs, mFluidInputs, mFluidOutputs); - rRecipe.mCanBeBuffered = this.mCanBeBuffered; - rRecipe.mDuration = this.mDuration; - rRecipe.mEUt = this.mEUt; - rRecipe.mEnableCondition = this.mEnableCondition; - rRecipe.mEnabled = this.mEnabled; - rRecipe.mFakeRecipe = this.mFakeRecipe; - rRecipe.mHidden = this.mHidden; - rRecipe.mInvertCondition = this.mInvertCondition; - rRecipe.mNeedsEmptyOutput = this.mNeedsEmptyOutput; - rRecipe.mOptimized = this.mOptimized; - rRecipe.mSpecialItems = this.mSpecialItems; - rRecipe.mSpecialValue = this.mSpecialValue; - rRecipe.neiDesc = this.neiDesc; - - return rRecipe; - } - - public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, FluidStack[] aFluidInputs, ItemStack... aInputs) { - return isRecipeInputEqual(aDecreaseStacksizeBySuccess, false, aFluidInputs, aInputs); - } - - public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, boolean aIgnoreCounts, FluidStack[] aFluidInputs, ItemStack... aInputs) { - if (mFluidInputs.length > 0 && aFluidInputs == null) { - return false; - } - int amt; - for (FluidStack tFluid : mFluidInputs) { - if (tFluid != null) { - boolean temp = true; - amt = tFluid.amount; - for (FluidStack aFluid : aFluidInputs) { - if (aFluid != null && aFluid.isFluidEqual(tFluid)) { - if (aIgnoreCounts) { - temp = false; - break; - } - amt -= aFluid.amount; - if (amt < 1) { - temp = false; - break; - } - } - } - if (temp) { - return false; - } - } - } - - if (mInputs.length > 0 && aInputs == null) { - return false; - } - - for (GT_RecipeInput tInput : mInputs) { - if (tInput != null) { - amt = tInput.getCount(); - boolean temp = true; - for (ItemStack tStack : aInputs) { - if (tInput.inputMatches(tStack)) { - if (aIgnoreCounts) { - temp = false; - break; - } - amt -= tStack.stackSize; - if (amt < 1) { - temp = false; - break; - } - } - } - if (temp) { - return false; - } - } - } - if (aDecreaseStacksizeBySuccess) { - if (aFluidInputs != null) { - for (FluidStack tFluid : mFluidInputs) { - if (tFluid != null) { - amt = tFluid.amount; - for (FluidStack aFluid : aFluidInputs) { - if (aFluid != null && aFluid.isFluidEqual(tFluid)) { - if (aIgnoreCounts) { - aFluid.amount -= amt; - break; - } - if (aFluid.amount < amt) { - amt -= aFluid.amount; - aFluid.amount = 0; - } else { - aFluid.amount -= amt; - amt = 0; - break; - } - } - } - } - } - } - - if (aInputs != null) { - for (GT_RecipeInput tInput : mInputs) { - if (tInput != null) { - amt = tInput.getCount(); - for (ItemStack aStack : aInputs) { - if (tInput.inputMatches(aStack)) { - if (aIgnoreCounts) { - aStack.stackSize -= amt; - break; - } - if (aStack.stackSize < amt) { - amt -= aStack.stackSize; - aStack.stackSize = 0; - } else { - aStack.stackSize -= amt; - amt = 0; - break; - } - } - } - } - } - } - } - return true; - } - - @Override - public int compareTo(GT_MachineRecipe aRecipe) { - // first lowest tier recipes - // then fastest - // then with lowest special value - // then dry recipes - // then with fewer inputs - // and finally by earlier fluid id or item id, to keep ordering consistent - // at least when modlist stays the same. - if (this.mEUt != aRecipe.mEUt) { - return this.mEUt - aRecipe.mEUt; - } else if (this.mDuration != aRecipe.mDuration) { - return this.mDuration - aRecipe.mDuration; - } else if (this.mSpecialValue != aRecipe.mSpecialValue) { - return this.mSpecialValue - aRecipe.mSpecialValue; - } else if (this.mFluidInputs.length != aRecipe.mFluidInputs.length) { - return this.mFluidInputs.length - aRecipe.mFluidInputs.length; - } else if (this.mInputs.length != aRecipe.mInputs.length) { - return this.mInputs.length - aRecipe.mInputs.length; - } - for (int i = 0; i < mFluidInputs.length; i++) { - if (this.mFluidInputs[i].getFluidID() != aRecipe.mFluidInputs[i].getFluidID()) { - return this.mFluidInputs[i].getFluidID() - aRecipe.mFluidInputs[i].getFluidID(); - } - } - for (int i = 0; i < mInputs.length; i++) { - if (Item.getIdFromItem(this.mInputs[i].getInputStacks().get(0).getItem()) != Item.getIdFromItem(aRecipe.mInputs[i].getInputStacks().get(0).getItem())) { - return Item.getIdFromItem(this.mInputs[i].getInputStacks().get(0).getItem()) - Item.getIdFromItem(aRecipe.mInputs[i].getInputStacks().get(0).getItem()); - } - } - return 0; - } - - @Override - public String toString() { - return String.format("Inputs: %s, Fluid Inputs: %s, Outputs: %s, Fluid Outputs: %s", Arrays.toString(mInputs), Arrays.toString(mFluidInputs), Arrays.toString(mOutputs), Arrays.toString(mFluidOutputs)); - } - -} \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java b/src/main/java/gregtech/api/recipes/GT_RecipeInput.java deleted file mode 100644 index fd0178f3f6..0000000000 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInput.java +++ /dev/null @@ -1,78 +0,0 @@ -package gregtech.api.recipes; - -import gregtech.api.util.GT_Utility; -import java.util.Collections; -import java.util.List; -import net.minecraft.item.ItemStack; - -/** - * Represents an item stack as used for input in a GregTech machine recipe. - * Heavily based on/inspired by the recipe system in Ender IO, which is public domain. - * (see https://github.com/SleepyTrousers/EnderIO/blob/release/1.7.10/2.3/LICENSE to confirm) - */ -public class GT_RecipeInput { - - private final ItemStack mItemStack; - protected int mCount; - - protected GT_RecipeInput() { - mItemStack = null; - } - - public GT_RecipeInput(ItemStack aItemStack) { - mItemStack = aItemStack.copy(); - mCount = aItemStack.stackSize; - } - - public boolean inputMatches(ItemStack aItemStack) { - return inputMatches(aItemStack, true); - } - - public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { - if (aItemStack == null) return false; - if (!aIgnoreCount && aItemStack.stackSize < mItemStack.stackSize) return false; - if (!GT_Utility.areStacksEqual(aItemStack, mItemStack, true)) { - return false; - } - // Now check for NBT tags specified in recipe input. Extra tags specified on provided item but not in recipe can be ignored. - if (mItemStack.stackTagCompound != null) { - if (aItemStack.stackTagCompound == null) return false; - for (Object tTag : mItemStack.stackTagCompound.func_150296_c()) { // gets the key set - if (!mItemStack.stackTagCompound.getTag(tTag.toString()).equals(aItemStack.stackTagCompound.getTag(tTag.toString()))) return false; - } - } - return true; - } - - /** - * Gets a list of item stacks represented by this recipe input, possibly for display in NEI. - * @return either a singleton list of the item stack or list of interchangeable item stacks usable as input for the current recipe. - */ - public List getInputStacks() { - mItemStack.stackSize = mCount; - return Collections.singletonList(mItemStack.copy()); - } - - /** - * Gets a description of this input, probably for an assembly line instruction book - * @return a description of the item or items that can be used as input for the current recipe. - */ - public String getInputDescription() { - return mItemStack.stackSize + " " + mItemStack.getDisplayName(); - } - - @Override - public String toString() { - return getInputDescription(); - } - - public int getCount() { - mItemStack.stackSize = mCount; - return mCount; - } - - public void setCount(int aCount) { - mItemStack.stackSize = aCount; - mCount = aCount; - } -} \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java deleted file mode 100644 index 33faee5733..0000000000 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputAlts.java +++ /dev/null @@ -1,98 +0,0 @@ -package gregtech.api.recipes; - -import gregtech.api.util.GT_Utility; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import net.minecraft.item.ItemStack; - -/** - * Represents a choice of several item stacks for use in a recipe (most likely an assembly line). - */ -public class GT_RecipeInputAlts extends GT_RecipeInput { - - private final ItemStack[] mItems; - - public GT_RecipeInputAlts(ItemStack[] aItems) { - super(); - mItems = new ItemStack[aItems.length]; - for (int i = 0; i < aItems.length; i++) { - mItems[i] = aItems[i].copy(); - } - this.mCount = mItems[0].stackSize; - for (ItemStack mItem : mItems) { - mItem.stackSize = mCount; - } - } - - @Override - public boolean inputMatches(ItemStack aItemStack) { - return inputMatches(aItemStack, true); - } - - @Override - public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { - if (aItemStack == null) { - return false; - } - if (!aIgnoreCount && aItemStack.stackSize < mCount) { - return false; - } - for (ItemStack tItemStack : mItems) { - if (GT_Utility.areStacksEqual(tItemStack, aItemStack)) { - if (tItemStack.stackTagCompound != null) { - if (aItemStack.stackTagCompound == null) { - return false; - } - for (Object tTag : tItemStack.stackTagCompound.func_150296_c()) { // gets the key set - if (!tItemStack.stackTagCompound.getTag(tTag.toString()).equals(aItemStack.stackTagCompound.getTag(tTag.toString()))) { - return false; - } - } - } - return true; - } - } - return false; - } - - @Override - public List getInputStacks() { - ArrayList rList = new ArrayList<>(mItems.length); - for (ItemStack mItem : mItems) { - rList.add(mItem.copy()); - } - return rList; - } - - @Override - public String getInputDescription() { - StringBuilder rDescription = new StringBuilder(100); - for (ItemStack tItem : mItems) { - rDescription.append(tItem.stackSize); - rDescription.append(' '); - rDescription.append(tItem.getDisplayName()); - rDescription.append(" or "); - } - return rDescription.substring(0, rDescription.length() - 4); - } - - @Override - public String toString() { - return getInputDescription(); - } - - @Override - public int getCount() { - return mCount; - } - - @Override - public void setCount(int aCount) { - for (ItemStack tItem : mItems) { - tItem.stackSize = aCount; - } - mCount = aCount; - } - -} diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java b/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java deleted file mode 100644 index 7da0ebd585..0000000000 --- a/src/main/java/gregtech/api/recipes/GT_RecipeInputOredict.java +++ /dev/null @@ -1,60 +0,0 @@ -package gregtech.api.recipes; - -import gregtech.api.util.GT_OreDictUnificator; -import java.util.List; -import net.minecraft.item.ItemStack; - -/** - * Represents an ore dictionary entry (and count) for use in a GregTech machine recipe. - * Heavily based on/inspired by the recipe system in Ender IO, which is public domain. - * (see https://github.com/SleepyTrousers/EnderIO/blob/release/1.7.10/2.3/LICENSE to confirm) - */ -public class GT_RecipeInputOredict extends GT_RecipeInput { - - private final String mOredictName; - - public GT_RecipeInputOredict(String aOredictName, int aCount) { - super(); - mOredictName = aOredictName; - mCount = aCount; - } - - @Override - public boolean inputMatches(ItemStack aItemStack, boolean aIgnoreCount) { - if (aItemStack == null) return false; - if (!aIgnoreCount && aItemStack.stackSize < mCount) return false; - return GT_OreDictUnificator.isItemStackInstanceOf(aItemStack, mOredictName); - } - - @Override - public List getInputStacks() { - List rList = GT_OreDictUnificator.getOres(mOredictName); - for (int i = 0; i < rList.size(); i++) { - ItemStack tItemStack = rList.get(i).copy(); - tItemStack.stackSize = mCount; - rList.set(i, tItemStack); - } - return rList; - } - - @Override - public String getInputDescription() { - return mCount + " " + mOredictName; - } - - @Override - public String toString() { - return getInputDescription(); - } - - @Override - public int getCount() { - return mCount; - } - - @Override - public void setCount(int aCount) { - mCount = aCount; - } - -} \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java index 5e59e922fe..1162c9630b 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -1,6 +1,7 @@ package gregtech.api.recipes; import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonToken; import cpw.mods.fml.common.registry.GameRegistry; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; @@ -10,6 +11,7 @@ import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import java.io.IOException; import java.util.ArrayList; @@ -30,13 +32,52 @@ private GT_RecipeListJsonReader() { // Utility class, private constructor. } - public static List readRecipes(JsonReader aReader) { + private static class GT_Json_Recipe extends GT_Recipe { + GT_Json_Recipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + super(aOptimize, aInputs, aOutputs, aSpecialItems, aChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); + } + } + + private static class ItemStackWithChance { + public ItemStack mStack; + public float mChance; + ItemStackWithChance(ItemStack aStack, float aChance) { + mStack = aStack; + mChance = aChance; + } + } + + private static ItemStack[] getOutputItems(List aList) { + ItemStack[] rItems = new ItemStack[aList.size()]; + for (int i = 0; i < aList.size(); i++) { + if (aList.get(i) != null) { + rItems[i] = aList.get(i).mStack; + } else { + rItems[i] = null; + } + } + return rItems; + } + + private static int[] getOutputChancesAsInts(List aList) { + int[] rChances = new int[aList.size()]; + for (int i = 0; i < aList.size(); i++) { + if (aList.get(i) != null) { + rChances[i] = (int)(aList.get(i).mChance * 10000); + } else { + rChances[i] = 0; + } + } + return rChances; + } + + public static List readRecipes(JsonReader aReader) { aReader.setLenient(true); - List rList = new ArrayList<>(100); + List rList = new ArrayList<>(100); try { aReader.beginArray(); while (aReader.hasNext()) { - List tRecipe = readRecipe(aReader); + List tRecipe = readSingleRecipe(aReader); if (tRecipe != null) { rList.addAll(tRecipe); } @@ -48,9 +89,11 @@ public static List readRecipes(JsonReader aReader) { return rList; } - private static List readRecipe(JsonReader aReader) throws IOException { - List tInputs = new ArrayList<>(10); - List tOutputs = new ArrayList<>(10); + // Reads one recipe object from the json, but some convenience features may cause a single json recipe + // to translate into multiple GT_Recipe objects. + private static List readSingleRecipe(JsonReader aReader) throws IOException { + List tInputs = new ArrayList<>(10); + List tOutputs = new ArrayList<>(10); List tFluidInputs = new ArrayList<>(10); List tFluidOutputs = new ArrayList<>(10); List tFluidsPerCircuit = new ArrayList<>(10); @@ -63,6 +106,7 @@ private static List readRecipe(JsonReader aReader) throws IOEx boolean tHidden = false; boolean tUseSolderFluids = false; boolean tUseCuttingFluids = false; + boolean tOptimize = true; int tSolderAmount = 0; aReader.beginObject(); while (aReader.hasNext()) { @@ -119,7 +163,9 @@ private static List readRecipe(JsonReader aReader) throws IOEx tMaterialFluid.amount = tFluidAmount; tFluidInputs.add(tMaterialFluid); } else if (tFluidName != null) { - if (FluidRegistry.isFluidRegistered(tFluidName)) { + if ("ic2distilledwater".equals(tFluidName)) { + tFluidInputs.add(GT_ModHandler.getDistilledWater(tFluidAmount)); + } else if (FluidRegistry.isFluidRegistered(tFluidName)) { tFluidInputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); } else { GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); @@ -162,7 +208,9 @@ private static List readRecipe(JsonReader aReader) throws IOEx tMaterialFluid.amount = tFluidAmount; tFluidOutputs.add(tMaterialFluid); } else if (tFluidName != null) { - if (FluidRegistry.isFluidRegistered(tFluidName)) { + if ("ic2distilledwater".equals(tFluidName)) { + tFluidOutputs.add(GT_ModHandler.getDistilledWater(tFluidAmount)); + } else if (FluidRegistry.isFluidRegistered(tFluidName)) { tFluidOutputs.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); } else { GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); @@ -203,7 +251,9 @@ private static List readRecipe(JsonReader aReader) throws IOEx tMaterialFluid.amount = tFluidAmount; tFluidsPerCircuit.add(tMaterialFluid); } else if (tFluidName != null) { - if (FluidRegistry.isFluidRegistered(tFluidName)) { + if ("ic2distilledwater".equals(tFluidName)) { + tFluidsPerCircuit.add(GT_ModHandler.getDistilledWater(tFluidAmount)); + } else if (FluidRegistry.isFluidRegistered(tFluidName)) { tFluidsPerCircuit.add(new FluidStack(FluidRegistry.getFluid(tFluidName), tFluidAmount)); } else { GT_Log.err.println("Unregistered fluid used in recipe: " + tFluidName); @@ -219,13 +269,20 @@ private static List readRecipe(JsonReader aReader) throws IOEx tEUt = aReader.nextInt(); break; case "specialValue": - String tSpecialValueString = aReader.nextString(); - if ("lowgravity".equals(tSpecialValueString)) { - tSpecialValue = -100; - } else if ("cleanroom".equals(tSpecialValueString)) { - tSpecialValue = -200; + JsonToken tToken = aReader.peek(); + if (tToken == JsonToken.STRING) { + String tSpecialValueString = aReader.nextString(); + if ("lowgravity".equals(tSpecialValueString)) { + tSpecialValue = -100; + } else if ("cleanroom".equals(tSpecialValueString)) { + tSpecialValue = -200; + } else { + tSpecialValue = Integer.valueOf(tSpecialValueString); + } + } else if (tToken == JsonToken.NUMBER) { + tSpecialValue = aReader.nextInt(); } else { - tSpecialValue = Integer.valueOf(tSpecialValueString); + throw new AssertionError("Invalid token in specialValue: " + tToken); } break; case "blastTemp": @@ -248,74 +305,86 @@ private static List readRecipe(JsonReader aReader) throws IOEx case "useCuttingFluids": tUseCuttingFluids = aReader.nextBoolean(); break; + case "optimize": + tOptimize = aReader.nextBoolean(); + break; default: throw new AssertionError("Invalid recipe specifier: " + tName); } } aReader.endObject(); + // Recipes disabled by condition should not be added. + if (tEnableCondition != null && !(GT_RecipeConditions.getConditionValue(tEnableCondition) ^ tInvertCondition)) { + return null; + } + // Clear input/output lists of nulls, which could be from unregistered items/fluids, or items from unloaded mods. + // if this results in completely empty inputs or outputs, that usually means the recipe should not be added. + // (except for things like fuels and some fake recipes which are not currently handled in json) + while (tInputs.remove(null)) { /* do nothing else */ } + while (tOutputs.remove(null)) { /* do nothing else */ } + while (tFluidInputs.remove(null)) { /* do nothing else */ } + while (tFluidOutputs.remove(null)) { /* do nothing else */ } + if (tEUt <= 0 || (tInputs.isEmpty() && tFluidInputs.isEmpty()) || (tOutputs.isEmpty() && tFluidOutputs.isEmpty() && tFluidsPerCircuit.isEmpty())) { + return null; + } + // Recipes disabled this way (possibly from file in config folder) still need to be added for the sake of collision, + // so recipes from assets will not be added, but make sure they're fully disabled and hidden from NEI. + if (!tEnabled) { + tDuration = 0; + } + if (tDuration <= 0) { + tHidden = true; + } if (!tFluidsPerCircuit.isEmpty()) { - tInputs.add(new GT_RecipeInput(GT_Utility.getIntegratedCircuit(0))); - List tList = new ArrayList<>(tFluidsPerCircuit.size()); + tInputs.add(GT_Utility.getIntegratedCircuit(0)); + List tList = new ArrayList<>(tFluidsPerCircuit.size()); for (int i = 0; i < tFluidsPerCircuit.size(); i++) { - tInputs.set(tInputs.size() - 1, new GT_RecipeInput(GT_Utility.getIntegratedCircuit(i + 1))); - GT_MachineRecipe rRecipe = new GT_MachineRecipe(tInputs.toArray(new GT_RecipeInput[0]), tOutputs.toArray(new GT_RecipeOutput[0]), - tFluidInputs.toArray(new FluidStack[0]), new FluidStack[]{tFluidsPerCircuit.get(i)}); - rRecipe.setDuration(tDuration); - rRecipe.setEUt(tEUt); - rRecipe.setSpecialValue(tSpecialValue); - rRecipe.setEnabled(tEnabled); - rRecipe.setEnableCondition(tEnableCondition); - rRecipe.setInvertCondition(tInvertCondition); - rRecipe.setHidden(tHidden); + tInputs.set(tInputs.size() - 1, GT_Utility.getIntegratedCircuit(i + 1)); + GT_Recipe rRecipe = new GT_Json_Recipe(tOptimize, tInputs.toArray(new ItemStack[0]), getOutputItems(tOutputs), null, + getOutputChancesAsInts(tOutputs), tFluidInputs.toArray(new FluidStack[0]), new FluidStack[]{tFluidsPerCircuit.get(i)}, tDuration, tEUt, tSpecialValue); + rRecipe.mEnabled = tEnabled; + rRecipe.mHidden = tHidden; tList.add(rRecipe); } return tList; } if (!tOutputs.isEmpty() || !tFluidOutputs.isEmpty()) { - GT_MachineRecipe rRecipe = new GT_MachineRecipe(tInputs.toArray(new GT_RecipeInput[0]), tOutputs.toArray(new GT_RecipeOutput[0]), - tFluidInputs.toArray(new FluidStack[0]), tFluidOutputs.toArray(new FluidStack[0])); - rRecipe.setDuration(tDuration); - rRecipe.setEUt(tEUt); - rRecipe.setSpecialValue(tSpecialValue); - rRecipe.setEnabled(tEnabled); - rRecipe.setEnableCondition(tEnableCondition); - rRecipe.setInvertCondition(tInvertCondition); - rRecipe.setHidden(tHidden); - if (rRecipe.isValidRecipe()) { - if (tUseSolderFluids && (tSolderAmount > 0)) { - FluidStack[] tSolderFluids = getSolderFluids(); - List tList = new ArrayList<>(tSolderFluids.length); - for (FluidStack tSolderFluid : tSolderFluids) { - GT_MachineRecipe tRecipe = rRecipe.copy(); - tRecipe.mFluidInputs = new FluidStack[]{tSolderFluid.copy()}; - tRecipe.mFluidInputs[0].amount *= tSolderAmount; - tList.add(tRecipe); - } - return tList; - } else if (tUseCuttingFluids) { - List tList = new ArrayList<>(3); - GT_MachineRecipe tRecipe = rRecipe.copy(); - tRecipe.mFluidInputs = new FluidStack[]{Materials.Lubricant.getFluid(Math.max(1, Math.min(250, tDuration * tEUt / 1280)))}; - tList.add(tRecipe); - tRecipe = rRecipe.copy(); - tRecipe.mFluidInputs = new FluidStack[]{GT_ModHandler.getDistilledWater(Math.max(3, Math.min(750, tDuration * tEUt / 426)))}; - tRecipe.setDuration(tDuration * 2); + GT_Recipe rRecipe = new GT_Json_Recipe(tOptimize, tInputs.toArray(new ItemStack[0]), getOutputItems(tOutputs), null, + getOutputChancesAsInts(tOutputs), tFluidInputs.toArray(new FluidStack[0]), tFluidOutputs.toArray(new FluidStack[0]), tDuration, tEUt, tSpecialValue); + rRecipe.mEnabled = tEnabled; + rRecipe.mHidden = tHidden; + if (tUseSolderFluids && (tSolderAmount > 0)) { + FluidStack[] tSolderFluids = getSolderFluids(); + List tList = new ArrayList<>(tSolderFluids.length); + for (FluidStack tSolderFluid : tSolderFluids) { + GT_Recipe tRecipe = rRecipe.copy(); + tRecipe.mFluidInputs = new FluidStack[]{tSolderFluid.copy()}; + tRecipe.mFluidInputs[0].amount *= tSolderAmount; tList.add(tRecipe); - tRecipe = rRecipe.copy(); - tRecipe.mFluidInputs = new FluidStack[]{Materials.Water.getFluid(Math.max(4, Math.min(1000, tDuration * tEUt / 320)))}; - tRecipe.setDuration(tDuration * 2); - tList.add(tRecipe); - return tList; } - return Collections.singletonList(rRecipe); + return tList; + } else if (tUseCuttingFluids) { + List tList = new ArrayList<>(3); + GT_Recipe tRecipe = rRecipe.copy(); + tRecipe.mFluidInputs = new FluidStack[]{Materials.Lubricant.getFluid(Math.max(1, Math.min(250, tDuration * tEUt / 1280)))}; + tList.add(tRecipe); + tRecipe = rRecipe.copy(); + tRecipe.mFluidInputs = new FluidStack[]{GT_ModHandler.getDistilledWater(Math.max(3, Math.min(750, tDuration * tEUt / 426)))}; + tRecipe.mDuration = tDuration * 2; + tList.add(tRecipe); + tRecipe = rRecipe.copy(); + tRecipe.mFluidInputs = new FluidStack[]{Materials.Water.getFluid(Math.max(4, Math.min(1000, tDuration * tEUt / 320)))}; + tRecipe.mDuration = tDuration * 2; + tList.add(tRecipe); + return tList; } + return Collections.singletonList(rRecipe); } return null; } - private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { + private static ItemStack readInput(JsonReader aReader) throws IOException { ItemStack tStack = null; - List tAlts = new ArrayList<>(5); String tOreName = null; int tCount = -1; NBTTagCompound tNbtData = null; @@ -337,35 +406,6 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { case "nbt": tNbtData = readNbt(aReader); break; - case "alts": - aReader.beginArray(); - while (aReader.hasNext()) { - ItemStack tAltStack = null; - NBTTagCompound tAltNbtData = null; - String tAltOreName = null; - aReader.beginObject(); - while (aReader.hasNext()) { - String tAltEntryName = aReader.nextName(); - if ("item".equals(tAltEntryName)) { - tAltStack = StringtoItemStack(aReader.nextString()); - } else if ("ore".equals(tAltEntryName) || "oredict".equals(tAltEntryName)) { - tAltOreName = aReader.nextString(); - } else if ("nbt".equals(tAltEntryName)) { - tAltNbtData = readNbt(aReader); - } - } - aReader.endObject(); - if (tAltStack != null && tAltNbtData != null) { - tAltStack.setTagCompound(tAltNbtData); - } - if (tAltOreName != null) { - tAlts.addAll(GT_OreDictUnificator.getOres(tAltOreName)); - } else { - tAlts.add(tAltStack); - } - } - aReader.endArray(); - break; case "circuit": int tCircuitConfig = aReader.nextInt(); tStack = GT_Utility.getIntegratedCircuit(tCircuitConfig); @@ -384,20 +424,13 @@ private static GT_RecipeInput readInput(JsonReader aReader) throws IOException { aReader.endObject(); if (tCount >= 0) { if (tOreName != null) { - return new GT_RecipeInputOredict(tOreName, tCount); - } else if (!tAlts.isEmpty()) { - for (ItemStack tAlt : tAlts) { - tAlt.stackSize = tCount; - } - GT_RecipeInputAlts rInput = new GT_RecipeInputAlts(tAlts.toArray(new ItemStack[0])); - rInput.setCount(tCount); - return rInput; + return GT_OreDictUnificator.getFirstOre(tOreName, tCount); } else if (tStack != null) { tStack.stackSize = tCount; if (tNbtData != null) { tStack.setTagCompound(tNbtData); } - return new GT_RecipeInput(tStack); + return tStack; } } return null; @@ -423,7 +456,12 @@ private static ItemStack StringtoItemStack(String aItemString) { e.printStackTrace(GT_Log.err); } } else if ("IC2ItemList".equals(tPieces[0])) { - rStack = GT_ModHandler.getIC2Item(tPieces[0], 1); + if (tPieces.length >= 3) { + rStack = GT_ModHandler.getIC2Item(tPieces[1], 1, tMeta); + } else { + rStack = GT_ModHandler.getIC2Item(tPieces[1], 1); + } + return rStack; } else { rStack = GameRegistry.findItemStack(tPieces[0], tPieces[1], 1); } @@ -435,7 +473,7 @@ private static ItemStack StringtoItemStack(String aItemString) { return null; } - private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException { + private static ItemStackWithChance readOutput(JsonReader aReader) throws IOException { ItemStack tStack = null; String tOreName = null; int tCount = -1; @@ -475,13 +513,14 @@ private static GT_RecipeOutput readOutput(JsonReader aReader) throws IOException aReader.endObject(); if (tCount >= 0) { if (tOreName != null) { - return new GT_RecipeOutput(tOreName, tCount, tChance); - } else if (tStack != null) { + tStack = GT_OreDictUnificator.getFirstOre(tOreName, tCount); + } + if (tStack != null) { tStack.stackSize = tCount; if (tNbtData != null) { tStack.setTagCompound(tNbtData); } - return new GT_RecipeOutput(tStack, tChance); + return new ItemStackWithChance(tStack, tChance); } } return null; diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java b/src/main/java/gregtech/api/recipes/GT_RecipeMap.java deleted file mode 100644 index 69c0ff9c40..0000000000 --- a/src/main/java/gregtech/api/recipes/GT_RecipeMap.java +++ /dev/null @@ -1,1526 +0,0 @@ -package gregtech.api.recipes; - -import codechicken.nei.PositionedStack; -import cpw.mods.fml.common.Loader; -import cpw.mods.fml.common.Optional; -import gregtech.api.GregTech_API; -import gregtech.api.enums.Dyes; -import gregtech.api.enums.GT_Values; -import gregtech.api.enums.ItemList; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.enums.SubTag; -import gregtech.api.interfaces.tileentity.IGregTechTileEntity; -import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords; -import gregtech.api.objects.GT_ItemStack; -import gregtech.api.objects.ItemData; -import gregtech.api.objects.MaterialStack; -import gregtech.api.util.GT_LanguageManager; -import gregtech.api.util.GT_Log; -import gregtech.api.util.GT_ModHandler; -import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Utility; -import gregtech.nei.GT_NEI_DefaultHandler; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidContainerRegistry; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.IFluidContainerItem; - -import static gregtech.api.enums.GT_Values.L; -import static gregtech.api.enums.GT_Values.W; - - - -public class GT_RecipeMap { - - /** - * Contains all Recipe Maps - */ - public static final Collection sMappings = new ArrayList(100); - - public static final GT_RecipeMap sOreWasherRecipes = new GT_RecipeMap(new HashSet(120)).setNames("gt.recipe.orewasher", "Ore Washing Plant").setNEIGUIPathBasic("OreWasher").setOutputSlots(3).setMinimalInputFluids(1); - public static final GT_RecipeMap sThermalCentrifugeRecipes = new GT_RecipeMap(new HashSet(120)).setNames("gt.recipe.thermalcentrifuge", "Thermal Centrifuge").setNEIGUIPathBasic("ThermalCentrifuge").setOutputSlots(3).setAmperage(2); - public static final GT_RecipeMap sCompressorRecipes = new GT_RecipeMap(new HashSet(120)).setNames("gt.recipe.compressor", "Compressor").setNEIGUIPathBasic("Compressor"); - public static final GT_RecipeMap sExtractorRecipes = new GT_RecipeMap(new HashSet(30)).setNames("gt.recipe.extractor", "Extractor").setNEIGUIPathBasic("Extractor"); - public static final GT_RecipeMap sRecyclerRecipes = new GT_RecipeMapRecycler(new HashSet(0)).setNames("ic.recipe.recycler", "Recycler").setNEIName("ic2.recycler").setNEIGUIPathBasic("Recycler").setNEIAllowed(false); - public static final GT_RecipeMap sFurnaceRecipes = new GT_RecipeMapFurnace(new HashSet(0)).setNames("mc.recipe.furnace", "Furnace").setNEIName("smelting").setNEIGUIPathBasic("E_Furnace").setNEIAllowed(false); - public static final GT_RecipeMap sMicrowaveRecipes = new GT_RecipeMapMicrowave(new HashSet(0)).setNames("gt.recipe.microwave", "Microwave").setNEIName("smelting").setNEIGUIPathBasic("E_Furnace").setNEIAllowed(false); - - public static final GT_RecipeMap sScannerFakeRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.scanner", "Scanner").setNEIGUIPathBasic("Scanner"); - public static final GT_RecipeMap sRockBreakerFakeRecipes = new GT_RecipeMap(new HashSet(3)).setNames("gt.recipe.rockbreaker", "Rock Breaker").setNEIGUIPathBasic("RockBreaker").setMinimalInputItems(0); - public static final GT_RecipeMap sByproductList = new GT_RecipeMap(new HashSet(1000)).setNames("gt.recipe.byproductlist", "Ore Byproduct List").setNEIGUIPathBasic("Default").setOutputSlots(6); - public static final GT_RecipeMap sReplicatorFakeRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.replicator", "Replicator").setNEIGUIPathBasic("Replicator").setInputSlots(0).setMinimalInputItems(0).setMinimalInputFluids(1); - public static final GT_RecipeMap sOrganicReplicatorFakeRecipes = new GT_RecipeMap(new HashSet(1)).setNames("gt.recipe.organicreplicator", "Organic Replicator").setNEIGUIPathBasic("OrganicReplicator").setMinimalInputFluids(1); - public static final GT_RecipeMap sAssemblyLineVisualRecipes = new GT_RecipeMap(new HashSet(30)).setNames("gt.recipe.fakeAssemblylineProcess", "Assemblyline Process").setNEIGUIPathRes("FakeAssemblyline").setNEIAllowed(false); - public static final GT_RecipeMap sPlasmaArcFurnaceRecipes = new GT_RecipeMap(new HashSet(10000)).setNames("gt.recipe.plasmaarcfurnace", "Plasma Arc Furnace").setNEIGUIPathBasic("PlasmaArcFurnace").setOutputSlots(4).setMinimalInputFluids(1); - public static final GT_RecipeMap sArcFurnaceRecipes = new GT_RecipeMap(new HashSet(10000)).setNames("gt.recipe.arcfurnace", "Arc Furnace").setNEIGUIPathBasic("ArcFurnace").setOutputSlots(4).setMinimalInputFluids(1).setAmperage(3); - public static final GT_RecipeMap sPrinterRecipes = new GT_RecipeMapPrinter(new HashSet(100)).setNames("gt.recipe.printer", "Printer").setNEIGUIPathBasic("Printer").setMinimalInputFluids(1); - public static final GT_RecipeMap sSifterRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.sifter", "Sifter").setNEIGUIPathBasic("Sifter").setOutputSlots(9); - public static final GT_RecipeMap sPressRecipes = new GT_RecipeMapFormingPress(new HashSet(100)).setNames("gt.recipe.press", "Forming Press").setNEIGUIPathBasic("Press").setInputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sLaserEngraverRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.laserengraver", "Precision Laser Engraver").setNEIGUIPathBasic("LaserEngraver").setInputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sMixerRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.mixer", "Mixer").setNEIGUIPathBasic("Mixer").setInputSlots(4).setMinimalTotalInputs(2); - public static final GT_RecipeMap sAutoclaveRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.autoclave", "Autoclave").setNEIGUIPathBasic("Autoclave").setMinimalInputFluids(1); - public static final GT_RecipeMap sElectroMagneticSeparatorRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.electromagneticseparator", "Electromagnetic Separator").setNEIGUIPathBasic("ElectromagneticSeparator").setOutputSlots(3); - public static final GT_RecipeMap sPolarizerRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.polarizer", "Electromagnetic Polarizer").setNEIGUIPathBasic("Polarizer"); - public static final GT_RecipeMap sMaceratorRecipes = new GT_RecipeMapMacerator(new HashSet(10000)).setNames("gt.recipe.macerator", "Pulverization").setNEIGUIPathBasic("Macerator4").setOutputSlots(4); - public static final GT_RecipeMap sChemicalBathRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.chemicalbath", "Chemical Bath").setNEIGUIPathBasic("ChemicalBath").setOutputSlots(3).setMinimalInputFluids(1); - public static final GT_RecipeMap sFluidCannerRecipes = new GT_RecipeMapFluidCanner(new HashSet(1000)).setNames("gt.recipe.fluidcanner", "Fluid Canning Machine").setNEIGUIPathBasic("FluidCannerNEI"); - public static final GT_RecipeMap sBrewingRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.brewer", "Brewing Machine").setNEIGUIPathBasic("PotionBrewer").setOutputSlots(0).setMinimalInputFluids(1); - public static final GT_RecipeMap sFluidHeaterRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.fluidheater", "Fluid Heater").setNEIGUIPathBasic("FluidHeater").setOutputSlots(0).setMinimalInputFluids(1); - - public static final GT_RecipeMap sDistilleryRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.distillery", "Distillery").setNEIGUIPathBasic("Distillery").setMinimalInputFluids(1); - public static final GT_RecipeMap sFermentingRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.fermenter", "Fermenter").setNEIGUIPathBasic("Fermenter").setInputSlots(0).setOutputSlots(0).setMinimalInputItems(0); - public static final GT_RecipeMap sFluidSolidificationRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.fluidsolidifier", "Fluid Solidifier").setNEIGUIPathBasic("FluidSolidifier").setMinimalInputFluids(1); - public static final GT_RecipeMap sFluidExtractionRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.fluidextractor", "Fluid Extractor").setNEIGUIPathBasic("FluidExtractor"); - public static final GT_RecipeMap sBoxinatorRecipes = new GT_RecipeMap(new HashSet(2500)).setNames("gt.recipe.packager", "Packager").setNEIGUIPathBasic("Packager").setInputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sUnboxinatorRecipes = new GT_RecipeMapUnboxinator(new HashSet(2500)).setNames("gt.recipe.unpackager", "Unpackager").setNEIGUIPathBasic("Unpackager").setOutputSlots(2); - public static final GT_RecipeMap sFusionRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.fusionreactor", "Fusion Reactor").setNEIGUIPathBasic("Default").setInputSlots(0).setOutputSlots(0).setMinimalInputItems(0).setMinimalInputFluids(2).setNEISpecialValuePre("Start: ").setNEISpecialValuePost(" EU"); - public static final GT_RecipeMap sCentrifugeRecipes = new GT_RecipeMap(new HashSet(1000)).setNames("gt.recipe.centrifuge", "Centrifuge").setNEIGUIPathBasic("Centrifuge").setInputSlots(2).setOutputSlots(6).setMinimalInputItems(0).setMinimalInputFluids(0).setMinimalTotalInputs(1); - public static final GT_RecipeMap sElectrolyzerRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.electrolyzer", "Electrolyzer").setNEIGUIPathBasic("Electrolyzer").setInputSlots(2).setOutputSlots(6).setMinimalInputItems(0).setMinimalInputFluids(0).setMinimalTotalInputs(1); - public static final GT_RecipeMap sBlastRecipes = new GT_RecipeMap(new HashSet(500)).setNames("gt.recipe.blastfurnace", "Blast Furnace").setNEIGUIPathBasic("Default").setInputSlots(2).setOutputSlots(2).setNEISpecialValuePre("Heat Capacity: ").setNEISpecialValuePost(" K").setShowVoltageAmperageInNEI(false); - public static final GT_RecipeMap sPrimitiveBlastRecipes = new GT_RecipeMap(new HashSet(500)).setNames("gt.recipe.primitiveblastfurnace", "Primitive Blast Furnace").setNEIGUIPathBasic("Default").setInputSlots(3).setOutputSlots(3).setMinimalInputItems(2).setShowVoltageAmperageInNEI(false); - public static final GT_RecipeMap sImplosionRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.implosioncompressor", "Implosion Compressor").setNEIGUIPathBasic("Default").setInputSlots(2).setOutputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sVacuumRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.vacuumfreezer", "Vacuum Freezer").setNEIGUIPathBasic("Default"); - public static final GT_RecipeMap sChemicalRecipes = new GT_RecipeMap(new HashSet(100)).setNames("gt.recipe.chemicalreactor", "Chemical Reactor").setNEIGUIPathBasic("ChemicalReactor").setInputSlots(2).setOutputSlots(2); - public static final GT_RecipeMap sMultiblockChemicalRecipes = new GT_RecipeMapLargeChemicalReactor(); - public static final GT_RecipeMap sDistillationRecipes = new GT_RecipeMapDistillationTower(); - public static final GT_RecipeMap sCrackingRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.craker", "Oil Cracker").setNEIGUIPathBasic("Default").setMinimalInputFluids(2); - public static final GT_RecipeMap sPyrolyseRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.pyro", "Pyrolyse Oven").setNEIGUIPathBasic("Default").setInputSlots(2); - public static final GT_RecipeMap sWiremillRecipes = new GT_RecipeMap(new HashSet(50)).setNames("gt.recipe.wiremill", "Wiremill").setNEIGUIPathBasic("Wiremill"); - public static final GT_RecipeMap sBenderRecipes = new GT_RecipeMap(new HashSet(400)).setNames("gt.recipe.metalbender", "Metal Bender").setNEIGUIPathBasic("Bender").setInputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sAlloySmelterRecipes = new GT_RecipeMap(new HashSet(3000)).setNames("gt.recipe.alloysmelter", "Alloy Smelter").setNEIGUIPathBasic("AlloySmelter").setInputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sAssemblerRecipes = new GT_RecipeMapAssembler(new HashSet(300)).setNames("gt.recipe.assembler", "Assembler").setNEIGUIPathBasic("Assembler").setInputSlots(6); - public static final GT_RecipeMap sCircuitAssemblerRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.circuitassembler", "Circuit Assembler").setNEIGUIPathBasic("CircuitAssembler").setInputSlots(6).setMinimalInputItems(3).setMinimalInputFluids(1); - public static final GT_RecipeMap sCannerRecipes = new GT_RecipeMap(new HashSet(300)).setNames("gt.recipe.canner", "Canning Machine").setNEIGUIPathBasic("Canner").setInputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sLatheRecipes = new GT_RecipeMap(new HashSet(400)).setNames("gt.recipe.lathe", "Lathe").setNEIGUIPathBasic("Lathe").setOutputSlots(2); - public static final GT_RecipeMap sCutterRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.cuttingsaw", "Cutting Saw").setNEIGUIPathBasic("Cutter").setOutputSlots(2).setMinimalInputFluids(1); - public static final GT_RecipeMap sSlicerRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.slicer", "Slicer").setNEIGUIPathBasic("Slicer").setInputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sExtruderRecipes = new GT_RecipeMap(new HashSet(1000)).setNames("gt.recipe.extruder", "Extruder").setNEIGUIPathBasic("Extruder").setInputSlots(2).setMinimalInputItems(2); - public static final GT_RecipeMap sHammerRecipes = new GT_RecipeMap(new HashSet(200)).setNames("gt.recipe.hammer", "Hammer").setNEIGUIPathBasic("Hammer"); - public static final GT_RecipeMap sAmplifiers = new GT_RecipeMap(new HashSet(10)).setNames("gt.recipe.uuamplifier", "UU Amplifier").setNEIGUIPathBasic("Amplifabricator").setOutputSlots(0); - public static final GT_RecipeMap sMassFabFakeRecipes = new GT_RecipeMap(new HashSet(10)).setNames("gt.recipe.massfab", "Mass Fabrication").setNEIGUIPathBasic("Massfabricator").setOutputSlots(0); - public static final GT_RecipeMapFuel sDieselFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.dieselgeneratorfuel", "Diesel Generator Fuel").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); - public static final GT_RecipeMapFuel sTurbineFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.gasturbinefuel", "Gas Turbine Fuel").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); - public static final GT_RecipeMapFuel sHotFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.thermalgeneratorfuel", "Thermal Generator Fuel").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU").setNEIAllowed(false); - public static final GT_RecipeMapFuel sDenseLiquidFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.semifluidboilerfuels", "Semifluid Boiler Fuels").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); - public static final GT_RecipeMapFuel sPlasmaFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.plasmageneratorfuels", "Plasma generator Fuels").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); - public static final GT_RecipeMapFuel sMagicFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.magicfuels", "Magic Fuels").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); - public static final GT_RecipeMapFuel sSmallNaquadahReactorFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.smallnaquadahreactor", "Small Naquadah Reactor").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); - public static final GT_RecipeMapFuel sLargeNaquadahReactorFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.largenaquadahreactor", "Large Naquadah Reactor").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); - public static final GT_RecipeMapFuel sFluidNaquadahReactorFuels = (GT_RecipeMapFuel) new GT_RecipeMapFuel(new HashSet(10)).setNames("gt.recipe.fluidnaquadahreactor", "Fluid Naquadah Reactor").setNEIGUIPathBasic("Default").setMinimalInputItems(0).setNEISpecialValuePre("Fuel Value: ").setNEISpecialValueMultiplier(1000).setNEISpecialValuePost(" EU"); - public static final GT_RecipeMapLargeBoilerFakeFuels sLargeBoilerFakeFuels = new GT_RecipeMapLargeBoilerFakeFuels(); - - - /** - * HashMap of Recipes based on their Items - */ - public final Map> mRecipeItemMap = new HashMap<>(1000); - /** - * HashMap of Recipes based on their Fluids - */ - public final Map> mRecipeFluidMap = new HashMap<>(200); - - /** - * The List of all Recipes - */ - public final Collection mRecipeList; - /** - * String used as an unlocalised Name. - */ - public String mUnlocalizedName = ""; - /** - * String used in NEI for the Recipe Lists. If null it will use the unlocalised Name instead - */ - public String mNEIName = ""; - /** - * GUI used for NEI Display. Usually the GUI of the Machine itself - */ - public String mNEIGUIPath = ""; - public String mNEISpecialValuePre = "", mNEISpecialValuePost = ""; - public int mInputSlots = 1; - public int mOutputSlots = 1; - public int mNEISpecialValueMultiplier = 1; - public int mMinimalInputItems = 1; - public int mMinimalInputFluids = 0; - public int mMinimalTotalInputs = 0; // For a few machines like the mixer that are item + fluid or item + item but no single-item or single-fluid input. - public int mAmperage = 1; - public boolean mNEIAllowed = true; - public boolean mShowVoltageAmperageInNEI = true; - - public GT_RecipeMap(Collection aRecipeList) { - mRecipeList = aRecipeList; - GregTech_API.sFluidMappings.add(mRecipeFluidMap); - GregTech_API.sItemStackMappings.add(mRecipeItemMap); - sMappings.add(this); - } - - public final GT_RecipeMap setUnlocalizedName(String aUnlocalizedName) { - mUnlocalizedName = aUnlocalizedName; - if ("".equals(mNEIName)) { - mNEIName = aUnlocalizedName; - } - return this; - } - - // unlocalized name and local name should usually be set together, but local name isn't technically stored in this object. - public final GT_RecipeMap setNames(String aUnlocalizedName, String aLocalName) { - mUnlocalizedName = aUnlocalizedName; - if ("".equals(mNEIName)) { - mNEIName = aUnlocalizedName; - } - GT_LanguageManager.addStringLocalization(aUnlocalizedName, aLocalName); - return this; - } - - public final GT_RecipeMap setNEIName(String aNEIName) { - mNEIName = aNEIName; - return this; - } - - public final GT_RecipeMap setNEIGUIPath(String aNEIGUIPath) { - if (aNEIGUIPath.endsWith(".png")) { - mNEIGUIPath = aNEIGUIPath; - } else { - mNEIGUIPath = aNEIGUIPath + ".png"; - } - return this; - } - - // Convenience method to prepend GT_Values.RES_PATH_GUI to the passed path, - // since it is nearly always used. - public final GT_RecipeMap setNEIGUIPathRes(String aNEIGUIPath) { - if (aNEIGUIPath.endsWith(".png")) { - mNEIGUIPath = GT_Values.RES_PATH_GUI + aNEIGUIPath; - } else { - mNEIGUIPath = GT_Values.RES_PATH_GUI + aNEIGUIPath + ".png"; - } - return this; - } - - public final GT_RecipeMap setNEIGUIPathBasic(String aNEIGUIPath) { - return setNEIGUIPathRes("basicmachines/" + aNEIGUIPath); - } - - public final GT_RecipeMap setNEISpecialValuePre(String aNEISpecialValuePre) { - mNEISpecialValuePre = aNEISpecialValuePre; - return this; - } - - public final GT_RecipeMap setNEISpecialValuePost(String aNEISpecialValuePost) { - mNEISpecialValuePost = aNEISpecialValuePost; - return this; - } - - public final GT_RecipeMap setInputSlots(int aInputSlots) { - mInputSlots = aInputSlots; - return this; - } - - public final GT_RecipeMap setOutputSlots(int aOutputSlots) { - mOutputSlots = aOutputSlots; - return this; - } - - public final GT_RecipeMap setNEISpecialValueMultiplier(int aNEISpecialValueMultiplier) { - mNEISpecialValueMultiplier = aNEISpecialValueMultiplier; - return this; - } - - public final GT_RecipeMap setMinimalInputItems(int aMinimalInputItems) { - mMinimalInputItems = aMinimalInputItems; - return this; - } - - public final GT_RecipeMap setMinimalInputFluids(int aMinimalInputFluids) { - mMinimalInputFluids = aMinimalInputFluids; - return this; - } - - public final GT_RecipeMap setMinimalTotalInputs(int aMinimalTotalInputs) { - mMinimalTotalInputs = aMinimalTotalInputs; - return this; - } - - public final GT_RecipeMap setAmperage(int aAmperage) { - mAmperage = aAmperage; - return this; - } - - public final GT_RecipeMap setNEIAllowed(boolean aNEIAllowed) { - mNEIAllowed = aNEIAllowed; - return this; - } - - public final GT_RecipeMap setShowVoltageAmperageInNEI(boolean aShowVoltageAmperageInNEI) { - mShowVoltageAmperageInNEI = aShowVoltageAmperageInNEI; - return this; - } - - public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - GT_RecipeInput[] tInputs = GT_MachineRecipe.wrapInputs(aInputs); - GT_RecipeOutput[] tOutputs = GT_MachineRecipe.wrapOutputs(aOutputs); - if (aOutputChances != null) { - for (int i = 0; i < aOutputChances.length && i < tOutputs.length; i++) { - if (aOutputs[i] != null) { - tOutputs[i] = new GT_RecipeOutput(aOutputs[i], aOutputChances[i] / 10000f); - } - } - for (int i = aOutputChances.length; i < tOutputs.length; i++) { - if (aOutputs[i] != null) { - tOutputs[i] = new GT_RecipeOutput(aOutputs[i]); - } - } - } - GT_MachineRecipe tRecipe = new GT_MachineRecipe(tInputs, tOutputs, aFluidInputs, aFluidOutputs); - tRecipe.setSpecialItems(aSpecial); - tRecipe.setDuration(aDuration); - tRecipe.setEUt(aEUt); - tRecipe.setSpecialValue(aSpecialValue); - if (aOptimize) { - tRecipe.optimize(); - } - return addRecipe(tRecipe); - } - - public GT_MachineRecipe addRecipe(int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return addRecipe(false, new ItemStack[0], new ItemStack[0], null, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); - } - - public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); - } - - public GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe) { - return addRecipe(aRecipe, true, false, false); - } - - protected GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe, boolean aCheckForCollisions, boolean aFakeRecipe, boolean aHidden) { - aRecipe.mHidden = aHidden; - aRecipe.mFakeRecipe = aFakeRecipe; - if (aRecipe.mFluidInputs.length < mMinimalInputFluids && aRecipe.mInputs.length < mMinimalInputItems) { - return null; - } - if (aCheckForCollisions) { - // Allowing ore dictionary inputs complicates checking for collision, but try looking for the first possible item stack for each input. - ItemStack[] tInputs = new ItemStack[aRecipe.mInputs.length]; - for (int i = 0; i < tInputs.length; i++) { - tInputs[i] = aRecipe.mInputs[i].getInputStacks().get(0); - } - if (findAnyRecipe(aRecipe.mFluidInputs, null, tInputs) != null) { - return null; - } - } - return add(aRecipe); - } - - /** - * Only used for fake Recipe Handlers to show something in NEI, do not use - * this for adding actual Recipes! findRecipe wont find fake Recipes, - * containsInput WILL find fake Recipes - */ - public GT_MachineRecipe addFakeRecipe(boolean aCheckForCollisions, GT_MachineRecipe aRecipe) { - return addRecipe(aRecipe, aCheckForCollisions, true, false); - } - - public GT_MachineRecipe addFakeRecipe(boolean aCheckForCollisions, GT_MachineRecipe aRecipe, boolean hidden) { - return addRecipe(aRecipe, aCheckForCollisions, true, hidden); - } - - public GT_MachineRecipe addFakeRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue).setFakeRecipe(true); - } - - public GT_MachineRecipe addFakeRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return addFakeRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); - } - - public GT_MachineRecipe addFakeRecipe(int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return addFakeRecipe(false, new ItemStack[0], new ItemStack[0], null, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); - } - - public GT_MachineRecipe add(GT_MachineRecipe aRecipe) { - mRecipeList.add(aRecipe); - addToFluidMap(aRecipe); - return addToItemMap(aRecipe); - } - - public void addAll(Collection aRecipeList) { - for (GT_MachineRecipe tRecipe : aRecipeList) { - addRecipe(tRecipe); - } - } - - protected GT_MachineRecipe addToFluidMap(GT_MachineRecipe aRecipe) { - for (FluidStack aFluid : aRecipe.mFluidInputs) { - if (aFluid != null) { - Collection tList = mRecipeFluidMap.get(aFluid.getFluid()); - if (tList == null) { - tList = new HashSet<>(1); - mRecipeFluidMap.put(aFluid.getFluid(), tList); - } - tList.add(aRecipe); - } - } - return aRecipe; - } - - protected GT_MachineRecipe addToItemMap(GT_MachineRecipe aRecipe) { - for (GT_RecipeInput aInput : aRecipe.mInputs) { - for (ItemStack aStack : aInput.getInputStacks()) { - if (aStack != null) { - GT_ItemStack tStack = new GT_ItemStack(aStack); - Collection tList = mRecipeItemMap.get(tStack); - if (tList == null) { - tList = new HashSet<>(1); - mRecipeItemMap.put(tStack, tList); - } - tList.add(aRecipe); - } - } - } - return aRecipe; - } - - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - return findRecipe(aTileEntity, aRecipe, false, aVoltage, aFluids, aSpecialSlot, aInputs); - } - - /** - * finds a Recipe matching the aFluid and ItemStack Inputs. - * - * @param aTileEntity an Object representing the current coordinates of the - * executing Block/Entity/Whatever. This may be null, especially during - * Startup. - * @param aRecipe in case this is != null it will try to use this Recipe - * first when looking things up. - * @param aIgnoreCounts if set to false will only return recipes that can be - * executed at least once with the provided input - * @param aVoltage Voltage of the Machine or Long.MAX_VALUE if it has no - * Voltage - * @param aFluids the Fluid Inputs - * @param aSpecialSlot the content of the Special Slot, the regular Manager - * doesn't do anything with this, but some custom ones do. - * @param aInputs the Item Inputs - * @return the Recipe it has found or null for no matching Recipe - */ - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - // No Recipes? Well, nothing to be found then. - if (mRecipeList.isEmpty()) { - return null; - } - - // Some Recipe Classes require a certain amount of Inputs of certain kinds. Like "at least 1 Fluid + 1 Stack" or "at least 2 Stacks" before they start searching for Recipes. - // This improves Performance massively, especially if people leave things like Circuits, Molds or Shapes in their Machines to select Sub Recipes. - int tFluidCount = 0; - int tItemCount = 0; - if (GregTech_API.sPostloadFinished) { - if (mMinimalInputFluids > 0 || mMinimalTotalInputs > 0) { - if (aFluids == null) { - return null; - } - for (FluidStack aFluid : aFluids) { - if (aFluid != null) { - tFluidCount++; - } - } - if (tFluidCount < mMinimalInputFluids) { - return null; - } - } - if (mMinimalInputItems > 0 || mMinimalTotalInputs > 0) { - if (aInputs == null) { - return null; - } - for (ItemStack aInput : aInputs) { - if (aInput != null) { - tItemCount++; - } - } - if (tItemCount < mMinimalInputItems) { - return null; - } - } - if (tItemCount + tFluidCount < mMinimalTotalInputs) { - return null; - } - } - - // Check the Recipe which has been used last time in order to not have to search for it again, if possible. - if (aRecipe != null) { - if (!aRecipe.mFakeRecipe && aRecipe.mCanBeBuffered && aRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { - if (aRecipe.isEnabled() && aVoltage * mAmperage >= aRecipe.mEUt) { - return aRecipe; - } - return null; - } - } - - // Now look for the Recipes inside the Item HashMaps, but only when the Recipes usually have Items. - if (mInputSlots > 0 && aInputs != null) { - for (ItemStack tStack : aInputs) { - if (tStack != null) { - Collection tRecipes = mRecipeItemMap.get(new GT_ItemStack(tStack)); - if (tRecipes != null) { - for (GT_MachineRecipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { - if (tRecipe.isEnabled() && aVoltage * mAmperage >= tRecipe.mEUt) { - return tRecipe; - } - return null; - } - } - } - tRecipes = mRecipeItemMap.get(new GT_ItemStack(GT_Utility.copyMetaData(W, tStack))); - if (tRecipes != null) { - for (GT_MachineRecipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { - if (tRecipe.isEnabled() && aVoltage * mAmperage >= tRecipe.mEUt) { - return tRecipe; - } - return null; - } - } - } - } - } - } - - // If the minimal Amount of Items for the Recipe is 0, then it could be a Fluid-Only Recipe, so check that Map too. - if (mMinimalInputItems == 0 && aFluids != null) { - for (FluidStack aFluid : aFluids) { - if (aFluid != null) { - Collection tRecipes = mRecipeFluidMap.get(aFluid.getFluid()); - if (tRecipes != null) { - for (GT_MachineRecipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, aIgnoreCounts, aFluids, aInputs)) { - if (tRecipe.isEnabled() && aVoltage * mAmperage >= tRecipe.mEUt) { - return tRecipe; - } - return null; - } - } - } - } - } - } - - // And nothing has been found. - return null; - } - - /** - * finds a Recipe matching the aFluid and ItemStack Inputs. - * Special version to be used when checking for collisions, which doesn't bother checking voltage or cached recipes, but allows returning disabled recipes. - * - * @param aFluids the Fluid Inputs - * @param aSpecialSlot the content of the Special Slot, the regular Manager - * doesn't do anything with this, but some custom ones do. - * @param aInputs the Item Inputs - * @return the Recipe it has found or null for no matching Recipe - */ - protected GT_MachineRecipe findAnyRecipe(FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - // No Recipes? Well, nothing to be found then. - if (mRecipeList.isEmpty()) { - return null; - } - - // Some Recipe Classes require a certain amount of Inputs of certain kinds. Like "at least 1 Fluid + 1 Stack" or "at least 2 Stacks" before they start searching for Recipes. - // This improves Performance massively, especially if people leave things like Circuits, Molds or Shapes in their Machines to select Sub Recipes. - int tFluidCount = 0; - int tItemCount = 0; - if (GregTech_API.sPostloadFinished) { - if (mMinimalInputFluids > 0 || mMinimalTotalInputs > 0) { - if (aFluids == null) { - return null; - } - for (FluidStack aFluid : aFluids) { - if (aFluid != null) { - tFluidCount++; - } - } - if (tFluidCount < mMinimalInputFluids) { - return null; - } - } - if (mMinimalInputItems > 0 || mMinimalTotalInputs > 0) { - if (aInputs == null) { - return null; - } - for (ItemStack aInput : aInputs) { - if (aInput != null) { - tItemCount++; - } - } - if (tItemCount < mMinimalInputItems) { - return null; - } - } - if (tItemCount + tFluidCount < mMinimalTotalInputs) { - return null; - } - } - - // Now look for the Recipes inside the Item HashMaps, but only when the Recipes usually have Items. - if (mInputSlots > 0 && aInputs != null) { - for (ItemStack tStack : aInputs) { - if (tStack != null) { - Collection tRecipes = mRecipeItemMap.get(new GT_ItemStack(tStack)); - if (tRecipes != null) { - for (GT_MachineRecipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { - return tRecipe; - } - } - } - tRecipes = mRecipeItemMap.get(new GT_ItemStack(GT_Utility.copyMetaData(W, tStack))); - if (tRecipes != null) { - for (GT_MachineRecipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { - return tRecipe; - } - } - } - } - } - } - - // If the minimal Amount of Items for the Recipe is 0, then it could be a Fluid-Only Recipe, so check that Map too. - if (mMinimalInputItems == 0 && aFluids != null) { - for (FluidStack aFluid : aFluids) { - if (aFluid != null) { - Collection tRecipes = mRecipeFluidMap.get(aFluid.getFluid()); - if (tRecipes != null) { - for (GT_MachineRecipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { - return tRecipe; - } - } - } - } - } - } - - // And nothing has been found. - return null; - } - - /** - * @return if this Item is a valid Input for any for the Recipes - */ - public boolean containsInput(ItemStack aStack) { - return aStack != null && (mRecipeItemMap.containsKey(new GT_ItemStack(aStack)) || mRecipeItemMap.containsKey(new GT_ItemStack(GT_Utility.copyMetaData(W, aStack)))); - } - - /** - * @return if this Fluid is a valid Input for any for the Recipes - */ - public boolean containsInput(FluidStack aFluid) { - return aFluid != null && containsInput(aFluid.getFluid()); - } - - /** - * @return if this Fluid is a valid Input for any for the Recipes - */ - public boolean containsInput(Fluid aFluid) { - return aFluid != null && mRecipeFluidMap.containsKey(aFluid); - } - - public static void reInitAll() { - GT_Log.out.println("GT_Mod: Re-Unificating Recipes."); - for (GT_RecipeMap tMapEntry : GT_RecipeMap.sMappings) { - tMapEntry.reInit(); - } - } - - public void reInit() { - Map> tMap = mRecipeItemMap; - if (tMap != null) { - tMap.clear(); - } - for (GT_MachineRecipe tRecipe : mRecipeList) { - if (tMap != null) { - addToItemMap(tRecipe); - } - } - } - - public static abstract class GT_RecipeMap_NonGT extends GT_RecipeMap { - - public GT_RecipeMap_NonGT(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public boolean containsInput(ItemStack aStack) { - return false; - } - - @Override - public boolean containsInput(FluidStack aFluid) { - return false; - } - - @Override - public boolean containsInput(Fluid aFluid) { - return false; - } - - - @Override - public GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe) { - return null; - } - - @Override - public GT_MachineRecipe addFakeRecipe(boolean aCheckForCollisions, GT_MachineRecipe aRecipe) { - return null; - } - - @Override - public GT_MachineRecipe add(GT_MachineRecipe aRecipe) { - return null; - } - - @Override - public final void reInit() {/**/} - - @Override - protected GT_MachineRecipe addToItemMap(GT_MachineRecipe aRecipe) { - return null; - } - } - - public static class GT_RecipeMapAssembler extends GT_RecipeMap { - - public GT_RecipeMapAssembler(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); - if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || rRecipe == null || !GregTech_API.sPostloadFinished) { - return rRecipe; - } - for (ItemStack aInput : aInputs) { - if (ItemList.Paper_Printed_Pages.isStackEqual(aInput, false, true)) { - rRecipe = rRecipe.copy(); - rRecipe.mCanBeBuffered = false; - ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); - tStack.setTagCompound(aInput.getTagCompound()); - rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); - } - } - return rRecipe; - } - } - - public static class GT_RecipeMapDistillationTower extends GT_RecipeMap { - - private static final int FLUID_OUTPUT_COUNT = 11; - private static final int ROW_SIZE = 3; - - public GT_RecipeMapDistillationTower() { - super(new HashSet(50)); - setNames("gt.recipe.distillationtower", "Distillation Tower"); - setNEIGUIPathBasic("DistillationTower"); - setInputSlots(2); - setOutputSlots(4); - setMinimalInputItems(0); - setMinimalInputFluids(1); - } - - @Override - public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return addRecipe(new GT_Recipe_DistillationTower(aInputs, aOutputs, aFluidInputs, aFluidOutputs).setDuration(aDuration).setEUt(aEUt).setSpecialValue(aSpecialValue)); - } - - @Override - public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); - } - - @Override - public GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe) { - return super.addRecipe(new GT_Recipe_DistillationTower(aRecipe)); - } - - private static class GT_Recipe_DistillationTower extends GT_MachineRecipe { - - protected GT_Recipe_DistillationTower(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { - super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); - } - - protected GT_Recipe_DistillationTower(GT_MachineRecipe aRecipe) { - super(aRecipe.mInputs, aRecipe.mOutputs, aRecipe.mFluidInputs, aRecipe.mFluidOutputs); - this.mCanBeBuffered = aRecipe.mCanBeBuffered; - this.mDuration = aRecipe.mDuration; - this.mEUt = aRecipe.mEUt; - this.mEnableCondition = aRecipe.mEnableCondition; - this.mFakeRecipe = aRecipe.mFakeRecipe; - this.mHidden = aRecipe.mHidden; - this.mInvertCondition = aRecipe.mInvertCondition; - this.mNeedsEmptyOutput = aRecipe.mNeedsEmptyOutput; - this.mSpecialItems = aRecipe.mSpecialItems; - this.mSpecialValue = aRecipe.mSpecialValue; - } - - @Override - public ArrayList getInputPositionedStacks() { - ArrayList inputStacks = new ArrayList<>(1); - - if (this.mFluidInputs.length > 0 && this.mFluidInputs[0] != null) { - inputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[0], true), 48, 52)); - } - return inputStacks; - } - - @Override - public ArrayList getOutputPositionedStacks() { - int fluidLimit = Math.min(mFluidOutputs.length, FLUID_OUTPUT_COUNT); - ArrayList outputStacks = new ArrayList<>(1 + fluidLimit); - - if (this.mOutputs.length > 0 && this.mOutputs[0] != null) { - outputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(this.mOutputs[0].getShownOutput(), 102, 52)); - } - - for (int i = 0; i < fluidLimit; i++) { - int x = 102 + ((i + 1) % ROW_SIZE) * 18; - int y = 52 - ((i + 1) / ROW_SIZE) * 18; - outputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[i], true), x, y)); - } - - return outputStacks; - } - - } - } - - public static class GT_RecipeMapFluidCanner extends GT_RecipeMap { - - public GT_RecipeMapFluidCanner(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); - if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || rRecipe != null || !GregTech_API.sPostloadFinished) { - return rRecipe; - } - if (aFluids != null && aFluids.length > 0 && aFluids[0] != null) { - ItemStack tOutput = GT_Utility.fillFluidContainer(aFluids[0], aInputs[0], false, true); - FluidStack tFluid = GT_Utility.getFluidForFilledItem(tOutput, true); - if (tFluid != null) { - rRecipe = new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[]{tFluid}, null).setDuration(Math.max(tFluid.amount / 64, 16)).setEUt(1); - } - } - if (rRecipe == null) { - FluidStack tFluid = GT_Utility.getFluidForFilledItem(aInputs[0], true); - if (tFluid != null) { - rRecipe = new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{GT_Utility.getContainerItem(aInputs[0], true)}, null, new FluidStack[]{tFluid}).setDuration(Math.max(tFluid.amount / 64, 16)).setEUt(1); - } - } - if (rRecipe != null) { - rRecipe.mCanBeBuffered = false; - } - return rRecipe; - } - - @Override - public boolean containsInput(ItemStack aStack) { - return aStack != null && (super.containsInput(aStack) || (aStack.getItem() instanceof IFluidContainerItem && ((IFluidContainerItem) aStack.getItem()).getCapacity(aStack) > 0)); - } - - @Override - public boolean containsInput(FluidStack aFluid) { - return true; - } - - @Override - public boolean containsInput(Fluid aFluid) { - return true; - } - } - - public static class GT_RecipeMapFormingPress extends GT_RecipeMap { - - public GT_RecipeMapFormingPress(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); - if (aInputs == null || aInputs.length < 2 || aInputs[0] == null || aInputs[1] == null || !GregTech_API.sPostloadFinished) { - return rRecipe; - } - if (rRecipe == null) { - if (ItemList.Shape_Mold_Name.isStackEqual(aInputs[0], false, true)) { - ItemStack tOutput = GT_Utility.copyAmount(1, aInputs[1]); - tOutput.setStackDisplayName(aInputs[0].getDisplayName()); - rRecipe = new GT_MachineRecipe(new ItemStack[]{ItemList.Shape_Mold_Name.get(0), GT_Utility.copyAmount(1, aInputs[1])}, new ItemStack[]{tOutput}, null, null).setDuration(128).setEUt(8); - rRecipe.mCanBeBuffered = false; - return rRecipe; - } - if (ItemList.Shape_Mold_Name.isStackEqual(aInputs[1], false, true)) { - ItemStack tOutput = GT_Utility.copyAmount(1, aInputs[0]); - tOutput.setStackDisplayName(aInputs[1].getDisplayName()); - rRecipe = new GT_MachineRecipe(new ItemStack[]{ItemList.Shape_Mold_Name.get(0), GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, null, null).setDuration(128).setEUt(8); - rRecipe.mCanBeBuffered = false; - return rRecipe; - } - return null; - } - for (ItemStack aMold : aInputs) { - if (ItemList.Shape_Mold_Credit.isStackEqual(aMold, false, true)) { - NBTTagCompound tNBT = aMold.getTagCompound(); - if (tNBT == null) { - tNBT = new NBTTagCompound(); - } - if (!tNBT.hasKey("credit_security_id")) { - tNBT.setLong("credit_security_id", System.nanoTime()); - } - aMold.setTagCompound(tNBT); - - rRecipe = rRecipe.copy(); - rRecipe.mCanBeBuffered = false; - ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); - tStack.setTagCompound(tNBT); - rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); - return rRecipe; - } - } - return rRecipe; - } - - } - - public static class GT_RecipeMapFuel extends GT_RecipeMap { - - public GT_RecipeMapFuel(Collection aRecipeList) { - super(aRecipeList); - } - - public GT_MachineRecipe addFuel(ItemStack aInput, ItemStack aOutput, int aFuelValueInEU) { - return addFuel(aInput, aOutput, null, null, 10000, aFuelValueInEU); - } - - public GT_MachineRecipe addFuel(ItemStack aInput, ItemStack aOutput, int aChance, int aFuelValueInEU) { - return addFuel(aInput, aOutput, null, null, aChance, aFuelValueInEU); - } - - public GT_MachineRecipe addFuel(FluidStack aFluidInput, FluidStack aFluidOutput, int aFuelValueInEU) { - return addFuel(null, null, aFluidInput, aFluidOutput, 10000, aFuelValueInEU); - } - - public GT_MachineRecipe addFuel(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput, int aFuelValueInEU) { - return addFuel(aInput, aOutput, aFluidInput, aFluidOutput, 10000, aFuelValueInEU); - } - - public GT_MachineRecipe addFuel(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput, int aChance, int aFuelValueInEU) { - return addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, new int[]{aChance}, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, 0, 0, aFuelValueInEU); - } - } - - public static class GT_RecipeMapFurnace extends GT_RecipeMap_NonGT { - - public GT_RecipeMapFurnace(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { - return null; - } - if (aRecipe != null && aRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { - return aRecipe; - } - ItemStack tOutput = GT_ModHandler.getSmeltingOutput(aInputs[0], false, null); - if (tOutput == null) { - return null; - } - return new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[0], new FluidStack[0]).setDuration(128).setEUt(4); - } - - @Override - public boolean containsInput(ItemStack aStack) { - return GT_ModHandler.getSmeltingOutput(aStack, false, null) != null; - } - } - - public static class GT_RecipeMapLargeBoilerFakeFuels extends GT_RecipeMap { - - public GT_RecipeMapLargeBoilerFakeFuels() { - super (new HashSet(30)); - setNames("gt.recipe.largeboilerfakefuels", "Large Boiler"); - setNEIGUIPathBasic("Default"); - setOutputSlots(0); - GT_MachineRecipe explanatoryRecipe = new GT_MachineRecipe(new ItemStack[]{}, new ItemStack[]{}, null, null).setDuration(1).setEUt(1).setSpecialValue(1); - explanatoryRecipe.setNeiDesc("Not all solid fuels are listed.", "Any item that burns in a", "vanilla furnace will burn in", "a Large Boiler."); - addRecipe(explanatoryRecipe); - } - - public GT_MachineRecipe addDenseLiquidRecipe(GT_MachineRecipe recipe) { - return addRecipe(recipe, ((double) recipe.mSpecialValue) / 10); - } - - public GT_MachineRecipe addDieselRecipe(GT_MachineRecipe recipe) { - return addRecipe(recipe, ((double) recipe.mSpecialValue) / 40); - } - - public void addSolidRecipes(ItemStack... itemStacks) { - for (ItemStack itemStack : itemStacks) { - addSolidRecipe(itemStack); - } - } - - public GT_MachineRecipe addSolidRecipe(ItemStack fuelItemStack) { - return addRecipe(new GT_MachineRecipe(new ItemStack[]{fuelItemStack}, new ItemStack[]{}, null, null).setDuration(1).setSpecialValue(GT_ModHandler.getFuelValue(fuelItemStack) / 1600), ((double) GT_ModHandler.getFuelValue(fuelItemStack)) / 1600); - } - - private GT_MachineRecipe addRecipe(GT_MachineRecipe recipe, double baseBurnTime) { - GT_MachineRecipe tRecipe = recipe.copy(); - - double bronzeBurnTime = baseBurnTime * 2; - double steelBurnTime = baseBurnTime * 1.5; - double titaniumBurnTime = baseBurnTime * 1.3; - double tungstensteelBurnTime = baseBurnTime * 1.2; - - tRecipe.setNeiDesc("Burn time in seconds:", - String.format("Bronze Boiler: %.4f", bronzeBurnTime), - String.format("Steel Boiler: %.4f", steelBurnTime), - String.format("Titanium Boiler: %.4f", titaniumBurnTime), - String.format("Tungstensteel Boiler: %.4f", tungstensteelBurnTime)); - return super.addRecipe(tRecipe); - } - } - - public static class GT_RecipeMapLargeChemicalReactor extends GT_RecipeMap { - - private static final int INPUT_COUNT = 2; - private static final int OUTPUT_COUNT = 2; - private static final int FLUID_INPUT_COUNT = 4; - private static final int FLUID_OUTPUT_COUNT = 4; - - public GT_RecipeMapLargeChemicalReactor() { - super(new HashSet(200)); - setNames("gt.recipe.largechemicalreactor", "Large Chemical Reactor"); - setNEIGUIPathBasic("Default"); - setInputSlots(INPUT_COUNT); - setOutputSlots(OUTPUT_COUNT); - setMinimalInputItems(0); - setMinimalTotalInputs(1); - } - - @Override - public GT_MachineRecipe addRecipe(GT_MachineRecipe aRecipe) { - ArrayList adjustedInputs = new ArrayList<>(5); - ArrayList adjustedOutputs = new ArrayList<>(5); - ArrayList adjustedFluidInputs = new ArrayList<>(5); - ArrayList adjustedFluidOutputs = new ArrayList<>(5); - - GT_RecipeInput[] tInputs = aRecipe.mInputs; - if (tInputs == null) { - tInputs = new GT_RecipeInput[0]; - } - for (GT_RecipeInput input : tInputs) { - FluidStack inputFluidContent = FluidContainerRegistry.getFluidForFilledItem(input.getInputStacks().get(0)); - if (inputFluidContent != null) { - inputFluidContent.amount *= input.getCount(); - if (inputFluidContent.getFluid().getName().equals("ic2steam")) { - inputFluidContent = GT_ModHandler.getSteam(inputFluidContent.amount); - } - adjustedFluidInputs.add(inputFluidContent); - } else { - ItemData itemData = GT_OreDictUnificator.getItemData(input.getInputStacks().get(0)); - if ((itemData == null || !itemData.hasValidPrefixMaterialData()) || itemData.mMaterial.mMaterial != Materials.Empty) { - if (itemData != null && itemData.hasValidPrefixMaterialData() && itemData.mPrefix == OrePrefixes.cell) { - ItemStack dustStack = itemData.mMaterial.mMaterial.getDust(input.getCount()); - if (dustStack != null) { - adjustedInputs.add(new GT_RecipeInput(dustStack)); - } else { - adjustedInputs.add(input); - } - } else { - adjustedInputs.add(input); - } - } - } - } - FluidStack[] tFluidInputs = aRecipe.mFluidInputs; - if (tFluidInputs == null) { - tFluidInputs = new FluidStack[0]; - } - adjustedFluidInputs.addAll(Arrays.asList(tFluidInputs)); - tInputs = adjustedInputs.toArray(new GT_RecipeInput[adjustedInputs.size()]); - tFluidInputs = adjustedFluidInputs.toArray(new FluidStack[adjustedFluidInputs.size()]); - - GT_RecipeOutput[] tOutputs = aRecipe.mOutputs; - if (tOutputs == null) { - tOutputs = new GT_RecipeOutput[0]; - } - for (GT_RecipeOutput output : tOutputs) { - FluidStack outputFluidContent = FluidContainerRegistry.getFluidForFilledItem(output.getShownOutput()); - if (outputFluidContent != null) { - outputFluidContent.amount *= output.getCount(); - if (outputFluidContent.getFluid().getName().equals("ic2steam")) { - outputFluidContent = GT_ModHandler.getSteam(outputFluidContent.amount); - } - adjustedFluidOutputs.add(outputFluidContent); - } else { - ItemData itemData = GT_OreDictUnificator.getItemData(output.getShownOutput()); - if ((itemData == null || !itemData.hasValidPrefixMaterialData()) || itemData.mMaterial.mMaterial != Materials.Empty) { - adjustedOutputs.add(output); - } - } - } - - FluidStack[] tFluidOutputs = aRecipe.mFluidOutputs; - if (tFluidOutputs == null) { - tFluidOutputs = new FluidStack[0]; - } - adjustedFluidOutputs.addAll(Arrays.asList(tFluidOutputs)); - tOutputs = adjustedOutputs.toArray(new GT_RecipeOutput[adjustedOutputs.size()]); - tFluidOutputs = adjustedFluidOutputs.toArray(new FluidStack[adjustedFluidOutputs.size()]); - - GT_MachineRecipe_LargeChemicalReactor rRecipe = (GT_MachineRecipe_LargeChemicalReactor) new GT_MachineRecipe_LargeChemicalReactor(tInputs, tOutputs, tFluidInputs, tFluidOutputs).setDuration(aRecipe.mDuration).setEUt(aRecipe.mEUt).setSpecialValue(aRecipe.mSpecialValue); - return super.addRecipe(rRecipe); - - } - - @Override - public GT_MachineRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - ArrayList adjustedInputs = new ArrayList<>(5); - ArrayList adjustedOutputs = new ArrayList<>(5); - ArrayList adjustedFluidInputs = new ArrayList<>(5); - ArrayList adjustedFluidOutputs = new ArrayList<>(5); - - ItemStack[] tInputs = aInputs; - if (tInputs == null) { - tInputs = new ItemStack[0]; - } - for (ItemStack input : tInputs) { - FluidStack inputFluidContent = FluidContainerRegistry.getFluidForFilledItem(input); - if (inputFluidContent != null) { - inputFluidContent.amount *= input.stackSize; - if (inputFluidContent.getFluid().getName().equals("ic2steam")) { - inputFluidContent = GT_ModHandler.getSteam(inputFluidContent.amount); - } - adjustedFluidInputs.add(inputFluidContent); - } else { - ItemData itemData = GT_OreDictUnificator.getItemData(input); - if ((itemData == null || !itemData.hasValidPrefixMaterialData()) || itemData.mMaterial.mMaterial != Materials.Empty) { - if (itemData != null && itemData.hasValidPrefixMaterialData() && itemData.mPrefix == OrePrefixes.cell) { - ItemStack dustStack = itemData.mMaterial.mMaterial.getDust(input.stackSize); - if (dustStack != null) { - adjustedInputs.add(dustStack); - } else { - adjustedInputs.add(input); - } - } else { - adjustedInputs.add(input); - } - } - } - } - FluidStack[] tFluidInputs = aFluidInputs; - if (tFluidInputs == null) { - tFluidInputs = new FluidStack[0]; - } - adjustedFluidInputs.addAll(Arrays.asList(tFluidInputs)); - tInputs = adjustedInputs.toArray(new ItemStack[adjustedInputs.size()]); - tFluidInputs = adjustedFluidInputs.toArray(new FluidStack[adjustedFluidInputs.size()]); - - ItemStack[] tOutputs = aOutputs; - if (tOutputs == null) { - tOutputs = new ItemStack[0]; - } - for (ItemStack output : tOutputs) { - FluidStack outputFluidContent = FluidContainerRegistry.getFluidForFilledItem(output); - if (outputFluidContent != null) { - outputFluidContent.amount *= output.stackSize; - if (outputFluidContent.getFluid().getName().equals("ic2steam")) { - outputFluidContent = GT_ModHandler.getSteam(outputFluidContent.amount); - } - adjustedFluidOutputs.add(outputFluidContent); - } else { - ItemData itemData = GT_OreDictUnificator.getItemData(output); - if ((itemData == null || !itemData.hasValidPrefixMaterialData()) || itemData.mMaterial.mMaterial != Materials.Empty) { - adjustedOutputs.add(output); - } - } - } - - FluidStack[] tFluidOutputs = aFluidOutputs; - if (tFluidOutputs == null) { - tFluidOutputs = new FluidStack[0]; - } - adjustedFluidOutputs.addAll(Arrays.asList(tFluidOutputs)); - tOutputs = adjustedOutputs.toArray(new ItemStack[adjustedOutputs.size()]); - tFluidOutputs = adjustedFluidOutputs.toArray(new FluidStack[adjustedFluidOutputs.size()]); - - GT_MachineRecipe_LargeChemicalReactor rRecipe = (GT_MachineRecipe_LargeChemicalReactor) new GT_MachineRecipe_LargeChemicalReactor(tInputs, tOutputs, tFluidInputs, tFluidOutputs).setDuration(aDuration).setEUt(aEUt).setSpecialValue(aSpecialValue); - if (aOptimize) { - rRecipe.optimize(); - } - return super.addRecipe(rRecipe); - - } - - private static class GT_MachineRecipe_LargeChemicalReactor extends GT_MachineRecipe { - - protected GT_MachineRecipe_LargeChemicalReactor(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { - super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); - } - - protected GT_MachineRecipe_LargeChemicalReactor(GT_RecipeInput[] aInputs, GT_RecipeOutput[] aOutputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs) { - super(aInputs, aOutputs, aFluidInputs, aFluidOutputs); - } - - @Override - public ArrayList getInputPositionedStacks() { - int itemLimit = Math.min(mInputs.length, INPUT_COUNT); - int fluidLimit = Math.min(mFluidInputs.length, FLUID_INPUT_COUNT); - ArrayList inputStacks = new ArrayList<>(itemLimit + fluidLimit); - - for (int i = 0; i < itemLimit; i++) { - inputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(this.mInputs[i].getInputStacks(), 48 - i * 18, 5)); - } - - for (int i = 0; i < fluidLimit; i++) { - if (i < 3) { - inputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[i], true), 48 - i * 18, 23)); - } else { - inputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[i], true), 12, 5)); - } - } - - return inputStacks; - } - - @Override - public ArrayList getOutputPositionedStacks() { - int itemLimit = Math.min(mOutputs.length, OUTPUT_COUNT); - int fluidLimit = Math.min(mFluidOutputs.length, FLUID_OUTPUT_COUNT); - ArrayList outputStacks = new ArrayList(itemLimit + fluidLimit); - - for (int i = 0; i < itemLimit; i++) { - outputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(this.mOutputs[i].getShownOutput().copy(), 102 + i * 18, 5)); - } - - for (int i = 0; i < fluidLimit; i++) { - outputStacks.add(new GT_NEI_DefaultHandler.FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[i], true), 102 + i * 18, 23)); - } - - return outputStacks; - } - - } - } - - public static class GT_RecipeMapMacerator extends GT_RecipeMap { - - public GT_RecipeMapMacerator(Collection aRecipeList) { - super(aRecipeList); - } - - @Optional.Method(modid = "Railcraft") - private List getRockCrusherOutputs(ItemStack aStack) { - return mods.railcraft.api.crafting.RailcraftCraftingManager.rockCrusher.getRecipe(GT_Utility.copyAmount(1, aStack)).getRandomizedOuputs(); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || !GregTech_API.sPostloadFinished) - return super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); - if (rRecipe != null) return rRecipe; - - if (Loader.isModLoaded("Railcraft")) { - List tRecipeOutputs = getRockCrusherOutputs(aInputs[0]); - if (tRecipeOutputs != null) { - rRecipe = new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, tRecipeOutputs.toArray(new ItemStack[tRecipeOutputs.size()]), null, null).setDuration(800).setEUt(2); - rRecipe.mCanBeBuffered = false; - rRecipe.mNeedsEmptyOutput = true; - return rRecipe; - } - } - - ItemStack tComparedInput = GT_Utility.copy(aInputs[0]); - ItemStack[] tOutputItems = GT_ModHandler.getMachineOutput(tComparedInput, ic2.api.recipe.Recipes.macerator.getRecipes(), true, new NBTTagCompound(), null, null, null); - if (GT_Utility.arrayContainsNonNull(tOutputItems)) { - return new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(aInputs[0].stackSize - tComparedInput.stackSize, aInputs[0])}, tOutputItems, null, null).setDuration(400).setEUt(2); - } - return null; - } - - @Override - public boolean containsInput(ItemStack aStack) { - return super.containsInput(aStack) || GT_Utility.arrayContainsNonNull(GT_ModHandler.getMachineOutput(GT_Utility.copyAmount(64, aStack), ic2.api.recipe.Recipes.macerator.getRecipes(), false, new NBTTagCompound(), null, null, null)); - } - } - - public static class GT_RecipeMapMicrowave extends GT_RecipeMap_NonGT { - - public GT_RecipeMapMicrowave(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { - return null; - } - if (aRecipe != null && aRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { - return aRecipe; - } - ItemStack tOutput = GT_ModHandler.getSmeltingOutput(aInputs[0], false, null); - - if (GT_Utility.areStacksEqual(aInputs[0], new ItemStack(Items.book, 1, W))) { - return new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{GT_Utility.getWrittenBook("Manual_Microwave", ItemList.Book_Written_03.get(1))}, new FluidStack[0], new FluidStack[0]).setDuration(32).setEUt(4); - } - - // Check Container Item of Input since it is around the Input, then the Input itself, then Container Item of Output and last check the Output itself - for (ItemStack tStack : new ItemStack[]{GT_Utility.getContainerItem(aInputs[0], true), aInputs[0], GT_Utility.getContainerItem(tOutput, true), tOutput}) { - if (tStack != null) { - if (GT_Utility.areStacksEqual(tStack, new ItemStack(Blocks.netherrack, 1, W), true) - || GT_Utility.areStacksEqual(tStack, new ItemStack(Blocks.tnt, 1, W), true) - || GT_Utility.areStacksEqual(tStack, new ItemStack(Items.egg, 1, W), true) - || GT_Utility.areStacksEqual(tStack, new ItemStack(Items.firework_charge, 1, W), true) - || GT_Utility.areStacksEqual(tStack, new ItemStack(Items.fireworks, 1, W), true) - || GT_Utility.areStacksEqual(tStack, new ItemStack(Items.fire_charge, 1, W), true) - ) { - if (aTileEntity instanceof IGregTechTileEntity) { - ((IGregTechTileEntity) aTileEntity).doExplosion(aVoltage * 4); - } - return null; - } - ItemData tData = GT_OreDictUnificator.getItemData(tStack); - - - if (tData != null) { - if (tData.mMaterial != null && tData.mMaterial.mMaterial != null) { - if (tData.mMaterial.mMaterial.contains(SubTag.METAL) || tData.mMaterial.mMaterial.contains(SubTag.EXPLOSIVE)) { - if (aTileEntity instanceof IGregTechTileEntity) { - ((IGregTechTileEntity) aTileEntity).doExplosion(aVoltage * 4); - } - return null; - } - if (tData.mMaterial.mMaterial.contains(SubTag.FLAMMABLE)) { - if (aTileEntity instanceof IGregTechTileEntity) { - ((IGregTechTileEntity) aTileEntity).setOnFire(); - } - return null; - } - } - for (MaterialStack tMaterial : tData.mByProducts) { - if (tMaterial != null) { - if (tMaterial.mMaterial.contains(SubTag.METAL) || tMaterial.mMaterial.contains(SubTag.EXPLOSIVE)) { - if (aTileEntity instanceof IGregTechTileEntity) { - ((IGregTechTileEntity) aTileEntity).doExplosion(aVoltage * 4); - } - return null; - } - if (tMaterial.mMaterial.contains(SubTag.FLAMMABLE)) { - if (aTileEntity instanceof IGregTechTileEntity) { - ((IGregTechTileEntity) aTileEntity).setOnFire(); - } - return null; - } - } - } - } - if (TileEntityFurnace.getItemBurnTime(tStack) > 0) { - if (aTileEntity instanceof IGregTechTileEntity) { - ((IGregTechTileEntity) aTileEntity).setOnFire(); - } - return null; - } - - } - } - - if (tOutput == null) { - return null; - } - return new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[0], new FluidStack[0]).setDuration(32).setEUt(4); - } - - @Override - public boolean containsInput(ItemStack aStack) { - return GT_ModHandler.getSmeltingOutput(aStack, false, null) != null; - } - } - - public static class GT_RecipeMapPrinter extends GT_RecipeMap { - - public GT_RecipeMapPrinter(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - GT_MachineRecipe rRecipe = super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); - if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null || aFluids == null || aFluids.length <= 0 || aFluids[0] == null || !GregTech_API.sPostloadFinished) { - return rRecipe; - } - - Dyes aDye = null; - for (Dyes tDye : Dyes.VALUES) { - if (tDye.isFluidDye(aFluids[0])) { - aDye = tDye; - break; - } - } - - if (aDye == null) { - return rRecipe; - } - - if (rRecipe == null) { - ItemStack - tOutput = GT_ModHandler.getAllRecipeOutput(aTileEntity == null ? null : aTileEntity.getWorld(), aInputs[0], aInputs[0], aInputs[0], aInputs[0], ItemList.DYE_ONLY_ITEMS[aDye.mIndex].get(1), aInputs[0], aInputs[0], aInputs[0], aInputs[0]); - if (tOutput != null) { - return addRecipe(new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(8, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[]{new FluidStack(aFluids[0].getFluid(), (int) L)}, null).setDuration(256).setEUt(2).optimize(), false, false, true); - } - - tOutput = GT_ModHandler.getAllRecipeOutput(aTileEntity == null ? null : aTileEntity.getWorld(), aInputs[0], ItemList.DYE_ONLY_ITEMS[aDye.mIndex].get(1)); - if (tOutput != null) { - return addRecipe(new GT_MachineRecipe(new ItemStack[]{GT_Utility.copyAmount(1, aInputs[0])}, new ItemStack[]{tOutput}, new FluidStack[]{new FluidStack(aFluids[0].getFluid(), (int) L)}, null).setDuration(32).setEUt(2).optimize(), false, false, true); - } - } else { - if (aInputs[0].getItem() == Items.paper) { - if (!ItemList.Tool_DataStick.isStackEqual(aSpecialSlot, false, true)) { - return null; - } - NBTTagCompound tNBT = aSpecialSlot.getTagCompound(); - if (tNBT == null || GT_Utility.isStringInvalid(tNBT.getString("title")) || GT_Utility.isStringInvalid(tNBT.getString("author"))) { - return null; - } - - rRecipe = rRecipe.copy(); - rRecipe.mCanBeBuffered = false; - ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); - tStack.setTagCompound(tNBT); - rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); - return rRecipe; - } - if (aInputs[0].getItem() == Items.map) { - if (!ItemList.Tool_DataStick.isStackEqual(aSpecialSlot, false, true)) { - return null; - } - NBTTagCompound tNBT = aSpecialSlot.getTagCompound(); - if (tNBT == null || !tNBT.hasKey("map_id")) { - return null; - } - - rRecipe = rRecipe.copy(); - rRecipe.mCanBeBuffered = false; - ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); - tStack.setItemDamage(tNBT.getShort("map_id")); - rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); - return rRecipe; - } - if (ItemList.Paper_Punch_Card_Empty.isStackEqual(aInputs[0], false, true)) { - if (!ItemList.Tool_DataStick.isStackEqual(aSpecialSlot, false, true)) { - return null; - } - NBTTagCompound tNBT = aSpecialSlot.getTagCompound(); - if (tNBT == null || !tNBT.hasKey("GT.PunchCardData")) { - return null; - } - - rRecipe = rRecipe.copy(); - rRecipe.mCanBeBuffered = false; - ItemStack tStack = rRecipe.mOutputs[0].getShownOutput(); - tStack.setTagCompound(GT_Utility.getNBTContainingString(new NBTTagCompound(), "GT.PunchCardData", tNBT.getString("GT.PunchCardData"))); - rRecipe.mOutputs[0] = new GT_RecipeOutput(tStack); - return rRecipe; - } - } - return rRecipe; - } - - @Override - public boolean containsInput(ItemStack aStack) { - return true; - } - - @Override - public boolean containsInput(FluidStack aFluid) { - return super.containsInput(aFluid) || Dyes.isAnyFluidDye(aFluid); - } - - @Override - public boolean containsInput(Fluid aFluid) { - return super.containsInput(aFluid) || Dyes.isAnyFluidDye(aFluid); - } - } - - public static class GT_RecipeMapRecycler extends GT_RecipeMap_NonGT { - - public GT_RecipeMapRecycler(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - if (aInputs == null || aInputs.length <= 0 || aInputs[0] == null) { - return null; - } - if (aRecipe != null && aRecipe.isRecipeInputEqual(false, true, aFluids, aInputs)) { - return aRecipe; - } - return new GT_MachineRecipe(new GT_RecipeInput[]{new GT_RecipeInput(GT_Utility.copyAmount(1, aInputs[0]))}, GT_ModHandler.getRecyclerOutput(GT_Utility.copyAmount(64, aInputs[0]), 0) == null ? null : new GT_RecipeOutput[]{new GT_RecipeOutput(ItemList.IC2_Scrap.get(1), 0.125f)}, null, null).setDuration(45).setEUt(1); - } - - @Override - public boolean containsInput(ItemStack aStack) { - return GT_ModHandler.getRecyclerOutput(GT_Utility.copyAmount(64, aStack), 0) != null; - } - } - - public static class GT_RecipeMapUnboxinator extends GT_RecipeMap { - - public GT_RecipeMapUnboxinator(Collection aRecipeList) { - super(aRecipeList); - } - - @Override - public GT_MachineRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_MachineRecipe aRecipe, boolean aIgnoreCounts, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) { - if (aInputs == null || aInputs.length <= 0 || !ItemList.IC2_Scrapbox.isStackEqual(aInputs[0], false, true)) { - return super.findRecipe(aTileEntity, aRecipe, aIgnoreCounts, aVoltage, aFluids, aSpecialSlot, aInputs); - } - ItemStack tOutput = GT_ModHandler.getRandomScrapboxDrop(); - if (tOutput == null) { - return super.findRecipe(aTileEntity, aRecipe, aVoltage, aFluids, aSpecialSlot, aInputs); - } - GT_MachineRecipe rRecipe = new GT_MachineRecipe(new ItemStack[]{ItemList.IC2_Scrapbox.get(1)}, new ItemStack[]{tOutput}, new FluidStack[0], new FluidStack[0]).setDuration(16).setEUt(1); - // It is not allowed to be buffered due to the random Output - rRecipe.mCanBeBuffered = false; - // Due to its randomness it is not good if there are Items in the Output Slot, because those Items could manipulate the outcome. - rRecipe.mNeedsEmptyOutput = true; - return rRecipe; - } - - @Override - public boolean containsInput(ItemStack aStack) { - return ItemList.IC2_Scrapbox.isStackEqual(aStack, false, true) || super.containsInput(aStack); - } - } - -} \ No newline at end of file diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java b/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java deleted file mode 100644 index 991c16edff..0000000000 --- a/src/main/java/gregtech/api/recipes/GT_RecipeOutput.java +++ /dev/null @@ -1,149 +0,0 @@ -package gregtech.api.recipes; - -import gregtech.api.util.GT_OreDictUnificator; -import java.util.ArrayList; -import java.util.Random; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -/** - * Represents an item stack as used for output in a GregTech machine recipe (with chance). - * Heavily based on/inspired by the recipe system in Ender IO, which is public domain. - * (see https://github.com/SleepyTrousers/EnderIO/blob/release/1.7.10/2.3/LICENSE to confirm) - */ -public class GT_RecipeOutput { - - private final ItemStack mItemStack; - private final int mChance; - - public GT_RecipeOutput(Block aBlock) { - this(new ItemStack(aBlock, 1)); - } - - public GT_RecipeOutput(Block aBlock, float aChance) { - this(new ItemStack(aBlock, 1), aChance); - } - - public GT_RecipeOutput(Block aBlock, int aCount) { - this(new ItemStack(aBlock, aCount)); - } - - public GT_RecipeOutput(Block aBlock, int aCount, float aChance) { - this(new ItemStack(aBlock, aCount), aChance); - } - - public GT_RecipeOutput(Item aItem) { - this(new ItemStack(aItem, 1)); - } - - public GT_RecipeOutput(Item aItem, float aChance) { - this(new ItemStack(aItem, 1), aChance); - } - - public GT_RecipeOutput(Item aItem, int aCount) { - this(new ItemStack(aItem, aCount)); - } - - public GT_RecipeOutput(Item aItem, int aCount, float aChance) { - this(new ItemStack(aItem, aCount), aChance); - } - - public GT_RecipeOutput(String aOredictName) { - this(aOredictName, 1, 1.0f); - } - - public GT_RecipeOutput(String aOredictName, float aChance) { - this(aOredictName, 1, aChance); - } - - public GT_RecipeOutput(String aOredictName, int aCount) { - this(aOredictName, aCount, 1.0f); - } - - public GT_RecipeOutput(String aOredictName, int aCount, float aChance) { - this(GT_OreDictUnificator.getFirstOre(aOredictName, aCount), aChance); - } - - public GT_RecipeOutput(ItemStack aItemStack) { - this(aItemStack, 1.0f); - } - - public GT_RecipeOutput(ItemStack aItemStack, float aChance) { - if (aItemStack != null) { - mItemStack = aItemStack.copy(); - } else { - mItemStack = null; - } - mChance = Math.min(10000, Math.max((int)(aChance * 10000), 0)); - } - - /** - * Get the actual output, considering chances. - * @param aRandom - the pseudo-random number generator object to use. - * If the chance is 0 or 1 the random state will be unchanged. - * @return a stack of items, considering the chances. - */ - public ItemStack getActualOutput(Random aRandom) { - if (mItemStack == null) { - return null; - } - int tCount = 0; - if (mChance == 10000) { - tCount = mItemStack.stackSize; - } else if (mChance > 0.0f) { - for (int i = 0; i < mItemStack.stackSize; i++) { - if (aRandom.nextInt(10000) < mChance) { - tCount++; - } - } - } - ItemStack tItemStack = mItemStack.copy(); - tItemStack.stackSize = tCount; - return tItemStack; - } - - /** - * Get the output to show, e.g. for an NEI recipe. - */ - public ItemStack getShownOutput() { - if (mItemStack == null) { - return null; - } - return mItemStack.copy(); - } - - public int getChance() { - return mChance; - } - - public int getCount() { - if (mItemStack == null) { - return 0; - } - return mItemStack.stackSize; - } - - public void setCount(int aCount) { - if (mItemStack != null) { - mItemStack.stackSize = aCount; - } - } - - public String getOutputDescription() { - if (mItemStack == null) { - return null; - } - String rDescription = mItemStack.stackSize + " " + mItemStack.getDisplayName(); - if (mChance > 0 && mChance < 10000) { - rDescription += String.format(" (Chance: %d.%2d)", mChance / 100, mChance % 100); - } - return rDescription; - } - - @Override - public String toString() { - return getOutputDescription(); - } - -} \ No newline at end of file diff --git a/src/main/java/gregtech/common/GT_MachineRecipeAdder.java b/src/main/java/gregtech/common/GT_MachineRecipeAdder.java deleted file mode 100644 index e438113d64..0000000000 --- a/src/main/java/gregtech/common/GT_MachineRecipeAdder.java +++ /dev/null @@ -1,1256 +0,0 @@ -package gregtech.common; - -import cpw.mods.fml.common.Loader; -import gregtech.GT_Mod; -import gregtech.api.GregTech_API; -import gregtech.api.enums.GT_Values; -import gregtech.api.enums.ItemList; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.interfaces.internal.IGT_RecipeAdder; -import gregtech.api.objects.GT_FluidStack; -import gregtech.api.objects.ItemData; -import gregtech.api.recipes.GT_AssemblyLineRecipe; -import gregtech.api.recipes.GT_MachineRecipe; -import gregtech.api.recipes.GT_RecipeInput; -import gregtech.api.recipes.GT_RecipeInputAlts; -import gregtech.api.recipes.GT_RecipeInputOredict; -import gregtech.api.recipes.GT_RecipeMap; -import gregtech.api.recipes.GT_RecipeOutput; -import gregtech.api.util.GT_ModHandler; -import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Utility; -import gregtech.common.items.GT_IntegratedCircuit_Item; -import java.util.Arrays; -import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; -import mods.railcraft.common.items.RailcraftToolItems; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidStack; - -public class GT_MachineRecipeAdder implements IGT_RecipeAdder { - - @Override - @Deprecated - public boolean addFusionReactorRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aFusionDurationInTicks, int aFusionEnergyPerTick, int aEnergyNeededForStartingFusion) { - return false; - } - - @Override - public boolean addFusionReactorRecipe(FluidStack aInput1, FluidStack aInput2, FluidStack aOutput1, int aDuration, int aEUt, int aStartEU) { - if (aInput1 == null || aInput2 == null || aOutput1 == null || aDuration < 1 || aEUt < 1 || aStartEU < 1) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("fusion", aOutput1.getFluid().getName(), aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sFusionRecipes.addRecipe(null, new FluidStack[]{aInput1, aInput2}, new FluidStack[]{aOutput1}, tDuration, aEUt, aStartEU); - return true; - } - - @Override - public boolean addCentrifugeRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration) { - ItemStack tInput2 = null; - if (aInput2 < 0) { - tInput2 = ItemList.IC2_Fuel_Can_Empty.get(-aInput2, new Object[0]); - } else if (aInput2 > 0) { - tInput2 = ItemList.Cell_Empty.get(aInput2, new Object[0]); - } - return addCentrifugeRecipe(aInput1, tInput2, GT_Values.NF, GT_Values.NF, aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6, null, aDuration, 5); - } - - @Override - public boolean addCentrifugeRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int[] aChances, int aDuration, int aEUt) { - if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput1 == null) && (aFluidOutput == null))) { - return false; - } - int tDuration = aDuration; - if (aInput1 != null) { - tDuration = GregTech_API.sRecipeFile.get("centrifuge", aInput1, aDuration); - if (tDuration <= 0) { - return false; - } - } - if (aFluidInput != null) { - tDuration = GregTech_API.sRecipeFile.get("centrifuge", aFluidInput.getFluid().getName(), aDuration); - if (tDuration <= 0) { - return false; - } - } - GT_RecipeMap.sCentrifugeRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6}, null, aChances, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addCompressorRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("compressor", aInput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sCompressorRecipes.addRecipe(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addElectrolyzerRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration, int aEUt) { - ItemStack tInput2 = null; - if (aInput2 < 0) { - tInput2 = ItemList.IC2_Fuel_Can_Empty.get(-aInput2, new Object[0]); - } else if (aInput2 > 0) { - tInput2 = ItemList.Cell_Empty.get(aInput2, new Object[0]); - } - return addElectrolyzerRecipe(aInput1, tInput2, GT_Values.NF, GT_Values.NF, aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6, null, aDuration, aEUt); - } - - @Override - public boolean addElectrolyzerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int[] aChances, int aDuration, int aEUt) { - if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput1 == null) && (aFluidOutput == null))) { - return false; - } - int tDuration = aDuration; - if (aInput1 != null) { - tDuration = GregTech_API.sRecipeFile.get("electrolyzer", aInput1, aDuration); - if (tDuration <= 0) { - return false; - } - } - if (aFluidInput != null) { - tDuration = GregTech_API.sRecipeFile.get("electrolyzer", aFluidInput.getFluid().getName(), aDuration); - if (tDuration <= 0) { - return false; - } - } - GT_RecipeMap.sElectrolyzerRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6}, null, aChances, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int aDuration) { - return addChemicalRecipe(aInput1, aInput2, GT_Values.NF, GT_Values.NF, aOutput, aDuration); - } - - @Override - public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration) { - return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aDuration, 30); - } - - @Override - public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration) { - return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aOutput2, aDuration, 30); - } - - @Override - public boolean addChemicalRecipeForBasicMachineOnly(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick) { - if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput == null) && (aOutput2 == null) && (aFluidOutput == null))) { - return false; - } - int tDuration = aDuration; - if (aOutput != null || aOutput2 != null) { - tDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aOutput, aDuration); - if (tDuration <= 0) { - return false; - } - } - if (aFluidOutput != null) { - tDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aFluidOutput.getFluid().getName(), aDuration); - if (tDuration <= 0) { - return false; - } - } - if (aEUtick <= 0) { - return false; - } - GT_RecipeMap.sChemicalRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUtick, 0); - return true; - } - - @Override - public void addDefaultPolymerizationRecipes(Fluid aBasicMaterial, ItemStack aBasicMaterialCell, Fluid aPolymer) { - //Oxygen/Titaniumtetrafluoride -> +50% Output each - addChemicalRecipe(ItemList.Cell_Air.get(1, new Object[0]), GT_Utility.getIntegratedCircuit(1), new GT_FluidStack(aBasicMaterial, 288), new GT_FluidStack(aPolymer, 288), Materials.Empty.getCells(1), 320); - addChemicalRecipe(Materials.Oxygen.getCells(1), GT_Utility.getIntegratedCircuit(1), new GT_FluidStack(aBasicMaterial, 144), new GT_FluidStack(aPolymer, 216), Materials.Empty.getCells(1), 160); - addChemicalRecipe(aBasicMaterialCell, GT_Utility.getIntegratedCircuit(1), Materials.Air.getGas(14000), new GT_FluidStack(aPolymer, 1000), Materials.Empty.getCells(1), 1120); - addChemicalRecipe(aBasicMaterialCell, GT_Utility.getIntegratedCircuit(1), Materials.Oxygen.getGas(7000), new GT_FluidStack(aPolymer, 1500), Materials.Empty.getCells(1), 1120); - addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, - new FluidStack[]{new GT_FluidStack(aBasicMaterial, 2160), Materials.Air.getGas(15000), Materials.Titaniumtetrachloride.getFluid(100)}, - new FluidStack[]{new GT_FluidStack(aPolymer, 3240)}, null, 800, 30); - addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, - new FluidStack[]{new GT_FluidStack(aBasicMaterial, 2160), Materials.Oxygen.getGas(7500), Materials.Titaniumtetrachloride.getFluid(100)}, - new FluidStack[]{new GT_FluidStack(aPolymer, 4320)}, null, 800, 30); - } - - @Override - public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUtick) { - return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, GT_Values.NI, aDuration, aEUtick); - } - - @Override - public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick) { - if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput == null) && (aOutput2 == null) && (aFluidOutput == null))) { - return false; - } - int tDuration = aDuration; - if (aOutput != null) { - tDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aOutput, aDuration); - if (tDuration <= 0) { - return false; - } - } - if (aFluidOutput != null) { - tDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aFluidOutput.getFluid().getName(), aDuration); - if (tDuration <= 0) { - return false; - } - } - if (aEUtick <= 0) { - return false; - } - GT_RecipeMap.sChemicalRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUtick, mAddingDeprecatedRecipes ? -300 : 0); - if (!(aInput1 != null && aInput1.getItem() instanceof GT_IntegratedCircuit_Item && aInput1.getItemDamage() >= 10) - && !(aInput2 != null && aInput2.getItem() instanceof GT_IntegratedCircuit_Item && aInput2.getItemDamage() >= 10)) { - GT_RecipeMap.sMultiblockChemicalRecipes.addRecipe(false, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUtick, mAddingDeprecatedRecipes ? -300 : 0); - } - return true; - } - - @Override - public boolean addMultiblockChemicalRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, ItemStack[] aOutputs, int aDuration, int aEUtick) { - if (areItemsAndFluidsBothNull(aInputs, aFluidInputs) || areItemsAndFluidsBothNull(aOutputs, aFluidOutputs)) { - return false; - } - if (aEUtick <= 0) { - return false; - } - GT_RecipeMap.sMultiblockChemicalRecipes.addRecipe(false, aInputs, aOutputs, null, null, aFluidInputs, aFluidOutputs, aDuration, aEUtick, 0); - return true; - } - - @Override - public boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt, int aLevel) { - return addBlastRecipe(aInput1, aInput2, GT_Values.NF, GT_Values.NF, aOutput1, aOutput2, aDuration, aEUt, aLevel); - } - - @Override - public boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt, int aLevel) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("blastfurnace", aInput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1, aOutput2}, null, null, - new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, aLevel); - return true; - } - - @Override - public boolean addPrimitiveBlastRecipe(ItemStack aInput1, ItemStack aInput2, int aCoalAmount, ItemStack aOutput1, ItemStack aOutput2, int aDuration) { - if ((aInput1 == null && aInput2 == null) || (aOutput1 == null && aOutput2 == null)) { - return false; - } - if (aCoalAmount <= 0) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("primitiveblastfurnace", aInput1, aDuration); - if (tDuration <= 0) { - return false; - } - Materials[] coals = new Materials[]{Materials.Coal, Materials.Charcoal}; - for (Materials coal : coals) { - GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, coal.getGems(aCoalAmount)}, new ItemStack[]{aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount)}, null, null, null, null, tDuration, 0, 0); - GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, coal.getDust(aCoalAmount)}, new ItemStack[]{aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount)}, null, null, null, null, tDuration, 0, 0); - } - if (Loader.isModLoaded("Railcraft")) { - GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, RailcraftToolItems.getCoalCoke(aCoalAmount / 2)}, new ItemStack[]{aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount / 2)}, null, null, null, null, tDuration * 2 / 3, 0, 0); - } - if ((aInput1 == null || aInput1.stackSize <= 6) && (aInput2 == null || aInput2.stackSize <= 6) - && (aOutput1 == null || aOutput1.stackSize <= 6) && (aOutput2 == null || aOutput2.stackSize <= 6)) { - ItemStack tInput1 = aInput1 == null ? null : GT_Utility.copyAmount(aInput1.stackSize * 10, aInput1); - ItemStack tInput2 = aInput2 == null ? null : GT_Utility.copyAmount(aInput2.stackSize * 10, aInput2); - ItemStack tOutput1 = aOutput1 == null ? null : GT_Utility.copyAmount(aOutput1.stackSize * 10, aOutput1); - ItemStack tOutput2 = aOutput2 == null ? null : GT_Utility.copyAmount(aOutput2.stackSize * 10, aOutput2); - for (Materials coal : coals) { - GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{tInput1, tInput2, coal.getBlocks(aCoalAmount)}, new ItemStack[]{tOutput1, tOutput2, Materials.DarkAsh.getDust(aCoalAmount)}, null, null, null, null, tDuration * 10, 0, 0); - GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{tInput1, tInput2, coal.getBlocks(aCoalAmount)}, new ItemStack[]{tOutput1, tOutput2, Materials.DarkAsh.getDust(aCoalAmount)}, null, null, null, null, tDuration * 10, 0, 0); - } - if (Loader.isModLoaded("Railcraft")) { - GT_RecipeMap.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{tInput1, tInput2, EnumCube.COKE_BLOCK.getItem(aCoalAmount / 2)}, new ItemStack[]{tOutput1, tOutput2, Materials.Ash.getDust(aCoalAmount / 2)}, null, null, null, null, tDuration * 20 / 3, 0, 0); - } - } - return true; - } - - @Override - public boolean addCannerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("canning", aInput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sCannerRecipes.addRecipe(false, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addAlloySmelterRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt) { - return addAlloySmelterRecipe(aInput1, aInput2, aOutput1, aDuration, aEUt, false); - } - - @Override - public boolean addAlloySmelterRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt, boolean hidden) { - if ((aInput1 == null) || (aOutput1 == null || Materials.Graphite.contains(aInput1))) { - return false; - } - if ((aInput2 == null) && ((OrePrefixes.ingot.contains(aInput1)) || (OrePrefixes.dust.contains(aInput1)) || (OrePrefixes.gem.contains(aInput1)))) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("alloysmelting", aInput2 == null ? aInput1 : aOutput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_MachineRecipe tRecipe = new GT_MachineRecipe(new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput1}, new FluidStack[0], new FluidStack[0]).setDuration(tDuration).setEUt(aEUt).setHidden(hidden); - GT_RecipeMap.sAlloySmelterRecipes.addRecipe(tRecipe); - return true; - } - - @Override - @Deprecated - public boolean addCNCRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { - // relevant machine doesn't seem to actually exist, and old recipe map for it wasn't actually invoked. - return false; - } - - @Override - public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sAssemblerRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2 == null ? aInput1 : aInput2}, new ItemStack[]{aOutput1}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { - return addAssemblerRecipe(new ItemStack[]{aInput1, aInput2}, aFluidInput, aOutput1, aDuration, aEUt); - } - - @Override - public boolean addAssemblerRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { - if (areItemsAndFluidsBothNull(aInputs, new FluidStack[]{aFluidInput})) { - return false; - } - if (aOutput1 == null) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sAssemblerRecipes.addRecipe(true, aInputs, new ItemStack[]{aOutput1}, null, new FluidStack[]{aFluidInput}, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addAssemblerRecipe(ItemStack aInput1, Object aOreDict, int aAmount, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { - int tDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeInput[] tInputs = new GT_RecipeInput[]{new GT_RecipeInput(aInput1), new GT_RecipeInputOredict(aOreDict.toString(), aAmount)}; - GT_RecipeOutput[] tOutputs = new GT_RecipeOutput[]{new GT_RecipeOutput(aOutput1)}; - GT_RecipeMap.sAssemblerRecipes.addRecipe(new GT_MachineRecipe(tInputs, tOutputs, new FluidStack[]{aFluidInput}, new FluidStack[0]).setDuration(tDuration).setEUt(aEUt)); - return true; - } - - @Override - public boolean addAssemblerRecipe(ItemStack[] aInputs, Object aOreDict, int aAmount, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { - int tDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeInput[] tInputs = new GT_RecipeInput[aInputs.length + 1]; - for (int i = 0; i < aInputs.length; i++) { - tInputs[i] = new GT_RecipeInput(aInputs[i]); - } - tInputs[aInputs.length] = new GT_RecipeInputOredict(aOreDict.toString(), aAmount); - GT_RecipeOutput[] tOutputs = new GT_RecipeOutput[]{new GT_RecipeOutput(aOutput1)}; - GT_RecipeMap.sAssemblerRecipes.addRecipe(new GT_MachineRecipe(tInputs, tOutputs, new FluidStack[]{aFluidInput}, new FluidStack[0]).setDuration(tDuration).setEUt(aEUt)); - return true; - } - - @Override - public boolean addCircuitAssemblerRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput, int aDuration, int aEUt) { - if ((aInputs == null) || (aOutput == null) || aInputs.length > 6 || aInputs.length < 1) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("circuitassembler", aOutput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sCircuitAssemblerRecipes.addRecipe(true, aInputs, new ItemStack[]{aOutput}, null, null, new FluidStack[]{aFluidInput}, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addAssemblylineRecipe(ItemStack aResearchItem, int aResearchTime, ItemStack[] aInputs, FluidStack[] aFluidInputs, ItemStack aOutput1, int aDuration, int aEUt) { - return addAssemblylineRecipe(aResearchItem, aResearchTime, (Object[])aInputs, aFluidInputs, aOutput1, aDuration, aEUt); - } - - @Override - public boolean addAssemblylineRecipe(ItemStack aResearchItem, int aResearchTime, Object[] aInputs, FluidStack[] aFluidInputs, ItemStack aOutput, int aDuration, int aEUt) { - if ((aResearchItem==null)||(aResearchTime<=0)||(aInputs == null) || (aOutput == null) || aInputs.length>15 || aInputs.length<4) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("assemblingline", aOutput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeInput[] tInputs = new GT_RecipeInput[aInputs.length]; - for (int i = 0; i < aInputs.length; i++) { - if (aInputs[i] instanceof ItemStack) { - tInputs[i] = new GT_RecipeInput((ItemStack)aInputs[i]); - } else if (aInputs[i] instanceof ItemStack[]) { - ItemStack[] tStacks = (ItemStack[])aInputs[i]; - tInputs[i] = new GT_RecipeInputAlts(Arrays.copyOf(tStacks, tStacks.length)); - } else if (aInputs[i] instanceof Object[]) { - Object[] objs = (Object[])aInputs[i]; - if (objs.length == 2 && objs[1] instanceof Number) { - int tAmount = ((Number)objs[1]).intValue(); - tInputs[i] = new GT_RecipeInputOredict(objs[0].toString(), tAmount); - } - } else { - System.out.println("addAssemblingLineRecipe "+aResearchItem.getDisplayName()+" --> "+aOutput.getUnlocalizedName()+" there is some null item in that recipe"); - return false; - } - } - GT_AssemblyLineRecipe tRecipe = (GT_AssemblyLineRecipe) new GT_AssemblyLineRecipe(tInputs, new GT_RecipeOutput[]{new GT_RecipeOutput(aOutput)}, aFluidInputs, new FluidStack[0]).setResearchItem(aResearchItem).setResearchTime(aResearchTime).setDuration(tDuration).setEUt(aEUt).setSpecialItems(new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Reads Research result", new Object[0])}); - GT_AssemblyLineRecipe.sAssemblyLineRecipes.add(tRecipe); - GT_MachineRecipe tFakeRecipe = new GT_MachineRecipe(new ItemStack[]{aResearchItem}, new ItemStack[]{aOutput}, null, null).setSpecialItems(new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Writes Research result", new Object[0])}).setDuration(aResearchTime).setEUt(30).setSpecialValue(-201); - GT_RecipeMap.sScannerFakeRecipes.addFakeRecipe(false, tFakeRecipe); - GT_RecipeMap.sAssemblyLineVisualRecipes.addFakeRecipe(false,tRecipe); - return true; - } - - @Override - public boolean addForgeHammerRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - if (!GregTech_API.sRecipeFile.get("forgehammer", aOutput1, true)) { - return false; - } - GT_RecipeMap.sHammerRecipes.addRecipe(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1}, null, null, null, aDuration, aEUt, 0); - return true; - } - - @Override - public boolean addWiremillRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("wiremill", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sWiremillRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addPolarizerRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("polarizer", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sPolarizerRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addBenderRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("polarizer", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sBenderRecipes.addRecipe(true, new ItemStack[]{aInput, ItemList.Circuit_Integrated.getWithDamage(0, aInput.stackSize)}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addExtruderRecipe(ItemStack aInput, ItemStack aShape, ItemStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aShape == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("extruder", aOutput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sExtruderRecipes.addRecipe(true, new ItemStack[]{aInput, aShape}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addSlicerRecipe(ItemStack aInput, ItemStack aShape, ItemStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aShape == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("slicer", aOutput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sSlicerRecipes.addRecipe(true, new ItemStack[]{aInput, aShape}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addOreWasherRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, FluidStack aFluidInput, int aDuration, int aEUt) { - if ((aInput == null) || (aFluidInput == null) || ((aOutput1 == null) || (aOutput2 == null) || (aOutput3 == null))) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("orewasher", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sOreWasherRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2, aOutput3}, null, new FluidStack[]{aFluidInput}, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addImplosionRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - int tInput2 = GregTech_API.sRecipeFile.get("implosion", aInput1, aInput2); - if (tInput2 <= 0) { - return false; - } - int tExplosives = Math.max(1, Math.min(tInput2, 64)); - int tGunpowder = tExplosives * 2; - int tDynamite = Math.max(1, tExplosives / 2); - int tTNT = Math.max(1, tExplosives / 2); - int tITNT = Math.max(1, tExplosives / 4); - if(tGunpowder <= 64){ - GT_RecipeMap.sImplosionRecipes.addRecipe(true, new ItemStack[]{aInput1, ItemList.Block_Powderbarrel.get(tGunpowder, new Object[0])}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, null, 20, 30, 0); - } - if(tDynamite <= 16){ - GT_RecipeMap.sImplosionRecipes.addRecipe(true, new ItemStack[]{aInput1, GT_ModHandler.getIC2Item("dynamite", tDynamite, null)}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, null, 20, 30, 0); - } - GT_RecipeMap.sImplosionRecipes.addRecipe(true, new ItemStack[]{aInput1, new ItemStack(Blocks.tnt,tTNT)}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, null, 20, 30, 0); - GT_RecipeMap.sImplosionRecipes.addRecipe(true, new ItemStack[]{aInput1, GT_ModHandler.getIC2Item("industrialTnt", tITNT, null)}, new ItemStack[]{aOutput1, aOutput2}, null, null, null, null, 20, 30, 0); - - return true; - } - - @Override - @Deprecated - public boolean addGrinderRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4) { - return false; - } - - @Override - public boolean addDistillationTowerRecipe(FluidStack aInput, FluidStack[] aOutputs, ItemStack aOutput2, int aDuration, int aEUt) { - if (aInput == null || aOutputs == null || aOutputs.length < 1 || aOutputs.length > 11) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("distillation", aInput.getUnlocalizedName(), aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sDistillationRecipes.addRecipe(false, null, new ItemStack[]{aOutput2}, null, new FluidStack[]{aInput}, aOutputs, tDuration, Math.max(1, aEUt), 0); - return true; - } - - @Override - public boolean addSimpleArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { - // Nothing in standard GT uses this, but GTTweaker allows recipes to be added to the Oxygen Arc Furnace while excluding the Plasma Arc Furnace. - if ((aInput == null) || (aOutputs == null) || aFluidInput == null) { - return false; - } - for (ItemStack tStack : aOutputs) { - if (tStack != null) { - int tDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{aFluidInput}, null, tDuration, Math.max(1, aEUt), 0); - return true; - } - } - return false; - } - - @Override - public boolean addPlasmaArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { - if ((aInput == null) || (aOutputs == null) || aFluidInput == null) { - return false; - } - for (ItemStack tStack : aOutputs) { - if (tStack != null) { - int tDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sPlasmaArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{aFluidInput}, null, tDuration, Math.max(1, aEUt), 0); - return true; - } - } - return false; - } - - @Override - public boolean addPlasmaArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, FluidStack aFluidOutput, int[] aChances, int aDuration, int aEUt) { - if ((aInput == null) || (aOutputs == null) || aFluidInput == null) { - return false; - } - for (ItemStack tStack : aOutputs) { - if (tStack != null) { - int tDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sPlasmaArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, Math.max(1, aEUt), 0); - return true; - } - } - return false; - } - - @Override - @Deprecated - public boolean addDistillationRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, int aDuration, int aEUt) { - return false; - } - - @Override - public boolean addLatheRecipe(ItemStack aInput1, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("lathe", aInput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sLatheRecipes.addRecipe(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[0], new FluidStack[0], tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addCutterRecipe(ItemStack aInput, FluidStack aLubricant, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { - if ((aInput == null) || (aLubricant == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("cutting", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sCutterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[]{aLubricant}, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addCutterRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("cutting", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sCutterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[]{Materials.Water.getFluid(Math.max(4, Math.min(1000, tDuration * aEUt / 320)))}, null, tDuration * 2, aEUt, 0); - GT_RecipeMap.sCutterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[]{GT_ModHandler.getDistilledWater(Math.max(3, Math.min(750, tDuration * aEUt / 426)))}, null, tDuration * 2, aEUt, 0); - GT_RecipeMap.sCutterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2}, null, new FluidStack[]{Materials.Lubricant.getFluid(Math.max(1, Math.min(250, tDuration * aEUt / 1280)))}, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addBoxingRecipe(ItemStack aContainedItem, ItemStack aEmptyBox, ItemStack aFullBox, int aDuration, int aEUt) { - if ((aContainedItem == null) || (aFullBox == null)) { - return false; - } - if (!GregTech_API.sRecipeFile.get("boxing", aFullBox, true)) { - return false; - } - GT_RecipeMap.sBoxinatorRecipes.addRecipe(true, new ItemStack[]{aContainedItem, aEmptyBox}, new ItemStack[]{aFullBox}, null, null, null, aDuration, aEUt, 0); - return true; - } - - @Override - public boolean addThermalCentrifugeRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput1 == null)) { - return false; - } - if (!GregTech_API.sRecipeFile.get("thermalcentrifuge", aInput, true)) { - return false; - } - GT_RecipeMap.sThermalCentrifugeRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2, aOutput3}, null, null, null, aDuration, aEUt, 0); - return true; - } - - @Override - public boolean addUnboxingRecipe(ItemStack aFullBox, ItemStack aContainedItem, ItemStack aEmptyBox, int aDuration, int aEUt) { - if ((aFullBox == null) || (aContainedItem == null)) { - return false; - } - if (!GregTech_API.sRecipeFile.get("unboxing", aFullBox, true)) { - return false; - } - GT_RecipeMap.sUnboxinatorRecipes.addRecipe(true, new ItemStack[]{aFullBox}, new ItemStack[]{aContainedItem, aEmptyBox}, null, null, null, aDuration, aEUt, 0); - return true; - } - - @Override - public boolean addVacuumFreezerRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("vacuumfreezer", aInput1, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sVacuumRecipes.addRecipe(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1}, null, new FluidStack[0], new FluidStack[0], tDuration, 120, 0); - return true; - } - - @Override - public boolean addFuel(ItemStack aInput1, ItemStack aOutput1, int aEU, int aType) { - if (aInput1 == null || aEU <= 0) { - return false; - } - GT_RecipeMap[] tFuelTypeMaps = { - GT_RecipeMap.sDieselFuels, - GT_RecipeMap.sTurbineFuels, - GT_RecipeMap.sHotFuels, - GT_RecipeMap.sDenseLiquidFuels, - GT_RecipeMap.sPlasmaFuels, - GT_RecipeMap.sMagicFuels - }; - int tType = aType; - if (tType < 0 || tType > 5) { - tType = 3; - } - GT_MachineRecipe tRecipe = new GT_MachineRecipe( new ItemStack[]{aInput1}, new ItemStack[]{aOutput1}, new FluidStack[0], new FluidStack[0]).setSpecialValue(aEU); - tFuelTypeMaps[tType].addRecipe(tRecipe); - if (tType == 0) { - GT_RecipeMap.sLargeBoilerFakeFuels.addDieselRecipe(tRecipe); - } else if (tType == 3) { - GT_RecipeMap.sLargeBoilerFakeFuels.addDenseLiquidRecipe(tRecipe); - } - return true; - } - - @Override - public boolean addAmplifier(ItemStack aAmplifierItem, int aDuration, int aAmplifierAmountOutputted) { - if ((aAmplifierItem == null) || (aAmplifierAmountOutputted <= 0)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("amplifier", aAmplifierItem, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sAmplifiers.addRecipe(true, new ItemStack[]{aAmplifierItem}, null, null, null, new FluidStack[]{Materials.UUAmplifier.getFluid(aAmplifierAmountOutputted)}, tDuration, 32, 0); - return true; - } - - @Override - public boolean addBrewingRecipe(ItemStack aIngredient, Fluid aInput, Fluid aOutput, boolean aHidden) { - if ((aIngredient == null) || (aInput == null) || (aOutput == null)) { - return false; - } - if (!GregTech_API.sRecipeFile.get("brewing", aOutput.getUnlocalizedName(), true)) { - return false; - } - GT_MachineRecipe tRecipe = GT_RecipeMap.sBrewingRecipes.addRecipe(false, new ItemStack[]{aIngredient}, null, null, new FluidStack[]{new FluidStack(aInput, 750)}, new FluidStack[]{new FluidStack(aOutput, 750)}, 128, 4, 0); - if ((aHidden) && (tRecipe != null)) { - tRecipe.mHidden = true; - } - return true; - } - - @Override - public boolean addFermentingRecipe(FluidStack aInput, FluidStack aOutput, int aDuration, boolean aHidden) { - if ((aInput == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("fermenting", aOutput.getFluid().getUnlocalizedName(), aDuration); - if (tDuration <= 0) { - return false; - } - GT_MachineRecipe tRecipe = GT_RecipeMap.sFermentingRecipes.addRecipe(false, null, null, null, new FluidStack[]{aInput}, new FluidStack[]{aOutput}, tDuration, 2, 0); - if ((aHidden) && (tRecipe != null)) { - tRecipe.mHidden = true; - } - return true; - } - - @Override - public boolean addFluidHeaterRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("fluidheater", aOutput.getFluid().getUnlocalizedName(), aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sFluidHeaterRecipes.addRecipe(true, new ItemStack[]{aCircuit}, null, null, new FluidStack[]{aInput}, new FluidStack[]{aOutput}, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, ItemStack aSolidOutput, int aDuration, int aEUt, boolean aHidden) { - if ((aInput == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("distillery", aOutput.getFluid().getUnlocalizedName(), aDuration); - if (tDuration <= 0) { - return false; - } - //reduce the batch size if fluid amount is exceeding - int tScale = (Math.max(aInput.amount, aOutput.amount) + 999) / 1000; - if (tScale <= 0) { - tScale = 1; - } - FluidStack tInput = aInput; - FluidStack tOutput = aOutput; - ItemStack tSolidOutput = aSolidOutput; - if (tScale > 1){ - //trying to find whether there is a better factor - for (int i = tScale; i <= 5; i++) { - if (aInput.amount % i == 0 && tDuration % i == 0) { - tScale = i; - break; - } - } - for (int i = tScale; i <= 5; i++) { - if (aInput.amount % i == 0 && tDuration % i == 0 && aOutput.amount % i == 0) { - tScale = i; - break; - } - } - tInput = new FluidStack(aInput.getFluid(), (aInput.amount + tScale - 1) / tScale); - tOutput = new FluidStack(aOutput.getFluid(), aOutput.amount / tScale); - tSolidOutput = aSolidOutput; - if (tSolidOutput != null) { - ItemData tData = GT_OreDictUnificator.getItemData(tSolidOutput); - if (tData != null && (tData.mPrefix == OrePrefixes.dust || OrePrefixes.dust.mFamiliarPrefixes.contains(tData.mPrefix))) { - tSolidOutput = GT_OreDictUnificator.getDust(tData.mMaterial.mMaterial, tData.mMaterial.mAmount * tSolidOutput.stackSize / tScale); - } else { - if (tSolidOutput.stackSize / tScale == 0) { - tSolidOutput = GT_Values.NI; - } else { - tSolidOutput = new ItemStack(aSolidOutput.getItem(), aSolidOutput.stackSize / tScale); - } - } - } - tDuration = (tDuration + tScale - 1) / tScale; - } - GT_MachineRecipe tRecipe = GT_RecipeMap.sDistilleryRecipes.addRecipe(true, new ItemStack[]{aCircuit}, new ItemStack[]{tSolidOutput}, null, new FluidStack[]{tInput}, new FluidStack[]{tOutput}, tDuration, aEUt, 0); - if ((aHidden) && (tRecipe != null)) { - tRecipe.mHidden = true; - } - return true; - } - - @Override - public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden) { - return addDistilleryRecipe(aCircuit, aInput, aOutput, null, aDuration, aEUt, aHidden); - } - - @Override - public boolean addDistilleryRecipe(int circuitConfig, FluidStack aInput, FluidStack aOutput, ItemStack aSolidOutput, int aDuration, int aEUt, boolean aHidden) { - return addDistilleryRecipe(GT_Utility.getIntegratedCircuit(circuitConfig), aInput, aOutput, aSolidOutput, aDuration, aEUt, aHidden); - } - - @Override - public boolean addDistilleryRecipe(int circuitConfig, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden) { - return addDistilleryRecipe(GT_Utility.getIntegratedCircuit(circuitConfig), aInput, aOutput, aDuration, aEUt, aHidden); - } - - @Override - public boolean addFluidSolidifierRecipe(ItemStack aMold, FluidStack aInput, ItemStack aOutput, int aDuration, int aEUt) { - if ((aMold == null) || (aInput == null) || (aOutput == null)) { - return false; - } - FluidStack tInput = aInput; - if (aInput.isFluidEqual(Materials.PhasedGold.getMolten(144))) { - tInput = Materials.VibrantAlloy.getMolten(aInput.amount); - } - if (aInput.isFluidEqual(Materials.PhasedIron.getMolten(144))) { - tInput = Materials.PulsatingIron.getMolten(aInput.amount); - } - int tDuration = GregTech_API.sRecipeFile.get("fluidsolidifier", aOutput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sFluidSolidificationRecipes.addRecipe(true, new ItemStack[]{aMold}, new ItemStack[]{aOutput}, null, new FluidStack[]{tInput}, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addFluidSmelterRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt) { - return addFluidSmelterRecipe(aInput, aRemains, aOutput, aChance, aDuration, aEUt, false); - } - - @Override - public boolean addFluidSmelterRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt, boolean hidden) { - if ((aInput == null) || (aOutput == null)) { - return false; - } - FluidStack tOutput = aOutput; - if (aOutput.isFluidEqual(Materials.PhasedGold.getMolten(1))) { - tOutput = Materials.VibrantAlloy.getMolten(aOutput.amount); - } - if (aOutput.isFluidEqual(Materials.PhasedIron.getMolten(1))) { - tOutput = Materials.PulsatingIron.getMolten(aOutput.amount); - } - int tDuration = GregTech_API.sRecipeFile.get("fluidsmelter", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_MachineRecipe tRecipe = GT_RecipeMap.sFluidExtractionRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aRemains}, null, new int[]{aChance}, null, new FluidStack[]{tOutput}, tDuration, aEUt, 0); - if ((hidden) && (tRecipe != null)) { - tRecipe.mHidden = true; - } - return true; - } - - @Override - public boolean addFluidExtractionRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt) { - return addFluidSmelterRecipe(aInput, aRemains, aOutput, aChance, aDuration, aEUt, false); - } - - @Override - public boolean addFluidCannerRecipe(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput) { - if ((aInput != null) && (aOutput != null)) { - if ((aFluidInput == null) == (aFluidOutput == null)) { - return false; - } - } else { - return false; - } - if (!GregTech_API.sRecipeFile.get("fluidcanner", aOutput, true)) { - return false; - } - GT_RecipeMap.sFluidCannerRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aFluidOutput == null ? aFluidInput.amount / 62 : aFluidOutput.amount / 62, 1, 0); - return true; - } - - @Override - public boolean addChemicalBathRecipe(ItemStack aInput, FluidStack aBathingFluid, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt) { - if ((aInput == null) || (aBathingFluid == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("chemicalbath", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sChemicalBathRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2, aOutput3}, null, aChances, new FluidStack[]{aBathingFluid}, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addElectromagneticSeparatorRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput1 == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("electromagneticseparator", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sElectroMagneticSeparatorRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput1, aOutput2, aOutput3}, null, aChances, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addExtractorRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("extractor", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sExtractorRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addPrinterRecipe(ItemStack aInput, FluidStack aFluid, ItemStack aSpecialSlot, ItemStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aFluid == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("printer", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sPrinterRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, aSpecialSlot, null, new FluidStack[]{aFluid}, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addAutoclaveRecipe(ItemStack aInput, FluidStack aFluid, ItemStack aOutput, int aChance, int aDuration, int aEUt) { - return addAutoclaveRecipe(aInput, aFluid, aOutput, aChance, aDuration, aEUt, false); - } - - @Override - public boolean addAutoclaveRecipe(ItemStack aInput, FluidStack aFluid, ItemStack aOutput, int aChance, int aDuration, int aEUt, boolean aCleanroom) { - if ((aInput == null) || (aFluid == null) || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("autoclave", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - boolean tCleanroom = aCleanroom; - if (!GT_Mod.gregtechproxy.mEnableCleanroom) { - tCleanroom = false; - } - GT_RecipeMap.sAutoclaveRecipes.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, new int[]{aChance}, new FluidStack[]{aFluid}, null, tDuration, aEUt, tCleanroom ? -100 : 0); - return true; - } - - @Override - public boolean addMixerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aInput3, ItemStack aInput4, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt) { - if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput == null) && (aFluidOutput == null))) { - return false; - } - int tDuration = aDuration; - if (aOutput != null) { - tDuration = GregTech_API.sRecipeFile.get("mixer", aOutput, aDuration); - if (tDuration <= 0) { - return false; - } - } - if (aFluidOutput != null) { - tDuration = GregTech_API.sRecipeFile.get("mixer", aFluidOutput.getFluid().getName(), aDuration); - if (tDuration <= 0) { - return false; - } - } - GT_RecipeMap.sMixerRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, aInput3, aInput4}, new ItemStack[]{aOutput}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addLaserEngraverRecipe(ItemStack aItemToEngrave, ItemStack aLens, ItemStack aEngravedItem, int aDuration, int aEUt) { - return addLaserEngraverRecipe( aItemToEngrave, aLens, aEngravedItem, aDuration, aEUt, false); - } - - @Override - public boolean addLaserEngraverRecipe(ItemStack aItemToEngrave, ItemStack aLens, ItemStack aEngravedItem, int aDuration, int aEUt, boolean aCleanroom) { - if ((aItemToEngrave == null) || (aLens == null) || (aEngravedItem == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("laserengraving", aEngravedItem, aDuration); - if (tDuration <= 0) { - return false; - } - boolean tCleanroom = aCleanroom; - if (!GT_Mod.gregtechproxy.mEnableCleanroom) { - tCleanroom = false; - } - GT_RecipeMap.sLaserEngraverRecipes.addRecipe(true, new ItemStack[]{aItemToEngrave, aLens}, new ItemStack[]{aEngravedItem}, null, null, null, tDuration, aEUt, tCleanroom ? -200 : 0); - return true; - } - - @Override - public boolean addFormingPressRecipe(ItemStack aItemToImprint, ItemStack aForm, ItemStack aImprintedItem, int aDuration, int aEUt) { - if ((aItemToImprint == null) || (aForm == null) || (aImprintedItem == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("press", aImprintedItem, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sPressRecipes.addRecipe(true, new ItemStack[]{aItemToImprint, aForm}, new ItemStack[]{aImprintedItem}, null, null, null, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addSifterRecipe(ItemStack aItemToSift, ItemStack[] aSiftedItems, int[] aChances, int aDuration, int aEUt) { - if ((aItemToSift == null) || (aSiftedItems == null)) { - return false; - } - for (ItemStack tStack : aSiftedItems) { - if (tStack != null) { - int tDuration = GregTech_API.sRecipeFile.get("sifter", aItemToSift, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sSifterRecipes.addRecipe(true, new ItemStack[]{aItemToSift}, aSiftedItems, null, aChances, null, null, tDuration, aEUt, 0); - return true; - } - } - return false; - } - - @Override - public boolean addArcFurnaceRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { - return addArcFurnaceRecipe(aInput, aOutputs, aChances, aDuration, aEUt, false); - } - - @Override - public boolean addArcFurnaceRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt, boolean hidden) { - if ((aInput == null) || (aOutputs == null)) { - return false; - } - for (ItemStack tStack : aOutputs) { - if (tStack != null) { - int tDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_MachineRecipe sRecipe = GT_RecipeMap.sArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{Materials.Oxygen.getGas(aDuration)}, null, tDuration, Math.max(1, aEUt), 0); - if ((hidden) && (sRecipe != null)) { - sRecipe.mHidden = true; - } - for (Materials tMaterial : new Materials[]{Materials.Argon, Materials.Nitrogen}) { - if (tMaterial.mPlasma != null) { - int tPlasmaAmount = (int) Math.max(1L, tDuration / (tMaterial.getMass() * 16L)); - GT_MachineRecipe tRecipe = GT_RecipeMap.sPlasmaArcFurnaceRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, new FluidStack[]{tMaterial.getPlasma(tPlasmaAmount)}, new FluidStack[]{tMaterial.getGas(tPlasmaAmount)}, Math.max(1, tDuration / 16), Math.max(1, aEUt / 3), 0); - if ((hidden) && (tRecipe != null)) { - tRecipe.mHidden = true; - } - } - } - return true; - } - } - return false; - } - - @Override - public boolean addPulveriserRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { - return addPulveriserRecipe(aInput, aOutputs, aChances, aDuration, aEUt, false); - } - - @Override - public boolean addPulveriserRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt, boolean hidden) { - if ((aInput == null) || (aOutputs == null)) { - return false; - } - for (ItemStack tStack : aOutputs) { - if (tStack != null) { - int tDuration = GregTech_API.sRecipeFile.get("pulveriser", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_MachineRecipe tRecipe = GT_RecipeMap.sMaceratorRecipes.addRecipe(true, new ItemStack[]{aInput}, aOutputs, null, aChances, null, null, tDuration, aEUt, 0); - if ((hidden) && (tRecipe != null)) { - tRecipe.mHidden = true; - } - return true; - } - } - return false; - } - - @Override - public boolean addUniversalDistillationRecipe(FluidStack aInput, FluidStack[] aOutputs, ItemStack aOutput2, int aDuration, int aEUt) { - for (int i = 0; i < Math.min(aOutputs.length, 11); i++) { - addDistilleryRecipe(i + 1, aInput, aOutputs[i], aOutput2, aDuration * 2, aEUt / 4, false); - } - return addDistillationTowerRecipe(aInput, aOutputs, aOutput2, aDuration, aEUt); - } - - @Override - public boolean addPyrolyseRecipe(ItemStack aInput, FluidStack aFluidInput, int intCircuit, ItemStack aOutput, FluidStack aFluidOutput, int aDuration, int aEUt) { - if (aInput == null) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("pyrolyse", aInput, aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sPyrolyseRecipes.addRecipe(false, new ItemStack[]{aInput, ItemList.Circuit_Integrated.getWithDamage(0L, intCircuit, new Object[0])}, new ItemStack[]{aOutput}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, tDuration, aEUt, 0); - return true; - } - - @Override - @Deprecated - public boolean addCrackingRecipe(FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt) { - return false; - } - - @Override - public boolean addCrackingRecipe(int circuitConfig, FluidStack aInput, FluidStack aInput2, FluidStack aOutput, int aDuration, int aEUt) { - if (aInput == null || aInput2 == null || (aOutput == null)) { - return false; - } - int tDuration = GregTech_API.sRecipeFile.get("cracking", aInput.getUnlocalizedName(), aDuration); - if (tDuration <= 0) { - return false; - } - GT_RecipeMap.sCrackingRecipes.addRecipe(false, new ItemStack[]{GT_Utility.getIntegratedCircuit(circuitConfig)}, null, null, null, - new FluidStack[]{aInput, aInput2}, new FluidStack[]{aOutput}, tDuration, aEUt, 0); - return true; - } - - @Override - public boolean addSonictronSound(ItemStack aItemStack, String aSoundName) { - // Unclear if this is fully implemented; no usages found. - if ((aItemStack == null) || (aSoundName == null) || (aSoundName.isEmpty())) { - return false; - } - GT_Mod.gregtechproxy.mSoundItems.add(aItemStack); - GT_Mod.gregtechproxy.mSoundNames.add(aSoundName); - if (aSoundName.startsWith("note.")) { - GT_Mod.gregtechproxy.mSoundCounts.add(25); - } else { - GT_Mod.gregtechproxy.mSoundCounts.add(1); - } - return true; - } - - private boolean mAddingDeprecatedRecipes = false; - - private boolean areItemsAndFluidsBothNull(ItemStack[] items, FluidStack[] fluids) { - boolean itemsNull = true; - if (items != null) { - for (ItemStack itemStack : items) { - if (itemStack != null) { - itemsNull = false; - break; - } - } - } - boolean fluidsNull = true; - if (fluids != null) { - for (FluidStack fluidStack : fluids) { - if (fluidStack != null) { - fluidsNull = false; - break; - } - } - } - return itemsNull && fluidsNull; - } - - @Override - public boolean isAddingDeprecatedRecipes() { - return mAddingDeprecatedRecipes; - } - - @Override - public void setIsAddingDeprecatedRecipes(boolean isAddingDeprecatedRecipes) { - mAddingDeprecatedRecipes = isAddingDeprecatedRecipes; - } - -} diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index 406a9c08b3..bf1f8dba81 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -8,10 +8,9 @@ import gregtech.api.GregTech_API; import gregtech.api.enums.*; import gregtech.api.objects.MaterialStack; -import gregtech.api.recipes.GT_MachineRecipe; import gregtech.api.recipes.GT_RecipeListJsonReader; -import gregtech.api.recipes.GT_RecipeMap; import gregtech.api.util.*; +import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.common.GT_DummyWorld; import gregtech.common.items.GT_MetaGenerated_Item_03; import ic2.api.recipe.ILiquidHeatExchangerManager.HeatExchangeProperty; @@ -43,6 +42,27 @@ import net.minecraft.server.MinecraftServer; public class GT_MachineRecipeLoader implements Runnable { + private final MaterialStack[][] mAlloySmelterList = { + {new MaterialStack(Materials.Tetrahedrite, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 3L)}, + {new MaterialStack(Materials.Tetrahedrite, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 3L)}, + {new MaterialStack(Materials.Copper, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 4L)}, + {new MaterialStack(Materials.Copper, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 4L)}, + {new MaterialStack(Materials.Copper, 1L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Cupronickel, 2L)}, + {new MaterialStack(Materials.Copper, 1L), new MaterialStack(Materials.Redstone, 4L), new MaterialStack(Materials.RedAlloy, 1L)}, + {new MaterialStack(Materials.AnnealedCopper, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 4L)}, + {new MaterialStack(Materials.AnnealedCopper, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 4L)}, + {new MaterialStack(Materials.AnnealedCopper, 1L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Cupronickel, 2L)}, + {new MaterialStack(Materials.AnnealedCopper, 1L), new MaterialStack(Materials.Redstone, 4L), new MaterialStack(Materials.RedAlloy, 1L)}, + {new MaterialStack(Materials.Iron, 1L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.TinAlloy, 2L)}, + {new MaterialStack(Materials.WroughtIron, 1L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.TinAlloy, 2L)}, + {new MaterialStack(Materials.Iron, 2L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Invar, 3L)}, + {new MaterialStack(Materials.WroughtIron, 2L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Invar, 3L)}, + {new MaterialStack(Materials.Tin, 9L), new MaterialStack(Materials.Antimony, 1L), new MaterialStack(Materials.SolderingAlloy, 10L)}, + {new MaterialStack(Materials.Lead, 4L), new MaterialStack(Materials.Antimony, 1L), new MaterialStack(Materials.BatteryAlloy, 5L)}, + {new MaterialStack(Materials.Gold, 1L), new MaterialStack(Materials.Silver, 1L), new MaterialStack(Materials.Electrum, 2L)}, + {new MaterialStack(Materials.Magnesium, 1L), new MaterialStack(Materials.Aluminium, 2L), new MaterialStack(Materials.Magnalium, 3L)}, + {new MaterialStack(Materials.Silver, 1L), new MaterialStack(Materials.Nikolite, 4L), new MaterialStack(Materials.BlueAlloy, 1L)}, + {new MaterialStack(Materials.Boron, 1L), new MaterialStack(Materials.Glass, 7L), new MaterialStack(Materials.BorosilicateGlass, 8L)}}; private final static String aTextAE = "appliedenergistics2"; private final static String aTextAEMM = "item.ItemMultiMaterial"; private final static String aTextForestry = "Forestry"; private final static String aTextEBXL = "ExtrabiomesXL"; private final static String aTextTCGTPage = "gt.research.page.1."; private final static Boolean isNEILoaded = Loader.isModLoaded("NotEnoughItems"); @@ -68,42 +88,42 @@ public void run() { GT_Utility.removeIC2BottleRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("UranFuel", 1), ic2.api.recipe.Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorUraniumSimple", 1, 1)); GT_Utility.removeIC2BottleRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("MOXFuel", 1), ic2.api.recipe.Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorMOXSimple", 1, 1)); - Map tRecipeFileMap = new HashMap<>(30); - tRecipeFileMap.put(GT_RecipeMap.sAlloySmelterRecipes, "alloy_smelter.json"); - tRecipeFileMap.put(GT_RecipeMap.sArcFurnaceRecipes, "arc_furnace.json"); - tRecipeFileMap.put(GT_RecipeMap.sAssemblerRecipes, "assembler.json"); - tRecipeFileMap.put(GT_RecipeMap.sAutoclaveRecipes, "autoclave.json"); - tRecipeFileMap.put(GT_RecipeMap.sBenderRecipes, "bender.json"); - tRecipeFileMap.put(GT_RecipeMap.sBlastRecipes, "blast_furnace.json"); - tRecipeFileMap.put(GT_RecipeMap.sBrewingRecipes, "brewery.json"); - tRecipeFileMap.put(GT_RecipeMap.sCentrifugeRecipes, "centrifuge.json"); - tRecipeFileMap.put(GT_RecipeMap.sChemicalBathRecipes, "chemical_bath.json"); - tRecipeFileMap.put(GT_RecipeMap.sChemicalRecipes, "chemical_reactor.json"); - tRecipeFileMap.put(GT_RecipeMap.sMultiblockChemicalRecipes, "large_chemical_reactor.json"); - tRecipeFileMap.put(GT_RecipeMap.sCircuitAssemblerRecipes, "circuit_assembler.json"); - tRecipeFileMap.put(GT_RecipeMap.sCutterRecipes, "cutter.json"); - tRecipeFileMap.put(GT_RecipeMap.sDistillationRecipes, "distillation_tower.json"); - tRecipeFileMap.put(GT_RecipeMap.sDistilleryRecipes, "distillery.json"); - tRecipeFileMap.put(GT_RecipeMap.sCutterRecipes, "cutter.json"); - tRecipeFileMap.put(GT_RecipeMap.sElectrolyzerRecipes, "electrolyzer.json"); - tRecipeFileMap.put(GT_RecipeMap.sExtruderRecipes, "extruder.json"); - tRecipeFileMap.put(GT_RecipeMap.sFermentingRecipes, "fermenter.json"); - tRecipeFileMap.put(GT_RecipeMap.sFluidCannerRecipes, "fluid_canner.json"); - tRecipeFileMap.put(GT_RecipeMap.sFluidExtractionRecipes, "fluid_extractor.json"); - tRecipeFileMap.put(GT_RecipeMap.sFluidHeaterRecipes, "fluid_heater.json"); - tRecipeFileMap.put(GT_RecipeMap.sFluidSolidificationRecipes, "fluid_solidifier.json"); - tRecipeFileMap.put(GT_RecipeMap.sHammerRecipes, "forge_hammer.json"); - tRecipeFileMap.put(GT_RecipeMap.sPressRecipes, "forming_press.json"); - tRecipeFileMap.put(GT_RecipeMap.sFusionRecipes, "fusion_reactor.json"); - tRecipeFileMap.put(GT_RecipeMap.sLaserEngraverRecipes, "laser_engraver.json"); - tRecipeFileMap.put(GT_RecipeMap.sLatheRecipes, "lathe.json"); - tRecipeFileMap.put(GT_RecipeMap.sMixerRecipes, "mixer.json"); - tRecipeFileMap.put(GT_RecipeMap.sPlasmaArcFurnaceRecipes, "plasma_arc_furnace.json"); - tRecipeFileMap.put(GT_RecipeMap.sPrinterRecipes, "printer.json"); - tRecipeFileMap.put(GT_RecipeMap.sSifterRecipes, "sifter.json"); - tRecipeFileMap.put(GT_RecipeMap.sSlicerRecipes, "slicer.json"); - tRecipeFileMap.put(GT_RecipeMap.sVacuumRecipes, "vacuum_freezer.json"); - tRecipeFileMap.put(GT_RecipeMap.sWiremillRecipes, "wiremill.json"); + Map tRecipeFileMap = new HashMap<>(30); + tRecipeFileMap.put(GT_Recipe_Map.sAlloySmelterRecipes, "alloy_smelter.json"); + tRecipeFileMap.put(GT_Recipe_Map.sArcFurnaceRecipes, "arc_furnace.json"); + tRecipeFileMap.put(GT_Recipe_Map.sAssemblerRecipes, "assembler.json"); + tRecipeFileMap.put(GT_Recipe_Map.sAutoclaveRecipes, "autoclave.json"); + tRecipeFileMap.put(GT_Recipe_Map.sBenderRecipes, "bender.json"); + tRecipeFileMap.put(GT_Recipe_Map.sBlastRecipes, "blast_furnace.json"); + tRecipeFileMap.put(GT_Recipe_Map.sBrewingRecipes, "brewery.json"); + tRecipeFileMap.put(GT_Recipe_Map.sCentrifugeRecipes, "centrifuge.json"); + tRecipeFileMap.put(GT_Recipe_Map.sChemicalBathRecipes, "chemical_bath.json"); + tRecipeFileMap.put(GT_Recipe_Map.sChemicalRecipes, "chemical_reactor.json"); + tRecipeFileMap.put(GT_Recipe_Map.sMultiblockChemicalRecipes, "large_chemical_reactor.json"); + tRecipeFileMap.put(GT_Recipe_Map.sCircuitAssemblerRecipes, "circuit_assembler.json"); + tRecipeFileMap.put(GT_Recipe_Map.sCutterRecipes, "cutter.json"); + tRecipeFileMap.put(GT_Recipe_Map.sDistillationRecipes, "distillation_tower.json"); + tRecipeFileMap.put(GT_Recipe_Map.sDistilleryRecipes, "distillery.json"); + tRecipeFileMap.put(GT_Recipe_Map.sCutterRecipes, "cutter.json"); + tRecipeFileMap.put(GT_Recipe_Map.sElectrolyzerRecipes, "electrolyzer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sExtruderRecipes, "extruder.json"); + tRecipeFileMap.put(GT_Recipe_Map.sFermentingRecipes, "fermenter.json"); + tRecipeFileMap.put(GT_Recipe_Map.sFluidCannerRecipes, "fluid_canner.json"); + tRecipeFileMap.put(GT_Recipe_Map.sFluidExtractionRecipes, "fluid_extractor.json"); + tRecipeFileMap.put(GT_Recipe_Map.sFluidHeaterRecipes, "fluid_heater.json"); + tRecipeFileMap.put(GT_Recipe_Map.sFluidSolidficationRecipes, "fluid_solidifier.json"); + tRecipeFileMap.put(GT_Recipe_Map.sHammerRecipes, "forge_hammer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sPressRecipes, "forming_press.json"); + tRecipeFileMap.put(GT_Recipe_Map.sFusionRecipes, "fusion_reactor.json"); + tRecipeFileMap.put(GT_Recipe_Map.sLaserEngraverRecipes, "laser_engraver.json"); + tRecipeFileMap.put(GT_Recipe_Map.sLatheRecipes, "lathe.json"); + tRecipeFileMap.put(GT_Recipe_Map.sMixerRecipes, "mixer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sPlasmaArcFurnaceRecipes, "plasma_arc_furnace.json"); + tRecipeFileMap.put(GT_Recipe_Map.sPrinterRecipes, "printer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sSifterRecipes, "sifter.json"); + tRecipeFileMap.put(GT_Recipe_Map.sSlicerRecipes, "slicer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sVacuumRecipes, "vacuum_freezer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sWiremillRecipes, "wiremill.json"); File tConfigRecipeFolder = new File(getMcDir(), "config" + File.separator + "GregTech" + File.separator + "recipes"); try { @@ -129,12 +149,13 @@ public void run() { e.printStackTrace(GT_Log.err); } } - for (Map.Entry tEntry : tRecipeFileMap.entrySet()) { + for (Map.Entry tEntry : tRecipeFileMap.entrySet()) { try { File tFile = new File(tConfigRecipeFolder, tEntry.getValue()); if (tFile.isFile()) { FileReader tFileReader = new FileReader(tFile); - tEntry.getKey().addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(tFileReader))); + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(tFileReader)); + addRecipesToMap(tEntry.getKey(), tRecipeList); tFileReader.close(); } } catch (Throwable e) { @@ -144,7 +165,8 @@ public void run() { try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/" + tEntry.getValue()); if (tStream != null) { - tEntry.getKey().addAll(GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream)))); + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + addRecipesToMap(tEntry.getKey(), tRecipeList); tStream.close(); } } catch (Throwable e) { @@ -1518,6 +1540,20 @@ private void run2(){ GT_ModHandler.removeFurnaceSmelting(GT_ModHandler.getModItem("Magneticraft", "item.rubble", 1, 21)); } + for (MaterialStack[] tMats : this.mAlloySmelterList) { + ItemStack tDust1 = GT_OreDictUnificator.get(OrePrefixes.dust, tMats[0].mMaterial, tMats[0].mAmount); + ItemStack tDust2 = GT_OreDictUnificator.get(OrePrefixes.dust, tMats[1].mMaterial, tMats[1].mAmount); + ItemStack tIngot1 = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[0].mMaterial, tMats[0].mAmount); + ItemStack tIngot2 = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[1].mMaterial, tMats[1].mAmount); + ItemStack tOutputIngot = GT_OreDictUnificator.get(OrePrefixes.ingot, tMats[2].mMaterial, tMats[2].mAmount); + if (tOutputIngot != GT_Values.NI) { + GT_ModHandler.addAlloySmelterRecipe(tIngot1, tDust2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); + GT_ModHandler.addAlloySmelterRecipe(tIngot1, tIngot2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); + GT_ModHandler.addAlloySmelterRecipe(tDust1, tIngot2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); + GT_ModHandler.addAlloySmelterRecipe(tDust1, tDust2, tOutputIngot, (int) tMats[2].mAmount * 50, 16, false); + } + } + if(!GregTech_API.mIC2Classic){ try { Map tLiqExchange = ic2.api.recipe.Recipes.liquidCooldownManager.getHeatExchangeProperties(); @@ -1654,9 +1690,9 @@ private void addChemicalRecipesSimple(){ try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_simple.json"); if (tStream != null) { - List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); - GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tRecipeList); + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); + addRecipesToMap(GT_Recipe_Map.sMultiblockChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { @@ -1666,8 +1702,8 @@ private void addChemicalRecipesSimple(){ try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_simple_small.json"); if (tStream != null) { - List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { @@ -1681,9 +1717,9 @@ private void addChemicalRecipesComplicated(){ try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated.json"); if (tStream != null) { - List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); - GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tRecipeList); + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); + addRecipesToMap(GT_Recipe_Map.sMultiblockChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { @@ -1693,8 +1729,8 @@ private void addChemicalRecipesComplicated(){ try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated_small.json"); if (tStream != null) { - List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { @@ -1704,8 +1740,14 @@ private void addChemicalRecipesComplicated(){ try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated_large.json"); if (tStream != null) { - List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tRecipeList); + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + for (GT_Recipe tRecipe : tRecipeList) { + // A couple of the recipe maps wrap the recipe in a subclass, but don't override the addRecipe method that takes a GT_Recipe argument. + GT_Recipe tAddedRecipe = GT_Recipe_Map.sMultiblockChemicalRecipes.addRecipe(false, tRecipe.mInputs, tRecipe.mOutputs, tRecipe.mSpecialItems, + tRecipe.mChances, tRecipe.mFluidInputs, tRecipe.mFluidOutputs, tRecipe.mDuration, tRecipe.mEUt, tRecipe.mSpecialValue); + tAddedRecipe.mEnabled = tRecipe.mEnabled; + tAddedRecipe.mHidden = tRecipe.mHidden; + } tStream.close(); } } catch (Throwable e) { @@ -1742,9 +1784,9 @@ private void addOldChemicalRecipes() { try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_old.json"); if (tStream != null) { - List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - GT_RecipeMap.sChemicalRecipes.addAll(tRecipeList); - GT_RecipeMap.sMultiblockChemicalRecipes.addAll(tRecipeList); + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); + addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); + addRecipesToMap(GT_Recipe_Map.sMultiblockChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { @@ -1961,4 +2003,16 @@ private void addPyrometallurgicalRecipes() { } } + private static void addRecipesToMap(GT_Recipe_Map aMap, List aList) { + for (GT_Recipe tRecipe : aList) { + // A couple of the recipe maps wrap the recipe in a subclass, but don't override the addRecipe method that takes a GT_Recipe argument. + GT_Recipe tAddedRecipe = aMap.addRecipe(false, tRecipe.mInputs, tRecipe.mOutputs, tRecipe.mSpecialItems, + tRecipe.mChances, tRecipe.mFluidInputs, tRecipe.mFluidOutputs, tRecipe.mDuration, tRecipe.mEUt, tRecipe.mSpecialValue); + if (tAddedRecipe != null) { + tAddedRecipe.mEnabled = tRecipe.mEnabled; + tAddedRecipe.mHidden = tRecipe.mHidden; + } + } + } + } diff --git a/src/main/resources/assets/gregtech/recipes/Explanation.cfg b/src/main/resources/assets/gregtech/recipes/Explanation.cfg index 827369650c..5b0c56a2b0 100644 --- a/src/main/resources/assets/gregtech/recipes/Explanation.cfg +++ b/src/main/resources/assets/gregtech/recipes/Explanation.cfg @@ -6,15 +6,14 @@ Each recipe object allows the following keys, in any order: "item" - an internal item name, such as "minecraft:dirt" or "gregtech:gt.metaitem.02:27513"; also allows a special fake modid "GTItemList" to reference an item from GregTech's ItemList enum, which is often more readable. The "*" character can be used as a wildcard for metadata. - "alts" - an array of oredictionary and/or item specifiers that can be used interchangeably (or even mix and matched, if the machine has enough slots) in this recipe. "count" - the number of copies of the item (or oredictionary entry) needed for the recipe. Can be 0 to indicate the item should only be required in the slot, but not consumed. "nbt" - NBT tags required for the input item. Details below. "circuit" - a programmed circuit with the specified configuration number, and count automatically set to 0. "comment", "displayName" - string value, ignored by the recipe reader, but may help make the recipe more human-readable in case the item's internal name is cryptic. -"outputs" - an array of the items output by the machine, similar to "inputs", but does not allow "alts", and allows the following additional key: +"outputs" - an array of the items output by the machine, similar to "inputs", but allows the following additional key: "chance" - for a given output, a floating point value clamped between 0.0 and 1.0 indicating how likely the output should be. - Omission is the same as 1.0 (always output). Granularity is 0.0001 or 0.01%. + defaults to 1.0 (always output). Granularity is 0.0001 or 0.01%. "inputFluids" or "fluidInputs" - an array of fluid objects input to the machine, with the following keys: "fluid" - the name of the fluid, as registered in the Forge fluid registry. "amount" - the volume in liters (aka millibuckets) of fluid to use. @@ -35,12 +34,13 @@ and the meaning may depend on the machine it is used in. "hidden" - if true, hides the recipe from NEI. "useCuttingFluids" - if true, automatically generates copies of the recipe that use the appropriate amount of lubricant, water, or distilled water, as well as adjusted durations. +"optimize" - reduces the recipe to smaller steps if input and output quantities and duration permit. Defaults to true. NBT tags: In an input or output item (or even an input alternate), these can be specified as an array of objects, with "tag"/"tagName"/"name"/"key", "type", and "value". These should all be given as strings in the JSON, and can technically be in any order, but the "type" key indicates how the recipe will interpret "value". "type" can be "boolean", "byte", "double", "float", "int", "long", "short", or "string" (case-insensitive). -Inputs will check for NBT tags specified in the recipe, but other tags on provided items will be ignored. +Inputs can have NBT tags specified to change how they're shown when viewing the recipe in NEI, but in most cases they will be ignored by the machine. Outputs will have the NBT tags specified in the recipe. The following files in this folder will be read for recipes for the corresponding machines, if the files exist: \ No newline at end of file diff --git a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json index fcfc4b8ae6..cb68926b2d 100644 --- a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json +++ b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json @@ -16,64 +16,12 @@ "duration":400, "EUt":24}, -{"inputs":[{"alts":[{"ore": "dustTetrahedrite"}, {"ore": "ingotTetrahedrite"}], "count": 3}, {"alts":[{"ore": "dustTin"}, {"ore": "ingotTin"}], "count": 1}], -"outputs":[{"ore": "ingotBronze", "count": 3}], -"duration": 150, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustTetrahedrite"}, {"ore": "ingotTetrahedrite"}], "count": 3}, {"alts":[{"ore": "dustZinc"}, {"ore": "ingotZinc"}], "count": 1}], -"outputs":[{"ore": "ingotBrass", "count": 3}], -"duration": 150, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustCopper"}, {"ore": "ingotCopper"}, {"ore": "dustAnnealedCopper"}, {"ore": "ingotAnnealedCopper"}], "count": 3}, {"alts":[{"ore": "dustTin"}, {"ore": "ingotTin"}], "count": 1}], -"outputs":[{"ore": "ingotBronze", "count": 4}], -"duration": 200, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustCopper"}, {"ore": "ingotCopper"}, {"ore": "dustAnnealedCopper"}, {"ore": "ingotAnnealedCopper"}], "count": 3}, {"alts":[{"ore": "dustZinc"}, {"ore": "ingotZinc"}], "count": 1}], -"outputs":[{"ore": "ingotBrass", "count": 4}], -"duration": 200, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustCopper"}, {"ore": "ingotCopper"}, {"ore": "dustAnnealedCopper"}, {"ore": "ingotAnnealedCopper"}], "count": 1}, {"alts":[{"ore": "dustNickel"}, {"ore": "ingotNickel"}], "count": 1}], -"outputs":[{"ore": "ingotCupronickel", "count": 2}], -"duration": 100, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustCopper"}, {"ore": "ingotCopper"}, {"ore": "dustAnnealedCopper"}, {"ore": "ingotAnnealedCopper"}], "count": 1}, {"alts":[{"ore": "dustRedstone"}, {"ore": "ingotRedstone"}], "count": 4}], -"outputs":[{"ore": "ingotRedAlloy", "count": 1}], -"duration": 50, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustIron"}, {"ore": "ingotIron"}, {"ore": "dustWroughtIron"}, {"ore": "ingotWroughtIron"}], "count": 1}, {"alts":[{"ore": "dustTin"}, {"ore": "ingotTin"}], "count": 1}], -"outputs":[{"ore": "ingotTinAlloy", "count": 2}], -"duration": 100, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustIron"}, {"ore": "ingotIron"}, {"ore": "dustWroughtIron"}, {"ore": "ingotWroughtIron"}], "count": 2}, {"alts":[{"ore": "dustNickel"}, {"ore": "ingotNickel"}], "count": 1}], -"outputs":[{"ore": "ingotInvar", "count": 3}], -"duration": 150, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustTin"}, {"ore": "ingotTin"}], "count": 9}, {"alts":[{"ore": "dustAntimony"}, {"ore": "ingotAntimony"}], "count": 1}], -"outputs":[{"ore": "ingotSolderingAlloy", "count": 10}], -"duration": 500, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustLead"}, {"ore": "ingotLead"}], "count": 4}, {"alts":[{"ore": "dustAntimony"}, {"ore": "ingotAntimony"}], "count": 1}], -"outputs":[{"ore": "ingotBatteryAlloy", "count": 5}], -"duration": 250, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustGold"}, {"ore": "ingotGold"}], "count": 1}, {"alts":[{"ore": "dustSilver"}, {"ore": "ingotSilver"}], "count": 1}], -"outputs":[{"ore": "ingotElectrum", "count": 2}], -"duration": 100, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustMagnesium"}, {"ore": "ingotMagnesium"}], "count": 1}, {"alts":[{"ore": "dustAluminium"}, {"ore": "ingotAluminium"}], "count": 2}], -"outputs":[{"ore": "ingotMagnalium", "count": 3}], -"duration": 150, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustSilver"}, {"ore": "ingotSilver"}], "count": 1}, {"alts":[{"ore": "dustNikolite"}, {"ore": "ingotNikolite"}], "count": 4}], -"outputs":[{"ore": "ingotBlueAlloy", "count": 1}], -"duration": 50, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustBoron"}, {"ore": "ingotBoron"}], "count": 1}, {"alts":[{"ore": "dustGlass"}, {"ore": "ingotGlass"}], "count": 7}], -"outputs":[{"ore": "ingotBorosilicateGlass", "count": 8}], -"duration": 400, -"EUt": 16}, -{"inputs":[{"alts":[{"ore": "dustLead"}, {"ore": "ingotLead"}], "count": 1}, {"ore": "dustObsidian", "count": 2}], +{"inputs":[{"ore": "dustLead", "count": 1}, {"ore": "dustObsidian", "count": 2}], +"outputs":[{"item": "GTItemList:TE_Hardened_Glass", "count": 2}], +"duration": 200, +"EUt": 16}, +{"inputs":[{"ore": "ingotLead", "count": 1}, {"ore": "dustObsidian", "count": 2}], "outputs":[{"item": "GTItemList:TE_Hardened_Glass", "count": 2}], "duration": 200, "EUt": 16}, diff --git a/src/main/resources/assets/gregtech/recipes/assembler.json b/src/main/resources/assets/gregtech/recipes/assembler.json index 8b25411cb2..6dca46d539 100644 --- a/src/main/resources/assets/gregtech/recipes/assembler.json +++ b/src/main/resources/assets/gregtech/recipes/assembler.json @@ -573,27 +573,77 @@ "duration": 20, "EUt": 480}, -{"inputs":[{"item": "minecraft:lever", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +{"inputs":[{"item": "minecraft:lever", "count": 1}, {"ore": "plateIron", "count": 1}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Cover_Controller", "count": 1}], "duration": 800, "EUt": 16}, -{"inputs":[{"item": "minecraft:redstone_torch", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +{"inputs":[{"item": "minecraft:lever", "count": 1}, {"ore": "plateWroughtIron", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_Controller", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:lever", "count": 1}, {"ore": "plateAluminium", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_Controller", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:redstone_torch", "count": 1}, {"ore": "plateIron", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_ActivityDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:redstone_torch", "count": 1}, {"ore": "plateWroughtIron", "count": 1}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Cover_ActivityDetector", "count": 1}], "duration": 800, "EUt": 16}, -{"inputs":[{"item": "minecraft:heavy_weighted_pressure_plate", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +{"inputs":[{"item": "minecraft:redstone_torch", "count": 1}, {"ore": "plateAluminium", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_ActivityDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:heavy_weighted_pressure_plate", "count": 1}, {"ore": "plateIron", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_FluidDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:heavy_weighted_pressure_plate", "count": 1}, {"ore": "plateWroughtIron", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_FluidDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:heavy_weighted_pressure_plate", "count": 1}, {"ore": "plateAluminium", "count": 1}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Cover_FluidDetector", "count": 1}], "duration": 800, "EUt": 16}, -{"inputs":[{"item": "minecraft:light_weighted_pressure_plate", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +{"inputs":[{"item": "minecraft:light_weighted_pressure_plate", "count": 1}, {"ore": "plateIron", "count": 1}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Cover_ItemDetector", "count": 1}], "duration": 800, "EUt": 16}, -{"inputs":[{"item": "IC2:itemToolMEter", "count": 1}, {"alts":[{"ore": "plateIron"}, {"ore": "plateWroughtIron"}, {"ore": "plateAluminium"}], "count": 1}], +{"inputs":[{"item": "minecraft:light_weighted_pressure_plate", "count": 1}, {"ore": "plateWroughtIron", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_ItemDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "minecraft:light_weighted_pressure_plate", "count": 1}, {"ore": "plateAluminium", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_ItemDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "IC2:itemToolMEter", "count": 1}, {"ore": "plateIron", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_EnergyDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "IC2:itemToolMEter", "count": 1}, {"ore": "plateWroughtIron", "count": 1}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Cover_EnergyDetector", "count": 1}], +"duration": 800, +"EUt": 16}, +{"inputs":[{"item": "IC2:itemToolMEter", "count": 1}, {"ore": "plateAluminium", "count": 1}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Cover_EnergyDetector", "count": 1}], "duration": 800, @@ -1078,7 +1128,19 @@ "duration":6400, "EUt":8}, -{"inputs": [{"alts": [{"ore": "plateIron"}, {"ore": "plateWroughtIron"}], "count": 5}, {"alts": [{"item": "minecraft:chest:*"}, {"item": "minecraft:trapped_chest:*"}], "count": 1}], +{"inputs": [{"ore": "plateIron", "count": 5}, {"item": "minecraft:chest:*", "count": 1}], +"outputs": [{"item": "minecraft:hopper", "count": 1}], +"duration": 800, +"EUt": 2}, +{"inputs": [{"ore": "plateWroughtIron", "count": 5}, {"item": "minecraft:chest:*", "count": 1}], +"outputs": [{"item": "minecraft:hopper", "count": 1}], +"duration": 800, +"EUt": 2}, +{"inputs": [{"ore": "plateIron", "count": 5}, {"item": "minecraft:trapped_chest:*", "count": 1}], +"outputs": [{"item": "minecraft:hopper", "count": 1}], +"duration": 800, +"EUt": 2}, +{"inputs": [{"ore": "plateWroughtIron", "count": 5}, {"item": "minecraft:trapped_chest:*", "count": 1}], "outputs": [{"item": "minecraft:hopper", "count": 1}], "duration": 800, "EUt": 2}, diff --git a/src/main/resources/assets/gregtech/recipes/brewery.json b/src/main/resources/assets/gregtech/recipes/brewery.json index 41b5363bb8..4277e41a3e 100644 --- a/src/main/resources/assets/gregtech/recipes/brewery.json +++ b/src/main/resources/assets/gregtech/recipes/brewery.json @@ -1,23 +1,60 @@ [ -{"inputs": [{"alts":[{"ore": "dustTalc"}, {"ore": "dustSoapstone"}, {"ore": "dustRedstone"}], "count": 1}], +{"inputs": [{"ore": "dustTalc", "count": 1}], "inputFluids":[{"fluid": "oil", "amount": 750}], "outputFluids":[{"fluid": "lubricant", "amount": 750}], "hidden": false, "duration": 128, "EUt":4}, -{"inputs": [{"alts":[{"ore": "dustTalc"}, {"ore": "dustSoapstone"}, {"ore": "dustRedstone"}], "count": 1}], +{"inputs": [{"ore": "dustSoapstone", "count": 1}], +"inputFluids":[{"fluid": "oil", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustRedstone", "count": 1}], +"inputFluids":[{"fluid": "oil", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustTalc", "count": 1}], "inputFluids":[{"fluid": "creosote", "amount": 750}], "outputFluids":[{"fluid": "lubricant", "amount": 750}], "hidden": false, "duration": 128, "EUt":4}, -{"inputs": [{"alts":[{"ore": "dustTalc"}, {"ore": "dustSoapstone"}, {"ore": "dustRedstone"}], "count": 1}], +{"inputs": [{"ore": "dustSoapstone", "count": 1}], +"inputFluids":[{"fluid": "creosote", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustRedstone", "count": 1}], +"inputFluids":[{"fluid": "creosote", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustTalc", "count": 1}], +"inputFluids":[{"fluid": "seedoil", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSoapstone", "count": 1}], +"inputFluids":[{"fluid": "seedoil", "amount": 750}], +"outputFluids":[{"fluid": "lubricant", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustRedstone", "count": 1}], "inputFluids":[{"fluid": "seedoil", "amount": 750}], "outputFluids":[{"fluid": "lubricant", "amount": 750}], "hidden": false, "duration": 128, "EUt":4}, + {"inputs": [{"ore": "dustMilk", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 750}], "outputFluids":[{"fluid": "milk", "amount": 750}], @@ -42,13 +79,49 @@ "hidden": false, "duration": 128, "EUt":4}, -{"inputs": [{"alts": [{"ore": "dustPotassium"}, {"ore": "dustSodium"}, {"ore": "dustCalcium"}, {"ore": "dustMagnesium"}], "count": 1}], +{"inputs": [{"ore": "dustPotassium", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 750}], "outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], "hidden": false, "duration": 128, "EUt":4}, -{"inputs": [{"alts": [{"ore": "dustPotassium"}, {"ore": "dustSodium"}, {"ore": "dustCalcium"}, {"ore": "dustMagnesium"}], "count": 1}], +{"inputs": [{"ore": "dustSodium", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustCalcium", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustMagnesium", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustPotassium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSodium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustCalcium", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustMagnesium", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], "outputFluids":[{"fluid": "potion.mineralwater", "amount": 750}], "hidden": false, @@ -66,13 +139,97 @@ "hidden": false, "duration": 128, "EUt":4}, -{"inputs": [{"alts":[{"ore": "dustRedstone"}, {"ore": "dustSugar"}, {"ore": "dustBlaze"}, {"item": "minecraft:magma_cream:0"}, {"item": "minecraft:fermented_spider_eye:0"}, {"item": "minecraft:spider_eye:0"}, {"item": "minecraft:speckled_melon:0"}, {"item": "minecraft:ghast_tear:0"}], "count": 1}], +{"inputs": [{"ore": "dustRedstone", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 750}], "outputFluids":[{"fluid": "potion.mundane", "amount": 750}], "hidden": false, "duration": 128, "EUt":4}, -{"inputs": [{"alts":[{"ore": "dustRedstone"}, {"ore": "dustSugar"}, {"ore": "dustBlaze"}, {"item": "minecraft:magma_cream:0"}, {"item": "minecraft:fermented_spider_eye:0"}, {"item": "minecraft:spider_eye:0"}, {"item": "minecraft:speckled_melon:0"}, {"item": "minecraft:ghast_tear:0"}], "count": 1}], +{"inputs": [{"ore": "dustBlaze", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:magma_cream:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:fermented_spider_eye:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:spider_eye:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:speckled_melon:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:ghast_tear:0", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustRedstone", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustSugar", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"ore": "dustBlaze", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:magma_cream:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:fermented_spider_eye:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:spider_eye:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:speckled_melon:0", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.mundane", "amount": 750}], +"hidden": false, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "minecraft:ghast_tear:0", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], "outputFluids":[{"fluid": "potion.mundane", "amount": 750}], "hidden": false, @@ -102,13 +259,25 @@ "hidden": false, "duration": 128, "EUt":4}, -{"inputs": [{"alts":[{"item": "minecraft:fish:3"}, {"item": "GTItemList:IC2_Grin_Powder"}], "count": 1}], +{"inputs": [{"item": "minecraft:fish:3", "count": 1}], +"inputFluids":[{"fluid": "water", "amount": 750}], +"outputFluids":[{"fluid": "potion.poison.strong", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "GTItemList:IC2_Grin_Powder", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 750}], "outputFluids":[{"fluid": "potion.poison.strong", "amount": 750}], "hidden": true, "duration": 128, "EUt":4}, -{"inputs": [{"alts":[{"item": "minecraft:fish:3"}, {"item": "GTItemList:IC2_Grin_Powder"}], "count": 1}], +{"inputs": [{"item": "minecraft:fish:3", "count": 1}], +"inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], +"outputFluids":[{"fluid": "potion.poison.strong", "amount": 750}], +"hidden": true, +"duration": 128, +"EUt":4}, +{"inputs": [{"item": "GTItemList:IC2_Grin_Powder", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], "outputFluids":[{"fluid": "potion.poison.strong", "amount": 750}], "hidden": true, diff --git a/src/main/resources/assets/gregtech/recipes/circuit_assembler.json b/src/main/resources/assets/gregtech/recipes/circuit_assembler.json index e3bf506204..45d6f651cf 100644 --- a/src/main/resources/assets/gregtech/recipes/circuit_assembler.json +++ b/src/main/resources/assets/gregtech/recipes/circuit_assembler.json @@ -1,33 +1,63 @@ [ -{"inputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}, {"item": "GTItemList:Circuit_Chip_ILC", "count": 1}, {"alts": [{"item": "GTItemList:Circuit_Parts_Resistor"}, {"item": "GTItemList:Circuit_Parts_ResistorSMD"}], "count": 2}, {"ore": "wireFineCopper", "count": 4}], +{"inputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}, {"item": "GTItemList:Circuit_Chip_ILC", "count": 1}, {"item": "GTItemList:Circuit_Parts_Resistor", "count": 2}, {"ore": "wireFineCopper", "count": 4}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Circuit_Basic", "count": 1}], "duration":200, "EUt":8}, -{"inputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}, {"item": "GTItemList:Circuit_Basic", "count": 3}, {"alts": [{"item": "GTItemList:Circuit_Parts_Resistor"}, {"item": "GTItemList:Circuit_Parts_ResistorSMD"}], "count": 4}, {"ore": "wireFineGold", "count": 8}], +{"inputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}, {"item": "GTItemList:Circuit_Chip_ILC", "count": 1}, {"item": "GTItemList:Circuit_Parts_ResistorSMD", "count": 2}, {"ore": "wireFineCopper", "count": 4}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Basic", "count": 1}], +"duration":200, +"EUt":8}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}, {"item": "GTItemList:Circuit_Basic", "count": 3}, {"item": "GTItemList:Circuit_Parts_Resistor", "count": 4}, {"ore": "wireFineGold", "count": 8}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Integrated_Good", "count": 1}], +"duration":400, +"EUt":16}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 1}, {"item": "GTItemList:Circuit_Basic", "count": 3}, {"item": "GTItemList:Circuit_Parts_ResistorSMD", "count": 4}, {"ore": "wireFineGold", "count": 8}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Circuit_Integrated_Good", "count": 1}], "duration":400, "EUt":16}, -{"inputs":[{"item": "GTItemList:Circuit_Integrated_Good", "count": 2}, {"item": "GTItemList:Circuit_Chip_ILC", "count": 3}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 1}, {"alts": [{"item": "GTItemList:Circuit_Parts_Transistor"}, {"item": "GTItemList:Circuit_Parts_TransistorSMD"}], "count": 4}, {"ore": "wireFineElectrum", "count": 16}], +{"inputs":[{"item": "GTItemList:Circuit_Integrated_Good", "count": 2}, {"item": "GTItemList:Circuit_Chip_ILC", "count": 3}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 1}, {"item": "GTItemList:Circuit_Parts_Transistor", "count": 4}, {"ore": "wireFineElectrum", "count": 16}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "IC2:itemPartCircuitAdv", "count": 1}], +"duration":800, +"EUt":28}, +{"inputs":[{"item": "GTItemList:Circuit_Integrated_Good", "count": 2}, {"item": "GTItemList:Circuit_Chip_ILC", "count": 3}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 1}, {"item": "GTItemList:Circuit_Parts_TransistorSMD", "count": 4}, {"ore": "wireFineElectrum", "count": 16}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "IC2:itemPartCircuitAdv", "count": 1}], "duration":800, "EUt":28}, -{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_CPU", "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Resistor"}, {"item": "GTItemList:Circuit_Parts_ResistorSMD"}], "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Capacitor"}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD"}], "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Transistor"}, {"item": "GTItemList:Circuit_Parts_TransistorSMD"}], "count": 4}, {"ore": "wireFineCopper", "count": 2}], +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_CPU", "count": 4}, {"item": "GTItemList:Circuit_Parts_Resistor", "count": 4}, {"item": "GTItemList:Circuit_Parts_Capacitor", "count": 4}, {"item": "GTItemList:Circuit_Parts_Transistor", "count": 4}, {"ore": "wireFineCopper", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Microprocessor", "count": 4}], +"duration":200, +"EUt":60}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_CPU", "count": 4}, {"item": "GTItemList:Circuit_Parts_ResistorSMD", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 4}, {"item": "GTItemList:Circuit_Parts_TransistorSMD", "count": 4}, {"ore": "wireFineCopper", "count": 2}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Circuit_Microprocessor", "count": 4}], "duration":200, "EUt":60}, -{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_CPU", "count": 1}, {"alts": [{"item": "GTItemList:Circuit_Parts_Resistor"}, {"item": "GTItemList:Circuit_Parts_ResistorSMD"}], "count": 2}, {"alts": [{"item": "GTItemList:Circuit_Parts_Capacitor"}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD"}], "count": 2}, {"alts": [{"item": "GTItemList:Circuit_Parts_Transistor"}, {"item": "GTItemList:Circuit_Parts_TransistorSMD"}], "count": 2}, {"ore": "wireFineRedAlloy", "count": 2}], +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_CPU", "count": 1}, {"item": "GTItemList:Circuit_Parts_Resistor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Capacitor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Transistor", "count": 2}, {"ore": "wireFineRedAlloy", "count": 2}], "inputFluids":[{"solderFluids": 72}], "outputs":[{"item": "GTItemList:Circuit_Processor", "count": 1}], "duration":200, "EUt":60}, -{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Processor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Capacitor"}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD"}], "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineRedAlloy", "count": 12}], +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Chip_CPU", "count": 1}, {"item": "GTItemList:Circuit_Parts_ResistorSMD", "count": 2}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 2}, {"item": "GTItemList:Circuit_Parts_TransistorSMD", "count": 2}, {"ore": "wireFineRedAlloy", "count": 2}], +"inputFluids":[{"solderFluids": 72}], +"outputs":[{"item": "GTItemList:Circuit_Processor", "count": 1}], +"duration":200, +"EUt":60}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Processor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_Capacitor", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineRedAlloy", "count": 12}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Computer", "count": 1}], +"duration":400, +"EUt":90}, +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}, {"item": "GTItemList:Circuit_Processor", "count": 2}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineRedAlloy", "count": 12}], "inputFluids":[{"solderFluids": 144}], "outputs":[{"item": "GTItemList:Circuit_Computer", "count": 1}], "duration":400, @@ -37,12 +67,22 @@ "outputs":[{"item": "GTItemList:Tool_DataStick", "count": 1}], "duration":400, "EUt":90}, -{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 2}, {"item": "GTItemList:Circuit_Advanced", "count": 3}, {"alts": [{"item": "GTItemList:Circuit_Parts_Diode"}, {"item": "GTItemList:Circuit_Parts_DiodeSMD"}], "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineElectrum", "count": 6}], +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 2}, {"item": "GTItemList:Circuit_Advanced", "count": 3}, {"item": "GTItemList:Circuit_Parts_Diode", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineElectrum", "count": 6}], "inputFluids":[{"solderFluids": 144}], "outputs":[{"item": "GTItemList:Circuit_Data", "count": 1}], "duration":400, "EUt":90}, -{"inputs":[{"ore": "frameGtAluminium", "count": 1}, {"item": "GTItemList:Circuit_Data", "count": 4}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"alts": [{"item": "GTItemList:Circuit_Parts_Capacitor"}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD"}], "count": 24}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 16}, {"ore": "wireGt01AnnealedCopper", "count": 12}], +{"inputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 2}, {"item": "GTItemList:Circuit_Advanced", "count": 3}, {"item": "GTItemList:Circuit_Parts_DiodeSMD", "count": 4}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 4}, {"ore": "wireFineElectrum", "count": 6}], +"inputFluids":[{"solderFluids": 144}], +"outputs":[{"item": "GTItemList:Circuit_Data", "count": 1}], +"duration":400, +"EUt":90}, +{"inputs":[{"ore": "frameGtAluminium", "count": 1}, {"item": "GTItemList:Circuit_Data", "count": 4}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_Capacitor", "count": 24}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 16}, {"ore": "wireGt01AnnealedCopper", "count": 12}], +"inputFluids":[{"solderFluids": 288}], +"outputs":[{"item": "GTItemList:Circuit_Elite", "count": 1}], +"duration":1600, +"EUt":480}, +{"inputs":[{"ore": "frameGtAluminium", "count": 1}, {"item": "GTItemList:Circuit_Data", "count": 4}, {"item": "GTItemList:Circuit_Parts_Coil", "count": 4}, {"item": "GTItemList:Circuit_Parts_CapacitorSMD", "count": 24}, {"item": "GTItemList:Circuit_Chip_Ram", "count": 16}, {"ore": "wireGt01AnnealedCopper", "count": 12}], "inputFluids":[{"solderFluids": 288}], "outputs":[{"item": "GTItemList:Circuit_Elite", "count": 1}], "duration":1600, diff --git a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json index 8fff46c730..f2d1dea84d 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json @@ -1,5 +1,13 @@ [ -{"inputs":[{"alts": [{"item": "minecraft:wheat_seeds"}, {"item": "minecraft:melon_seeds"}, {"item": "minecraft:pumpkin_seeds"}], "count": 1}], +{"inputs":[{"item": "minecraft:wheat_seeds", "count": 1}], +"outputFluids":[{"fluid": "seedoil", "amount": 10}], +"duration": 32, +"EUt": 2}, +{"inputs":[{"item": "minecraft:melon_seeds", "count": 1}], +"outputFluids":[{"fluid": "seedoil", "amount": 10}], +"duration": 32, +"EUt": 2}, +{"inputs":[{"item": "minecraft:pumpkin_seeds", "count": 1}], "outputFluids":[{"fluid": "seedoil", "amount": 10}], "duration": 32, "EUt": 2}, diff --git a/src/main/resources/assets/gregtech/recipes/laser_engraver.json b/src/main/resources/assets/gregtech/recipes/laser_engraver.json index 70f48d7597..709946f853 100644 --- a/src/main/resources/assets/gregtech/recipes/laser_engraver.json +++ b/src/main/resources/assets/gregtech/recipes/laser_engraver.json @@ -1,18 +1,22 @@ [ {"inputs":[{"item": "GTItemList:Circuit_Silicon_Wafer2", "count": 1}, {"ore": "lensEnderPearl", "count": 0}], "outputs":[{"item": "GTItemList:Circuit_Wafer_NAND", "count": 1}], +"specialValue": "cleanroom", "duration": 500, "EUt": 480}, {"inputs":[{"item": "GTItemList:Circuit_Silicon_Wafer3", "count": 1}, {"ore": "lensEnderPearl", "count": 0}], "outputs":[{"item": "GTItemList:Circuit_Wafer_NAND", "count": 4}], +"specialValue": "cleanroom", "duration": 200, "EUt": 1920}, {"inputs":[{"item": "GTItemList:Circuit_Silicon_Wafer2", "count": 1}, {"ore": "lensEnderEye", "count": 0}], "outputs":[{"item": "GTItemList:Circuit_Wafer_NOR", "count": 1}], +"specialValue": "cleanroom", "duration": 500, "EUt": 480}, {"inputs":[{"item": "GTItemList:Circuit_Silicon_Wafer3", "count": 1}, {"ore": "lensEnderEye", "count": 0}], "outputs":[{"item": "GTItemList:Circuit_Wafer_NOR", "count": 4}], +"specialValue": "cleanroom", "duration": 200, "EUt": 1920}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/mixer.json b/src/main/resources/assets/gregtech/recipes/mixer.json index ba102c17e6..15273f2fc2 100644 --- a/src/main/resources/assets/gregtech/recipes/mixer.json +++ b/src/main/resources/assets/gregtech/recipes/mixer.json @@ -215,15 +215,39 @@ "outputs":[{"ore": "dustTinyCobaltBrass", "count": 9}], "duration": 100, "EUt": 8}, -{"inputs":[{"ore": "dustSaltpeter", "count": 2}, {"ore": "dustSulfur", "count": 1}, {"alts": [{"ore": "dustCoal"}, {"ore": "dustCharcoal"}, {"ore": "dustCarbon"}], "count": 3}], +{"inputs":[{"ore": "dustSaltpeter", "count": 2}, {"ore": "dustSulfur", "count": 1}, {"ore": "dustCoal", "count": 3}], "outputs":[{"ore": "dustGunpowder", "count": 6}], "duration": 600, "EUt": 8}, -{"inputs":[{"ore": "dustSmallSaltpeter", "count": 2}, {"ore": "dustSmallSulfur", "count": 1}, {"alts": [{"ore": "dustSmallCoal"}, {"ore": "dustSmallCharcoal"}, {"ore": "dustSmallCarbon"}], "count": 3}], +{"inputs":[{"ore": "dustSaltpeter", "count": 2}, {"ore": "dustSulfur", "count": 1}, {"ore": "dustCharcoal", "count": 3}], +"outputs":[{"ore": "dustGunpowder", "count": 6}], +"duration": 600, +"EUt": 8}, +{"inputs":[{"ore": "dustSaltpeter", "count": 2}, {"ore": "dustSulfur", "count": 1}, {"ore": "dustCarbon", "count": 3}], +"outputs":[{"ore": "dustGunpowder", "count": 6}], +"duration": 600, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallSaltpeter", "count": 2}, {"ore": "dustSmallSulfur", "count": 1}, {"ore": "dustSmallCoal", "count": 3}], +"outputs":[{"ore": "dustSmallGunpowder", "count": 6}], +"duration": 150, +"EUt": 8}, +{"inputs":[{"ore": "dustSmallSaltpeter", "count": 2}, {"ore": "dustSmallSulfur", "count": 1}, {"ore": "dustSmallCharcoal", "count": 3}], "outputs":[{"ore": "dustSmallGunpowder", "count": 6}], "duration": 150, "EUt": 8}, -{"inputs":[{"ore": "dustTinySaltpeter", "count": 2}, {"ore": "dustTinySulfur", "count": 1}, {"alts": [{"ore": "dustTinyCoal"}, {"ore": "dustTinyCharcoal"}, {"ore": "dustTinyCarbon"}], "count": 3}], +{"inputs":[{"ore": "dustSmallSaltpeter", "count": 2}, {"ore": "dustSmallSulfur", "count": 1}, {"ore": "dustSmallCarbon", "count": 3}], +"outputs":[{"ore": "dustSmallGunpowder", "count": 6}], +"duration": 150, +"EUt": 8}, +{"inputs":[{"ore": "dustTinySaltpeter", "count": 2}, {"ore": "dustTinySulfur", "count": 1}, {"ore": "dustTinyCoal", "count": 3}], +"outputs":[{"ore": "dustTinyGunpowder", "count": 6}], +"duration": 66, +"EUt": 8}, +{"inputs":[{"ore": "dustTinySaltpeter", "count": 2}, {"ore": "dustTinySulfur", "count": 1}, {"ore": "dustTinyCharcoal", "count": 3}], +"outputs":[{"ore": "dustTinyGunpowder", "count": 6}], +"duration": 66, +"EUt": 8}, +{"inputs":[{"ore": "dustTinySaltpeter", "count": 2}, {"ore": "dustTinySulfur", "count": 1}, {"ore": "dustTinyCarbon", "count": 3}], "outputs":[{"ore": "dustTinyGunpowder", "count": 6}], "duration": 66, "EUt": 8}, From 0c8d69ef30a8c7c5ef78334c80b2df164ccd5ef1 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Tue, 17 Nov 2020 13:34:43 -0800 Subject: [PATCH 19/21] Found better workaround to handle json-disabled recipes. --- .../api/recipes/GT_RecipeListJsonReader.java | 8 --- .../postload/GT_MachineRecipeLoader.java | 70 +++++++++++++++++-- .../assets/gregtech/recipes/assembler.json | 62 ---------------- 3 files changed, 65 insertions(+), 75 deletions(-) diff --git a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java index 1162c9630b..76b578121c 100644 --- a/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java +++ b/src/main/java/gregtech/api/recipes/GT_RecipeListJsonReader.java @@ -327,14 +327,6 @@ private static List readSingleRecipe(JsonReader aReader) throws IOExc if (tEUt <= 0 || (tInputs.isEmpty() && tFluidInputs.isEmpty()) || (tOutputs.isEmpty() && tFluidOutputs.isEmpty() && tFluidsPerCircuit.isEmpty())) { return null; } - // Recipes disabled this way (possibly from file in config folder) still need to be added for the sake of collision, - // so recipes from assets will not be added, but make sure they're fully disabled and hidden from NEI. - if (!tEnabled) { - tDuration = 0; - } - if (tDuration <= 0) { - tHidden = true; - } if (!tFluidsPerCircuit.isEmpty()) { tInputs.add(GT_Utility.getIntegratedCircuit(0)); List tList = new ArrayList<>(tFluidsPerCircuit.size()); diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index bf1f8dba81..f37cfa4531 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -24,6 +24,8 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.io.PrintWriter; +import java.lang.reflect.Method; +import java.util.ArrayList; import mods.railcraft.common.blocks.aesthetics.cube.EnumCube; import mods.railcraft.common.items.RailcraftToolItems; import net.minecraft.init.Blocks; @@ -66,7 +68,8 @@ public class GT_MachineRecipeLoader implements Runnable { private final static String aTextAE = "appliedenergistics2"; private final static String aTextAEMM = "item.ItemMultiMaterial"; private final static String aTextForestry = "Forestry"; private final static String aTextEBXL = "ExtrabiomesXL"; private final static String aTextTCGTPage = "gt.research.page.1."; private final static Boolean isNEILoaded = Loader.isModLoaded("NotEnoughItems"); - + private static List sJsonDisabledRecipes = new ArrayList<>(100); + // found in an old Minecraft Forge forum post public static File getMcDir() { if (MinecraftServer.getServer() != null && MinecraftServer.getServer().isDedicatedServer()) { @@ -96,16 +99,20 @@ public void run() { tRecipeFileMap.put(GT_Recipe_Map.sBenderRecipes, "bender.json"); tRecipeFileMap.put(GT_Recipe_Map.sBlastRecipes, "blast_furnace.json"); tRecipeFileMap.put(GT_Recipe_Map.sBrewingRecipes, "brewery.json"); + tRecipeFileMap.put(GT_Recipe_Map.sCannerRecipes, "canner.json"); tRecipeFileMap.put(GT_Recipe_Map.sCentrifugeRecipes, "centrifuge.json"); tRecipeFileMap.put(GT_Recipe_Map.sChemicalBathRecipes, "chemical_bath.json"); tRecipeFileMap.put(GT_Recipe_Map.sChemicalRecipes, "chemical_reactor.json"); tRecipeFileMap.put(GT_Recipe_Map.sMultiblockChemicalRecipes, "large_chemical_reactor.json"); tRecipeFileMap.put(GT_Recipe_Map.sCircuitAssemblerRecipes, "circuit_assembler.json"); + tRecipeFileMap.put(GT_Recipe_Map.sCompressorRecipes, "compressor.json"); tRecipeFileMap.put(GT_Recipe_Map.sCutterRecipes, "cutter.json"); tRecipeFileMap.put(GT_Recipe_Map.sDistillationRecipes, "distillation_tower.json"); tRecipeFileMap.put(GT_Recipe_Map.sDistilleryRecipes, "distillery.json"); tRecipeFileMap.put(GT_Recipe_Map.sCutterRecipes, "cutter.json"); tRecipeFileMap.put(GT_Recipe_Map.sElectrolyzerRecipes, "electrolyzer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sElectroMagneticSeparatorRecipes, "electromagnetic_separator.json"); + tRecipeFileMap.put(GT_Recipe_Map.sExtractorRecipes, "extractor.json"); tRecipeFileMap.put(GT_Recipe_Map.sExtruderRecipes, "extruder.json"); tRecipeFileMap.put(GT_Recipe_Map.sFermentingRecipes, "fermenter.json"); tRecipeFileMap.put(GT_Recipe_Map.sFluidCannerRecipes, "fluid_canner.json"); @@ -115,13 +122,22 @@ public void run() { tRecipeFileMap.put(GT_Recipe_Map.sHammerRecipes, "forge_hammer.json"); tRecipeFileMap.put(GT_Recipe_Map.sPressRecipes, "forming_press.json"); tRecipeFileMap.put(GT_Recipe_Map.sFusionRecipes, "fusion_reactor.json"); + tRecipeFileMap.put(GT_Recipe_Map.sImplosionRecipes, "implosion_compressor.json"); tRecipeFileMap.put(GT_Recipe_Map.sLaserEngraverRecipes, "laser_engraver.json"); tRecipeFileMap.put(GT_Recipe_Map.sLatheRecipes, "lathe.json"); + tRecipeFileMap.put(GT_Recipe_Map.sMaceratorRecipes, "macerator.json"); tRecipeFileMap.put(GT_Recipe_Map.sMixerRecipes, "mixer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sCrakingRecipes, "oil_cracking.json"); + tRecipeFileMap.put(GT_Recipe_Map.sOreWasherRecipes, "ore_washer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sBoxinatorRecipes, "packager.json"); tRecipeFileMap.put(GT_Recipe_Map.sPlasmaArcFurnaceRecipes, "plasma_arc_furnace.json"); + tRecipeFileMap.put(GT_Recipe_Map.sPolarizerRecipes, "polarizer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sPrimitiveBlastRecipes, "primitive_blast_furnace.json"); tRecipeFileMap.put(GT_Recipe_Map.sPrinterRecipes, "printer.json"); tRecipeFileMap.put(GT_Recipe_Map.sSifterRecipes, "sifter.json"); tRecipeFileMap.put(GT_Recipe_Map.sSlicerRecipes, "slicer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sThermalCentrifugeRecipes, "thermal_centrifuge.json"); + tRecipeFileMap.put(GT_Recipe_Map.sUnboxinatorRecipes, "unpackager.json"); tRecipeFileMap.put(GT_Recipe_Map.sVacuumRecipes, "vacuum_freezer.json"); tRecipeFileMap.put(GT_Recipe_Map.sWiremillRecipes, "wiremill.json"); @@ -219,6 +235,18 @@ public void run() { GT_Values.RA.addChemicalBathRecipe(new ItemStack(Blocks.hardened_clay, 1, 0), Dyes.VALUES[i].getFluidDye(j, 18L), new ItemStack(Blocks.stained_hardened_clay, 1, 15 - i), GT_Values.NI, GT_Values.NI, null, 64, 2); } } + GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderPearl, 1), OrePrefixes.circuit.get(Materials.Basic), 4, Materials.Osmium.getMolten(288), ItemList.Field_Generator_LV.get(1, new Object[0]), 1800, 30); + GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.EnderEye, 1), OrePrefixes.circuit.get(Materials.Good), 4, Materials.Osmium.getMolten(576), ItemList.Field_Generator_MV.get(1, new Object[0]), 1800, 120); + GT_Values.RA.addAssemblerRecipe(ItemList.QuantumEye.get(1, new Object[]{}), OrePrefixes.circuit.get(Materials.Advanced), 4, Materials.Osmium.getMolten(1152), ItemList.Field_Generator_HV.get(1, new Object[0]), 1800, 480); + GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NetherStar, 1), OrePrefixes.circuit.get(Materials.Data), 4, Materials.Osmium.getMolten(2304), ItemList.Field_Generator_EV.get(1, new Object[0]), 1800, 1920); + GT_Values.RA.addAssemblerRecipe(ItemList.QuantumStar.get(1, new Object[]{}), OrePrefixes.circuit.get(Materials.Elite), 4, Materials.Osmium.getMolten(4608), ItemList.Field_Generator_IV.get(1, new Object[0]), 1800, 7680); + GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_LV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Basic), 2, GT_Values.NF, ItemList.FluidRegulator_LV.get(1L, new Object[0]), 800, 4); + GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_MV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Good), 2, GT_Values.NF, ItemList.FluidRegulator_MV.get(1L, new Object[0]), 800, 8); + GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_HV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Advanced), 2, GT_Values.NF,ItemList.FluidRegulator_HV.get(1L, new Object[0]), 800, 16); + GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_EV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Data), 2, GT_Values.NF, ItemList.FluidRegulator_EV.get(1L, new Object[0]), 800, 32); + GT_Values.RA.addAssemblerRecipe(ItemList.Electric_Pump_IV.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Elite), 2, GT_Values.NF, ItemList.FluidRegulator_IV.get(1L, new Object[0]), 800, 64); + GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2L), OrePrefixes.circuit.get(Materials.Good), 4,GT_Values.NF, ItemList.Schematic.get(1L, new Object[0]), 3200, 4); + GT_Values.RA.addAssemblerRecipe(ItemList.Cover_Shutter.get(1L, new Object[0]), OrePrefixes.circuit.get(Materials.Advanced), 2,GT_Values.NF, ItemList.FluidFilter.get(1L, new Object[0]), 800, 4); //Circuit Recipes!!! Object[] o = new Object[0]; @@ -226,6 +254,8 @@ public void run() { GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Board_Phenolic.get(8, o), new Object[]{"PRP","PPP","PPP",'P',GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1),'R',GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glue, 1)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Board_Phenolic.get(32, o), new Object[]{"PRP","PPP","PPP",'P',GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1),'R',GT_OreDictUnificator.get(OrePrefixes.cell, Materials.BisphenolA, 1)}); + GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.Circuit_Board_Multifiberglass.get(1, o), ItemList.Circuit_Parts_PetriDish.get(1, o), ItemList.Electric_Pump_LV.get(1,o), ItemList.Sensor_LV.get(1,o)}, + OrePrefixes.circuit.get(Materials.Good), 1, Materials.GrowthMediumSterilized.getFluid(250), ItemList.Circuit_Board_Wetware.get(1, o), 400, 480); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Resistor.get(3, o), new Object[]{" P ","FCF"," P ",'P',new ItemStack(Items.paper),'F',OrePrefixes.wireFine.get(Materials.Copper),'C',OrePrefixes.dust.get(Materials.Coal)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Resistor.get(3, o), new Object[]{" P ","FCF"," P ",'P',new ItemStack(Items.paper),'F',OrePrefixes.wireFine.get(Materials.Copper),'C',OrePrefixes.dust.get(Materials.Charcoal)}); GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Resistor.get(3, o), new Object[]{" P ","FCF"," P ",'P',new ItemStack(Items.paper),'F',OrePrefixes.wireFine.get(Materials.Copper),'C',OrePrefixes.dust.get(Materials.Carbon)}); @@ -242,6 +272,8 @@ public void run() { GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Good.get(1,o), new Object[]{"IVC","VDV","CVI",'D',ItemList.Circuit_Parts_Diode.get(1,o),'C',GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.RedAlloy, 1),'V', Ic2Items.electronicCircuit ,'I',ItemList.IC2_Item_Casing_Steel.get(1,o)}); + GT_Values.RA.addAssemblerRecipe(new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Glass, 1), GT_OreDictUnificator.get(OrePrefixes.foil,Materials.Aluminium,4),GT_OreDictUnificator.get(OrePrefixes.circuit.get(Materials.Basic),1),GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 4)},GT_Values.NF, ItemList.Cover_Screen.get(1,new Object[0]),50,16); + if (GregTech_API.sSpecialFile.get("general", "EnableLagencyOilGalactiCraft", false) && FluidRegistry.getFluid("oilgc") != null) { GT_Values.RA.addUniversalDistillationRecipe(new FluidStack(FluidRegistry.getFluid("oilgc"), 50), new FluidStack[]{Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); } @@ -537,7 +569,10 @@ public void run() { GT_Values.RA.addPyrolyseRecipe(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Coal, 8), Materials.Nitrogen.getGas(1000), 2, EnumCube.COKE_BLOCK.getItem(8), Materials.Creosote.getFluid(32000), 1280, 96); } run2(); - + for (GT_Recipe tRecipe : sJsonDisabledRecipes) { + tRecipe.mEnabled = false; + tRecipe.mHidden = true; + } } public void addProcess(ItemStack tCrop, Materials aMaterial, int chance, boolean aMainOutput) { @@ -2005,12 +2040,37 @@ private void addPyrometallurgicalRecipes() { private static void addRecipesToMap(GT_Recipe_Map aMap, List aList) { for (GT_Recipe tRecipe : aList) { - // A couple of the recipe maps wrap the recipe in a subclass, but don't override the addRecipe method that takes a GT_Recipe argument. - GT_Recipe tAddedRecipe = aMap.addRecipe(false, tRecipe.mInputs, tRecipe.mOutputs, tRecipe.mSpecialItems, - tRecipe.mChances, tRecipe.mFluidInputs, tRecipe.mFluidOutputs, tRecipe.mDuration, tRecipe.mEUt, tRecipe.mSpecialValue); + boolean tDisabled = false; + // disabled recipes are not returned by collision checking, and duration 0 recipes are forced to duration 1 when used + // by machines. Workaround by temporarily enabling recipes marked as disabled in the json, then re-disabling them later. + if (!tRecipe.mEnabled || tRecipe.mDuration <= 0) { + tDisabled = true; + tRecipe.mEnabled = true; + } + boolean tRecipeNeedsUnwrapping = false; + GT_Recipe tAddedRecipe = null; + if (aMap.getClass() != GT_Recipe_Map.class) { + for (Method tMethod : aMap.getClass().getDeclaredMethods()) { + if ("addRecipe".equals(tMethod.getName())) { + tRecipeNeedsUnwrapping = true; + break; + } + } + } + if (tRecipeNeedsUnwrapping) { + // A couple of the recipe maps wrap the recipe in a subclass, but don't override the addRecipe method that takes a GT_Recipe argument. + tAddedRecipe = aMap.addRecipe(false, tRecipe.mInputs, tRecipe.mOutputs, tRecipe.mSpecialItems, + tRecipe.mChances, tRecipe.mFluidInputs, tRecipe.mFluidOutputs, tRecipe.mDuration, tRecipe.mEUt, tRecipe.mSpecialValue); + } else { + tAddedRecipe = aMap.addRecipe(tRecipe); + } if (tAddedRecipe != null) { tAddedRecipe.mEnabled = tRecipe.mEnabled; tAddedRecipe.mHidden = tRecipe.mHidden; + tAddedRecipe.mFakeRecipe = tRecipe.mFakeRecipe; + if (tDisabled) { + sJsonDisabledRecipes.add(tAddedRecipe); + } } } } diff --git a/src/main/resources/assets/gregtech/recipes/assembler.json b/src/main/resources/assets/gregtech/recipes/assembler.json index 6dca46d539..6ed86bd682 100644 --- a/src/main/resources/assets/gregtech/recipes/assembler.json +++ b/src/main/resources/assets/gregtech/recipes/assembler.json @@ -15,31 +15,6 @@ "outputs":[{"item": "minecraft:book:0", "count": 1}], "duration": 20, "EUt": 16}, -{"inputs":[{"ore": "dustEnderPearl", "count": 1}, {"ore": "circuitBasic", "count": 4}], -"inputFluids":[{"fluid": "molten.osmium", "amount": 288}], -"outputs":[{"item": "GTItemList:Field_Generator_LV", "count": 1}], -"duration": 1800, -"EUt": 30}, -{"inputs":[{"ore": "dustEnderEye", "count": 1}, {"ore": "circuitGood", "count": 4}], -"inputFluids":[{"fluid": "molten.osmium", "amount": 576}], -"outputs":[{"item": "GTItemList:Field_Generator_MV", "count": 1}], -"duration": 1800, -"EUt": 120}, -{"inputs":[{"item": "GTItemList:QuantumEye", "count": 1}, {"ore": "circuitAdvanced", "count": 4}], -"inputFluids":[{"fluid": "molten.osmium", "amount": 1152}], -"outputs":[{"item": "GTItemList:Field_Generator_HV", "count": 1}], -"duration": 1800, -"EUt": 480}, -{"inputs":[{"ore": "dustNetherStar", "count": 1}, {"ore": "circuitData", "count": 4}], -"inputFluids":[{"fluid": "molten.osmium", "amount": 2304}], -"outputs":[{"item": "GTItemList:Field_Generator_EV", "count": 1}], -"duration": 1800, -"EUt": 1920}, -{"inputs":[{"item": "GTItemList:QuantumStar", "count": 1}, {"ore": "circuitElite", "count": 4}], -"inputFluids":[{"fluid": "molten.osmium", "amount": 4608}], -"outputs":[{"item": "GTItemList:Field_Generator_IV", "count": 1}], -"duration": 1800, -"EUt": 7680}, {"inputs":[{"ore": "wireFineSteel", "count": 64}, {"ore": "foilZinc", "count": 16}], "outputs":[{"item": "GTItemList:Component_Filter", "count": 1}], "duration": 1600, @@ -49,34 +24,6 @@ "outputs":[{"ore": "dustSmallGraphene", "count": 1}], "duration": 480, "EUt": 240}, -{"inputs":[{"item": "GTItemList:Electric_Pump_LV", "count": 1}, {"ore": "circuitBasic", "count": 2}], -"outputs":[{"item": "GTItemList:FluidRegulator_LV", "count": 1}], -"duration": 800, -"EUt": 4}, -{"inputs":[{"item": "GTItemList:Electric_Pump_MV", "count": 1}, {"ore": "circuitGood", "count": 2}], -"outputs":[{"item": "GTItemList:FluidRegulator_MV", "count": 1}], -"duration": 800, -"EUt": 8}, -{"inputs":[{"item": "GTItemList:Electric_Pump_HV", "count": 1}, {"ore": "circuitAdvanced", "count": 2}], -"outputs":[{"item": "GTItemList:FluidRegulator_HV", "count": 1}], -"duration": 800, -"EUt": 16}, -{"inputs":[{"item": "GTItemList:Electric_Pump_EV", "count": 1}, {"ore": "circuitData", "count": 2}], -"outputs":[{"item": "GTItemList:FluidRegulator_EV", "count": 1}], -"duration": 800, -"EUt": 32}, -{"inputs":[{"item": "GTItemList:Electric_Pump_IV", "count": 1}, {"ore": "circuitElite", "count": 2}], -"outputs":[{"item": "GTItemList:FluidRegulator_IV", "count": 1}], -"duration": 800, -"EUt": 64}, -{"inputs":[{"ore": "plateStainlessSteel", "count": 2}, {"ore": "circuitGood", "count": 4}], -"outputs":[{"item": "GTItemList:Schematic", "count": 1}], -"duration": 3200, -"EUt": 4}, -{"inputs":[{"item": "GTItemList:Cover_Shutter", "count": 1}, {"ore": "circuitAdvanced", "count": 2}], -"outputs":[{"item": "GTItemList:FluidFilter", "count": 1}], -"duration": 800, -"EUt": 4}, {"inputs":[{"ore": "plateWood", "count": 8}, {"item": "GTItemList:IC2_Resin", "count": 1}], "inputFluids":[{"fluid": "glue", "amount": 100}], "outputs":[{"item": "GTItemList:Circuit_Board_Coated", "count": 8}], @@ -92,11 +39,6 @@ "outputs":[{"item": "GTItemList:Circuit_Board_Phenolic", "count": 4}], "duration": 30, "EUt": 8}, -{"inputs":[{"item": "GTItemList:Circuit_Board_Multifiberglass", "count": 1}, {"item": "GTItemList:Circuit_Parts_PetriDish", "count": 1}, {"item": "GTItemList:Electric_Pump_LV", "count": 1}, {"item": "GTItemList:Sensor_LV", "count": 1}, {"ore": "circuitGood", "count": 1}], -"inputFluids":[{"fluid": "growthmediumsterilized", "amount": 250}], -"outputs":[{"item": "GTItemList:Circuit_Board_Wetware", "count": 1}], -"duration": 400, -"EUt": 480}, {"inputs":[{"ore": "dustCoal", "count": 1}, {"ore": "wireFineCopper", "count": 4}], "outputs":[{"item": "GTItemList:Circuit_Parts_Resistor", "count": 12}], "duration": 160, @@ -511,10 +453,6 @@ {"inputs":[{"ore": "plateWroughtIron", "count": 2}, {"item": "minecraft:iron_door", "count": 1}, {"item": "GTItemList:Cover_Shutter", "count": 2}], "duration": 800, "EUt": 16}, -{"inputs":[{"ore": "plateGlass", "count": 1}, {"ore": "foilAluminium", "count": 4}, {"ore": "circuitBasic", "count": 1}, {"ore": "wireFineCopper", "count": 4}], -"outputs":[{"item": "GTItemList:Cover_Screen", "count": 1}], -"duration": 50, -"EUt": 16}, {"inputs":[{"item": "GTItemList:Electric_Motor_LV", "count": 1}, {"ore": "ringRubber", "count": 2}, {"ore": "rotorTin", "count": 1}, {"ore": "screwTin", "count": 1}, {"ore": "cableGt01Tin", "count": 1}, {"ore": "pipeMediumBronze", "count": 1}], "outputs":[{"item": "GTItemList:Electric_Pump_LV", "count": 1}], From 5febe79ef4937ed4eb2b37c471cda8458c233b76 Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Wed, 18 Nov 2020 15:33:24 -0800 Subject: [PATCH 20/21] Fixed some mistakes noticed during testing. --- .../postload/GT_MachineRecipeLoader.java | 25 +-- .../assets/gregtech/recipes/assembler.json | 9 +- .../assets/gregtech/recipes/autoclave.json | 4 + .../gregtech/recipes/blast_furnace.json | 14 +- .../assets/gregtech/recipes/brewery.json | 2 - .../gregtech/recipes/chemical_bath.json | 146 ++++++++++++++- .../recipes/chemical_complicated_large.json | 29 +++ .../gregtech/recipes/distillation_tower.json | 18 ++ .../assets/gregtech/recipes/distillery.json | 60 +++--- .../assets/gregtech/recipes/fermenter.json | 42 +++++ .../gregtech/recipes/fluid_extractor.json | 6 +- .../gregtech/recipes/fluid_solidifier.json | 11 +- .../gregtech/recipes/fusion_reactor.json | 25 +++ .../recipes/large_chemical_reactor.json | 175 +++++++++++++++++- .../assets/gregtech/recipes/mixer.json | 12 +- 15 files changed, 509 insertions(+), 69 deletions(-) diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index f37cfa4531..adc5a7de2c 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -2039,7 +2039,18 @@ private void addPyrometallurgicalRecipes() { } private static void addRecipesToMap(GT_Recipe_Map aMap, List aList) { + boolean tRecipeNeedsUnwrapping = false; + if (aMap.getClass() != GT_Recipe_Map.class) { + for (Method tMethod : aMap.getClass().getDeclaredMethods()) { + if ("addRecipe".equals(tMethod.getName())) { + tRecipeNeedsUnwrapping = true; + break; + } + } + } for (GT_Recipe tRecipe : aList) { + boolean tHidden = tRecipe.mHidden; // recipe adding functions may change these, so save original values. + boolean tFakeRecipe = tRecipe.mFakeRecipe; boolean tDisabled = false; // disabled recipes are not returned by collision checking, and duration 0 recipes are forced to duration 1 when used // by machines. Workaround by temporarily enabling recipes marked as disabled in the json, then re-disabling them later. @@ -2047,16 +2058,7 @@ private static void addRecipesToMap(GT_Recipe_Map aMap, List aList) { tDisabled = true; tRecipe.mEnabled = true; } - boolean tRecipeNeedsUnwrapping = false; GT_Recipe tAddedRecipe = null; - if (aMap.getClass() != GT_Recipe_Map.class) { - for (Method tMethod : aMap.getClass().getDeclaredMethods()) { - if ("addRecipe".equals(tMethod.getName())) { - tRecipeNeedsUnwrapping = true; - break; - } - } - } if (tRecipeNeedsUnwrapping) { // A couple of the recipe maps wrap the recipe in a subclass, but don't override the addRecipe method that takes a GT_Recipe argument. tAddedRecipe = aMap.addRecipe(false, tRecipe.mInputs, tRecipe.mOutputs, tRecipe.mSpecialItems, @@ -2065,9 +2067,8 @@ private static void addRecipesToMap(GT_Recipe_Map aMap, List aList) { tAddedRecipe = aMap.addRecipe(tRecipe); } if (tAddedRecipe != null) { - tAddedRecipe.mEnabled = tRecipe.mEnabled; - tAddedRecipe.mHidden = tRecipe.mHidden; - tAddedRecipe.mFakeRecipe = tRecipe.mFakeRecipe; + tAddedRecipe.mHidden = tHidden; + tAddedRecipe.mFakeRecipe = tFakeRecipe; if (tDisabled) { sJsonDisabledRecipes.add(tAddedRecipe); } diff --git a/src/main/resources/assets/gregtech/recipes/assembler.json b/src/main/resources/assets/gregtech/recipes/assembler.json index 6ed86bd682..23cc41b414 100644 --- a/src/main/resources/assets/gregtech/recipes/assembler.json +++ b/src/main/resources/assets/gregtech/recipes/assembler.json @@ -444,13 +444,16 @@ "enableCondition": "ModLoaded(Forestry)", "duration": 64, "EUt": 32}, -{"inputs":[{"ore": "plateAluminium", "count": 2}, {"item": "minecraft:iron_door", "count": 1}, {"item": "GTItemList:Cover_Shutter", "count": 2}], +{"inputs":[{"ore": "plateAluminium", "count": 2}, {"item": "minecraft:iron_door", "count": 1}], +"outputs":[{"item": "GTItemList:Cover_Shutter", "count": 2}], "duration": 800, "EUt": 16}, -{"inputs":[{"ore": "plateIron", "count": 2}, {"item": "minecraft:iron_door", "count": 1}, {"item": "GTItemList:Cover_Shutter", "count": 2}], +{"inputs":[{"ore": "plateIron", "count": 2}, {"item": "minecraft:iron_door", "count": 1}], +"outputs":[{"item": "GTItemList:Cover_Shutter", "count": 2}], "duration": 800, "EUt": 16}, -{"inputs":[{"ore": "plateWroughtIron", "count": 2}, {"item": "minecraft:iron_door", "count": 1}, {"item": "GTItemList:Cover_Shutter", "count": 2}], +{"inputs":[{"ore": "plateWroughtIron", "count": 2}, {"item": "minecraft:iron_door", "count": 1}], +"outputs":[{"item": "GTItemList:Cover_Shutter", "count": 2}], "duration": 800, "EUt": 16}, diff --git a/src/main/resources/assets/gregtech/recipes/autoclave.json b/src/main/resources/assets/gregtech/recipes/autoclave.json index 46eae2c043..8ff790ac12 100644 --- a/src/main/resources/assets/gregtech/recipes/autoclave.json +++ b/src/main/resources/assets/gregtech/recipes/autoclave.json @@ -63,21 +63,25 @@ {"inputs":[{"ore": "gemExquisiteEmerald", "count": 1}], "inputFluids":[{"fluid": "molten.europium", "amount": 16}], "outputs":[{"item": "GTItemList:Circuit_Parts_RawCrystalChip", "count": 1, "chance": 0.1}], +"specialValue": "cleanroom", "duration": 12000, "EUt": 320}, {"inputs":[{"ore": "gemExquisiteOlivine", "count": 1}], "inputFluids":[{"fluid": "molten.europium", "amount": 16}], "outputs":[{"item": "GTItemList:Circuit_Parts_RawCrystalChip", "count": 1, "chance": 0.1}], +"specialValue": "cleanroom", "duration": 12000, "EUt": 320}, {"inputs":[{"ore": "gemExquisiteEmerald", "count": 8}], "inputFluids":[{"fluid": "ic2uumatter", "amount": 100}], "outputs":[{"item": "GTItemList:Tool_DataOrb", "count": 1}], +"specialValue": "cleanroom", "duration": 12000, "EUt": 320}, {"inputs":[{"ore": "gemExquisiteOlivine", "count": 8}], "inputFluids":[{"fluid": "ic2uumatter", "amount": 100}], "outputs":[{"item": "GTItemList:Tool_DataOrb", "count": 1}], +"specialValue": "cleanroom", "duration": 12000, "EUt": 320}, diff --git a/src/main/resources/assets/gregtech/recipes/blast_furnace.json b/src/main/resources/assets/gregtech/recipes/blast_furnace.json index e6516ff200..29dd2237ca 100644 --- a/src/main/resources/assets/gregtech/recipes/blast_furnace.json +++ b/src/main/resources/assets/gregtech/recipes/blast_furnace.json @@ -110,5 +110,17 @@ "duration":500, "EUt":1920, "blastTemp":2900}, - +{"inputs":[{"item": "GTItemList:Circuit_Parts_RawCrystalChip", "count": 1}, {"ore": "plateEmerald", "count": 1}], +"inputFluids":[{"fluid": "helium", "amount": 1000}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Crystal_Chip_Elite", "count": 1}], +"duration": 900, +"EUt": 480, +"blastTemp": 5000}, +{"inputs":[{"item": "GTItemList:Circuit_Parts_RawCrystalChip", "count": 1}, {"ore": "plateOlivine", "count": 1}], +"inputFluids":[{"fluid": "helium", "amount": 1000}], +"outputs":[{"item": "GTItemList:Circuit_Parts_Crystal_Chip_Elite", "count": 1}], +"duration": 900, +"EUt": 480, +"blastTemp": 5000}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/brewery.json b/src/main/resources/assets/gregtech/recipes/brewery.json index 4277e41a3e..4b411d023c 100644 --- a/src/main/resources/assets/gregtech/recipes/brewery.json +++ b/src/main/resources/assets/gregtech/recipes/brewery.json @@ -268,7 +268,6 @@ {"inputs": [{"item": "GTItemList:IC2_Grin_Powder", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 750}], "outputFluids":[{"fluid": "potion.poison.strong", "amount": 750}], -"hidden": true, "duration": 128, "EUt":4}, {"inputs": [{"item": "minecraft:fish:3", "count": 1}], @@ -280,7 +279,6 @@ {"inputs": [{"item": "GTItemList:IC2_Grin_Powder", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 750}], "outputFluids":[{"fluid": "potion.poison.strong", "amount": 750}], -"hidden": true, "duration": 128, "EUt":4}, {"inputs": [{"item": "minecraft:reeds:0", "count": 1}], diff --git a/src/main/resources/assets/gregtech/recipes/chemical_bath.json b/src/main/resources/assets/gregtech/recipes/chemical_bath.json index 012adb2439..6c3878680c 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_bath.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_bath.json @@ -54,13 +54,153 @@ "outputs": [{"item": "minecraft:paper", "count": 1}], "duration": 100, "EUt": 8}, -{"inputs": [{"item": "minecraft:wool:*", "count": 1}], +{"inputs": [{"item": "minecraft:wool:1", "count": 1}], "inputFluids": [{"fluid": "chlorine", "amount": 50}], "outputs": [{"item": "minecraft:wool:0", "count": 1}], "duration": 400, "EUt": 2}, -{"inputs": [{"item": "minecraft:carpet:*", "count": 1}], +{"inputs": [{"item": "minecraft:wool:2", "count": 1}], "inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:3", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:4", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:5", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:6", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:7", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:8", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:9", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:10", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:11", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:12", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:13", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:14", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:wool:15", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"outputs": [{"item": "minecraft:wool:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:1", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:2", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:3", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:4", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:5", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:6", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:7", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:8", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:9", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:10", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:11", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:12", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:13", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:14", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], +"outputs": [{"item": "minecraft:carpet:0", "count": 1}], +"duration": 400, +"EUt": 2}, +{"inputs": [{"item": "minecraft:carpet:15", "count": 1}], +"inputFluids": [{"fluid": "chlorine", "amount": 25}], "outputs": [{"item": "minecraft:carpet:0", "count": 1}], "duration": 400, "EUt": 2}, @@ -75,7 +215,7 @@ "duration": 400, "EUt": 2}, {"inputs": [{"item": "minecraft:stained_glass_pane:*", "count": 1}], -"inputFluids": [{"fluid": "chlorine", "amount": 50}], +"inputFluids": [{"fluid": "chlorine", "amount": 20}], "outputs": [{"item": "minecraft:glass_pane:0", "count": 1}], "duration": 400, "EUt": 2}, diff --git a/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json b/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json index 0347cd2122..6a8610b43a 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json @@ -3,32 +3,38 @@ {"inputs": [{"ore": "dustSmallCalcite", "count": 5}, {"circuit": 24}], "inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], "outputFluids": [{"materialFluid": "Acetone", "amount": 5000}, {"gas": "CarbonDioxide", "amount": 3000}], +"optimize": false, "duration": 400, "EUt": 480}, {"inputs": [{"ore": "dustSmallQuicklime", "count": 2}, {"circuit": 24}], "inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], "outputFluids": [{"materialFluid": "Acetone", "amount": 5000}, {"gas": "CarbonDioxide", "amount": 3000}], +"optimize": false, "duration": 400, "EUt": 480}, {"inputFluids": [{"gas": "Chlorine", "amount": 5000}, {"fluid": "water", "amount": 15000}, {"materialFluid": "Mercury", "amount": 1000}], "outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 10000}], +"optimize": false, "duration": 600, "EUt": 8}, {"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 23}], "inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 4000}, {"fluid": "water", "amount": 3000}], "outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"optimize": false, "duration": 640, "EUt": 30}, {"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 24}], "inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 3000}, {"fluid": "water", "amount": 3000}, {"materialFluid": "Mercury", "amount": 200}], "outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"optimize": false, "duration": 640, "EUt": 30}, {"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 24}], "inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 2000}, {"materialFluid": "HypochlorousAcid", "amount": 3000}], "outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"optimize": false, "duration": 640, "EUt": 30}, @@ -36,51 +42,60 @@ "inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 35000}, {"fluid": "water", "amount": 10000}], "outputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 24000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], "outputs": [{"ore": "dustGypsum", "count": 40}], +"optimize": false, "duration": 320, "EUt": 30}, {"inputs": [{"ore": "dustPhosphorus", "count": 2}, {"circuit": 1}], "inputFluids": [{"gas": "Oxygen", "amount": 5000}], "outputs": [{"ore": "dustPhosphorousPentoxide", "count": 7}], +"optimize": false, "duration": 80, "EUt": 30}, {"inputs": [{"ore": "dustPhosphorus", "count": 1}, {"circuit": 24}], "inputFluids": [{"gas": "Oxygen", "amount": 2500}, {"fluid": "water", "amount": 4500}], "outputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 8000}], +"optimize": false, "duration": 320, "EUt": 30}, {"inputs": [{"circuit": 1}], "inputFluids": [{"gas": "Propene", "amount": 6000}, {"materialFluid": "Benzene", "amount": 8000}, {"materialFluid": "PhosphoricAcid", "amount": 1000}], "outputFluids": [{"materialFluid": "Cumene", "amount": 14000}], +"optimize": false, "duration": 360, "EUt": 30}, {"inputs": [{"circuit": 24}], "inputFluids": [{"gas": "Propene", "amount": 9000}, {"materialFluid": "Benzene", "amount": 12000}, {"materialFluid": "PhosphoricAcid", "amount": 1000}, {"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "Acetone", "amount": 10000}], +"optimize": false, "duration": 480, "EUt": 30}, {"inputs": [{"circuit": 1}], "inputFluids": [{"materialFluid": "Acetone", "amount": 1000}, {"materialFluid": "Phenol", "amount": 2000}], "outputFluids": [{"materialFluid": "BisphenolA", "amount": 3000}], +"optimize": false, "duration": 160, "EUt": 30}, {"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"circuit": 24}], "inputFluids": [{"materialFluid": "Acetone", "amount": 4000}, {"materialFluid": "Phenol", "amount": 8000}, {"materialFluid": "Epichlorohydrin", "amount": 4000}], "outputFluids": [{"molten": "Epoxid", "amount": 16000}, {"materialFluid": "SaltWater", "amount": 1000}], +"optimize": false, "duration": 640, "EUt": 30}, {"inputs": [{"circuit": 1}], "inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}, {"materialFluid": "Chloroform", "amount": 5000}], "outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 3000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], +"optimize": false, "duration": 480, "EUt": 240}, {"inputs": [{"circuit": 24}], "inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}, {"gas": "Methane", "amount": 5000}, {"gas": "Chlorine", "amount": 6000}], "outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}, {"materialFluid": "HydrochloricAcid", "amount": 6000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], +"optimize": false, "duration": 540, "EUt": 240}, @@ -88,78 +103,92 @@ "inputFluids": [{"gas": "Methane", "amount": 10000}, {"gas": "Chlorine", "amount": 4000}, {"fluid": "water", "amount": 3000}], "outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 4000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], "outputs": [{"ore": "dustPolydimethylsiloxane", "count": 10}], +"optimize": false, "duration": 480, "EUt": 96}, {"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 24}], "inputFluids": [{"materialFluid": "Methanol", "amount": 12000}, {"materialFluid": "HydrochloricAcid", "amount": 4000}], "outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], "outputs": [{"ore": "dustPolydimethylsiloxane", "count": 10}], +"optimize": false, "duration": 480, "EUt": 96}, {"inputs": [{"circuit": 24}], "inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}, {"gas": "Ammonia", "amount": 8000}, {"materialFluid": "Methanol", "amount": 12000}], "outputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 12000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}, {"fluid": "water", "amount": 9000}], +"optimize": false, "duration": 1040, "EUt": 480}, {"inputs": [{"circuit": 23}], "inputFluids": [{"gas": "Ammonia", "amount": 8000}, {"gas": "Oxygen", "amount": 7000}], "outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 6000}, {"fluid": "water", "amount": 9000}], +"optimize": false, "duration": 480, "EUt": 30}, {"inputs": [{"circuit": 23}], "inputFluids": [{"gas": "Nitrogen", "amount": 2000}, {"gas": "Hydrogen", "amount": 6000}, {"gas": "Oxygen", "amount": 7000}], "outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 6000}, {"fluid": "water", "amount": 9000}], +"optimize": false, "duration": 1100, "EUt": 480}, {"inputs": [{"circuit": 1}], "inputFluids": [{"gas": "Ammonia", "amount": 8000}, {"gas": "Oxygen", "amount": 5000}], "outputFluids": [{"gas": "NitricOxide", "amount": 4000}, {"fluid": "water", "amount": 9000}], +"optimize": false, "duration": 160, "EUt": 30}, {"inputs": [{"circuit": 2}], "inputFluids": [{"gas": "NitrogenDioxide", "amount": 6000}, {"fluid": "water", "amount": 3000}, {"gas": "Oxygen", "amount": 1000}], "outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}, {"fluid": "water", "amount": 1000}], +"optimize": false, "duration": 240, "EUt": 30}, {"inputs": [{"circuit": 24}], "inputFluids": [{"gas": "Hydrogen", "amount": 3000}, {"gas": "Nitrogen", "amount": 1000}, {"gas": "Oxygen", "amount": 4000}], "outputFluids": [{"materialFluid": "NitricAcid", "amount": 5000}, {"fluid": "water", "amount": 3000}], +"optimize": false, "duration": 320, "EUt": 480}, {"inputs": [{"circuit": 24}], "inputFluids": [{"gas": "Ammonia", "amount": 4000}, {"gas": "Oxygen", "amount": 4000}], "outputFluids": [{"materialFluid": "NitricAcid", "amount": 5000}, {"fluid": "water", "amount": 3000}], +"optimize": false, "duration": 320, "EUt": 30}, {"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 24}], "inputFluids": [{"gas": "Oxygen", "amount": 3000}, {"fluid": "water", "amount": 3000}], "outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"optimize": false, "duration": 480, "EUt": 30}, {"inputs": [{"circuit": 24}], "inputFluids": [{"gas": "HydricSulfide", "amount": 3000}, {"gas": "Oxygen", "amount": 4000}], "outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"optimize": false, "duration": 480, "EUt": 30}, {"inputs": [{"circuit": 24}], "inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}, {"gas": "Oxygen", "amount": 1000}, {"fluid": "water", "amount": 3000}], "outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"optimize": false, "duration": 480, "EUt": 30}, {"inputs": [{"circuit": 24}], "inputFluids": [{"materialFluid": "Benzene", "amount": 12000}, {"gas": "Chlorine", "amount": 2000}, {"fluid": "water", "amount": 3000}], "outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"optimize": false, "duration": 560, "EUt": 30}, {"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"circuit": 24}], "inputFluids": [{"materialFluid": "Benzene", "amount": 12000}, {"gas": "Chlorine", "amount": 2000}], "outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"optimize": false, "duration": 560, "EUt": 30}, diff --git a/src/main/resources/assets/gregtech/recipes/distillation_tower.json b/src/main/resources/assets/gregtech/recipes/distillation_tower.json index 1d76e76318..de61fbcb85 100644 --- a/src/main/resources/assets/gregtech/recipes/distillation_tower.json +++ b/src/main/resources/assets/gregtech/recipes/distillation_tower.json @@ -1,72 +1,88 @@ [ {"inputFluids": [{"materialFluid": "OilLight", "amount": 150}], "outputFluids": [{"materialFluid": "SulfuricHeavyFuel", "amount": 10}, {"materialFluid": "SulfuricLightFuel", "amount": 20}, {"materialFluid": "SulfuricNaphtha", "amount": 30}, {"gas": "SulfuricGas", "amount": 240}], +"optimize": false, "duration": 20, "EUt": 96}, {"inputFluids": [{"materialFluid": "OilMedium", "amount": 100}], "outputFluids": [{"materialFluid": "SulfuricHeavyFuel", "amount": 15}, {"materialFluid": "SulfuricLightFuel", "amount": 50}, {"materialFluid": "SulfuricNaphtha", "amount": 20}, {"gas": "SulfuricGas", "amount": 60}], +"optimize": false, "duration": 20, "EUt": 96}, {"inputFluids": [{"materialFluid": "Oil", "amount": 50}], "outputFluids": [{"materialFluid": "SulfuricHeavyFuel", "amount": 15}, {"materialFluid": "SulfuricLightFuel", "amount": 50}, {"materialFluid": "SulfuricNaphtha", "amount": 20}, {"gas": "SulfuricGas", "amount": 60}], +"optimize": false, "duration": 20, "EUt": 96}, {"inputFluids": [{"materialFluid": "OilHeavy", "amount": 100}], "outputFluids": [{"materialFluid": "SulfuricHeavyFuel", "amount": 250}, {"materialFluid": "SulfuricLightFuel", "amount": 45}, {"materialFluid": "SulfuricNaphtha", "amount": 15}, {"gas": "SulfuricGas", "amount": 60}], +"optimize": false, "duration": 20, "EUt": 288}, {"inputFluids": [{"materialFluid": "Creosote", "amount": 24}], "outputFluids": [{"materialFluid": "Lubricant", "amount": 12}], +"optimize": false, "duration": 16, "EUt": 96}, {"inputFluids": [{"materialFluid": "SeedOil", "amount": 32}], "outputFluids": [{"materialFluid": "Lubricant", "amount": 12}], +"optimize": false, "duration": 16, "EUt": 96}, {"inputFluids": [{"materialFluid": "FishOil", "amount": 24}], "outputFluids": [{"materialFluid": "Lubricant", "amount": 12}], +"optimize": false, "duration": 16, "EUt": 96}, {"inputFluids": [{"materialFluid": "Biomass", "amount": 600}], "outputFluids": [{"materialFluid": "Ethanol", "amount": 240}, {"fluid": "water", "amount": 240}], "outputs": [{"ore": "dustSmallWood", "count": 1}], +"optimize": false, "duration": 16, "EUt": 400}, {"inputFluids": [{"fluid": "water", "amount": 576}], "outputFluids": [{"fluid": "ic2distilledwater", "amount": 520}], +"optimize": false, "duration": 16, "EUt": 120}, {"inputFluids": [{"fluid": "potion.vinegar", "amount": 40}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 5}, {"fluid": "water", "amount": 35}], +"optimize": false, "duration": 20, "EUt": 64}, {"inputFluids": [{"gas": "CharcoalByproducts", "amount": 1000}], "outputFluids": [{"materialFluid": "WoodTar", "amount": 250}, {"materialFluid": "WoodVinegar", "amount": 500}, {"gas": "WoodGas", "amount": 250}], "outputs": [{"ore": "dustSmallCharcoal", "count": 1}], +"optimize": false, "duration": 40, "EUt": 256}, {"inputFluids": [{"gas": "WoodGas", "amount": 1000}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 490}, {"gas": "Ethylene", "amount": 20}, {"gas": "Methane", "amount": 130}, {"gas": "CarbonMonoxide", "amount": 340}, {"gas": "Hydrogen", "amount": 20}], +"optimize": false, "duration": 40, "EUt": 256}, {"inputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], "outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1000}, {"fluid": "water", "amount": 1000}], +"optimize": false, "duration": 600, "EUt": 120}, {"inputFluids": [{"materialFluid": "WoodVinegar", "amount": 1000}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 150}, {"fluid": "water", "amount": 500}, {"materialFluid": "Ethanol", "amount": 20}, {"materialFluid": "Methanol", "amount": 300}], +"optimize": false, "enableCondition": "!MoreComplicatedChemicalRecipes", "duration": 40, "EUt": 256}, {"inputFluids": [{"materialFluid": "WoodTar", "amount": 1000}], "outputFluids": [{"materialFluid": "Creosote", "amount": 500}, {"materialFluid": "Benzene", "amount": 425}, {"materialFluid": "Toluene", "amount": 75}], +"optimize": false, "enableCondition": "!MoreComplicatedChemicalRecipes", "duration": 40, "EUt": 256}, {"inputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], "outputFluids": [{"fluid": "water", "amount": 1000}, {"materialFluid": "HydrochloricAcid", "amount": 1000}], +"optimize": false, "enableCondition": "MoreComplicatedChemicalRecipes", "duration": 300, "EUt": 64}, @@ -74,12 +90,14 @@ {"inputFluids": [{"materialFluid": "CalciumAcetateSolution", "amount": 4500}], "outputFluids": [{"materialFluid": "Acetone", "amount": 2500}, {"fluid": "water", "amount": 750}, {"gas": "CarbonDioxide", "amount": 750}], "outputs": [{"ore": "dustSmallQuicklime", "count": 1}], +"optimize": false, "enableCondition": "MoreComplicatedChemicalRecipes", "duration": 100, "EUt": 240}, {"inputFluids": [{"materialFluid": "FermentedBiomass", "amount": 1000}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 25}, {"fluid": "water", "amount": 375}, {"materialFluid": "Ethanol", "amount": 150}, {"materialFluid": "Methanol", "amount": 150},{"gas": "Ammonia", "amount": 100}, {"gas": "CarbonDioxide", "amount": 400}, {"gas": "Methane", "amount": 600}], "outputs": [{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"optimize": false, "duration": 75, "EUt": 180}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/distillery.json b/src/main/resources/assets/gregtech/recipes/distillery.json index d7068649cb..da342bc7f6 100644 --- a/src/main/resources/assets/gregtech/recipes/distillery.json +++ b/src/main/resources/assets/gregtech/recipes/distillery.json @@ -1,20 +1,20 @@ [ {"inputFluids": [{"materialFluid": "OilLight", "amount": 150}], "fluidsPerCircuit": [{"materialFluid": "SulfuricHeavyFuel", "amount": 10}, {"materialFluid": "SulfuricLightFuel", "amount": 20}, {"materialFluid": "SulfuricNaphtha", "amount": 30}, {"gas": "SulfuricGas", "amount": 240}], -"duration": 20, -"EUt": 96}, +"duration": 40, +"EUt": 24}, {"inputFluids": [{"materialFluid": "OilMedium", "amount": 100}], "fluidsPerCircuit": [{"materialFluid": "SulfuricHeavyFuel", "amount": 15}, {"materialFluid": "SulfuricLightFuel", "amount": 50}, {"materialFluid": "SulfuricNaphtha", "amount": 20}, {"gas": "SulfuricGas", "amount": 60}], -"duration": 20, -"EUt": 96}, +"duration": 40, +"EUt": 24}, {"inputFluids": [{"materialFluid": "Oil", "amount": 50}], "fluidsPerCircuit": [{"materialFluid": "SulfuricHeavyFuel", "amount": 15}, {"materialFluid": "SulfuricLightFuel", "amount": 50}, {"materialFluid": "SulfuricNaphtha", "amount": 20}, {"gas": "SulfuricGas", "amount": 60}], -"duration": 20, -"EUt": 96}, +"duration": 40, +"EUt": 24}, {"inputFluids": [{"materialFluid": "OilHeavy", "amount": 100}], "fluidsPerCircuit": [{"materialFluid": "SulfuricHeavyFuel", "amount": 250}, {"materialFluid": "SulfuricLightFuel", "amount": 45}, {"materialFluid": "SulfuricNaphtha", "amount": 15}, {"gas": "SulfuricGas", "amount": 60}], -"duration": 20, -"EUt": 288}, +"duration": 40, +"EUt": 72}, {"inputs": [{"circuit": 1}], "inputFluids": [{"fluid": "liquid_extra_heavy_oil", "amount": 10}], @@ -93,8 +93,8 @@ "EUt": 24}, {"inputFluids": [{"fluid": "potion.vinegar", "amount": 40}], "fluidsPerCircuit": [{"materialFluid": "AceticAcid", "amount": 5}, {"fluid": "water", "amount": 35}], -"duration": 20, -"EUt": 64}, +"duration": 40, +"EUt": 16}, {"inputs": [{"circuit": 1}], "inputFluids": [{"materialFluid": "SaltWater", "amount": 1000}], @@ -148,33 +148,33 @@ {"inputFluids": [{"gas": "CharcoalByproducts", "amount": 1000}], "fluidsPerCircuit": [{"materialFluid": "WoodTar", "amount": 250}, {"materialFluid": "WoodVinegar", "amount": 500}, {"gas": "WoodGas", "amount": 250}], "outputs": [{"ore": "dustSmallCharcoal", "count": 1}], -"duration": 40, -"EUt": 256}, +"duration": 80, +"EUt": 64}, {"inputFluids": [{"gas": "WoodGas", "amount": 1000}], "fluidsPerCircuit": [{"gas": "CarbonDioxide", "amount": 490}, {"gas": "Ethylene", "amount": 20}, {"gas": "Methane", "amount": 130}, {"gas": "CarbonMonoxide", "amount": 340}, {"gas": "Hydrogen", "amount": 20}], -"duration": 40, -"EUt": 256}, +"duration": 80, +"EUt": 64}, {"inputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], "fluidsPerCircuit": [{"materialFluid": "SulfuricAcid", "amount": 1000}, {"fluid": "water", "amount": 1000}], -"duration": 600, -"EUt": 120}, +"duration": 1200, +"EUt": 30}, {"inputFluids": [{"materialFluid": "WoodVinegar", "amount": 1000}], "fluidsPerCircuit": [{"materialFluid": "AceticAcid", "amount": 150}, {"fluid": "water", "amount": 500}, {"materialFluid": "Ethanol", "amount": 20}, {"materialFluid": "Methanol", "amount": 300}], "enableCondition": "!MoreComplicatedChemicalRecipes", -"duration": 40, -"EUt": 256}, +"duration": 80, +"EUt": 64}, {"inputFluids": [{"materialFluid": "WoodTar", "amount": 1000}], "fluidsPerCircuit": [{"materialFluid": "Creosote", "amount": 500}, {"materialFluid": "Benzene", "amount": 425}, {"materialFluid": "Toluene", "amount": 75}], "enableCondition": "!MoreComplicatedChemicalRecipes", -"duration": 40, -"EUt": 256}, +"duration": 80, +"EUt": 64}, {"inputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], "fluidsPerCircuit": [{"fluid": "water", "amount": 1000}, {"materialFluid": "HydrochloricAcid", "amount": 1000}], "enableCondition": "MoreComplicatedChemicalRecipes", -"duration": 300, -"EUt": 64}, +"duration": 600, +"EUt": 16}, {"inputs": [{"circuit": 3}], "inputFluids": [{"materialFluid": "HeavyFuel", "amount": 100}], @@ -187,25 +187,25 @@ "fluidsPerCircuit": [{"materialFluid": "Acetone", "amount": 2500}, {"fluid": "water", "amount": 750}, {"gas": "CarbonDioxide", "amount": 750}], "outputs": [{"ore": "dustSmallQuicklime", "count": 1}], "enableCondition": "MoreComplicatedChemicalRecipes", -"duration": 100, -"EUt": 240}, +"duration": 200, +"EUt": 60}, {"inputFluids": [{"materialFluid": "WoodVinegar", "amount": 1000}], "fluidsPerCircuit": [{"materialFluid": "AceticAcid", "amount": 100}, {"fluid": "water", "amount": 500}, {"materialFluid": "Ethanol", "amount": 10}, {"materialFluid": "Methanol", "amount": 300}, {"materialFluid": "Acetone", "amount": 50}, {"materialFluid": "MethylAcetate", "amount": 10}], "enableCondition": "MoreComplicatedChemicalRecipes", -"duration": 40, -"EUt": 256}, +"duration": 80, +"EUt": 64}, {"inputFluids": [{"materialFluid": "WoodTar", "amount": 1000}], "fluidsPerCircuit": [{"materialFluid": "Creosote", "amount": 500}, {"materialFluid": "Phenol", "amount": 75}, {"materialFluid": "Benzene", "amount": 350}, {"materialFluid": "Toluene", "amount": 75}], "enableCondition": "MoreComplicatedChemicalRecipes", -"duration": 40, -"EUt": 256}, +"duration": 80, +"EUt": 64}, {"inputFluids": [{"materialFluid": "Acetone", "amount": 1000}], "fluidsPerCircuit": [{"gas": "Ethenone", "amount": 500}, {"gas": "Methane", "amount": 500}], "enableCondition": "MoreComplicatedChemicalRecipes", -"duration": 50, -"EUt": 640}, +"duration": 100, +"EUt": 160}, {"inputs": [{"circuit": 2}], "inputFluids": [{"materialFluid": "HeavyFuel", "amount": 100}], "outputFluids": [{"materialFluid": "Benzene", "amount": 40}], diff --git a/src/main/resources/assets/gregtech/recipes/fermenter.json b/src/main/resources/assets/gregtech/recipes/fermenter.json index 6ab1f48b37..e359420752 100644 --- a/src/main/resources/assets/gregtech/recipes/fermenter.json +++ b/src/main/resources/assets/gregtech/recipes/fermenter.json @@ -2,181 +2,223 @@ {"inputFluids":[{"fluid": "milk", "amount": 50}], "outputFluids":[{"fluid": "potion.mundane", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.lemonjuice", "amount": 50}], "outputFluids":[{"fluid": "potion.limoncello", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2, "hidden": true}, {"inputFluids":[{"fluid": "potion.applejuice", "amount": 50}], "outputFluids":[{"fluid": "potion.cider", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.goldenapplejuice", "amount": 50}], "outputFluids":[{"fluid": "potion.goldencider", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2, "hidden": true}, {"inputFluids":[{"fluid": "potion.idunsapplejuice", "amount": 50}], "outputFluids":[{"fluid": "potion.notchesbrew", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2, "hidden": true}, {"inputFluids":[{"fluid": "potion.reedwater", "amount": 50}], "outputFluids":[{"fluid": "potion.rum", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2, "hidden": true}, {"inputFluids":[{"fluid": "potion.rum", "amount": 50}], "outputFluids":[{"fluid": "potion.piratebrew", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.grapejuice", "amount": 50}], "outputFluids":[{"fluid": "potion.wine", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.wheatyjuice", "amount": 50}], "outputFluids":[{"fluid": "potion.scotch", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2, "hidden": true}, {"inputFluids":[{"fluid": "potion.scotch", "amount": 50}], "outputFluids":[{"fluid": "potion.glenmckenner", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2, "hidden": true}, {"inputFluids":[{"fluid": "potion.wheatyhopsjuice", "amount": 50}], "outputFluids":[{"fluid": "potion.beer", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.hopsjuice", "amount": 50}], "outputFluids":[{"fluid": "potion.darkbeer", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.darkbeer", "amount": 50}], "outputFluids":[{"fluid": "potion.dragonblood", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2, "hidden": true}, {"inputFluids":[{"fluid": "potion.beer", "amount": 75}], "outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.cider", "amount": 75}], "outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.goldencider", "amount": 75}], "outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"optimize": false, "duration": 2048, "EUt": 2, "hidden": true}, {"inputFluids":[{"fluid": "potion.rum", "amount": 75}], "outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.wine", "amount": 75}], "outputFluids":[{"fluid": "potion.vinegar", "amount": 50}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.awkward", "amount": 50}], "outputFluids":[{"fluid": "potion.weakness", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.mundane", "amount": 50}], "outputFluids":[{"fluid": "potion.weakness", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.thick", "amount": 50}], "outputFluids":[{"fluid": "potion.weakness", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.poison", "amount": 50}], "outputFluids":[{"fluid": "potion.damage", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.health", "amount": 50}], "outputFluids":[{"fluid": "potion.damage", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.waterbreathing", "amount": 50}], "outputFluids":[{"fluid": "potion.damage", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.nightvision", "amount": 50}], "outputFluids":[{"fluid": "potion.invisibility", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.fireresistance", "amount": 50}], "outputFluids":[{"fluid": "potion.slowness", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.speed", "amount": 50}], "outputFluids":[{"fluid": "potion.slowness", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.strength", "amount": 50}], "outputFluids":[{"fluid": "potion.weakness", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.regen", "amount": 50}], "outputFluids":[{"fluid": "potion.poison", "amount": 25}], +"optimize": false, "duration": 1024, "EUt": 2}, {"inputFluids":[{"fluid": "potion.poison.strong", "amount": 50}], "outputFluids":[{"fluid": "potion.damage.strong", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.health.strong", "amount": 50}], "outputFluids":[{"fluid": "potion.damage.strong", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.speed.strong", "amount": 50}], "outputFluids":[{"fluid": "potion.slowness.strong", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.strength.strong", "amount": 50}], "outputFluids":[{"fluid": "potion.weakness.strong", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.nightvision.long", "amount": 50}], "outputFluids":[{"fluid": "potion.invisibility.long", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.regen.strong", "amount": 50}], "outputFluids":[{"fluid": "potion.poison.strong", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.poison.long", "amount": 50}], "outputFluids":[{"fluid": "potion.damage.long", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.waterbreathing.long", "amount": 50}], "outputFluids":[{"fluid": "potion.damage.long", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.fireresistance.long", "amount": 50}], "outputFluids":[{"fluid": "potion.slowness.long", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.speed.long", "amount": 50}], "outputFluids":[{"fluid": "potion.slowness.long", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.strength.long", "amount": 50}], "outputFluids":[{"fluid": "potion.weakness.long", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids":[{"fluid": "potion.regen.long", "amount": 50}], "outputFluids":[{"fluid": "potion.poison.long", "amount": 10}], +"optimize": false, "duration": 2048, "EUt": 2}, {"inputFluids": [{"materialFluid": "Biomass", "amount": 100}], "outputFluids": [{"materialFluid": "FermentedBiomass", "amount": 100}], +"optimize": false, "duration": 150, "EUt": 2}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json index f2d1dea84d..553933495d 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_extractor.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_extractor.json @@ -62,11 +62,11 @@ "EUt": 4}, {"inputs":[{"item": "minecraft:coal:1", "count": 1}], "outputs":[{"ore": "dustAsh", "count": 1, "chance": 0.1}], -"fluidOutputs":[{"fluid": "woodtar", "amount": 40}], +"fluidOutputs":[{"fluid": "woodtar", "amount": 100}], "duration": 128, "EUt": 4}, {"inputs":[{"ore": "dustWood", "count": 1}], -"outputs":[{"item": "GTItemList:IC2_Plantball", "count": 1, "chance": 0.1}], +"outputs":[{"item": "GTItemList:IC2_Plantball", "count": 1, "chance": 0.01}], "fluidOutputs":[{"fluid": "creosote", "amount": 5}], "duration": 16, "EUt": 4}, @@ -84,7 +84,7 @@ "duration": 128, "EUt": 4}, {"inputs":[{"ore": "dustMonazite", "count": 1}], -"fluidOutputs":[{"fluid": "helium", "amount": 1000}], +"fluidOutputs":[{"fluid": "helium", "amount": 200}], "duration": 64, "EUt": 64}, {"inputs":[{"item": "minecraft:snowball", "count": 1}], diff --git a/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json b/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json index f16813b926..c3579b216b 100644 --- a/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json +++ b/src/main/resources/assets/gregtech/recipes/fluid_solidifier.json @@ -100,10 +100,10 @@ "duration": 1024, "EUt": 4}, {"inputs":[{"item": "GTItemList:Shape_Mold_Cylinder", "count": 0}], -"inputFluids":[{"fluid": "molten.cheese", "amount": 250}], +"inputFluids":[{"fluid": "molten.cheese", "amount": 144}], "outputs":[{"item": "GTItemList:Food_Cheese", "count": 1}], "duration": 64, -"EUt": 4}, +"EUt": 8}, {"inputs":[{"item": "GTItemList:Shape_Mold_Anvil", "count": 0}], "inputFluids":[{"fluid": "molten.iron", "amount": 4464}], "outputs":[{"item": "minecraft:anvil", "count": 1}], @@ -111,7 +111,12 @@ "EUt": 16}, {"inputs":[{"item": "GTItemList:Shape_Mold_Anvil", "count": 0}], "inputFluids":[{"fluid": "molten.steel", "amount": 4464}], -"outputs":[{"item": "Railcraft:tile.railcraft.anvil", "count": 1}], +"outputs":[{"item": "Railcraft:tile.railcraft.block.anvil", "count": 1}], +"duration": 128, +"EUt": 16}, +{"inputs":[{"item": "GTItemList:Shape_Mold_Anvil", "count": 0}], +"inputFluids":[{"fluid": "molten.steel", "amount": 4464}], +"outputs":[{"item": "Railcraft:anvil", "count": 1}], "duration": 128, "EUt": 16}, diff --git a/src/main/resources/assets/gregtech/recipes/fusion_reactor.json b/src/main/resources/assets/gregtech/recipes/fusion_reactor.json index 3637ea799b..dfc9266fe5 100644 --- a/src/main/resources/assets/gregtech/recipes/fusion_reactor.json +++ b/src/main/resources/assets/gregtech/recipes/fusion_reactor.json @@ -1,127 +1,152 @@ [ {"inputFluids":[{"fluid": "molten.lithium", "amount": 16}, {"fluid": "molten.tungsten", "amount": 16}], "outputFluids":[{"fluid": "molten.iridium", "amount": 16}], +"optimize": false, "duration":32, "EUt":32768, "startingCost":300000000}, {"inputFluids":[{"fluid": "deuterium", "amount": 125}, {"fluid": "tritium", "amount": 125}], "outputFluids":[{"fluid": "plasma.helium", "amount": 125}], +"optimize": false, "duration":16, "EUt":4096, "startingCost":40000000}, {"inputFluids":[{"fluid": "deuterium", "amount": 125}, {"fluid": "helium-3", "amount": 125}], "outputFluids":[{"fluid": "plasma.helium", "amount": 125}], +"optimize": false, "duration":16, "EUt":2048, "startingCost":60000000}, {"inputFluids":[{"fluid": "molten.carbon", "amount": 125}, {"fluid": "helium-3", "amount": 125}], "outputFluids":[{"fluid": "plasma.oxygen", "amount": 125}], +"optimize": false, "duration":32, "EUt":4096, "startingCost":80000000}, {"inputFluids":[{"fluid": "molten.aluminium", "amount": 16}, {"fluid": "molten.lithium", "amount": 16}], "outputFluids":[{"fluid": "plasma.sulfur", "amount": 125}], +"optimize": false, "duration":32, "EUt":10240, "startingCost":240000000}, {"inputFluids":[{"fluid": "molten.beryllium", "amount": 16}, {"fluid": "deuterium", "amount": 375}], "outputFluids":[{"fluid": "plasma.nitrogen", "amount": 175}], +"optimize": false, "duration":16, "EUt":16384, "startingCost":180000000}, {"inputFluids":[{"fluid": "molten.silicon", "amount": 16}, {"fluid": "molten.magnesium", "amount": 16}], "outputFluids":[{"fluid": "plasma.iron", "amount": 125}], +"optimize": false, "duration":32, "EUt":8192, "startingCost":360000000}, {"inputFluids":[{"fluid": "molten.potassium", "amount": 16}, {"fluid": "fluorine", "amount": 125}], "outputFluids":[{"fluid": "plasma.nickel", "amount": 125}], +"optimize": false, "duration":16, "EUt":32768, "startingCost":480000000}, {"inputFluids":[{"fluid": "molten.beryllium", "amount": 16}, {"fluid": "molten.tungsten", "amount": 16}], "outputFluids":[{"fluid": "molten.platinum", "amount": 16}], +"optimize": false, "duration":32, "EUt":32768, "startingCost":150000000}, {"inputFluids":[{"fluid": "molten.neodymium", "amount": 16}, {"fluid": "hydrogen", "amount": 48}], "outputFluids":[{"fluid": "molten.europium", "amount": 16}], +"optimize": false, "duration":64, "EUt":24576, "startingCost":150000000}, {"inputFluids":[{"fluid": "molten.lutetium", "amount": 16}, {"fluid": "molten.chrome", "amount": 16}], "outputFluids":[{"fluid": "molten.americium", "amount": 16}], +"optimize": false, "duration":96, "EUt":49152, "startingCost":200000000}, {"inputFluids":[{"fluid": "molten.plutonium", "amount": 16}, {"fluid": "molten.thorium", "amount": 16}], "outputFluids":[{"fluid": "molten.naquadah", "amount": 16}], +"optimize": false, "duration":64, "EUt":32768, "startingCost":300000000}, {"inputFluids":[{"fluid": "molten.americium", "amount": 16}, {"fluid": "molten.naquadria", "amount": 16}], "outputFluids":[{"fluid": "molten.neutronium", "amount": 1}], +"optimize": false, "duration":1200, "EUt":98304, "startingCost":600000000}, {"inputFluids":[{"fluid": "molten.tungsten", "amount": 16}, {"fluid": "helium", "amount": 16}], "outputFluids":[{"fluid": "molten.osmium", "amount": 16}], +"optimize": false, "duration":64, "EUt":24578, "startingCost":150000000}, {"inputFluids":[{"fluid": "molten.manganese", "amount": 16}, {"fluid": "hydrogen", "amount": 16}], "outputFluids":[{"fluid": "molten.iron", "amount": 16}], +"optimize": false, "duration":64, "EUt":8192, "startingCost":120000000}, {"inputFluids":[{"fluid": "mercury", "amount": 16}, {"fluid": "molten.magnesium", "amount": 16}], "outputFluids":[{"fluid": "molten.uranium", "amount": 16}], +"optimize": false, "duration":64, "EUt":49152, "startingCost":240000000}, {"inputFluids":[{"fluid": "molten.gold", "amount": 16}, {"fluid": "molten.aluminium", "amount": 16}], "outputFluids":[{"fluid": "molten.uranium", "amount": 16}], +"optimize": false, "duration":64, "EUt":49152, "startingCost":240000000}, {"inputFluids":[{"fluid": "molten.uranium", "amount": 16}, {"fluid": "helium", "amount": 16}], "outputFluids":[{"fluid": "molten.plutonium", "amount": 16}], +"optimize": false, "duration":128, "EUt":49152, "startingCost":480000000}, {"inputFluids":[{"fluid": "molten.vanadium", "amount": 16}, {"fluid": "hydrogen", "amount": 125}], "outputFluids":[{"fluid": "molten.chrome", "amount": 16}], +"optimize": false, "duration":64, "EUt":24576, "startingCost":140000000}, {"inputFluids":[{"fluid": "molten.gallium", "amount": 16}, {"fluid": "radon", "amount": 125}], "outputFluids":[{"fluid": "molten.duranium", "amount": 16}], +"optimize": false, "duration":64, "EUt":16384, "startingCost":140000000}, {"inputFluids":[{"fluid": "molten.titanium", "amount": 48}, {"fluid": "molten.duranium", "amount": 32}], "outputFluids":[{"fluid": "molten.tritanium", "amount": 16}], +"optimize": false, "duration":64, "EUt":32768, "startingCost":200000000}, {"inputFluids":[{"fluid": "molten.gold", "amount": 16}, {"fluid": "mercury", "amount": 16}], "outputFluids":[{"fluid": "radon", "amount": 125}], +"optimize": false, "duration":64, "EUt":32768, "startingCost":200000000}, {"inputFluids":[{"fluid": "molten.tantalum", "amount": 16}, {"fluid": "tritium", "amount": 16}], "outputFluids":[{"fluid": "molten.tungsten", "amount": 16}], +"optimize": false, "duration":16, "EUt":24576, "startingCost":200000000}, {"inputFluids":[{"fluid": "molten.silver", "amount": 16}, {"fluid": "molten.lithium", "amount": 16}], "outputFluids":[{"fluid": "molten.indium", "amount": 16}], +"optimize": false, "duration":32, "EUt":24576, "startingCost":380000000}, {"inputFluids":[{"fluid": "molten.naquadahenriched", "amount": 15}, {"fluid": "radon", "amount": 125}], "outputFluids":[{"fluid": "molten.naquadria", "amount": 3}], +"optimize": false, "duration":64, "EUt":49152, "startingCost":400000000}, diff --git a/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json index db2abb236b..bcc3eddf31 100644 --- a/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json +++ b/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json @@ -2,98 +2,116 @@ {"inputs": [{"item": "minecraft:paper", "count": 1}, {"item": "minecraft:string", "count": 1}], "inputFluids": [{"fluid": "glyceryl", "amount": 500}], "outputs": [{"item": "IC2:itemDynamite", "count": 1}], +"optimize": false, "duration": 160, "EUt": 4}, {"inputs":[{"ore": "crushedPurifiedGalena", "count": 3}, {"ore": "crushedPurifiedSphalerite", "count": 1}], "inputFluids":[{"fluid": "sulfuricacid", "amount": 4000}], "outputFluids":[{"fluid": "indiumconcentrate", "amount": 8000}], +"optimize": false, "duration": 60, "EUt": 150}, {"inputs":[{"ore": "dustAluminium", "count": 4}], "inputFluids":[{"fluid": "indiumconcentrate", "amount": 8000}], "outputFluids":[{"fluid": "leadzincsolution", "amount": 8000}], "outputs":[{"ore": "dustTinyIndium", "count": 1}], +"optimize": false, "duration": 50, "EUt": 600}, {"inputs":[{"ore": "crushedPurifiedPentlandite", "count": 1}], "inputFluids":[{"fluid": "nitricacid", "amount": 1000}], "outputFluids":[{"fluid": "solution.nickelsulfate", "amount": 9000}], "outputs":[{"ore": "dustTinyPlatinumGroupSludge", "count": 1}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs":[{"ore": "crushedPurifiedChalcopyrite", "count": 1}], "inputFluids":[{"fluid": "nitricacid", "amount": 1000}], "outputFluids":[{"fluid": "solution.bluevitriol", "amount": 9000}], "outputs":[{"ore": "dustTinyPlatinumGroupSludge", "count": 1}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs":[{"ore": "platePlastic", "count": 1}, {"ore": "foilCopper", "count": 1}], "inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], "outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 1}], +"optimize": false, "duration": 500, "EUt": 10}, {"inputs":[{"ore": "platePolyvinylChloride", "count": 1}, {"ore": "foilCopper", "count": 1}], "inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], "outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 2}], +"optimize": false, "duration": 500, "EUt": 10}, {"inputs":[{"ore": "platePolytetrafluoroethylene", "count": 1}, {"ore": "foilCopper", "count": 1}], "inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], "outputs":[{"item": "GTItemList:Circuit_Board_Plastic", "count": 4}], +"optimize": false, "duration": 500, "EUt": 10}, {"inputs":[{"ore": "plateEpoxid", "count": 1}, {"ore": "foilCopper", "count": 1}], "inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], "outputs":[{"item": "GTItemList:Circuit_Board_Epoxy", "count": 1}], +"optimize": false, "duration": 500, "EUt": 10}, {"inputs":[{"ore": "plateEpoxidFiberReinforced", "count": 1}, {"ore": "foilCopper", "count": 1}], "inputFluids":[{"fluid": "sulfuricacid", "amount": 125}], "outputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}], +"optimize": false, "duration": 500, "EUt": 10}, {"inputs":[{"item": "GTItemList:Circuit_Board_Fiberglass", "count": 1}, {"ore": "foilElectrum", "count": 16}], "inputFluids":[{"fluid": "sulfuricacid", "amount": 250}], "outputs":[{"item": "GTItemList:Circuit_Board_Multifiberglass", "count": 1}], +"optimize": false, "duration": 100, "EUt": 480}, {"inputs":[{"item": "GTItemList:Circuit_Wafer_PIC", "count": 1}, {"ore": "dustIndiumGalliumPhosphide", "count": 2}], "inputFluids":[{"fluid": "molten.redalloy", "amount": 288}], "outputs":[{"item": "GTItemList:Circuit_Wafer_HPIC", "count": 1}], +"optimize": false, "duration": 1200, "EUt": 1920}, {"inputs":[{"item": "GTItemList:Circuit_Wafer_CPU", "count": 1}, {"item": "IC2:itemPartCarbonFibre", "count": 16}], "inputFluids":[{"fluid": "molten.glowstone", "amount": 576}], "outputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}], +"optimize": false, "duration": 400, "EUt": 1920}, {"inputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}, {"ore": "dustIndiumGalliumPhosphide", "count": 1}], "inputFluids":[{"fluid": "radon", "amount": 50}], "outputs":[{"item": "GTItemList:Circuit_Wafer_QuantumCPU", "count": 1}], +"optimize": false, "duration": 600, "EUt": 1920}, {"inputs":[{"item": "GTItemList:Circuit_Wafer_NanoCPU", "count": 1}, {"item": "GTItemList:QuantumEye", "count": 2}], "inputFluids":[{"fluid": "molten.galliumarsenide", "amount": 288}], "outputs":[{"item": "GTItemList:Circuit_Wafer_QuantumCPU", "count": 1}], +"optimize": false, "duration": 400, "EUt": 1920}, {"inputs": [{"item": "GTItemList:GelledToluene", "count": 4}], "inputFluids": [{"fluid": "sulfuricacid", "amount": 250}], -"outputs": [{"item": "minecraft:tnt", "count":1}], +"outputs": [{"item": "minecraft:tnt", "count":1}], +"optimize": false, "duration": 200, "EUt": 24}, {"inputs": [{"item": "minecraft:sugar", "count": 1}, {"ore": "dustTinyPlastic", "count": 1}], "inputFluids": [{"fluid": "liquid_toluene", "amount": 133}], -"outputs": [{"item": "GTItemList:GelledToluene", "count": 2}], +"outputs": [{"item": "GTItemList:GelledToluene", "count": 2}], +"optimize": false, "duration": 140, "EUt": 192}, {"inputs": [{"item": "GTItemList:GelledToluene", "count": 4}], "inputFluids": [{"fluid": "liquid_nitrationmixture", "amount": 200}], "outputFluids": [{"fluid": "dilutedsulfuricacid", "amount": 200}], -"outputs": [{"item": "IC2:blockITNT", "count": 1}], +"outputs": [{"item": "IC2:blockITNT", "count": 1}], +"optimize": false, "duration": 80, "EUt": 480}, @@ -101,67 +119,78 @@ "inputFluids":[{"fluid": "gas_natural_gas", "amount": 16000}], "outputFluids":[{"fluid": "gas_gas", "amount": 16000}], "outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellNatruralGas", "count": 16}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "hydrogen", "amount": 1000}], "outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], "outputs":[{"ore": "cellGas", "count": 16}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "gas_sulfuricgas", "amount": 16000}], "outputFluids":[{"fluid": "gas_gas", "amount": 16000}], "outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellSulfuricGas", "count": 16}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "hydrogen", "amount": 1000}], "outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], "outputs":[{"ore": "cellGas", "count": 16}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "liquid_sulfuricnaphtha", "amount": 12000}], "outputFluids":[{"fluid": "liquid_naphtha", "amount": 12000}], "outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellSulfuricNaphtha", "count": 12}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "hydrogen", "amount": 1000}], "outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], "outputs":[{"ore": "cellNaphtha", "count": 12}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "liquid_sufluriclight_fuel", "amount": 12000}], "outputFluids":[{"fluid": "liquid_light_fuel", "amount": 12000}], "outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellSulfuricLightFuel", "count": 12}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "hydrogen", "amount": 1000}], "outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], "outputs":[{"ore": "cellLightFuel", "count": 12}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellHydrogen", "count": 1}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "liquid_sulfuricheavy_fuel", "amount": 8000}], "outputFluids":[{"fluid": "liquid_heavy_fuel", "amount": 8000}], "outputs":[{"ore": "cellHydricSulfide", "count": 1}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "cellSulfuricHeavyFuel", "count": 8}, {"item": "gregtech:gt.integrated_circuit:4", "count": 0}], "inputFluids":[{"fluid": "hydrogen", "amount": 1000}], "outputFluids":[{"fluid": "liquid_hydricsulfur", "amount": 1000}], "outputs":[{"ore": "cellHeavyFuel", "count": 8}], +"optimize": false, "duration": 160, "EUt":30}, {"inputs": [{"ore": "dustSaltpeter", "count": 1}], "inputFluids": [{"fluid": "liquid_naphtha", "amount": 576}], "outputFluids": [{"fluid": "molten.polycaprolactam", "amount": 1296}], -"outputs": [{"ore": "dustTinyPotassium", "count": 1}], +"outputs": [{"ore": "dustTinyPotassium", "count": 1}], +"optimize": false, "duration": 640, "EUt": 30}, @@ -169,201 +198,241 @@ {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustSulfur", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustSulfur", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustAsh", "count": 3}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"optimize": false, "duration": 100, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustAsh", "count": 3}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"optimize": false, "duration": 100, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"optimize": false, "duration": 100, "EUt":30}, {"inputs": [{"ore": "dustCalcite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 1}], +"optimize": false, "duration": 100, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustSulfur", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustSulfur", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"optimize": false, "duration": 400, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"optimize": false, "duration": 400, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustPhosphate", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustPhosphate", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustAsh", "count": 3}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustAsh", "count": 3}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustSulfur", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustSulfur", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"optimize": false, "duration": 400, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"optimize": false, "duration": 400, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustAsh", "count": 3}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustAsh", "count": 3}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustApatite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustSulfur", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustSulfur", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"optimize": false, "duration": 400, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustTricalciumPhosphate", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 4}], +"optimize": false, "duration": 400, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustPhosphate", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 3}], +"optimize": false, "duration": 300, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustAsh", "count": 3}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustAsh", "count": 3}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustGlauconite", "count": 1}, {"ore": "dustDarkAsh", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"item": "GTItemList:IC2_Fertilizer", "count": 2}], +"optimize": false, "duration": 200, "EUt":30}, {"inputs": [{"ore": "dustGlauconiteSand", "count": 1}, {"ore": "dustSulfur", "count": 1}], @@ -430,180 +499,215 @@ {"inputs": [{"ore": "dustNetherQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemNetherQuartz", "count": 3}], +"optimize": false, "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustCertusQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemCertusQuartz", "count": 3}], +"optimize": false, "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustQuartzite", "count": 3}, {"ore": "dustSodium", "count": 1}], "inputFluids":[{"fluid": "water", "amount": 1000}], "outputs":[{"ore": "gemQuartzite", "count": 3}], +"optimize": false, "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustNetherQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"ore": "gemNetherQuartz", "count": 3}], +"optimize": false, "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustCertusQuartz", "count": 3}, {"ore": "dustSodium", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"ore": "gemCertusQuartz", "count": 3}], +"optimize": false, "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustQuartzite", "count": 3}, {"ore": "dustSodium", "count": 1}], "inputFluids":[{"fluid": "ic2distilledwater", "amount": 1000}], "outputs":[{"ore": "gemQuartzite", "count": 3}], +"optimize": false, "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustUraninite", "count": 1}, {"ore": "dustAluminium", "count": 1}], "outputs":[{"ore": "dustUranium", "count": 1}], +"optimize": false, "duration": 1000, "EUt": 30}, {"inputs": [{"ore": "dustUraninite", "count": 1}, {"ore": "dustMagnesium", "count": 1}], "outputs":[{"ore": "dustUranium", "count": 1}], +"optimize": false, "duration": 1000, "EUt": 30}, {"inputs": [{"ore": "dustCalcium", "count": 1}, {"ore": "dustCarbon", "count": 1}], "inputFluids":[{"gas": "Oxygen", "amount": 3000}], "outputs":[{"ore": "dustCalcite", "count": 5}], +"optimize": false, "duration": 500, "EUt": 30}, {"inputs": [{"ore": "dustCarbon", "count": 1}, {"item": "gregtech:gt.integrated_circuit:1", "count": 0}], "inputFluids":[{"gas": "Hydrogen", "amount": 4000}], "outputFluids":[{"gas": "Methane", "amount": 5000}], +"optimize": false, "duration": 14000, "EUt": 30}, {"inputs": [{"item": "gregtech:gt.integrated_circuit:1", "count": 0}], "inputFluids": [{"gas": "Hydrogen", "amount": 2000}, {"gas": "Oxygen", "amount": 1000}], -"outputFluids": [{"fluid": "ic2distilledwater", "amount": 1000}], +"outputFluids": [{"fluid": "ic2distilledwater", "amount": 1000}], +"optimize": false, "duration": 10, "EUt": 30}, {"inputs": [{"ore": "dustTin", "count": 1}, {"ore": "dustSaltpeter", "count": 1}], "inputFluids":[{"molten": "Glass", "amount": 864}], "outputs":[{"item": "Railcraft:tile.railcraft.glass", "count": 6}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs": [{"ore": "dustRutile", "count": 1}, {"ore": "cellCarbon", "count": 2}], "inputFluids":[{"gas": "Chlorine", "amount": 4000}], "outputFluids":[{"materialFluid": "Titaniumtetrachloride", "amount": 1000}], "outputs":[{"ore": "cellCarbonMonoxide", "count": 2}], +"optimize": false, "duration": 500, "EUt": 480}, {"inputs": [{"ore": "dustRutile", "count": 1}, {"ore": "dustCarbon", "count": 2}], "inputFluids":[{"gas": "Chlorine", "amount": 4000}], "outputFluids":[{"materialFluid": "Titaniumtetrachloride", "amount": 1000}], +"optimize": false, "duration": 500, "EUt": 480}, {"inputs": [{"ore": "dustSodium", "count": 1}, {"ore": "dustMagnesiumchloride", "count": 2}], "outputFluids":[{"gas": "Chlorine", "amount": 3000}], "outputs":[{"ore": "dustSmallMagnesium", "count": 6}], +"optimize": false, "duration": 300, "EUt": 240}, {"inputs": [{"ore": "dustRawRubber", "count": 9}, {"ore": "dustSulfur", "count": 1}], "outputFluids":[{"molten": "Rubber", "amount": 1296}], +"optimize": false, "duration": 600, "EUt": 16}, {"inputs": [{"ore": "nuggetGold", "count": 8}, {"item": "minecraft:melon:*", "count": 1}], "outputs":[{"item": "minecraft:speckled_melon:0", "count": 1}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs": [{"ore": "nuggetGold", "count": 8}, {"item": "minecraft:carrot:*", "count": 1}], "outputs":[{"item": "minecraft:golden_carrot:0", "count": 1}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs": [{"ore": "ingotGold", "count": 8}, {"item": "minecraft:apple:*", "count": 1}], "outputs":[{"item": "minecraft:golden_apple:0", "count": 1}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs": [{"ore": "blockGold", "count": 8}, {"item": "minecraft:apple:*", "count": 1}], "outputs":[{"item": "minecraft:golden_apple:1", "count": 1}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs": [{"ore": "dustBlaze", "count": 1}, {"ore": "gemEnderPearl", "count": 1}], "outputs":[{"ore": "gemEnderEye", "count": 1}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs": [{"ore": "dustBlaze", "count": 1}, {"item": "minecraft:slime_ball:*", "count": 1}], "outputs":[{"item": "minecraft:magma_cream:0", "count": 1}], +"optimize": false, "duration": 50, "EUt": 30}, {"inputs": [{"ore": "dustPotassium", "count": 1}, {"ore": "cellOxygen", "count": 3}], "inputFluids": [{"gas": "Nitrogen", "amount": 1000}], "outputs": [{"ore": "dustSaltpeter", "count": 5}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, "duration": 180, "EUt": 30}, {"inputs": [{"ore": "dustPotassium", "count": 1}, {"ore": "cellNitrogen", "count": 1}], "inputFluids": [{"gas": "Oxygen", "amount": 3000}], "outputs": [{"ore": "dustSaltpeter", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, "duration": 180, "EUt": 30}, {"inputs": [{"ore": "dustCarbon", "count": 1}, {"circuit": 1}], "inputFluids": [{"gas": "Oxygen", "amount": 1000}], "outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], +"optimize": false, "duration": 40, "EUt": 8}, {"inputs": [{"ore": "gemCoal", "count": 1}, {"circuit": 1}], "inputFluids": [{"gas": "Oxygen", "amount": 1000}], "outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], "outputs": [{"ore": "dustTinyAsh", "count": 1}], +"optimize": false, "duration": 80, "EUt": 8}, {"inputs": [{"ore": "dustCoal", "count": 1}, {"circuit": 1}], "inputFluids": [{"gas": "Oxygen", "amount": 1000}], "outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], "outputs": [{"ore": "dustTinyAsh", "count": 1}], +"optimize": false, "duration": 80, "EUt": 8}, {"inputs": [{"ore": "gemCharcoal", "count": 1}, {"circuit": 1}], "inputFluids": [{"gas": "Oxygen", "amount": 1000}], "outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], "outputs": [{"ore": "dustTinyAsh", "count": 1}], +"optimize": false, "duration": 80, "EUt": 8}, {"inputs": [{"ore": "dustCharcoal", "count": 1}, {"circuit": 1}], "inputFluids": [{"gas": "Oxygen", "amount": 1000}], "outputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], "outputs": [{"ore": "dustTinyAsh", "count": 1}], +"optimize": false, "duration": 80, "EUt": 8}, {"inputs": [{"ore": "dustCarbon", "count": 1}, {"circuit": 2}], "inputFluids": [{"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], +"optimize": false, "duration": 40, "EUt": 8}, {"inputs": [{"ore": "gemCoal", "count": 1}, {"circuit": 2}], "inputFluids": [{"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "dustTinyAsh", "count": 1}], +"optimize": false, "duration": 40, "EUt": 8}, {"inputs": [{"ore": "dustCoal", "count": 1}, {"circuit": 2}], "inputFluids": [{"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "dustTinyAsh", "count": 1}], +"optimize": false, "duration": 40, "EUt": 8}, {"inputs": [{"ore": "gemCharcoal", "count": 1}, {"circuit": 2}], "inputFluids": [{"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "dustTinyAsh", "count": 1}], +"optimize": false, "duration": 40, "EUt": 8}, {"inputs": [{"ore": "dustCharcoal", "count": 1}, {"circuit": 2}], "inputFluids": [{"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "dustTinyAsh", "count": 1}], +"optimize": false, "duration": 40, "EUt": 8}, {"inputs": [{"ore": "dustCarbon", "count": 1}], "inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputFluids": [{"gas": "CarbonMonoxide", "amount": 4000}], +"optimize": false, "duration": 800, "EUt": 30}, @@ -611,46 +715,54 @@ "inputFluids": [{"gas": "Hydrogen", "amount": 4000}], "outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], "outputs": [{"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 600, "EUt": 120}, {"inputs": [{"ore": "cellHydrogen", "count": 4}, {"circuit": 1}], "inputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], "outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], "outputs": [{"ore": "cellEmpty", "count": 4}], +"optimize": false, "duration": 600, "EUt": 120}, {"inputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"circuit": 1}], "inputFluids": [{"gas": "Hydrogen", "amount": 6000}], "outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], "outputs": [{"ore": "cellWater", "count": 3}], +"optimize": false, "duration": 600, "EUt": 120}, {"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 1}], "inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], "outputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, "duration": 600, "EUt": 120}, {"inputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"circuit": 2}], "inputFluids": [{"gas": "Hydrogen", "amount": 6000}], "outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], "outputs": [{"ore": "cellEmpty", "count": 3}], +"optimize": false, "duration": 600, "EUt": 120}, {"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 2}], "inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], "outputs": [{"ore": "cellEmpty", "count": 6}], +"optimize": false, "duration": 600, "EUt": 120}, {"inputs": [{"ore": "cellHydrogen", "count": 6}, {"circuit": 12}], "inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "cellMethanol", "count": 6}], +"optimize": false, "duration": 600, "EUt": 120}, {"inputs": [{"ore": "dustCarbon", "count": 1}, {"circuit": 23}], "inputFluids": [{"gas": "Hydrogen", "amount": 4000}, {"gas": "Oxygen", "amount": 1000}], -"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"optimize": false, "duration": 720, "EUt": 120}, @@ -658,34 +770,40 @@ "inputFluids": [{"gas": "CarbonMonoxide", "amount": 2000}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], "outputs": [{"ore": "cellEmpty", "count": 6}], +"optimize": false, "duration": 300, "EUt": 30}, {"inputs": [{"ore": "cellCarbonMonoxide", "count": 2}, {"circuit": 1}], "inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], "outputs": [{"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 300, "EUt": 30}, {"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 9}], "inputFluids": [{"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], "outputs": [{"ore": "cellEmpty", "count": 6}], +"optimize": false, "duration": 100, "EUt": 30}, {"inputs": [{"ore": "cellOxygen", "count": 2}, {"circuit": 9}], "inputFluids": [{"gas": "Ethylene", "amount": 6000}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], "outputs": [{"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 100, "EUt": 30}, {"inputs": [{"ore": "dustCarbon", "count": 2}, {"circuit": 24}], "inputFluids": [{"gas": "Hydrogen", "amount": 4000}, {"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"optimize": false, "duration": 480, "EUt": 30}, {"inputs": [{"circuit": 24}], "inputFluids": [{"gas": "CarbonMonoxide", "amount": 4000}, {"gas": "Hydrogen", "amount": 4000}], "outputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"optimize": false, "duration": 320, "EUt": 30}, @@ -693,28 +811,33 @@ "inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 6000}], "outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 9000}], "outputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, "duration": 1200, "EUt": 120}, {"inputs": [{"ore": "cellSulfuricAcid", "count": 6}, {"circuit": 1}], "inputFluids": [{"materialFluid": "Ethanol", "amount": 9000}], "outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 9000}], "outputs": [{"ore": "cellEthylene", "count": 6}], +"optimize": false, "duration": 1200, "EUt": 120}, {"inputs": [{"ore": "cellEthanol", "count": 9}, {"circuit": 11}], "inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 6000}], "outputFluids": [{"gas": "Ethylene", "amount": 6000}], "outputs": [{"ore": "cellDilutedSulfuricAcid", "count": 9}], +"optimize": false, "duration": 1200, "EUt": 120}, {"inputs": [{"ore": "dustSodium", "count": 1}, {"circuit": 1}], "inputFluids": [{"fluid": "water", "amount": 3000}], "outputFluids": [{"gas": "Hydrogen", "amount": 1000}], "outputs": [{"ore": "dustSodiumHydroxide", "count": 3}], +"optimize": false, "duration": 600, "EUt": 30}, {"inputs": [{"ore": "dustPolydimethylsiloxane", "count": 9}, {"ore": "dustSulfur", "count": 1}], "outputFluids": [{"molten": "Silicone", "amount": 1296}], +"optimize": false, "duration": 600, "EUt": 30}, @@ -722,65 +845,77 @@ "inputFluids": [{"gas": "Hydrogen", "amount": 3000}], "outputFluids": [{"gas": "Ammonia", "amount": 4000}], "outputs": [{"ore": "cellEmpty", "count": 1}], +"optimize": false, "duration": 320, "EUt": 384}, {"inputs": [{"ore": "cellHydrogen", "count": 3}, {"circuit": 1}], "inputFluids": [{"gas": "Nitrogen", "amount": 1000}], "outputFluids": [{"gas": "Ammonia", "amount": 4000}], "outputs": [{"ore": "cellEmpty", "count": 3}], +"optimize": false, "duration": 320, "EUt": 384}, {"inputs": [{"ore": "cellPropene", "count": 3}, {"circuit": 1}], "inputFluids": [{"gas": "Ethylene", "amount": 2000}], "outputFluids": [{"materialFluid": "Isoprene", "amount": 5000}], "outputs": [{"ore": "cellEmpty", "count": 3}], +"optimize": false, "duration": 120, "EUt": 30}, {"inputs": [{"ore": "cellEthylene", "count": 2}, {"circuit": 1}], "inputFluids": [{"gas": "Propene", "amount": 3000}], "outputFluids": [{"materialFluid": "Isoprene", "amount": 5000}], "outputs": [{"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 120, "EUt": 30}, {"inputs": [{"ore": "cellPropene", "count": 3}, {"ore": "cellEmpty", "count": 2}], "inputFluids": [{"gas": "Ethylene", "amount": 2000}], "outputs": [{"ore": "cellIsoprene", "count": 5}], +"optimize": false, "duration": 120, "EUt": 30}, {"inputs": [{"ore": "cellEthylene", "count": 2}, {"ore": "cellEmpty", "count": 3}], "inputFluids": [{"gas": "Propene", "amount": 3000}], "outputs": [{"ore": "cellIsoprene", "count": 5}], +"optimize": false, "duration": 120, "EUt": 30}, {"inputs": [{"item": "GTItemList:Cell_Air", "count": 1}, {"circuit": 1}], "inputFluids": [{"materialFluid": "Isoprene", "amount": 244}], "outputs": [{"ore": "dustRawRubber", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, "duration": 320, "EUt": 30}, {"inputs": [{"ore": "cellOxygen", "count": 2}, {"circuit": 1}], "inputFluids": [{"materialFluid": "Isoprene", "amount": 288}], "outputs": [{"ore": "dustRawRubber", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 320, "EUt": 30}, {"inputs": [{"ore": "cellIsoprene", "count": 1}, {"circuit": 1}], "inputFluids": [{"gas": "Air", "amount": 14000}], "outputs": [{"ore": "dustRawRubber", "count": 7}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, "duration": 1120, "EUt": 30}, {"inputs": [{"ore": "cellIsoprene", "count": 2}, {"circuit": 1}], "inputFluids": [{"gas": "Oxygen", "amount": 14000}], "outputs": [{"ore": "dustRawRubber", "count": 21}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 2240, "EUt": 30}, {"inputs": [{"circuit": 2}], "inputFluids": [{"materialFluid": "Isoprene", "amount": 288}, {"gas": "Air", "amount": 2000}, {"materialFluid": "Titaniumtetrachloride", "amount": 80}], "outputs": [{"ore": "dustRawRubber", "count": 3}], +"optimize": false, "duration": 320, "EUt": 30}, {"inputs": [{"circuit": 2}], "inputFluids": [{"materialFluid": "Isoprene", "amount": 144}, {"gas": "Oxygen", "amount": 1000}, {"materialFluid": "Titaniumtetrachloride", "amount": 80}], "outputs": [{"ore": "dustRawRubber", "count": 2}], +"optimize": false, "duration": 160, "EUt": 30}, @@ -788,37 +923,44 @@ "inputFluids": [{"gas": "Ethylene", "amount": 1000}], "outputFluids": [{"materialFluid": "Styrene", "amount": 3000}], "outputs": [{"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 120, "EUt": 30}, {"inputs": [{"ore": "cellEthylene", "count": 1}, {"circuit": 1}], "inputFluids": [{"materialFluid": "Benzene", "amount": 2000}], "outputFluids": [{"materialFluid": "Styrene", "amount": 3000}], "outputs": [{"ore": "cellEmpty", "count": 1}], +"optimize": false, "duration": 120, "EUt": 30}, {"inputs": [{"circuit": 3}], "inputFluids": [{"materialFluid": "Styrene", "amount": 1000}, {"gas": "Butadiene", "amount": 3000}, {"gas": "Air", "amount": 8000}], "outputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 4}], +"optimize": false, "duration": 160, "EUt": 240}, {"inputs": [{"circuit": 3}], "inputFluids": [{"materialFluid": "Styrene", "amount": 1000}, {"gas": "Butadiene", "amount": 3000}, {"gas": "Oxygen", "amount": 4000}], "outputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 6}], +"optimize": false, "duration": 160, "EUt": 240}, {"inputs": [{"circuit": 4}], "inputFluids": [{"materialFluid": "Styrene", "amount": 1000}, {"gas": "Butadiene", "amount": 3000}, {"materialFluid": "Titaniumtetrachloride", "amount": 100}, {"gas": "Air", "amount": 8000}], "outputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 6}], +"optimize": false, "duration": 160, "EUt": 240}, {"inputs": [{"circuit": 4}], "inputFluids": [{"materialFluid": "Styrene", "amount": 1000}, {"gas": "Butadiene", "amount": 3000}, {"materialFluid": "Titaniumtetrachloride", "amount": 100}, {"gas": "Oxygen", "amount": 4000}], "outputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 8}], +"optimize": false, "duration": 160, "EUt": 240}, {"inputs": [{"ore": "dustRawStyreneButadieneRubber", "count": 9}, {"ore": "dustSulfur", "count": 1}], "outputFluids": [{"molten": "StyreneButadieneRubber", "amount": 1296}], +"optimize": false, "duration": 600, "EUt": 30}, @@ -826,24 +968,28 @@ "inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs": [{"ore": "cellGlycerol", "count": 1}], +"optimize": false, "duration": 600, "EUt": 30}, {"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], "inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs": [{"ore": "cellBioDiesel", "count": 6}], +"optimize": false, "duration": 600, "EUt": 30}, {"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], "inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs": [{"ore": "cellGlycerol", "count": 1}], +"optimize": false, "duration": 600, "EUt": 30}, {"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], "inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs": [{"ore": "cellBioDiesel", "count": 6}], +"optimize": false, "duration": 600, "EUt": 30}, @@ -851,24 +997,28 @@ "inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs": [{"ore": "cellGlycerol", "count": 1}], +"optimize": false, "duration": 600, "EUt": 30}, {"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], "inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs": [{"ore": "cellBioDiesel", "count": 6}], +"optimize": false, "duration": 600, "EUt": 30}, {"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], "inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs": [{"ore": "cellGlycerol", "count": 1}], +"optimize": false, "duration": 600, "EUt": 30}, {"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], "inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs": [{"ore": "cellBioDiesel", "count": 6}], +"optimize": false, "duration": 600, "EUt": 30}, @@ -876,18 +1026,21 @@ "inputFluids": [{"materialFluid": "NitrationMixture", "amount": 3000}], "outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 3000}], "outputs": [{"ore": "cellGlyceryl", "count": 1}], +"optimize": false, "duration": 180, "EUt": 30}, {"inputs": [{"ore": "cellNitrationMixture", "count": 3}, {"circuit": 1}], "inputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 3000}], "outputs": [{"ore": "cellGlyceryl", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 180, "EUt": 30}, {"inputs": [{"ore": "cellNitrationMixture", "count": 3}, {"circuit": 11}], "inputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glyceryl", "amount": 1000}], "outputs": [{"ore": "cellDilutedSulfuricAcid", "count": 3}], +"optimize": false, "duration": 180, "EUt": 30}, @@ -895,57 +1048,67 @@ "inputFluids": [{"fluid": "water", "amount": 6000}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "cellHydrogen", "count": 8}], +"optimize": false, "duration": 40, "EUt": 240}, {"inputs": [{"ore": "cellWater", "count": 6}, {"ore": "cellEmpty", "count": 2}], "inputFluids": [{"gas": "Methane", "amount": 5000}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "cellHydrogen", "count": 8}], +"optimize": false, "duration": 40, "EUt": 240}, {"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 11}], "inputFluids": [{"fluid": "water", "amount": 6000}], "outputFluids": [{"gas": "Hydrogen", "amount": 8000}], "outputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, "duration": 40, "EUt": 240}, {"inputs": [{"ore": "cellWater", "count": 6}, {"circuit": 11}], "inputFluids": [{"gas": "Methane", "amount": 5000}], "outputFluids": [{"gas": "Hydrogen", "amount": 8000}], "outputs": [{"ore": "cellCarbonDioxide", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, "duration": 40, "EUt": 240}, {"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 12}], "inputFluids": [{"fluid": "water", "amount": 6000}], "outputFluids": [{"gas": "Hydrogen", "amount": 8000}], "outputs": [{"ore": "cellEmpty", "count": 5}], +"optimize": false, "duration": 40, "EUt": 240}, {"inputs": [{"ore": "cellWater", "count": 6}, {"circuit": 12}], "inputFluids": [{"gas": "Methane", "amount": 5000}], "outputFluids": [{"gas": "Hydrogen", "amount": 8000}], "outputs": [{"ore": "cellEmpty", "count": 6}], +"optimize": false, "duration": 40, "EUt": 240}, {"inputs": [{"ore": "dustQuicklime", "count": 2}], "inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "dustCalcite", "count": 5}], +"optimize": false, "duration": 80, "EUt": 30}, {"inputs": [{"ore": "dustCalcite", "count": 5}, {"circuit": 1}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "dustQuicklime", "count": 2}], +"optimize": false, "duration": 240, "EUt": 30}, {"inputs": [{"ore": "dustMagnesia", "count": 2}], "inputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "dustMagnesite", "count": 5}], +"optimize": false, "duration": 80, "EUt": 30}, {"inputs": [{"ore": "dustMagnesite", "count": 5}, {"circuit": 1}], "outputFluids": [{"gas": "CarbonDioxide", "amount": 3000}], "outputs": [{"ore": "dustMagnesia", "count": 2}], +"optimize": false, "duration": 240, "EUt": 30}, diff --git a/src/main/resources/assets/gregtech/recipes/mixer.json b/src/main/resources/assets/gregtech/recipes/mixer.json index 15273f2fc2..07f9b99688 100644 --- a/src/main/resources/assets/gregtech/recipes/mixer.json +++ b/src/main/resources/assets/gregtech/recipes/mixer.json @@ -127,7 +127,7 @@ "outputs":[{"ore": "dustSmallSterlingSilver", "count": 5}], "duration": 125, "EUt": 8}, -{"inputs":[{"ore": "dustTinyCopper", "count": 1}, {"ore": "dustTinyGold", "count": 4}], +{"inputs":[{"ore": "dustTinyCopper", "count": 1}, {"ore": "dustTinySilver", "count": 4}], "outputs":[{"ore": "dustTinySterlingSilver", "count": 5}], "duration": 55, "EUt": 8}, @@ -175,7 +175,7 @@ "outputs":[{"ore": "dustSmallRedSteel", "count": 8}], "duration": 200, "EUt": 8}, -{"inputs":[{"ore": "dustTinySterlingSilver", "count": 4}, {"ore": "dustTinyBismuthBronze", "count": 3}, {"ore": "dustTinyBlackSteel", "count": 4}, {"ore": "dustTinySteel", "count": 2}], +{"inputs":[{"ore": "dustTinySterlingSilver", "count": 1}, {"ore": "dustTinyBismuthBronze", "count": 1}, {"ore": "dustTinyBlackSteel", "count": 4}, {"ore": "dustTinySteel", "count": 2}], "outputs":[{"ore": "dustTinyRedSteel", "count": 8}], "duration": 88, "EUt": 8}, @@ -187,7 +187,7 @@ "outputs":[{"ore": "dustSmallBlueSteel", "count": 8}], "duration": 200, "EUt": 8}, -{"inputs":[{"ore": "dustTinyRoseGold", "count": 4}, {"ore": "dustTinyBrass", "count": 3}, {"ore": "dustTinyBlackSteel", "count": 4}, {"ore": "dustTinySteel", "count": 2}], +{"inputs":[{"ore": "dustTinyRoseGold", "count": 1}, {"ore": "dustTinyBrass", "count": 1}, {"ore": "dustTinyBlackSteel", "count": 4}, {"ore": "dustTinySteel", "count": 2}], "outputs":[{"ore": "dustTinyBlueSteel", "count": 8}], "duration": 88, "EUt": 8}, @@ -275,15 +275,15 @@ "outputs":[{"ore": "dustTinyFireclay", "count": 2}], "duration": 22, "EUt": 8}, -{"inputs":[{"ore": "dustNickel", "count": 1}, {"ore": "dustZinc", "count": 1}, {"ore": "dustIron", "count": 4}], +{"inputs":[{"ore": "dustInvar", "count": 3}, {"ore": "dustZinc", "count": 1}, {"ore": "dustIron", "count": 2}], "outputs":[{"ore": "dustFerriteMixture", "count": 6}], "duration": 200, "EUt": 8}, -{"inputs":[{"ore": "dustSmallNickel", "count": 1}, {"ore": "dustSmallZinc", "count": 1}, {"ore": "dustSmallIron", "count": 4}], +{"inputs":[{"ore": "dustSmallInvar", "count": 1}, {"ore": "dustSmallZinc", "count": 1}, {"ore": "dustSmallIron", "count": 2}], "outputs":[{"ore": "dustSmallFerriteMixture", "count": 6}], "duration": 50, "EUt": 8}, -{"inputs":[{"ore": "dustTinyNickel", "count": 1}, {"ore": "dustTinyZinc", "count": 1}, {"ore": "dustTinyIron", "count": 4}], +{"inputs":[{"ore": "dustTinyInvar", "count": 3}, {"ore": "dustTinyZinc", "count": 1}, {"ore": "dustTinyIron", "count": 2}], "outputs":[{"ore": "dustTinyFerriteMixture", "count": 6}], "duration": 22, "EUt": 8}, From 42fda40d669a9ab8601831bc0a0a148d4271fffb Mon Sep 17 00:00:00 2001 From: MauveCloud Date: Thu, 19 Nov 2020 13:36:00 -0800 Subject: [PATCH 21/21] Fixed remaining issues with json recipes noticed during testing. --- .../postload/GT_MachineRecipeLoader.java | 50 +- .../gregtech/recipes/alloy_smelter.json | 8 + .../assets/gregtech/recipes/assembler.json | 8 + .../recipes/chemical_complicated.json | 651 -------------- .../recipes/chemical_complicated_large.json | 801 +++++++++++++++++- .../recipes/chemical_complicated_small.json | 732 +++++++++++++++- .../gregtech/recipes/chemical_old_large.json | 168 ++++ ...mical_old.json => chemical_old_small.json} | 0 .../gregtech/recipes/chemical_reactor.json | 25 +- .../recipes/chemical_simple_large.json | 269 ++++++ .../recipes/chemical_simple_small.json | 229 +++++ .../gregtech/recipes/distillation_tower.json | 21 +- .../assets/gregtech/recipes/distillery.json | 4 +- .../assets/gregtech/recipes/electrolyzer.json | 6 +- .../recipes/large_chemical_reactor.json | 29 +- .../assets/gregtech/recipes/lathe.json | 10 +- .../assets/gregtech/recipes/mixer.json | 8 +- 17 files changed, 2244 insertions(+), 775 deletions(-) delete mode 100644 src/main/resources/assets/gregtech/recipes/chemical_complicated.json create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_old_large.json rename src/main/resources/assets/gregtech/recipes/{chemical_old.json => chemical_old_small.json} (100%) create mode 100644 src/main/resources/assets/gregtech/recipes/chemical_simple_large.json diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index adc5a7de2c..d9e38b8670 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -134,6 +134,7 @@ public void run() { tRecipeFileMap.put(GT_Recipe_Map.sPolarizerRecipes, "polarizer.json"); tRecipeFileMap.put(GT_Recipe_Map.sPrimitiveBlastRecipes, "primitive_blast_furnace.json"); tRecipeFileMap.put(GT_Recipe_Map.sPrinterRecipes, "printer.json"); + tRecipeFileMap.put(GT_Recipe_Map.sPyrolyseRecipes, "pyrolyse_oven.json"); tRecipeFileMap.put(GT_Recipe_Map.sSifterRecipes, "sifter.json"); tRecipeFileMap.put(GT_Recipe_Map.sSlicerRecipes, "slicer.json"); tRecipeFileMap.put(GT_Recipe_Map.sThermalCentrifugeRecipes, "thermal_centrifuge.json"); @@ -1723,44 +1724,31 @@ private void run2(){ private void addChemicalRecipesSimple(){ try { - InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_simple.json"); + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_simple_small.json"); if (tStream != null) { List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); - addRecipesToMap(GT_Recipe_Map.sMultiblockChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { - GT_Log.err.println("Error while reading resource chemical_simple.json"); + GT_Log.err.println("Error while reading resource chemical_simple_small.json"); e.printStackTrace(GT_Log.err); } try { - InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_simple_small.json"); + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_simple_large.json"); if (tStream != null) { List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); + addRecipesToMap(GT_Recipe_Map.sMultiblockChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { - GT_Log.err.println("Error while reading resource chemical_simple_small.json"); + GT_Log.err.println("Error while reading resource chemical_simple_large.json"); e.printStackTrace(GT_Log.err); } } private void addChemicalRecipesComplicated(){ - try { - InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated.json"); - if (tStream != null) { - List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); - addRecipesToMap(GT_Recipe_Map.sMultiblockChemicalRecipes, tRecipeList); - tStream.close(); - } - } catch (Throwable e) { - GT_Log.err.println("Error while reading resource chemical_complicated.json"); - e.printStackTrace(GT_Log.err); - } try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated_small.json"); if (tStream != null) { @@ -1769,24 +1757,18 @@ private void addChemicalRecipesComplicated(){ tStream.close(); } } catch (Throwable e) { - GT_Log.err.println("Error while reading resource chemical_complicated.json"); + GT_Log.err.println("Error while reading resource chemical_complicated_small.json"); e.printStackTrace(GT_Log.err); } try { InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_complicated_large.json"); if (tStream != null) { List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); - for (GT_Recipe tRecipe : tRecipeList) { - // A couple of the recipe maps wrap the recipe in a subclass, but don't override the addRecipe method that takes a GT_Recipe argument. - GT_Recipe tAddedRecipe = GT_Recipe_Map.sMultiblockChemicalRecipes.addRecipe(false, tRecipe.mInputs, tRecipe.mOutputs, tRecipe.mSpecialItems, - tRecipe.mChances, tRecipe.mFluidInputs, tRecipe.mFluidOutputs, tRecipe.mDuration, tRecipe.mEUt, tRecipe.mSpecialValue); - tAddedRecipe.mEnabled = tRecipe.mEnabled; - tAddedRecipe.mHidden = tRecipe.mHidden; - } + addRecipesToMap(GT_Recipe_Map.sMultiblockChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { - GT_Log.err.println("Error while reading resource chemical_complicated.json"); + GT_Log.err.println("Error while reading resource chemical_complicated_large.json"); e.printStackTrace(GT_Log.err); } GT_Values.RA.addDefaultPolymerizationRecipes(Materials.VinylAcetate.mFluid, Materials.VinylAcetate.getCells(1), Materials.PolyvinylAcetate.mFluid); @@ -1817,15 +1799,25 @@ private void addChemicalRecipesShared(){ private void addOldChemicalRecipes() { try { - InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_old.json"); + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_old_small.json"); if (tStream != null) { List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); addRecipesToMap(GT_Recipe_Map.sChemicalRecipes, tRecipeList); + tStream.close(); + } + } catch (Throwable e) { + GT_Log.err.println("Error while reading resource chemical_old_small.json"); + e.printStackTrace(GT_Log.err); + } + try { + InputStream tStream = GT_MachineRecipeLoader.class.getResourceAsStream("/assets/gregtech/recipes/chemical_old_large.json"); + if (tStream != null) { + List tRecipeList = GT_RecipeListJsonReader.readRecipes(new JsonReader(new InputStreamReader(tStream))); addRecipesToMap(GT_Recipe_Map.sMultiblockChemicalRecipes, tRecipeList); tStream.close(); } } catch (Throwable e) { - GT_Log.err.println("Error while reading resource chemical_old.json"); + GT_Log.err.println("Error while reading resource chemical_old_large.json"); e.printStackTrace(GT_Log.err); } } diff --git a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json index cb68926b2d..ab741e51cb 100644 --- a/src/main/resources/assets/gregtech/recipes/alloy_smelter.json +++ b/src/main/resources/assets/gregtech/recipes/alloy_smelter.json @@ -21,8 +21,16 @@ "outputs":[{"item": "GTItemList:TE_Hardened_Glass", "count": 2}], "duration": 200, "EUt": 16}, +{"inputs":[{"ore": "dustLead", "count": 1}, {"ore": "dustObsidian", "count": 2}], +"outputs":[{"item": "ThermalExpansion:Glass", "count": 2}], +"duration": 200, +"EUt": 16}, {"inputs":[{"ore": "ingotLead", "count": 1}, {"ore": "dustObsidian", "count": 2}], "outputs":[{"item": "GTItemList:TE_Hardened_Glass", "count": 2}], "duration": 200, "EUt": 16}, +{"inputs":[{"ore": "ingotLead", "count": 1}, {"ore": "dustObsidian", "count": 2}], +"outputs":[{"item": "ThermalExpansion:Glass", "count": 2}], +"duration": 200, +"EUt": 16}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/assembler.json b/src/main/resources/assets/gregtech/recipes/assembler.json index 23cc41b414..b1a6be2f90 100644 --- a/src/main/resources/assets/gregtech/recipes/assembler.json +++ b/src/main/resources/assets/gregtech/recipes/assembler.json @@ -1016,10 +1016,18 @@ "outputs":[{"item": "GTItemList:RC_ShuntingWire", "count": 4}], "duration":1600, "EUt":4}, +{"inputs": [{"ore": "wireGt01Copper", "count": 9}, {"ore": "plateLead", "count": 2}], +"outputs":[{"item": "Railcraft:machine.delta:0", "count": 4}], +"duration":1600, +"EUt":4}, {"inputs": [{"ore": "wireGt01AnnealedCopper", "count": 9}, {"ore": "plateLead", "count": 2}], "outputs":[{"item": "GTItemList:RC_ShuntingWire", "count": 4}], "duration":1600, "EUt":4}, +{"inputs": [{"ore": "wireGt01AnnealedCopper", "count": 9}, {"ore": "plateLead", "count": 2}], +"outputs":[{"item": "Railcraft:machine.delta:0", "count": 4}], +"duration":1600, +"EUt":4}, {"inputs": [{"ore": "ingotSteel", "count": 3}, {"ore": "plateGold", "count": 3}], "inputFluids":[{"molten": "Blaze", "amount": 432}], "outputs":[{"item": "GTItemList:RC_Rail_HS", "count": 8}], diff --git a/src/main/resources/assets/gregtech/recipes/chemical_complicated.json b/src/main/resources/assets/gregtech/recipes/chemical_complicated.json deleted file mode 100644 index ae8fbec2fa..0000000000 --- a/src/main/resources/assets/gregtech/recipes/chemical_complicated.json +++ /dev/null @@ -1,651 +0,0 @@ -[ - -{"inputs": [{"ore": "dustSodium", "count": 2}, {"ore": "dustSulfur", "count": 1}], -"outputs": [{"ore": "dustSodiumSulfide", "count": 3}], -"duration": 60, -"EUt": 30}, -{"inputs": [{"ore": "cellHydricSulfide", "count": 1}], -"inputFluids": [{"fluid": "water", "amount": 1000}], -"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 60, -"EUt": 30}, -{"inputs": [{"ore": "cellWater", "count": 1}], -"inputFluids": [{"gas": "HydricSulfide", "amount": 1000}], -"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 60, -"EUt": 30}, - -{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], -"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], -"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 5}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], -"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], -"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 2}], -"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], -"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], -"outputs":[{"ore": "cellEmpty", "count": 8}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], -"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], -"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], -"outputs":[{"ore": "cellEmpty", "count": 6}], -"duration": 240, -"EUt": 30}, - -{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellAceticAcid", "count": 8}], -"inputFluids": [{"gas": "Oxygen", "amount": 1000}], -"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], -"outputs":[{"ore": "cellEmpty", "count": 14}], -"duration": 180, -"EUt": 30}, -{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"ore": "cellOxygen", "count": 1}], -"inputFluids": [{"gas": "Ethylene", "amount": 6000}], -"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], -"outputs":[{"ore": "cellEmpty", "count": 9}], -"duration": 180, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEthylene", "count": 6}], -"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], -"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], -"outputs":[{"ore": "cellEmpty", "count": 7}], -"duration": 180, -"EUt": 30}, - -{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], -"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 60, -"EUt": 8}, -{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"circuit": 1}], -"inputFluids": [{"gas": "Chlorine", "amount": 1000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 60, -"EUt": 8}, - -{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], -"inputFluids": [{"gas": "Propene", "amount": 9000}], -"outputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellPropene", "count": 9}, {"circuit": 1}], -"inputFluids": [{"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 7}], -"duration": 160, -"EUt": 30}, - -{"inputs": [{"ore": "cellPropene", "count": 9}, {"circuit": 11}], -"inputFluids": [{"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "cellAllylChloride", "count": 9}], -"duration": 160, -"EUt": 30}, - -{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], -"inputFluids": [{"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], -"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 2}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], -"inputFluids": [{"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], -"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 1}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 11}], -"inputFluids": [{"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "cellHypochlorousAcid", "count": 3}], -"duration": 120, -"EUt": 30}, - -{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], -"outputs":[{"ore": "cellWater", "count": 6}, {"ore": "cellEmpty", "count": 8}], -"duration": 480, -"EUt": 30}, -{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 11}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputFluids": [{"fluid": "water", "amount": 6000}], -"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellEmpty", "count": 4}], -"duration": 480, -"EUt": 30}, -{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"circuit": 2}], -"inputFluids": [{"materialFluid": "Glycerol", "amount": 14000}], -"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], -"outputs":[{"ore": "cellEmpty", "count": 2}], -"duration": 480, -"EUt": 30}, -{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 2}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], -"outputs":[{"ore": "cellEmpty", "count": 14}], -"duration": 480, -"EUt": 30}, -{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 12}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellEmpty", "count": 4}], -"duration": 480, -"EUt": 30}, - -{"inputs": [{"ore": "dustPhosphorousPentoxide", "count": 7}, {"circuit": 1}], -"inputFluids": [{"fluid": "water", "amount": 9000}], -"outputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 16000}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellCumene", "count": 11}, {"circuit": 1}], -"inputFluids": [{"gas": "Oxygen", "amount": 2000}], -"outputFluids": [{"materialFluid": "Acetone", "amount": 6000}], -"outputs":[{"ore": "cellPhenol", "count": 6}, {"ore": "cellEmpty", "count": 5}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellCumene", "count": 11}, {"circuit": 11}], -"inputFluids": [{"gas": "Oxygen", "amount": 2000}], -"outputFluids": [{"materialFluid": "Phenol", "amount": 6000}], -"outputs":[{"ore": "cellAcetone", "count": 6}, {"ore": "cellEmpty", "count": 5}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"ore": "cellBisphenolA", "count": 12}], -"inputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 4000}], -"outputFluids": [{"molten": "Epoxid", "amount": 16000}], -"outputs":[{"ore": "cellSaltWater", "count": 1}, {"ore": "cellEmpty", "count": 11}], -"duration": 200, -"EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"ore": "cellEpichlorohydrin", "count": 4}], -"inputFluids": [{"materialFluid": "BisphenolA", "amount": 12000}], -"outputFluids": [{"molten": "Epoxid", "amount": 16000}], -"outputs":[{"ore": "cellSaltWater", "count": 1}, {"ore": "cellEmpty", "count": 3}], -"duration": 200, -"EUt": 30}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], -"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], -"outputs":[{"ore": "cellEmpty", "count": 6}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"circuit": 2}], -"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], -"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], -"outputs":[{"ore": "cellEmpty", "count": 2}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 12}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "cellChloromethane", "count": 5}, {"ore": "cellEmpty", "count": 1}], -"duration": 160, -"EUt": 30}, - -{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], -"inputFluids": [{"gas": "Methane", "amount": 5000}], -"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], -"duration": 80, -"EUt": 30}, -{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 1}], -"inputFluids": [{"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 3}], -"duration": 80, -"EUt": 30}, -{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 11}], -"inputFluids": [{"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "cellChloromethane", "count": 5}], -"duration": 80, -"EUt": 30}, - -{"inputs": [{"ore": "cellChlorine", "count": 6}, {"circuit": 3}], -"inputFluids": [{"gas": "Methane", "amount": 5000}], -"outputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 6}], -"duration": 80, -"EUt": 30}, -{"inputs": [{"ore": "cellChlorine", "count": 6}, {"circuit": 13}], -"inputFluids": [{"gas": "Methane", "amount": 5000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 6000}], -"outputs":[{"ore": "cellChloroform", "count": 5}, {"ore": "cellEmpty", "count": 1}], -"duration": 80, -"EUt": 30}, -{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 13}], -"inputFluids": [{"gas": "Chlorine", "amount": 6000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 6000}], -"outputs":[{"ore": "cellChloroform", "count": 5}], -"duration": 80, -"EUt": 30}, - -{"inputs": [{"ore": "cellFluorine", "count": 1}, {"circuit": 1}], -"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], -"outputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 2000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 60, -"EUt": 8}, -{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"circuit": 1}], -"inputFluids": [{"gas": "Fluorine", "amount": 1000}], -"outputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 2000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 60, -"EUt": 8}, -{"inputs": [{"ore": "cellHydrofluoricAcid", "count": 4}, {"circuit": 11}], -"inputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], -"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellEmpty", "count": 1}], -"duration": 480, -"EUt": 240}, -{"inputs": [{"ore": "cellChloroform", "count": 5}, {"circuit": 11}], -"inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], -"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellEmpty", "count": 2}], -"duration": 480, -"EUt": 240}, -{"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 1}], -"inputFluids": [{"gas": "Chloromethane", "amount": 10000}], -"outputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], -"duration": 240, -"EUt": 96}, -{"inputs": [{"ore": "cellDimethyldichlorosilane", "count": 11}, {"circuit": 1}], -"inputFluids": [{"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], -"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellEmpty", "count": 11}], -"duration": 240, -"EUt": 96}, -{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], -"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellEmpty", "count": 3}], -"duration": 240, -"EUt": 96}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], -"inputFluids": [{"gas": "Ammonia", "amount": 2000}], -"outputFluids": [{"gas": "Dimethylamine", "amount": 5000}], -"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], -"duration": 240, -"EUt": 120}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 11}], -"inputFluids": [{"gas": "Ammonia", "amount": 2000}], -"outputFluids": [{"fluid": "water", "amount": 3000}], -"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], -"duration": 240, -"EUt": 120}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], -"inputFluids": [{"gas": "Ammonia", "amount": 2000}], -"outputFluids": [{"gas": "Dimethylamine", "amount": 5000}], -"outputs":[{"ore": "cellEmpty", "count": 6}], -"duration": 240, -"EUt": 120}, -{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 12}], -"inputFluids": [{"gas": "Ammonia", "amount": 2000}], -"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], -"duration": 240, -"EUt": 120}, -{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], -"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], -"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 1}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"circuit": 1}], -"inputFluids": [{"gas": "Ammonia", "amount": 4000}], -"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], -"outputs":[{"ore": "cellWater", "count": 3}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 11}], -"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], -"outputFluids": [{"fluid": "water", "amount": 3000}], -"outputs":[{"ore": "cellChloramine", "count": 4}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 2}], -"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], -"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], -"outputs":[{"ore": "cellEmpty", "count": 4}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"circuit": 2}], -"inputFluids": [{"gas": "Ammonia", "amount": 4000}], -"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], -"outputs":[{"ore": "cellEmpty", "count": 3}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 12}], -"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], -"outputs":[{"ore": "cellChloramine", "count": 4}], -"duration": 160, -"EUt": 30}, - -{"inputs": [{"ore": "cellChloramine", "count": 2}, {"circuit": 1}], -"inputFluids": [{"gas": "Dimethylamine", "amount": 5000}], -"outputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 6000}], -"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 1}, {"ore": "cellEmpty", "count": 1}], -"duration": 960, -"EUt": 480}, -{"inputs": [{"ore": "cellDimethylamine", "count": 5}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "Chloramine", "amount": 2000}], -"outputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 6000}], -"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 1}, {"ore": "cellEmpty", "count": 4}], -"duration": 960, -"EUt": 480}, -{"inputs": [{"circuit": 2}], -"inputFluids": [{"gas": "NitrogenDioxide", "amount": 1000}], -"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], -"duration": 640, -"EUt": 30}, -{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"circuit": 2}], -"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 640, -"EUt": 30}, -{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"circuit": 12}], -"outputs":[{"ore": "cellDinitrogenTetroxide", "count": 1}], -"duration": 640, -"EUt": 30}, -{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 11}], -"inputFluids": [{"gas": "Oxygen", "amount": 5000}], -"outputFluids": [{"fluid": "water", "amount": 9000}], -"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 4}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 11}], -"inputFluids": [{"gas": "Ammonia", "amount": 8000}], -"outputFluids": [{"fluid": "water", "amount": 9000}], -"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 1}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 2}], -"inputFluids": [{"gas": "Oxygen", "amount": 5000}], -"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], -"outputs":[{"ore": "cellEmpty", "count": 8}], -"duration": 320, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 2}], -"inputFluids": [{"gas": "Ammonia", "amount": 8000}], -"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], -"outputs":[{"ore": "cellEmpty", "count": 5}], -"duration": 320, -"EUt": 30}, -{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 12}], -"inputFluids": [{"gas": "Oxygen", "amount": 5000}], -"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 4}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 12}], -"inputFluids": [{"gas": "Ammonia", "amount": 8000}], -"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 1}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellNitricOxide", "count": 2}, {"circuit": 1}], -"inputFluids": [{"gas": "Oxygen", "amount": 1000}], -"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], -"outputs":[{"ore": "cellEmpty", "count": 2}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], -"inputFluids": [{"gas": "NitricOxide", "amount": 2000}], -"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], -"inputFluids": [{"gas": "NitrogenDioxide", "amount": 9000}], -"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], -"outputs":[{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 1}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellNitrogenDioxide", "count": 9}, {"circuit": 1}], -"inputFluids": [{"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], -"outputs":[{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 7}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 2}], -"inputFluids": [{"gas": "Oxygen", "amount": 2000}], -"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], -"duration": 60, -"EUt": 8}, - -{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 1}], -"inputFluids": [{"gas": "Oxygen", "amount": 3000}], -"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], -"outputs":[{"ore": "cellWater", "count": 3}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 1}], -"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], -"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], -"outputs":[{"ore": "cellWater", "count": 3}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 11}], -"inputFluids": [{"gas": "Oxygen", "amount": 3000}], -"outputFluids": [{"fluid": "water", "amount": 3000}], -"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 11}], -"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], -"outputFluids": [{"fluid": "water", "amount": 3000}], -"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 2}], -"inputFluids": [{"gas": "Oxygen", "amount": 3000}], -"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], -"outputs":[{"ore": "cellEmpty", "count": 3}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 2}], -"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], -"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], -"outputs":[{"ore": "cellEmpty", "count": 3}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 12}], -"inputFluids": [{"gas": "Oxygen", "amount": 3000}], -"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 12}], -"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], -"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellSulfurDioxide", "count": 1}, {"circuit": 1}], -"inputFluids": [{"gas": "HydricSulfide", "amount": 2000}], -"outputFluids": [{"fluid": "water", "amount": 2000}], -"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 1}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 1}], -"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], -"outputFluids": [{"fluid": "water", "amount": 2000}], -"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellSulfurDioxide", "count": 1}, {"circuit": 2}], -"inputFluids": [{"gas": "HydricSulfide", "amount": 2000}], -"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 1}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 2}], -"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], -"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], -"duration": 120, -"EUt": 30}, -{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 2}], -"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], -"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], -"duration": 120, -"EUt": 30}, - -{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 3}], -"inputFluids": [{"gas": "Oxygen", "amount": 3000}], -"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], -"duration": 280, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], -"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], -"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 200, -"EUt": 30}, -{"inputs": [{"ore": "cellSulfurDioxide", "count": 3}, {"circuit": 1}], -"inputFluids": [{"gas": "Oxygen", "amount": 1000}], -"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], -"outputs":[{"ore": "cellEmpty", "count": 3}], -"duration": 200, -"EUt": 30}, -{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEmpty", "count": 3}], -"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], -"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], -"duration": 200, -"EUt": 30}, -{"inputs": [{"ore": "cellSulfurDioxide", "count": 3}, {"ore": "cellEmpty", "count": 1}], -"inputFluids": [{"gas": "Oxygen", "amount": 1000}], -"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], -"duration": 200, -"EUt": 30}, - -{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], -"inputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], -"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], -"outputs":[{"ore": "cellEmpty", "count": 3}], -"duration": 320, -"EUt": 8}, -{"inputs": [{"ore": "cellSulfurTrioxide", "count": 4}, {"circuit": 1}], -"inputFluids": [{"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], -"outputs":[{"ore": "cellEmpty", "count": 4}], -"duration": 320, -"EUt": 8}, -{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], -"inputFluids": [{"gas": "Ethylene", "amount": 6000}], -"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 1}], -"inputFluids": [{"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 4}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 11}], -"inputFluids": [{"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "cellVinylChloride", "count": 6}], -"duration": 160, -"EUt": 30}, -{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], -"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 10000}], -"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellEmpty", "count": 3}], -"duration": 160, -"EUt": 120}, -{"inputs": [{"ore": "cellSulfuricAcid", "count": 7}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], -"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 10000}], -"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellEmpty", "count": 2}], -"duration": 160, -"EUt": 120}, -{"inputs": [{"ore": "cellEthenone", "count": 1}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "NitricAcid", "amount": 8000}], -"outputFluids": [{"materialFluid": "Tetranitromethane", "amount": 9000}], -"outputs":[{"ore": "cellEmpty", "count": 1}], -"duration": 480, -"EUt": 16}, -{"inputs": [{"ore": "cellNitricAcid", "count": 8}, {"circuit": 1}], -"inputFluids": [{"gas": "Ethenone", "amount": 1000}], -"outputFluids": [{"materialFluid": "Tetranitromethane", "amount": 9000}], -"outputs":[{"ore": "cellEmpty", "count": 8}], -"duration": 480, -"EUt": 16}, - -{"inputs": [{"ore": "cellBenzene", "count": 3}, {"circuit": 1}], -"inputFluids": [{"gas": "Chlorine", "amount": 1000}], -"outputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 3000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 1}, {"ore": "cellEmpty", "count": 2}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "Benzene", "amount": 3000}], -"outputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 3000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 1}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellBenzene", "count": 3}, {"circuit": 12}], -"inputFluids": [{"gas": "Chlorine", "amount": 1000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 1000}], -"outputs":[{"ore": "cellDichlorobenzene", "count": 3}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "dustSodiumSulfide", "count": 1}, {"ore": "cellOxygen", "count": 8}], -"inputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 1000}], -"outputFluids": [{"molten": "PolyphenyleneSulfide", "amount": 1000}], -"outputs":[{"ore": "dustSalt", "count": 1}, {"ore": "cellEmpty", "count": 8}], -"duration": 240, -"EUt": 360}, - -{"inputs": [{"ore": "dustSalt", "count": 2}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], -"outputs":[{"ore": "dustSodiumBisulfate", "count": 7}], -"duration": 60, -"EUt": 30}, -{"inputs": [{"ore": "cellBenzene", "count": 6}, {"circuit": 1}], -"inputFluids": [{"gas": "Chlorine", "amount": 1000}], -"outputFluids": [{"materialFluid": "Chlorobenzene", "amount": 6000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 1}, {"ore": "cellEmpty", "count": 5}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "Benzene", "amount": 6000}], -"outputFluids": [{"materialFluid": "Chlorobenzene", "amount": 6000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 1}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellBenzene", "count": 6}, {"circuit": 11}], -"inputFluids": [{"gas": "Chlorine", "amount": 1000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 1000}], -"outputs":[{"ore": "cellChlorobenzene", "count": 6}], -"duration": 240, -"EUt": 30}, - -{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 12000}], -"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}], -"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 1}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "cellChlorobenzene", "count": 12}, {"circuit": 1}], -"inputFluids": [{"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}], -"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 10}], -"duration": 240, -"EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 4000}], -"outputFluids": [{"materialFluid": "Phenol", "amount": 4000}], -"duration": 960, -"EUt": 30}, -{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json b/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json index 6a8610b43a..f916b8d27c 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_complicated_large.json @@ -19,28 +19,28 @@ "duration": 600, "EUt": 8}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 23}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 3}, {"circuit": 23}], "inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 4000}, {"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "optimize": false, "duration": 640, "EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 24}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 3}, {"circuit": 24}], "inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 3000}, {"fluid": "water", "amount": 3000}, {"materialFluid": "Mercury", "amount": 200}], -"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "optimize": false, "duration": 640, "EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"circuit": 24}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 3}, {"circuit": 24}], "inputFluids": [{"gas": "Propene", "amount": 9000}, {"gas": "Chlorine", "amount": 2000}, {"materialFluid": "HypochlorousAcid", "amount": 3000}], -"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}, {"materialFluid": "SaltWater", "amount": 5000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "optimize": false, "duration": 640, "EUt": 30}, {"inputs": [{"ore": "dustApatite", "count": 21}], "inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 35000}, {"fluid": "water", "amount": 10000}], -"outputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 24000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "PhosphoricAcid_GT5U", "amount": 24000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "outputs": [{"ore": "dustGypsum", "count": 40}], "optimize": false, "duration": 320, @@ -53,20 +53,20 @@ "EUt": 30}, {"inputs": [{"ore": "dustPhosphorus", "count": 1}, {"circuit": 24}], "inputFluids": [{"gas": "Oxygen", "amount": 2500}, {"fluid": "water", "amount": 4500}], -"outputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "PhosphoricAcid_GT5U", "amount": 8000}], "optimize": false, "duration": 320, "EUt": 30}, {"inputs": [{"circuit": 1}], -"inputFluids": [{"gas": "Propene", "amount": 6000}, {"materialFluid": "Benzene", "amount": 8000}, {"materialFluid": "PhosphoricAcid", "amount": 1000}], +"inputFluids": [{"gas": "Propene", "amount": 6000}, {"materialFluid": "Benzene", "amount": 8000}, {"materialFluid": "PhosphoricAcid_GT5U", "amount": 1000}], "outputFluids": [{"materialFluid": "Cumene", "amount": 14000}], "optimize": false, "duration": 360, "EUt": 30}, {"inputs": [{"circuit": 24}], -"inputFluids": [{"gas": "Propene", "amount": 9000}, {"materialFluid": "Benzene", "amount": 12000}, {"materialFluid": "PhosphoricAcid", "amount": 1000}, {"gas": "Oxygen", "amount": 2000}], +"inputFluids": [{"gas": "Propene", "amount": 9000}, {"materialFluid": "Benzene", "amount": 12000}, {"materialFluid": "PhosphoricAcid_GT5U", "amount": 1000}, {"gas": "Oxygen", "amount": 2000}], "outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "Acetone", "amount": 10000}], "optimize": false, "duration": 480, @@ -79,7 +79,7 @@ "duration": 160, "EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"circuit": 24}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"circuit": 24}], "inputFluids": [{"materialFluid": "Acetone", "amount": 4000}, {"materialFluid": "Phenol", "amount": 8000}, {"materialFluid": "Epichlorohydrin", "amount": 4000}], "outputFluids": [{"molten": "Epoxid", "amount": 16000}, {"materialFluid": "SaltWater", "amount": 1000}], "optimize": false, @@ -87,28 +87,28 @@ "EUt": 30}, {"inputs": [{"circuit": 1}], -"inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}, {"materialFluid": "Chloroform", "amount": 5000}], -"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 3000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 4000}, {"materialFluid": "Chloroform", "amount": 5000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 3000}, {"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 6000}], "optimize": false, "duration": 480, "EUt": 240}, {"inputs": [{"circuit": 24}], -"inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}, {"gas": "Methane", "amount": 5000}, {"gas": "Chlorine", "amount": 6000}], -"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}, {"materialFluid": "HydrochloricAcid", "amount": 6000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 6000}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 4000}, {"gas": "Methane", "amount": 5000}, {"gas": "Chlorine", "amount": 6000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 6000}, {"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 6000}], "optimize": false, "duration": 540, "EUt": 240}, {"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 24}], "inputFluids": [{"gas": "Methane", "amount": 10000}, {"gas": "Chlorine", "amount": 4000}, {"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 4000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 4000}, {"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 4000}], "outputs": [{"ore": "dustPolydimethylsiloxane", "count": 10}], "optimize": false, "duration": 480, "EUt": 96}, {"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 24}], -"inputFluids": [{"materialFluid": "Methanol", "amount": 12000}, {"materialFluid": "HydrochloricAcid", "amount": 4000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 4000}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 12000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 4000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 4000}], "outputs": [{"ore": "dustPolydimethylsiloxane", "count": 10}], "optimize": false, "duration": 480, @@ -116,7 +116,7 @@ {"inputs": [{"circuit": 24}], "inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}, {"gas": "Ammonia", "amount": 8000}, {"materialFluid": "Methanol", "amount": 12000}], -"outputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 12000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}, {"fluid": "water", "amount": 9000}], +"outputFluids": [{"materialFluid": "1,1Dimethylhydrazine", "amount": 12000}, {"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}, {"fluid": "water", "amount": 9000}], "optimize": false, "duration": 1040, "EUt": 480}, @@ -181,15 +181,772 @@ {"inputs": [{"circuit": 24}], "inputFluids": [{"materialFluid": "Benzene", "amount": 12000}, {"gas": "Chlorine", "amount": 2000}, {"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}, {"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}, {"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}], "optimize": false, "duration": 560, "EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"circuit": 24}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"circuit": 24}], "inputFluids": [{"materialFluid": "Benzene", "amount": 12000}, {"gas": "Chlorine", "amount": 2000}], -"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "optimize": false, "duration": 560, "EUt": 30}, +{"inputs": [{"ore": "dustSodium", "count": 2}, {"ore": "dustSulfur", "count": 1}], +"outputs": [{"ore": "dustSodiumSulfide", "count": 3}], +"optimize": false, +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 60, +"EUt": 30}, + +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 5}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"optimize": false, +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellAceticAcid", "count": 8}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 14}], +"optimize": false, +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"ore": "cellOxygen", "count": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 9}], +"optimize": false, +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEthylene", "count": 6}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"optimize": false, +"duration": 180, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Propene", "amount": 9000}], +"outputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellPropene", "count": 9}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 7}], +"optimize": false, +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellPropene", "count": 9}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellAllylChloride", "count": 9}], +"optimize": false, +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 2}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellHypochlorousAcid", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellWater", "count": 6}, {"ore": "cellEmpty", "count": 8}], +"optimize": false, +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 6000}], +"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Glycerol", "amount": 14000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 14}], +"optimize": false, +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 480, +"EUt": 30}, + +{"inputs": [{"ore": "dustPhosphorousPentoxide", "count": 7}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 9000}], +"outputFluids": [{"materialFluid": "PhosphoricAcid_GT5U", "amount": 16000}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellCumene", "count": 11}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "Acetone", "amount": 6000}], +"outputs":[{"ore": "cellPhenol", "count": 6}, {"ore": "cellEmpty", "count": 5}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellCumene", "count": 11}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 6000}], +"outputs":[{"ore": "cellAcetone", "count": 6}, {"ore": "cellEmpty", "count": 5}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"ore": "cellBisphenolA", "count": 12}], +"inputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 4000}], +"outputFluids": [{"molten": "Epoxid", "amount": 16000}], +"outputs":[{"ore": "cellSaltWater", "count": 1}, {"ore": "cellEmpty", "count": 11}], +"optimize": false, +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"ore": "cellEpichlorohydrin", "count": 4}], +"inputFluids": [{"materialFluid": "BisphenolA", "amount": 12000}], +"outputFluids": [{"molten": "Epoxid", "amount": 16000}], +"outputs":[{"ore": "cellSaltWater", "count": 1}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], +"optimize": false, +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}], +"optimize": false, +"duration": 80, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 6}, {"circuit": 3}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 6}], +"optimize": false, +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 6}, {"circuit": 13}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 6000}], +"outputs":[{"ore": "cellChloroform", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 13}], +"inputFluids": [{"gas": "Chlorine", "amount": 6000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 6000}], +"outputs":[{"ore": "cellChloroform", "count": 5}], +"optimize": false, +"duration": 80, +"EUt": 30}, + +{"inputs": [{"ore": "cellFluorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Fluorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrofluoricAcid_GT5U", "count": 4}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 6000}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "cellChloroform", "count": 5}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 4000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 6000}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Chloromethane", "amount": 10000}], +"outputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], +"optimize": false, +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellDimethyldichlorosilane", "count": 11}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 4000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellEmpty", "count": 11}], +"optimize": false, +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 4000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"optimize": false, +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellChloramine", "count": 4}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellChloramine", "count": 4}], +"optimize": false, +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChloramine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputFluids": [{"materialFluid": "1,1Dimethylhydrazine", "amount": 6000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 960, +"EUt": 480}, +{"inputs": [{"ore": "cellDimethylamine", "count": 5}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chloramine", "amount": 2000}], +"outputFluids": [{"materialFluid": "1,1Dimethylhydrazine", "amount": 6000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 960, +"EUt": 480}, +{"inputs": [{"circuit": 2}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 1000}], +"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], +"optimize": false, +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"circuit": 2}], +"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"circuit": 12}], +"outputs":[{"ore": "cellDinitrogenTetroxide", "count": 1}], +"optimize": false, +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputFluids": [{"fluid": "water", "amount": 9000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputFluids": [{"fluid": "water", "amount": 9000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"optimize": false, +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"optimize": false, +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellNitricOxide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "NitricOxide", "amount": 2000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 9000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 9}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 7}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"optimize": false, +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 2}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 2}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 3}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"optimize": false, +"duration": 280, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], +"optimize": false, +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], +"optimize": false, +"duration": 200, +"EUt": 30}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellSulfurTrioxide", "count": 4}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 160, +"EUt": 120}, +{"inputs": [{"ore": "cellSulfuricAcid", "count": 7}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 160, +"EUt": 120}, +{"inputs": [{"ore": "cellEthenone", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "Tetranitromethane", "amount": 9000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 480, +"EUt": 16}, +{"inputs": [{"ore": "cellNitricAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethenone", "amount": 1000}], +"outputFluids": [{"materialFluid": "Tetranitromethane", "amount": 9000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"optimize": false, +"duration": 480, +"EUt": 16}, + +{"inputs": [{"ore": "cellBenzene", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 3000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 3000}], +"outputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 3000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 1}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 1000}], +"outputs":[{"ore": "cellDichlorobenzene", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumSulfide", "count": 1}, {"ore": "cellOxygen", "count": 8}], +"inputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 1000}], +"outputFluids": [{"molten": "PolyphenyleneSulfide", "amount": 1000}], +"outputs":[{"ore": "dustSalt", "count": 1}, {"ore": "cellEmpty", "count": 8}], +"optimize": false, +"duration": 240, +"EUt": 360}, + +{"inputs": [{"ore": "dustSalt", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "dustSodiumBisulfate", "count": 7}], +"optimize": false, +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "Chlorobenzene", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 5}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 6000}], +"outputFluids": [{"materialFluid": "Chlorobenzene", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 1}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 1000}], +"outputs":[{"ore": "cellChlorobenzene", "count": 6}], +"optimize": false, +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 12000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorobenzene", "count": 12}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 10}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 4000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 4000}], +"optimize": false, +"duration": 960, +"EUt": 30}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_complicated_small.json b/src/main/resources/assets/gregtech/recipes/chemical_complicated_small.json index fdcb663eaf..33d197db73 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_complicated_small.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_complicated_small.json @@ -19,23 +19,23 @@ {"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"gas": "Hydrogen", "amount": 1000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], "duration": 60, "EUt": 8}, {"inputs": [{"ore": "cellHydrogen", "count": 1}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"gas": "Chlorine", "amount": 1000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 2}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], "duration": 60, "EUt": 8}, {"inputs": [{"ore": "cellChlorine", "count": 2}, {"ore": "cellEmpty", "count": 7}], "inputFluids": [{"gas": "Propene", "amount": 9000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "outputs":[{"ore": "cellAllylChloride", "count": 9}], "duration": 160, "EUt": 30}, {"inputs": [{"ore": "cellPropene", "count": 9}, {"ore": "cellChlorine", "count": 2}], -"outputs":[{"ore": "cellAllylChloride", "count": 9}, {"ore": "cellHydrochloricAcid", "count": 2}], +"outputs":[{"ore": "cellAllylChloride", "count": 9}, {"ore": "cellHydrochloricAcid_GT5U", "count": 2}], "duration": 160, "EUt": 30}, @@ -60,30 +60,30 @@ {"inputs": [{"ore": "cellChlorine", "count": 2}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}], "outputs":[{"ore": "cellHypochlorousAcid", "count": 3}], "duration": 120, "EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"ore": "cellAllylChloride", "count": 9}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 3}, {"ore": "cellAllylChloride", "count": 9}], "inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], "outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 12000}], "outputs":[{"ore": "cellSaltWater", "count": 3}, {"ore": "cellEmpty", "count": 6}], "duration": 480, "EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 3}, {"ore": "cellHypochlorousAcid", "count": 3}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 3}, {"ore": "cellHypochlorousAcid", "count": 3}], "inputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], "outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 12000}], "outputs":[{"ore": "cellSaltWater", "count": 3}], "duration": 480, "EUt": 30}, -{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 8}], +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 8}], "inputFluids": [{"materialFluid": "Glycerol", "amount": 14000}], "outputFluids": [{"fluid": "water", "amount": 6000}], "outputs":[{"ore": "cellEpichlorohydrin", "count": 10}], "duration": 480, "EUt": 30}, -{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellGlycerol", "count": 14}], +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellGlycerol", "count": 14}], "outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellWater", "count": 6}], "duration": 480, "EUt": 30}, @@ -92,20 +92,20 @@ "outputs":[{"ore": "dustPhosphorousPentoxide", "count": 7}], "duration": 80, "EUt": 30}, -{"inputs": [{"ore": "cellPropene", "count": 6}, {"ore": "cellPhosphoricAcid", "count": 1}], +{"inputs": [{"ore": "cellPropene", "count": 6}, {"ore": "cellPhosphoricAcid_GT5U", "count": 1}], "inputFluids": [{"materialFluid": "Benzene", "amount": 8000}], "outputFluids": [{"materialFluid": "Cumene", "amount": 14000}], "outputs":[{"ore": "cellEmpty", "count": 7}], "duration": 360, "EUt": 30}, -{"inputs": [{"ore": "cellPhosphoricAcid", "count": 1}, {"ore": "cellBenzene", "count": 8}], +{"inputs": [{"ore": "cellPhosphoricAcid_GT5U", "count": 1}, {"ore": "cellBenzene", "count": 8}], "inputFluids": [{"gas": "Propene", "amount": 6000}], "outputFluids": [{"materialFluid": "Cumene", "amount": 14000}], "outputs":[{"ore": "cellEmpty", "count": 9}], "duration": 360, "EUt": 30}, {"inputs": [{"ore": "cellBenzene", "count": 8}, {"ore": "cellPropene", "count": 6}], -"inputFluids": [{"materialFluid": "PhosphoricAcid", "amount": 1000}], +"inputFluids": [{"materialFluid": "PhosphoricAcid_GT5U", "amount": 1000}], "outputs":[{"ore": "cellCumene", "count": 14}], "duration": 360, "EUt": 30}, @@ -154,12 +154,12 @@ "duration": 160, "EUt": 30}, {"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 11}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "outputFluids": [{"fluid": "water", "amount": 3000}], "outputs":[{"ore": "cellChloromethane", "count": 5}, {"ore": "cellEmpty", "count": 1}], "duration": 160, "EUt": 30}, -{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellEmpty", "count": 3}], +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 3}], "inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], "outputFluids": [{"fluid": "water", "amount": 3000}], "outputs":[{"ore": "cellChloromethane", "count": 5}], @@ -167,45 +167,45 @@ "EUt": 30}, {"inputs": [{"ore": "cellChlorine", "count": 2}, {"ore": "cellEmpty", "count": 3}], "inputFluids": [{"gas": "Methane", "amount": 5000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "outputs":[{"ore": "cellChloromethane", "count": 5}], "duration": 80, "EUt": 30}, {"inputs": [{"ore": "cellMethane", "count": 5}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"gas": "Chlorine", "amount": 6000}], "outputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], -"outputs":[{"ore": "cellHydrochloricAcid", "count": 6}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 6}], "duration": 80, "EUt": 30}, {"inputs": [{"ore": "cellFluorine", "count": 1}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"gas": "Hydrogen", "amount": 1000}], -"outputs":[{"ore": "cellHydrofluoricAcid", "count": 2}], +"outputs":[{"ore": "cellHydrofluoricAcid_GT5U", "count": 2}], "duration": 60, "EUt": 8}, {"inputs": [{"ore": "cellHydrogen", "count": 1}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"gas": "Fluorine", "amount": 1000}], -"outputs":[{"ore": "cellHydrofluoricAcid", "count": 2}], +"outputs":[{"ore": "cellHydrofluoricAcid_GT5U", "count": 2}], "duration": 60, "EUt": 8}, {"inputs": [{"ore": "cellHydrogen", "count": 1}, {"ore": "cellFluorine", "count": 1}], -"outputs":[{"ore": "cellHydrofluoricAcid", "count": 2}], +"outputs":[{"ore": "cellHydrofluoricAcid_GT5U", "count": 2}], "duration": 60, "EUt": 8}, {"inputs": [{"ore": "cellChloroform", "count": 5}, {"ore": "cellEmpty", "count": 1}], -"inputFluids": [{"materialFluid": "HydrofluoricAcid", "amount": 4000}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 4000}], "outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 3000}], -"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 6}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 6}], "duration": 480, "EUt": 240}, -{"inputs": [{"ore": "cellHydrofluoricAcid", "count": 4}, {"ore": "cellEmpty", "count": 2}], +{"inputs": [{"ore": "cellHydrofluoricAcid_GT5U", "count": 4}, {"ore": "cellEmpty", "count": 2}], "inputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], "outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 3000}], -"outputs":[{"ore": "cellDilutedHydrochloricAcid", "count": 6}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 6}], "duration": 480, "EUt": 240}, -{"inputs": [{"ore": "cellChloroform", "count": 5}, {"ore": "cellHydrofluoricAcid", "count": 4}], -"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellDilutedHydrochloricAcid", "count": 6}], +{"inputs": [{"ore": "cellChloroform", "count": 5}, {"ore": "cellHydrofluoricAcid_GT5U", "count": 4}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 6}], "duration": 480, "EUt": 240}, {"inputs": [{"ore": "dustSilicon", "count": 1}, {"ore": "cellChloromethane", "count": 10}], @@ -216,7 +216,7 @@ {"inputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], -"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellDilutedHydrochloricAcid", "count": 4}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 4}], "duration": 240, "EUt": 96}, {"inputs": [{"ore": "cellAmmonia", "count": 2}, {"ore": "cellEmpty", "count": 3}], @@ -238,20 +238,20 @@ "EUt": 30}, {"inputs": [{"ore": "cellChloramine", "count": 2}, {"ore": "cellEmpty", "count": 4}], "inputFluids": [{"gas": "Dimethylamine", "amount": 5000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 1000}], -"outputs":[{"ore": "cellDimethylhydrazine", "count": 6}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 1000}], +"outputs":[{"ore": "cell1,1Dimethylhydrazine", "count": 6}], "duration": 960, "EUt": 480}, {"inputs": [{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"materialFluid": "Chloramine", "amount": 2000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 1000}], -"outputs":[{"ore": "cellDimethylhydrazine", "count": 6}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 1000}], +"outputs":[{"ore": "cell1,1Dimethylhydrazine", "count": 6}], "duration": 960, "EUt": 480}, {"inputs": [{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellChloramine", "count": 2}], "inputFluids": [{"materialFluid": "Chloramine", "amount": 2000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 1000}], -"outputs":[{"ore": "cellDimethylhydrazine", "count": 6}, {"ore": "cellDilutedHydrochloricAcid", "count": 1}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 1000}], +"outputs":[{"ore": "cell1,1Dimethylhydrazine", "count": 6}, {"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 1}], "duration": 960, "EUt": 480}, {"inputs": [{"ore": "cellAmmonia", "count": 8}, {"ore": "cellEmpty", "count": 1}], @@ -342,29 +342,29 @@ "EUt": 8}, {"inputs": [{"ore": "cellChlorine", "count": 2}, {"ore": "cellEmpty", "count": 4}], "inputFluids": [{"gas": "Ethylene", "amount": 6000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "outputs":[{"ore": "cellVinylChloride", "count": 6}], "duration": 160, "EUt": 30}, {"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellChlorine", "count": 2}], -"outputs":[{"ore": "cellVinylChloride", "count": 6}, {"ore": "cellHydrochloricAcid", "count": 2}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}, {"ore": "cellHydrochloricAcid_GT5U", "count": 2}], "duration": 160, "EUt": 30}, -{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellHydrochloricAcid", "count": 2}], +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellHydrochloricAcid_GT5U", "count": 2}], "inputFluids": [{"gas": "Oxygen", "amount": 1000}], "outputFluids": [{"gas": "VinylChloride", "amount": 6000}], "outputs":[{"ore": "cellEmpty", "count": 8}], "duration": 160, "EUt": 30}, -{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}, {"ore": "cellOxygen", "count": 1}], +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellOxygen", "count": 1}], "inputFluids": [{"gas": "Ethylene", "amount": 6000}], "outputFluids": [{"gas": "VinylChloride", "amount": 6000}], "outputs":[{"ore": "cellEmpty", "count": 3}], "duration": 160, "EUt": 30}, {"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEthylene", "count": 6}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "outputFluids": [{"gas": "VinylChloride", "amount": 6000}], "outputs":[{"ore": "cellEmpty", "count": 7}], "duration": 160, @@ -389,32 +389,680 @@ {"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellEmpty", "count": 2}], "inputFluids": [{"materialFluid": "Benzene", "amount": 3000}], -"outputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 1000}], "outputs":[{"ore": "cellDichlorobenzene", "count": 3}], "duration": 240, "EUt": 30}, {"inputs": [{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 10}], "inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 12000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}], "outputs":[{"ore": "cellPhenol", "count": 13}], "duration": 240, "EUt": 30}, {"inputs": [{"ore": "cellChlorobenzene", "count": 12}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"fluid": "water", "amount": 3000}], -"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}], "outputs":[{"ore": "cellPhenol", "count": 13}], "duration": 240, "EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"ore": "cellEmpty", "count": 4}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 4}], "inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 4000}], "outputs":[{"ore": "cellPhenol", "count": 4}], "duration": 960, "EUt": 30}, -{"inputs": [{"ore": "dustSodiumHydroxide", "count": 1}, {"ore": "cellChlorobenzene", "count": 4}], +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"ore": "cellChlorobenzene", "count": 4}], "outputs":[{"ore": "cellPhenol", "count": 4}], "duration": 960, "EUt": 30}, +{"inputs": [{"ore": "dustSodium", "count": 2}, {"ore": "dustSulfur", "count": 1}], +"outputs": [{"ore": "dustSodiumSulfide", "count": 3}], +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 1000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 30}, + +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 5}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "MethylAcetate", "amount": 11000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"ore": "cellAceticAcid", "count": 8}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 14}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"ore": "cellOxygen", "count": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 9}], +"duration": 180, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEthylene", "count": 6}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "VinylAcetate", "amount": 12000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"duration": 180, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Propene", "amount": 9000}], +"outputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellPropene", "count": 9}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "AllylChloride", "amount": 9000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 7}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellPropene", "count": 9}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellAllylChloride", "count": 9}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellHypochlorousAcid", "count": 3}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellWater", "count": 6}, {"ore": "cellEmpty", "count": 8}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 6000}], +"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellEmpty", "count": 4}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Glycerol", "amount": 14000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 10000}], +"outputs":[{"ore": "cellEmpty", "count": 14}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellGlycerol", "count": 14}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEpichlorohydrin", "count": 10}, {"ore": "cellEmpty", "count": 4}], +"duration": 480, +"EUt": 30}, + +{"inputs": [{"ore": "dustPhosphorousPentoxide", "count": 7}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 9000}], +"outputFluids": [{"materialFluid": "PhosphoricAcid_GT5U", "amount": 16000}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellCumene", "count": 11}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "Acetone", "amount": 6000}], +"outputs":[{"ore": "cellPhenol", "count": 6}, {"ore": "cellEmpty", "count": 5}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellCumene", "count": 11}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 6000}], +"outputs":[{"ore": "cellAcetone", "count": 6}, {"ore": "cellEmpty", "count": 5}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"ore": "cellBisphenolA", "count": 12}], +"inputFluids": [{"materialFluid": "Epichlorohydrin", "amount": 4000}], +"outputFluids": [{"molten": "Epoxid", "amount": 16000}], +"outputs":[{"ore": "cellSaltWater", "count": 1}, {"ore": "cellEmpty", "count": 11}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"ore": "cellEpichlorohydrin", "count": 4}], +"inputFluids": [{"materialFluid": "BisphenolA", "amount": 12000}], +"outputFluids": [{"molten": "Epoxid", "amount": 16000}], +"outputs":[{"ore": "cellSaltWater", "count": 1}, {"ore": "cellEmpty", "count": 3}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 6000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"gas": "Chloromethane", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 3}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellChloromethane", "count": 5}], +"duration": 80, +"EUt": 30}, + +{"inputs": [{"ore": "cellChlorine", "count": 6}, {"circuit": 3}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 6}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 6}, {"circuit": 13}], +"inputFluids": [{"gas": "Methane", "amount": 5000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 6000}], +"outputs":[{"ore": "cellChloroform", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 80, +"EUt": 30}, +{"inputs": [{"ore": "cellMethane", "count": 5}, {"circuit": 13}], +"inputFluids": [{"gas": "Chlorine", "amount": 6000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 6000}], +"outputs":[{"ore": "cellChloroform", "count": 5}], +"duration": 80, +"EUt": 30}, + +{"inputs": [{"ore": "cellFluorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Fluorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 60, +"EUt": 8}, +{"inputs": [{"ore": "cellHydrofluoricAcid_GT5U", "count": 4}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "Chloroform", "amount": 5000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 6000}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "cellChloroform", "count": 5}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HydrofluoricAcid_GT5U", "amount": 4000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 6000}], +"outputs":[{"ore": "cellTetrafluoroethylene", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"duration": 480, +"EUt": 240}, +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Chloromethane", "amount": 10000}], +"outputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellDimethyldichlorosilane", "count": 11}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 4000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellEmpty", "count": 11}], +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Dimethyldichlorosilane", "amount": 11000}], +"outputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 4000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 10}, {"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 96}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputs":[{"ore": "cellEmpty", "count": 6}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellMethanol", "count": 6}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 2000}], +"outputs":[{"ore": "cellDimethylamine", "count": 5}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellWater", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 11}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellChloramine", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 2}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellHypochlorousAcid", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 4000}], +"outputFluids": [{"materialFluid": "Chloramine", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 4}, {"circuit": 12}], +"inputFluids": [{"materialFluid": "HypochlorousAcid", "amount": 3000}], +"outputs":[{"ore": "cellChloramine", "count": 4}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "cellChloramine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Dimethylamine", "amount": 5000}], +"outputFluids": [{"materialFluid": "1,1Dimethylhydrazine", "amount": 6000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"duration": 960, +"EUt": 480}, +{"inputs": [{"ore": "cellDimethylamine", "count": 5}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chloramine", "amount": 2000}], +"outputFluids": [{"materialFluid": "1,1Dimethylhydrazine", "amount": 6000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 4}], +"duration": 960, +"EUt": 480}, +{"inputs": [{"circuit": 2}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 1000}], +"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"circuit": 2}], +"outputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"circuit": 12}], +"outputs":[{"ore": "cellDinitrogenTetroxide", "count": 1}], +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputFluids": [{"fluid": "water", "amount": 9000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputFluids": [{"fluid": "water", "amount": 9000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputFluids": [{"gas": "NitricOxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 8}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 5000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 5}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 8000}], +"outputs":[{"ore": "cellNitricOxide", "count": 4}, {"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellNitricOxide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "NitricOxide", "amount": 2000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "NitrogenDioxide", "amount": 9000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 9}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 10000}], +"outputs":[{"ore": "cellNitricOxide", "count": 2}, {"ore": "cellEmpty", "count": 7}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"duration": 60, +"EUt": 8}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellWater", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 11}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"fluid": "water", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 2}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputs":[{"ore": "cellSulfurDioxide", "count": 3}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 2000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 1}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 2}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 2}, {"circuit": 2}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 1000}], +"outputs":[{"ore": "dustSulfur", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 120, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 3}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"duration": 280, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"ore": "cellEmpty", "count": 3}], +"inputFluids": [{"gas": "SulfurDioxide", "amount": 3000}], +"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], +"duration": 200, +"EUt": 30}, +{"inputs": [{"ore": "cellSulfurDioxide", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputs":[{"ore": "cellSulfurTrioxide", "count": 4}], +"duration": 200, +"EUt": 30}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "SulfurTrioxide", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellSulfurTrioxide", "count": 4}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellChlorine", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 6000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 4}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 2000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "cellVinylChloride", "count": 6}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellEmpty", "count": 3}], +"duration": 160, +"EUt": 120}, +{"inputs": [{"ore": "cellSulfuricAcid", "count": 7}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "DilutedSulfuricAcid", "amount": 10000}], +"outputs":[{"ore": "cellEthenone", "count": 5}, {"ore": "cellEmpty", "count": 2}], +"duration": 160, +"EUt": 120}, +{"inputs": [{"ore": "cellEthenone", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 8000}], +"outputFluids": [{"materialFluid": "Tetranitromethane", "amount": 9000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 480, +"EUt": 16}, +{"inputs": [{"ore": "cellNitricAcid", "count": 8}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethenone", "amount": 1000}], +"outputFluids": [{"materialFluid": "Tetranitromethane", "amount": 9000}], +"outputs":[{"ore": "cellEmpty", "count": 8}], +"duration": 480, +"EUt": 16}, + +{"inputs": [{"ore": "cellBenzene", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 3000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 2}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 3000}], +"outputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 3000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 1}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 3}, {"circuit": 12}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 1000}], +"outputs":[{"ore": "cellDichlorobenzene", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumSulfide", "count": 1}, {"ore": "cellOxygen", "count": 8}], +"inputFluids": [{"materialFluid": "Dichlorobenzene", "amount": 1000}], +"outputFluids": [{"molten": "PolyphenyleneSulfide", "amount": 1000}], +"outputs":[{"ore": "dustSalt", "count": 1}, {"ore": "cellEmpty", "count": 8}], +"duration": 240, +"EUt": 360}, + +{"inputs": [{"ore": "dustSalt", "count": 2}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], +"outputs":[{"ore": "dustSodiumBisulfate", "count": 7}], +"duration": 60, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 6}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "Chlorobenzene", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 1}, {"ore": "cellEmpty", "count": 5}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 6000}], +"outputFluids": [{"materialFluid": "Chlorobenzene", "amount": 6000}], +"outputs":[{"ore": "cellHydrochloricAcid_GT5U", "count": 1}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellBenzene", "count": 6}, {"circuit": 11}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 1000}], +"outputs":[{"ore": "cellChlorobenzene", "count": 6}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellWater", "count": 3}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 12000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorobenzene", "count": 12}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 13000}], +"outputs":[{"ore": "cellDilutedHydrochloricAcid_GT5U", "count": 2}, {"ore": "cellEmpty", "count": 10}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Chlorobenzene", "amount": 4000}], +"outputFluids": [{"materialFluid": "Phenol", "amount": 4000}], +"duration": 960, +"EUt": 30}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_old_large.json b/src/main/resources/assets/gregtech/recipes/chemical_old_large.json new file mode 100644 index 0000000000..038b7250f6 --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_old_large.json @@ -0,0 +1,168 @@ +[ + +{"inputs": [{"ore": "cellNitrogen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 2000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 1250, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Nitrogen", "amount": 1000}], +"outputFluids": [{"gas": "NitrogenDioxide", "amount": 3000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 2}], +"optimize": false, +"specialValue": -300, +"duration": 1250, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 1}], +"inputFluids": [{"fluid": "water", "amount": 2000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 3000}], +"optimize": false, +"specialValue": -300, +"duration": 1150, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellHydrogen", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 2}], +"optimize": false, +"specialValue": -300, +"duration": 1150, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 4}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 4}], +"optimize": false, +"specialValue": -300, +"duration": 1150, +"EUt": 30}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 1}, {"item": "GTItemList:Cell_Water", "count": 1}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1500}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 2}], +"optimize": false, +"specialValue": -300, +"duration": 320, +"EUt": 30}, +{"inputs": [{"item": "GTItemList:Cell_Water", "count": 1}], +"inputFluids": [{"fluid": "liquid_hydricsulfur", "amount": 1000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1500}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 320, +"EUt": 30}, +{"inputs": [{"ore": "cellHydricSulfide", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 1000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 1500}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 320, +"EUt": 30}, + +{"inputs": [{"item": "GTItemList:Cell_Air", "count": 2}], +"inputFluids": [{"materialFluid": "Naphtha", "amount": 288}], +"outputFluids": [{"molten": "Plastic", "amount": 144}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 2}], +"optimize": false, +"specialValue": -300, +"duration": 640, +"EUt": 30}, +{"inputs": [{"ore": "dustTinyTitanium", "count": 1}, {"ore": "cellOxygen", "count": 16}], +"inputFluids": [{"materialFluid": "Naphtha", "amount": 1296}], +"outputFluids": [{"molten": "Plastic", "amount": 1296}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 16}], +"optimize": false, +"specialValue": -300, +"duration": 640, +"EUt": 30}, + +{"inputs": [{"ore": "cellNaphtha", "count": 3}, {"ore": "cellNitrogenDioxide", "count": 1}], +"inputFluids": [{"fluid": "liquid_epichlorhydrin", "amount": 144}], +"outputFluids": [{"molten": "Epoxid", "amount": 288}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 4}], +"optimize": false, +"specialValue": -300, +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "dustCarbon", "count": 1}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"materialFluid": "LPG", "amount": 432}], +"outputFluids": [{"fluid": "liquid_epichlorhydrin", "amount": 432}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "cellNaphtha", "count": 3}, {"ore": "cellFluorine", "count": 1}], +"inputFluids": [{"fluid": "liquid_epichlorhydrin", "amount": 432}], +"outputFluids": [{"molten": "Polytetrafluoroethylene", "amount": 432}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 4}], +"optimize": false, +"specialValue": -300, +"duration": 240, +"EUt": 256}, +{"inputs": [{"ore": "dustSilicon", "count": 1}], +"inputFluids": [{"fluid": "liquid_epichlorhydrin", "amount": 144}], +"outputFluids": [{"molten": "Silicone", "amount": 144}], +"optimize": false, +"specialValue": -300, +"duration": 240, +"EUt": 96}, + +{"inputs": [{"ore": "cellNitrogenDioxide", "count": 1}, {"ore": "cellHydrogen", "count": 3}], +"inputFluids": [{"gas": "Air", "amount": 500}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 3000}], +"outputs":[{"item": "GTItemList:Cell_Water", "count": 4}], +"optimize": false, +"specialValue": -300, +"duration": 1000, +"EUt": 388}, + +{"inputs": [{"ore": "cellFuel", "count": 1}], +"inputFluids": [{"materialFluid": "Glyceryl", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 250, +"EUt": 30}, +{"inputs": [{"ore": "cellGlyceryl", "count": 1}], +"inputFluids": [{"materialFluid": "Fuel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 1000, +"EUt": 30}, +{"inputs": [{"ore": "cellLightFuel", "count": 1}], +"inputFluids": [{"materialFluid": "Glyceryl", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1250}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 250, +"EUt": 30}, +{"inputs": [{"ore": "cellGlyceryl", "count": 1}], +"inputFluids": [{"materialFluid": "LightFuel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 5000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 1000, +"EUt": 30}, + +{"inputs": [{"ore": "cellNitrogen", "count": 1}, {"ore": "dustCarbon", "count": 1}], +"inputFluids": [{"fluid": "water", "amount": 2000}], +"outputFluids": [{"materialFluid": "Glyceryl", "amount": 4000}], +"outputs":[{"item": "GTItemList:Cell_Empty", "count": 1}], +"optimize": false, +"specialValue": -300, +"duration": 2700, +"EUt": 30}, +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_old.json b/src/main/resources/assets/gregtech/recipes/chemical_old_small.json similarity index 100% rename from src/main/resources/assets/gregtech/recipes/chemical_old.json rename to src/main/resources/assets/gregtech/recipes/chemical_old_small.json diff --git a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json index 76f8759627..7e8a29b1fe 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_reactor.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_reactor.json @@ -498,6 +498,11 @@ "outputs":[{"item": "Railcraft:tile.railcraft.glass", "count": 6}], "duration": 50, "EUt": 30}, +{"inputs": [{"ore": "dustTin", "count": 1}, {"ore": "dustSaltpeter", "count": 1}], +"inputFluids":[{"molten": "Glass", "amount": 864}], +"outputs":[{"item": "Railcraft:glass", "count": 6}], +"duration": 50, +"EUt": 30}, {"inputs": [{"ore": "dustRutile", "count": 1}, {"ore": "cellCarbon", "count": 2}], "inputFluids":[{"gas": "Chlorine", "amount": 4000}], "outputFluids":[{"materialFluid": "Titaniumtetrachloride", "amount": 1000}], @@ -764,12 +769,12 @@ {"inputs": [{"ore": "dustSodium", "count": 1}, {"circuit": 1}], "inputFluids": [{"fluid": "water", "amount": 3000}], "outputFluids": [{"gas": "Hydrogen", "amount": 1000}], -"outputs":[{"ore": "dustSodiumHydroxide", "count": 3}], +"outputs":[{"ore": "dustSodiumHydroxide_GT5U", "count": 3}], "duration": 600, "EUt": 30}, {"inputs": [{"ore": "dustSodium", "count": 1}, {"ore": "cellEmpty", "count": 1}], "inputFluids": [{"fluid": "water", "amount": 3000}], -"outputs":[{"ore": "dustSodiumHydroxide", "count": 3}, {"ore": "cellHydrogen", "count": 1}], +"outputs":[{"ore": "dustSodiumHydroxide_GT5U", "count": 3}, {"ore": "cellHydrogen", "count": 1}], "duration": 600, "EUt": 30}, @@ -921,50 +926,50 @@ "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellMethanol", "count": 1}], "inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs":[{"ore": "cellGlycerol", "count": 1}], "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellSeedOil", "count": 6}], "inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs":[{"ore": "cellBioDiesel", "count": 6}], "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellMethanol", "count": 1}], "inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs":[{"ore": "cellGlycerol", "count": 1}], "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellFishOil", "count": 6}], "inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs":[{"ore": "cellBioDiesel", "count": 6}], "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellEthanol", "count": 1}], "inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs":[{"ore": "cellGlycerol", "count": 1}], "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellSeedOil", "count": 6}], "inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs":[{"ore": "cellBioDiesel", "count": 6}], "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellEthanol", "count": 1}], "inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs":[{"ore": "cellGlycerol", "count": 1}], "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellFishOil", "count": 6}], "inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs":[{"ore": "cellBioDiesel", "count": 6}], diff --git a/src/main/resources/assets/gregtech/recipes/chemical_simple_large.json b/src/main/resources/assets/gregtech/recipes/chemical_simple_large.json new file mode 100644 index 0000000000..a9c3f38ade --- /dev/null +++ b/src/main/resources/assets/gregtech/recipes/chemical_simple_large.json @@ -0,0 +1,269 @@ +[ + +{"inputs": [{"ore": "cellEthylene", "count": 1}, {"ore": "cellAceticAcid", "count": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 2}, {"ore": "cellMethanol", "count": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 1}, {"ore": "cellEthylene", "count": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellPropene", "count": 2}, {"ore": "cellBenzene", "count": 2}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 240, +"EUt": 240}, +{"inputs": [{"ore": "cellBenzene", "count": 2}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Propene", "amount": 2000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 240}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellPropene", "count": 2}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 2000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 240}, + +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Fluorine", "amount": 4000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 360, +"EUt": 180}, +{"inputs": [{"ore": "cellFluorine", "count": 4}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 2000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 360, +"EUt": 180}, + +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"ore": "cellMethane", "count": 2}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Methane", "amount": 2000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 240, +"EUt": 120}, + +{"inputs": [{"ore": "cellAmmonia", "count": 3}, {"ore": "cellMethanol", "count": 4}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"optimize": false, +"duration": 3600, +"EUt": 480}, +{"inputs": [{"ore": "cellMethanol", "count": 4}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 3000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"optimize": false, +"duration": 3600, +"EUt": 480}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellAmmonia", "count": 3}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 4000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 3600, +"EUt": 480}, + +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellWater", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellWater", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"optimize": false, +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 3}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellWater", "count": 3}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 480, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 4}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellHydrogen", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 4}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthylene", "count": 5}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"optimize": false, +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 5000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellLightFuel", "count": 1}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "cellFuel", "count": 2}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"optimize": false, +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "cellBioDiesel", "count": 4}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"optimize": false, +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "LightFuel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "Fuel", "amount": 8000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "BioDiesel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"optimize": false, +"duration": 320, +"EUt": 8}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 1000}], +"outputFluids": [{"molten": "PolyphenyleneSulfide", "amount": 2000}], +"optimize": false, +"duration": 320, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "dustSodium", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SodiumPersulfate", "amount": 6000}], +"optimize": false, +"duration": 8000, +"EUt": 30}, + +{}] diff --git a/src/main/resources/assets/gregtech/recipes/chemical_simple_small.json b/src/main/resources/assets/gregtech/recipes/chemical_simple_small.json index c9de72d94b..15e4d99c72 100644 --- a/src/main/resources/assets/gregtech/recipes/chemical_simple_small.json +++ b/src/main/resources/assets/gregtech/recipes/chemical_simple_small.json @@ -47,4 +47,233 @@ "duration": 320, "EUt": 30}, +{"inputs": [{"ore": "cellEthylene", "count": 1}, {"ore": "cellAceticAcid", "count": 2}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellAceticAcid", "count": 2}, {"ore": "cellMethanol", "count": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 1000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellMethanol", "count": 1}, {"ore": "cellEthylene", "count": 1}], +"inputFluids": [{"materialFluid": "AceticAcid", "amount": 2000}], +"outputFluids": [{"materialFluid": "Glue", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellPropene", "count": 2}, {"ore": "cellBenzene", "count": 2}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 240, +"EUt": 240}, +{"inputs": [{"ore": "cellBenzene", "count": 2}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Propene", "amount": 2000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 240}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellPropene", "count": 2}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 2000}], +"outputFluids": [{"molten": "Epoxid", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 240}, + +{"inputs": [{"ore": "cellEthylene", "count": 2}, {"circuit": 1}], +"inputFluids": [{"gas": "Fluorine", "amount": 4000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 360, +"EUt": 180}, +{"inputs": [{"ore": "cellFluorine", "count": 4}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 2000}], +"outputFluids": [{"gas": "Tetrafluoroethylene", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 360, +"EUt": 180}, + +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"ore": "cellMethane", "count": 2}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 3}, {"ore": "cellEmpty", "count": 2}], +"duration": 240, +"EUt": 120}, +{"inputs": [{"ore": "dustSilicon", "count": 1}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Methane", "amount": 2000}], +"outputs":[{"ore": "dustPolydimethylsiloxane", "count": 3}, {"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 120}, + +{"inputs": [{"ore": "cellAmmonia", "count": 3}, {"ore": "cellMethanol", "count": 4}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 7}], +"duration": 3600, +"EUt": 480}, +{"inputs": [{"ore": "cellMethanol", "count": 4}, {"ore": "cellChlorine", "count": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 3000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"duration": 3600, +"EUt": 480}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"ore": "cellAmmonia", "count": 3}], +"inputFluids": [{"materialFluid": "Methanol", "amount": 4000}], +"outputFluids": [{"fluid": "rocket_fuel", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 3600, +"EUt": 480}, + +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellWater", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellWater", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 11}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 11}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"fluid": "water", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 2}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellAmmonia", "count": 1}, {"circuit": 12}], +"inputFluids": [{"gas": "Oxygen", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"duration": 160, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 1}, {"circuit": 12}], +"inputFluids": [{"gas": "Ammonia", "amount": 1000}], +"outputs":[{"ore": "cellNitricAcid", "count": 1}], +"duration": 160, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 3}], +"inputFluids": [{"fluid": "water", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 480, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellWater", "count": 3}], +"inputFluids": [{"gas": "Oxygen", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 480, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellOxygen", "count": 4}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "cellHydrogen", "count": 2}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellHydricSulfide", "count": 3}, {"circuit": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 3}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellOxygen", "count": 4}, {"circuit": 1}], +"inputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"outputFluids": [{"materialFluid": "SulfuricAcid", "amount": 7000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellEthylene", "count": 5}, {"circuit": 1}], +"inputFluids": [{"gas": "Chlorine", "amount": 1000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 5}], +"duration": 240, +"EUt": 30}, +{"inputs": [{"ore": "cellChlorine", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Ethylene", "amount": 5000}], +"outputFluids": [{"gas": "VinylChloride", "amount": 6000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 240, +"EUt": 30}, + +{"inputs": [{"ore": "cellLightFuel", "count": 1}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "cellFuel", "count": 2}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 250}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 1000}], +"outputs":[{"ore": "cellEmpty", "count": 2}], +"duration": 80, +"EUt": 8}, +{"inputs": [{"ore": "cellBioDiesel", "count": 4}], +"inputFluids": [{"materialFluid": "NitricAcid", "amount": 1000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 4}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "LightFuel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "Fuel", "amount": 8000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 4000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 8}, +{"inputs": [{"ore": "cellNitricAcid", "count": 1}], +"inputFluids": [{"materialFluid": "BioDiesel", "amount": 4000}], +"outputFluids": [{"materialFluid": "NitroFuel", "amount": 3000}], +"outputs":[{"ore": "cellEmpty", "count": 1}], +"duration": 320, +"EUt": 8}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 1}], +"inputFluids": [{"materialFluid": "Benzene", "amount": 1000}], +"outputFluids": [{"molten": "PolyphenyleneSulfide", "amount": 2000}], +"duration": 320, +"EUt": 30}, + +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"ore": "dustSodium", "count": 1}], +"inputFluids": [{"gas": "Oxygen", "amount": 4000}], +"outputFluids": [{"materialFluid": "SodiumPersulfate", "amount": 6000}], +"duration": 8000, +"EUt": 30}, + {}] diff --git a/src/main/resources/assets/gregtech/recipes/distillation_tower.json b/src/main/resources/assets/gregtech/recipes/distillation_tower.json index de61fbcb85..13831dc6f9 100644 --- a/src/main/resources/assets/gregtech/recipes/distillation_tower.json +++ b/src/main/resources/assets/gregtech/recipes/distillation_tower.json @@ -80,8 +80,8 @@ "duration": 40, "EUt": 256}, -{"inputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], -"outputFluids": [{"fluid": "water", "amount": 1000}, {"materialFluid": "HydrochloricAcid", "amount": 1000}], +{"inputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}], +"outputFluids": [{"fluid": "water", "amount": 1000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 1000}], "optimize": false, "enableCondition": "MoreComplicatedChemicalRecipes", "duration": 300, @@ -100,4 +100,21 @@ "optimize": false, "duration": 75, "EUt": 180}, + +{"inputFluids": [{"materialFluid": "WoodVinegar", "amount": 1000}], +"outputFluids": [{"materialFluid": "AceticAcid", "amount": 100}, {"fluid": "water", "amount": 500}, {"materialFluid": "Ethanol", "amount": 10}, {"materialFluid": "Methanol", "amount": 300}, {"materialFluid": "Acetone", "amount": 50}, {"materialFluid": "MethylAcetate", "amount": 10}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 80, +"EUt": 64}, +{"inputFluids": [{"materialFluid": "WoodTar", "amount": 1000}], +"outputFluids": [{"materialFluid": "Creosote", "amount": 500}, {"materialFluid": "Phenol", "amount": 75}, {"materialFluid": "Benzene", "amount": 350}, {"materialFluid": "Toluene", "amount": 75}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 80, +"EUt": 64}, + +{"inputFluids": [{"materialFluid": "Acetone", "amount": 1000}], +"outputFluids": [{"gas": "Ethenone", "amount": 500}, {"gas": "Methane", "amount": 500}], +"enableCondition": "MoreComplicatedChemicalRecipes", +"duration": 100, +"EUt": 160}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/distillery.json b/src/main/resources/assets/gregtech/recipes/distillery.json index da342bc7f6..25b389b373 100644 --- a/src/main/resources/assets/gregtech/recipes/distillery.json +++ b/src/main/resources/assets/gregtech/recipes/distillery.json @@ -170,8 +170,8 @@ "duration": 80, "EUt": 64}, -{"inputFluids": [{"materialFluid": "DilutedHydrochloricAcid", "amount": 2000}], -"fluidsPerCircuit": [{"fluid": "water", "amount": 1000}, {"materialFluid": "HydrochloricAcid", "amount": 1000}], +{"inputFluids": [{"materialFluid": "DilutedHydrochloricAcid_GT5U", "amount": 2000}], +"fluidsPerCircuit": [{"fluid": "water", "amount": 1000}, {"materialFluid": "HydrochloricAcid_GT5U", "amount": 1000}], "enableCondition": "MoreComplicatedChemicalRecipes", "duration": 600, "EUt": 16}, diff --git a/src/main/resources/assets/gregtech/recipes/electrolyzer.json b/src/main/resources/assets/gregtech/recipes/electrolyzer.json index c8db492f22..8ce9ecbb2e 100644 --- a/src/main/resources/assets/gregtech/recipes/electrolyzer.json +++ b/src/main/resources/assets/gregtech/recipes/electrolyzer.json @@ -63,20 +63,20 @@ "EUt": 64}, {"inputs": [{"ore": "cellEmpty", "count": 1}, {"circuit": 1}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "outputFluids": [{"gas": "Chlorine", "amount": 1000}], "outputs": [{"ore": "cellHydrogen", "count": 1}], "enableCondition": "MoreComplicatedChemicalRecipes", "duration": 720, "EUt": 30}, {"inputs": [{"ore": "cellEmpty", "count": 1}, {"circuit": 11}], -"inputFluids": [{"materialFluid": "HydrochloricAcid", "amount": 2000}], +"inputFluids": [{"materialFluid": "HydrochloricAcid_GT5U", "amount": 2000}], "outputFluids": [{"gas": "Hydrogen", "amount": 1000}], "outputs": [{"ore": "cellChlorine", "count": 1}], "enableCondition": "MoreComplicatedChemicalRecipes", "duration": 720, "EUt": 30}, -{"inputs": [{"ore": "cellHydrochloricAcid", "count": 2}], +{"inputs": [{"ore": "cellHydrochloricAcid_GT5U", "count": 2}], "outputs": [{"ore": "cellHydrogen", "count": 1}, {"ore": "cellChlorine", "count": 1}], "enableCondition": "MoreComplicatedChemicalRecipes", "duration": 720, diff --git a/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json b/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json index bcc3eddf31..bf17586c66 100644 --- a/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json +++ b/src/main/resources/assets/gregtech/recipes/large_chemical_reactor.json @@ -567,6 +567,12 @@ "optimize": false, "duration": 50, "EUt": 30}, +{"inputs": [{"ore": "dustTin", "count": 1}, {"ore": "dustSaltpeter", "count": 1}], +"inputFluids":[{"molten": "Glass", "amount": 864}], +"outputs":[{"item": "Railcraft:glass", "count": 6}], +"optimize": false, +"duration": 50, +"EUt": 30}, {"inputs": [{"ore": "dustRutile", "count": 1}, {"ore": "cellCarbon", "count": 2}], "inputFluids":[{"gas": "Chlorine", "amount": 4000}], "outputFluids":[{"materialFluid": "Titaniumtetrachloride", "amount": 1000}], @@ -831,7 +837,7 @@ {"inputs": [{"ore": "dustSodium", "count": 1}, {"circuit": 1}], "inputFluids": [{"fluid": "water", "amount": 3000}], "outputFluids": [{"gas": "Hydrogen", "amount": 1000}], -"outputs": [{"ore": "dustSodiumHydroxide", "count": 3}], +"outputs": [{"ore": "dustSodiumHydroxide_GT5U", "count": 3}], "optimize": false, "duration": 600, "EUt": 30}, @@ -964,28 +970,28 @@ "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellMethanol", "count": 1}], "inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs": [{"ore": "cellGlycerol", "count": 1}], "optimize": false, "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellSeedOil", "count": 6}], "inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs": [{"ore": "cellBioDiesel", "count": 6}], "optimize": false, "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellMethanol", "count": 1}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellMethanol", "count": 1}], "inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs": [{"ore": "cellGlycerol", "count": 1}], "optimize": false, "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellFishOil", "count": 6}], "inputFluids": [{"materialFluid": "Methanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs": [{"ore": "cellBioDiesel", "count": 6}], @@ -993,28 +999,28 @@ "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellEthanol", "count": 1}], "inputFluids": [{"materialFluid": "SeedOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs": [{"ore": "cellGlycerol", "count": 1}], "optimize": false, "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellSeedOil", "count": 6}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellSeedOil", "count": 6}], "inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs": [{"ore": "cellBioDiesel", "count": 6}], "optimize": false, "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellEthanol", "count": 1}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellEthanol", "count": 1}], "inputFluids": [{"materialFluid": "FishOil", "amount": 6000}], "outputFluids": [{"materialFluid": "BioDiesel", "amount": 6000}], "outputs": [{"ore": "cellGlycerol", "count": 1}], "optimize": false, "duration": 600, "EUt": 30}, -{"inputs": [{"ore": "dustTinySodiumHydroxide", "count": 1}, {"ore": "cellFishOil", "count": 6}], +{"inputs": [{"ore": "dustTinySodiumHydroxide_GT5U", "count": 1}, {"ore": "cellFishOil", "count": 6}], "inputFluids": [{"materialFluid": "Ethanol", "amount": 1000}], "outputFluids": [{"materialFluid": "Glycerol", "amount": 1000}], "outputs": [{"ore": "cellBioDiesel", "count": 6}], @@ -1111,5 +1117,10 @@ "optimize": false, "duration": 240, "EUt": 30}, +{"inputs": [{"ore": "dustSulfur", "count": 1}, {"circuit": 1}], +"inputFluids": [{"gas": "Hydrogen", "amount": 2000}], +"outputFluids": [{"gas": "HydricSulfide", "amount": 3000}], +"duration": 60, +"EUt": 8}, {}] diff --git a/src/main/resources/assets/gregtech/recipes/lathe.json b/src/main/resources/assets/gregtech/recipes/lathe.json index bf29e14ff1..337b8c2e22 100644 --- a/src/main/resources/assets/gregtech/recipes/lathe.json +++ b/src/main/resources/assets/gregtech/recipes/lathe.json @@ -1,5 +1,13 @@ [ -{"inputs": [{"ore": "slabWood", "count": 1}], +{"inputs": [{"item": "minecraft:wooden_slab:*", "count": 1}], +"outputs": [{"item": "minecraft:bowl", "count": 1}, {"ore": "dustSmallWood", "count": 1}], +"duration": 50, +"EUt": 8}, +{"inputs": [{"item": "Forestry:slabs:*", "count": 1}], +"outputs": [{"item": "minecraft:bowl", "count": 1}, {"ore": "dustSmallWood", "count": 1}], +"duration": 50, +"EUt": 8}, +{"inputs": [{"item": "ExtrabiomesXL:woodslab:*", "count": 1}], "outputs": [{"item": "minecraft:bowl", "count": 1}, {"ore": "dustSmallWood", "count": 1}], "duration": 50, "EUt": 8}, diff --git a/src/main/resources/assets/gregtech/recipes/mixer.json b/src/main/resources/assets/gregtech/recipes/mixer.json index 07f9b99688..1670f1edb6 100644 --- a/src/main/resources/assets/gregtech/recipes/mixer.json +++ b/src/main/resources/assets/gregtech/recipes/mixer.json @@ -843,7 +843,7 @@ "duration": 100, "EUt": 8}, -{"inputs": [{"ore": "cellDimethylhydrazine", "count": 1}], +{"inputs": [{"ore": "cell1,1Dimethylhydrazine", "count": 1}], "inputFluids": [{"gas": "DinitrogenTetroxide", "amount": 1000}], "outputFluids": [{"fluid": "rocket_fuel", "amount": 2000}], "outputs": [{"ore": "cellEmpty", "count": 1}], @@ -851,13 +851,13 @@ "duration": 60, "EUt": 16}, {"inputs": [{"ore": "cellDinitrogenTetroxide", "count": 1}], -"inputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 1000}], +"inputFluids": [{"materialFluid": "1,1Dimethylhydrazine", "amount": 1000}], "outputFluids": [{"fluid": "rocket_fuel", "amount": 2000}], "outputs": [{"ore": "cellEmpty", "count": 1}], "enableCondition": "MoreComplicatedChemicalRecipes", "duration": 60, "EUt": 16}, -{"inputs": [{"ore": "cellDimethylhydrazine", "count": 2}], +{"inputs": [{"ore": "cell1,1Dimethylhydrazine", "count": 2}], "inputFluids": [{"gas": "Oxygen", "amount": 1000}], "outputFluids": [{"fluid": "rocket_fuel", "amount": 3000}], "outputs": [{"ore": "cellEmpty", "count": 2}], @@ -865,7 +865,7 @@ "duration": 60, "EUt": 16}, {"inputs": [{"ore": "cellOxygen", "count": 1}], -"inputFluids": [{"materialFluid": "Dimethylhydrazine", "amount": 2000}], +"inputFluids": [{"materialFluid": "1,1Dimethylhydrazine", "amount": 2000}], "outputFluids": [{"fluid": "rocket_fuel", "amount": 3000}], "outputs": [{"ore": "cellEmpty", "count": 1}], "enableCondition": "MoreComplicatedChemicalRecipes",