aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/recipe
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2019-12-30 01:48:09 +0000
committerGitHub <noreply@github.com>2019-12-30 01:48:09 +0000
commit5af823e80a611090216375fecd3794d345446830 (patch)
treec54a19977b4a25cb86f54394eb9711aaf268efe3 /src/Java/gtPlusPlus/core/recipe
parenta731e939c6b9a70ac9fd444dbf06243f63f29c06 (diff)
parentcc825179dce70a5f2c4a13730639e3300243e21a (diff)
downloadGT5-Unofficial-5af823e80a611090216375fecd3794d345446830.tar.gz
GT5-Unofficial-5af823e80a611090216375fecd3794d345446830.tar.bz2
GT5-Unofficial-5af823e80a611090216375fecd3794d345446830.zip
Merge pull request #525 from alkcorp/DevTop
+ 6 Months of work, let's get the ball rolling.
Diffstat (limited to 'src/Java/gtPlusPlus/core/recipe')
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java484
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_General.java83
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java484
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java226
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java25
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_Tools.java11
-rw-r--r--src/Java/gtPlusPlus/core/recipe/common/CI.java32
7 files changed, 943 insertions, 402 deletions
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
index b6d41443ef..14858b15aa 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
@@ -2,9 +2,9 @@ package gtPlusPlus.core.recipe;
import static gtPlusPlus.core.lib.CORE.GTNH;
+import java.util.ArrayList;
+
import cpw.mods.fml.common.Loader;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.ConfigCategories;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
@@ -27,8 +27,6 @@ import gtPlusPlus.core.lib.LoadedMods;
import gtPlusPlus.core.material.ALLOY;
import gtPlusPlus.core.material.ELEMENT;
import gtPlusPlus.core.material.MISC_MATERIALS;
-import gtPlusPlus.core.material.MaterialStack;
-import gtPlusPlus.core.material.NONMATERIAL;
import gtPlusPlus.core.material.ORES;
import gtPlusPlus.core.material.Particle;
import gtPlusPlus.core.material.nuclear.FLUORIDES;
@@ -46,6 +44,7 @@ import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
+import net.minecraftforge.oredict.OreDictionary;
public class RECIPES_GREGTECH {
@@ -92,24 +91,25 @@ public class RECIPES_GREGTECH {
latheRecipes();
vacuumFreezerRecipes();
fluidheaterRecipes();
-
-
+
+
/**
* Special Recipe handlers
*/
RECIPES_SeleniumProcessing.init();
-
-
-
-
-
+ RECIPES_RareEarthProcessing.init();
+
+
+
+
+
addFuels();
}
private static void fluidheaterRecipes() {
GT_Values.RA.addFluidHeaterRecipe(CI.getNumberedCircuit(20), FluidUtils.getWater(1000), FluidUtils.getHotWater(1000), 30, 30);
-
+
}
private static void vacuumFreezerRecipes() {
@@ -274,6 +274,35 @@ public class RECIPES_GREGTECH {
20 * 60 * 1 * (GTNH ? 2 : 1),
(int) GT_Values.V[5]);
+ // Turbine Automation Port
+ CORE.RA.addAssemblylineRecipe(
+ ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_8_TURBINE_AUTOMATION, 1),
+ 20 * 60 * 60 * 24,
+ new ItemStack[] {
+ CI.getTieredMachineHull(8, 4),
+ CI.getConveyor(8, GTNH ? 24 : 12),
+ CI.getElectricMotor(7, GTNH ? 32 : 16),
+ CI.getElectricPiston(7, GTNH ? 16 : 4),
+ CI.getEnergyCore(6, GTNH ? 8 : 2),
+ CI.getPlate(8, GTNH ? 24 : 12),
+ CI.getTieredComponent(OrePrefixes.screw, 8, GTNH ? 48 : 24),
+ CI.getTieredComponent(OrePrefixes.bolt, 7, GTNH ? 32 : 16),
+ CI.getTieredComponent(OrePrefixes.rod, 6, GTNH ? 12 : 6),
+ CI.getTieredComponent(OrePrefixes.circuit, 7, GTNH ? 20 : 10),
+ CI.getTieredComponent(OrePrefixes.rotor, 6, GTNH ? 16 : 8),
+ },
+ new FluidStack[] {
+ CI.getTieredFluid(8, 144 * 32),
+ CI.getAlternativeTieredFluid(7, 144 * 16),
+ CI.getTertiaryTieredFluid(7, 144 * 16),
+ ALLOY.BABBIT_ALLOY.getFluid(128 * 144),
+ ALLOY.ZERON_100.getFluid(144 * 64)
+
+ },
+ GregtechItemList.Hatch_Input_TurbineHousing.get(4),
+ 20 * 60 * 60 * (GTNH ? 2 : 1),
+ (int) GT_Values.V[8]);
+
/*
* Contianment casings
@@ -358,88 +387,116 @@ public class RECIPES_GREGTECH {
}
- //Nano Healer
- CORE.RA.addAssemblylineRecipe(
- ItemUtils.simpleMetaStack(Items.golden_apple, 1, 1),
- 20 * 60 * 10,
- new ItemStack[] {
- ItemUtils.getSimpleStack(aGemCasings[2], GTNH ? 4 : 2),
- CI.getTieredComponent(OrePrefixes.plate, 8, GTNH ? 32 : 16),
- CI.getTieredComponent(OrePrefixes.circuit, 7, GTNH ? 16 : 4),
- CI.getTieredComponent(OrePrefixes.cableGt02, 7, GTNH ? 16 : 8),
- CI.getTieredComponent(OrePrefixes.gearGt, 6, GTNH ? 6 : 3),
- CI.getTieredComponent(OrePrefixes.screw, 7, GTNH ? 16 : 8),
- CI.getTieredComponent(OrePrefixes.bolt, 5, GTNH ? 24 : 12),
- CI.getTieredComponent(OrePrefixes.frameGt, 4, GTNH ? 12 : 6),
- aCoilWire[3]
- },
- new FluidStack[] {
- CI.getTieredFluid(7, 144 * 18 * (GTNH ? 16 : 8)),
- CI.getTertiaryTieredFluid(7, 144 * 18 * (GTNH ? 16 : 8)),
- CI.getAlternativeTieredFluid(6, 144 * 18 * (GTNH ? 16 : 8)),
- CI.getAlternativeTieredFluid(7, 144 * 18 * (GTNH ? 16 : 8)),
-
- },
- ItemUtils.getItemStackFromFQRN("miscutils:personalHealingDevice", 1),
- 20 * 60 * 30 * (GTNH ? 2 : 1),
- (int) GT_Values.V[7]);
-
-
-
- //Charge Pack LuV-UV
-
- ItemStack[] aChargeResearch = new ItemStack[] {
- ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore7", 1),
- ItemUtils.getSimpleStack(ModItems.itemChargePack_High_1, 1),
- ItemUtils.getSimpleStack(ModItems.itemChargePack_High_2, 1),
- ItemUtils.getSimpleStack(ModItems.itemChargePack_High_3, 1),
- };
-
- ItemStack[] aChargeOutputs = new ItemStack[] {
- ItemUtils.getSimpleStack(ModItems.itemChargePack_High_1, 1),
- ItemUtils.getSimpleStack(ModItems.itemChargePack_High_2, 1),
- ItemUtils.getSimpleStack(ModItems.itemChargePack_High_3, 1),
- ItemUtils.getSimpleStack(ModItems.itemChargePack_High_4, 1),
- };
+ if (LoadedMods.Baubles) {
+ //Nano Healer
+ CORE.RA.addAssemblylineRecipe(
+ ItemUtils.simpleMetaStack(Items.golden_apple, 1, 1),
+ 20 * 60 * 10,
+ new ItemStack[] {
+ ItemUtils.getSimpleStack(aGemCasings[2], GTNH ? 4 : 2),
+ CI.getTieredComponent(OrePrefixes.plate, 8, GTNH ? 32 : 16),
+ CI.getTieredComponent(OrePrefixes.circuit, 7, GTNH ? 16 : 4),
+ CI.getTieredComponent(OrePrefixes.cableGt02, 7, GTNH ? 16 : 8),
+ CI.getTieredComponent(OrePrefixes.gearGt, 6, GTNH ? 6 : 3),
+ CI.getTieredComponent(OrePrefixes.screw, 7, GTNH ? 16 : 8),
+ CI.getTieredComponent(OrePrefixes.bolt, 5, GTNH ? 24 : 12),
+ CI.getTieredComponent(OrePrefixes.frameGt, 4, GTNH ? 12 : 6),
+ aCoilWire[3]
+ },
+ new FluidStack[] {
+ CI.getTieredFluid(7, 144 * 18 * (GTNH ? 16 : 8)),
+ CI.getTertiaryTieredFluid(7, 144 * 18 * (GTNH ? 16 : 8)),
+ CI.getAlternativeTieredFluid(6, 144 * 18 * (GTNH ? 16 : 8)),
+ CI.getAlternativeTieredFluid(7, 144 * 18 * (GTNH ? 16 : 8)),
- ItemStack[] aBufferCoreInputs = new ItemStack[] {
- ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore7", GTNH ? 8 : 4),
- ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore8", GTNH ? 8 : 4),
- ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore9", GTNH ? 8 : 4),
- ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore10", GTNH ? 8 : 4),
- };
+ },
+ ItemUtils.getItemStackFromFQRN("miscutils:personalHealingDevice", 1),
+ 20 * 60 * 30 * (GTNH ? 2 : 1),
+ (int) GT_Values.V[7]);
+
+
+
+ //Charge Pack LuV-UV
+
+ ItemStack[] aChargeResearch = new ItemStack[] {
+ ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore7", 1),
+ ItemUtils.getSimpleStack(ModItems.itemChargePack_High_1, 1),
+ ItemUtils.getSimpleStack(ModItems.itemChargePack_High_2, 1),
+ ItemUtils.getSimpleStack(ModItems.itemChargePack_High_3, 1),
+ };
+
+ ItemStack[] aChargeOutputs = new ItemStack[] {
+ ItemUtils.getSimpleStack(ModItems.itemChargePack_High_1, 1),
+ ItemUtils.getSimpleStack(ModItems.itemChargePack_High_2, 1),
+ ItemUtils.getSimpleStack(ModItems.itemChargePack_High_3, 1),
+ ItemUtils.getSimpleStack(ModItems.itemChargePack_High_4, 1),
+ };
+
+ ItemStack[] aBufferCoreInputs = new ItemStack[] {
+ ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore7", GTNH ? 8 : 4),
+ ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore8", GTNH ? 8 : 4),
+ ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore9", GTNH ? 8 : 4),
+ ItemUtils.getItemStackFromFQRN("miscutils:item.itemBufferCore10", GTNH ? 8 : 4),
+ };
+
+ int aCurrSlot = 0;
+ for (int h = 6; h < 10; h++) {
+ CORE.RA.addAssemblylineRecipe(
+ aChargeResearch[aCurrSlot],
+ 20 * 60 * 10 * (aCurrSlot + 1),
+ new ItemStack[] {
+ ItemUtils.getSimpleStack(
+ aGemBatteries[aCurrSlot], GTNH ? 4 : 2),
+ aBufferCoreInputs[aCurrSlot],
+ aCoilWire[aCurrSlot],
+ CI.getTieredComponent(OrePrefixes.plate, h, GTNH ? 16 : 8),
+ CI.getTieredComponent(OrePrefixes.plate, h-1, GTNH ? 32 : 16),
+ CI.getTieredComponent(OrePrefixes.circuit, h, GTNH ? 16 : 4),
+ CI.getTieredComponent(OrePrefixes.circuit, h-1, GTNH ? 32 : 8),
+ CI.getTieredComponent(OrePrefixes.cableGt12, h-1, GTNH ? 32 : 16),
+ CI.getTieredComponent(OrePrefixes.screw, h, GTNH ? 16 : 8),
+ CI.getTieredComponent(OrePrefixes.bolt, h-2, GTNH ? 32 : 16),
+ CI.getElectricMotor(h, GTNH ? 8 : 4),
+ CI.getFieldGenerator(h-1, 2),
+ CI.getRobotArm(h-2, GTNH ? 4 : 2),
+ },
+ new FluidStack[] {
+ CI.getTieredFluid(h, 144 * 18 * (GTNH ? 8 : 4)),
+ CI.getTertiaryTieredFluid(h-1, 144 * 18 * (GTNH ? 8 : 4)),
+ CI.getAlternativeTieredFluid(h-1, 144 * 18 * (GTNH ? 8 : 4)),
+ CI.getAlternativeTieredFluid(h-2, 144 * 18 * (GTNH ? 8 : 4)),
+ },
+ aChargeOutputs[aCurrSlot],
+ 20 * 60 * 30 * (GTNH ? 2 : 1) * (aCurrSlot+1),
+ (int) GT_Values.V[h]);
+ aCurrSlot++;
+ }
- int aCurrSlot = 0;
- for (int h = 6; h < 10; h++) {
+ //Cloaking device
CORE.RA.addAssemblylineRecipe(
- aChargeResearch[aCurrSlot],
- 20 * 60 * 10 * (aCurrSlot + 1),
+ ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_9_CLOAKING, 1),
+ 20 * 60 * 10,
new ItemStack[] {
- ItemUtils.getSimpleStack(
- aGemBatteries[aCurrSlot], GTNH ? 4 : 2),
- aBufferCoreInputs[aCurrSlot],
- aCoilWire[aCurrSlot],
- CI.getTieredComponent(OrePrefixes.plate, h, GTNH ? 16 : 8),
- CI.getTieredComponent(OrePrefixes.plate, h-1, GTNH ? 32 : 16),
- CI.getTieredComponent(OrePrefixes.circuit, h, GTNH ? 16 : 4),
- CI.getTieredComponent(OrePrefixes.circuit, h-1, GTNH ? 32 : 8),
- CI.getTieredComponent(OrePrefixes.cableGt12, h-1, GTNH ? 32 : 16),
- CI.getTieredComponent(OrePrefixes.screw, h, GTNH ? 16 : 8),
- CI.getTieredComponent(OrePrefixes.bolt, h-2, GTNH ? 32 : 16),
- CI.getElectricMotor(h, GTNH ? 8 : 4),
- CI.getFieldGenerator(h-1, 2),
- CI.getRobotArm(h-2, GTNH ? 4 : 2),
+ ItemUtils.getSimpleStack(aGemCasings[3], GTNH ? 4 : 2),
+ CI.getTieredComponent(OrePrefixes.plate, 8, GTNH ? 32 : 16),
+ CI.getTieredComponent(OrePrefixes.circuit, 7, GTNH ? 16 : 4),
+ CI.getTieredComponent(OrePrefixes.cableGt04, 8, GTNH ? 16 : 8),
+ CI.getTieredComponent(OrePrefixes.gearGt, 7, GTNH ? 6 : 3),
+ CI.getTieredComponent(OrePrefixes.screw, 8, GTNH ? 16 : 8),
+ CI.getTieredComponent(OrePrefixes.bolt, 7, GTNH ? 24 : 12),
+ CI.getTieredComponent(OrePrefixes.frameGt, 5, GTNH ? 12 : 6),
+ aCoilWire[3]
},
new FluidStack[] {
- CI.getTieredFluid(h, 144 * 18 * (GTNH ? 8 : 4)),
- CI.getTertiaryTieredFluid(h-1, 144 * 18 * (GTNH ? 8 : 4)),
- CI.getAlternativeTieredFluid(h-1, 144 * 18 * (GTNH ? 8 : 4)),
- CI.getAlternativeTieredFluid(h-2, 144 * 18 * (GTNH ? 8 : 4)),
+ CI.getTieredFluid(8, 144 * 18 * (GTNH ? 16 : 8)),
+ CI.getTertiaryTieredFluid(8, 144 * 18 * (GTNH ? 16 : 8)),
+ CI.getAlternativeTieredFluid(7, 144 * 18 * (GTNH ? 16 : 8)),
+ CI.getAlternativeTieredFluid(8, 144 * 18 * (GTNH ? 16 : 8)),
+
},
- aChargeOutputs[aCurrSlot],
- 20 * 60 * 30 * (GTNH ? 2 : 1) * (aCurrSlot+1),
- (int) GT_Values.V[h]);
- aCurrSlot++;
+ ItemUtils.getItemStackFromFQRN("miscutils:personalCloakingDevice", 1),
+ 20 * 60 * 30 * (GTNH ? 2 : 1),
+ (int) GT_Values.V[8]);
}
@@ -722,16 +779,36 @@ public class RECIPES_GREGTECH {
480*4);
+ //Wood's Glass Laser Lens
+ CORE.RA.addBlastSmelterRecipe(
+ new ItemStack[] {
+ ItemUtils.getGregtechCircuit(5),
+ ItemList.Shape_Mold_Ball.get(0),
+ ELEMENT.getInstance().BARIUM.getDust(1),
+ ELEMENT.getInstance().SODIUM.getDust(1),
+ ELEMENT.getInstance().SILICON.getDust(2),
+ ELEMENT.getInstance().NICKEL.getDust(1),
+ ItemUtils.getItemStackOfAmountFromOreDict("dustGlass", 5)
+ },
+ FluidUtils.getUUM(1000),
+ null,
+ new ItemStack[] {
+ GregtechItemList.Laser_Lens_WoodsGlass.get(1)
+ },
+ new int[] {10000},
+ 20 * 300,
+ (int) GT_Values.V[3]);
+
}
private static void fluidcannerRecipes() {
// Sulfuric Acid
- GT_Values.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(Items.glass_bottle),
+ CORE.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(Items.glass_bottle),
ItemUtils.getSimpleStack(ModItems.itemSulfuricPotion), FluidUtils.getFluidStack("sulfuricacid", 250),
null);
- GT_Values.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(ModItems.itemSulfuricPotion),
+ CORE.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(ModItems.itemSulfuricPotion),
ItemUtils.getSimpleStack(Items.glass_bottle), null, FluidUtils.getFluidStack("sulfuricacid", 250));
@@ -741,31 +818,49 @@ public class RECIPES_GREGTECH {
// Try use Internal GT Fluid first
if (Utils.getGregtechVersionAsInt() >= 50929) {
// Hydrofluoric Acid
- GT_Values.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(Items.glass_bottle),
+ CORE.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(Items.glass_bottle),
ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion),
FluidUtils.getFluidStack("hydrofluoricacid_gt5u", 250), null);
- addedGtExtraction = GT_Values.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion),
+ addedGtExtraction = CORE.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion),
ItemUtils.getSimpleStack(Items.glass_bottle), null, FluidUtils.getFluidStack("hydrofluoricacid_gt5u", 250));
}
//Add a Fill recipe for GT++ Acid
- GT_Values.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(Items.glass_bottle),
+ CORE.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(Items.glass_bottle),
ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion),
FluidUtils.getFluidStack("hydrofluoricacid", 125), null);
//Add an empty recipe, but only if we didn't for the standard GT HF. Prevents Fluid transformation exploits.
- if (!addedGtExtraction)
- GT_Values.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion),
- ItemUtils.getSimpleStack(Items.glass_bottle), null, FluidUtils.getFluidStack("hydrofluoricacid", 125));
+ if (!addedGtExtraction) {
+ CORE.RA.addFluidCannerRecipe(ItemUtils.getSimpleStack(ModItems.itemHydrofluoricPotion), ItemUtils.getSimpleStack(Items.glass_bottle), null, FluidUtils.getFluidStack("hydrofluoricacid", 125));
+ }
+ //Gelid Cryotheum
+ CORE.RA.addFluidExtractionRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustCryotheum", 1), FluidUtils.getFluidStack("cryotheum", 250), 200, 240);
+
+ //Ender Fluid
+ CORE.RA.addFluidExtractionRecipe(ItemUtils.getSimpleStack(Items.ender_pearl), FluidUtils.getFluidStack("ender", 250), 100, 30);
+
+ //Blazing Pyrotheum
+ CORE.RA.addFluidExtractionRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustPyrotheum", 1), FluidUtils.getFluidStack("pyrotheum", 250), 200, 240);
+
}
private static void cokeOvenRecipes() {
Logger.INFO("Loading Recipes for Industrial Coking Oven.");
-
- // Wood to Charcoal
- AddGregtechRecipe.addCokeAndPyrolyseRecipes(GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 20L), 20,
- GT_ModHandler.getSteam(1000), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 24L),
- FluidUtils.getFluidStack("fluid.coalgas", 1440), 60, 30);
+ // Wood to Charcoal
+ //Try use all woods found
+ ArrayList<ItemStack> aLogData = OreDictionary.getOres("logWood");
+ if (aLogData.isEmpty()) {
+ AddGregtechRecipe.addCokeAndPyrolyseRecipes(GT_OreDictUnificator.get(OrePrefixes.log, Materials.Wood, 20L), 20,
+ GT_ModHandler.getSteam(1000), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 24L),
+ FluidUtils.getFluidStack("fluid.coalgas", 1440), 60, 30); }
+ else {
+ for (ItemStack stack : aLogData) {
+ AddGregtechRecipe.addCokeAndPyrolyseRecipes(ItemUtils.getSimpleStack(stack, 20), 20,
+ GT_ModHandler.getSteam(1000), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Charcoal, 24L),
+ FluidUtils.getFluidStack("fluid.coalgas", 1440), 60, 30);
+ }
+ }
// Coal to Coke
AddGregtechRecipe.addCokeAndPyrolyseRecipes(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Coal, 16L), 22,
@@ -1334,41 +1429,50 @@ public class RECIPES_GREGTECH {
CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {ItemUtils.getSimpleStack(Items.nether_star), ItemUtils.getItemStackOfAmountFromOreDict("plateTungstenSteel", 8), ItemUtils.getItemStackOfAmountFromOreDict("stickBlackSteel", 8)}, null, ItemUtils.getSimpleStack(ModBlocks.blockWitherGuard, 32), 30*20, 500);
+ ItemStack aFluidReg1 = Utils.getValueOfItemList("FluidRegulator_LV", ItemList.Pump_LV).get(1);
+ ItemStack aFluidReg2 = Utils.getValueOfItemList("FluidRegulator_MV", ItemList.Pump_MV).get(1);
+ ItemStack aFluidReg3 = Utils.getValueOfItemList("FluidRegulator_HV", ItemList.Pump_HV).get(1);
+ ItemStack aFluidReg4 = Utils.getValueOfItemList("FluidRegulator_EV", ItemList.Pump_EV).get(1);
CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
- CI.electricPump_LV,
+ aFluidReg1,
CI.electricMotor_LV,
- ItemUtils.getItemStackOfAmountFromOreDict("circuitBasic", 2),
+ CI.getTieredComponent(OrePrefixes.bolt, 1, GTNH ? 8 : 4),
ItemUtils.getItemStackOfAmountFromOreDict("ringBrass", 1),
ItemUtils.getItemStackOfAmountFromOreDict("stickBrass", 1),
ItemUtils.getItemStackOfAmountFromOreDict("plateSteel", 2)
}, null, ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1), 10*20, 30);
CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
- CI.electricPump_MV,
+ aFluidReg2,
CI.electricMotor_MV,
- ItemUtils.getItemStackOfAmountFromOreDict("circuitAdvanced", 2),
+ CI.getTieredComponent(OrePrefixes.bolt, 2, GTNH ? 8 : 4),
ItemUtils.getItemStackOfAmountFromOreDict("ringInvar", 1),
ItemUtils.getItemStackOfAmountFromOreDict("stickInvar", 1),
ItemUtils.getItemStackOfAmountFromOreDict("plateAluminium", 2)
}, null, ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1), 10*20*2, 120);
CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
- CI.electricPump_HV,
+ aFluidReg3,
CI.electricMotor_HV,
- ItemUtils.getItemStackOfAmountFromOreDict("circuitData", 2),
+ CI.getTieredComponent(OrePrefixes.bolt, 3, GTNH ? 8 : 4),
ItemUtils.getItemStackOfAmountFromOreDict("ringChrome", 1),
ItemUtils.getItemStackOfAmountFromOreDict("stickChrome", 1),
ItemUtils.getItemStackOfAmountFromOreDict("plateStainlessSteel", 2)
}, null, ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1), 10*20*3, 480);
CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
- CI.electricPump_EV,
+ aFluidReg4,
CI.electricMotor_EV,
- ItemUtils.getItemStackOfAmountFromOreDict("circuitElite", 2),
+ CI.getTieredComponent(OrePrefixes.bolt, 4, GTNH ? 8 : 4),
ItemUtils.getItemStackOfAmountFromOreDict("ringTitanium", 1),
ItemUtils.getItemStackOfAmountFromOreDict("stickTitanium", 1),
ItemUtils.getItemStackOfAmountFromOreDict("plateTungstenSteel", 2)
}, null, ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1), 10*20*4, 1960);
+ GT_Values.RA.addAssemblerRecipe(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1), CI.getNumberedCircuit(20), ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1000, 1), 30, 30);
+ GT_Values.RA.addAssemblerRecipe(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1), CI.getNumberedCircuit(20), ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1001, 1), 120, 120);
+ GT_Values.RA.addAssemblerRecipe(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1), CI.getNumberedCircuit(20), ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1002, 1), 480, 480);
+ GT_Values.RA.addAssemblerRecipe(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1), CI.getNumberedCircuit(20), ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1003, 1), 1820, 1820);
+
@@ -1417,11 +1521,11 @@ public class RECIPES_GREGTECH {
ItemUtils.getSimpleStack(ModItems.itemChargePack_Low_4),
ItemUtils.getSimpleStack(ModItems.itemChargePack_Low_5)
};
-
+
for (int i = 1; i < 6; i++) {
-
+
int aAS = i-1;
-
+
CORE.RA.addSixSlotAssemblingRecipe(
new ItemStack[] {
aPackPlates[aAS],
@@ -1430,27 +1534,74 @@ public class RECIPES_GREGTECH {
aPackCircuit[aAS],
aPackBatteries[aAS],
CI.getSensor(i, GTNH ? 4 : 2),
- },
+ },
CI.getTieredFluid(i, (144 * (GTNH ? 4 : 2))),
aPackOutput[aAS],
30 * 20 * i,
(int) GT_Values.V[i]);
}
-
+
if (!GTNH) {
- if (CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.WroughtIron, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 2L), GregtechItemList.Fluid_Cell_1L.get(1L, new Object[0]), 50, 32);
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Bronze, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Bronze, 2L), GregtechItemList.Fluid_Cell_16L.get(1L, new Object[0]), 50, 32);
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Brass, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Brass, 2L), GregtechItemList.Fluid_Cell_36L.get(1L, new Object[0]), 75, 32);
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Invar, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Invar, 2L), GregtechItemList.Fluid_Cell_144L.get(1L, new Object[0]), 75, 32);
-
- } else {
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 4L), GregtechItemList.Fluid_Cell_1L.get(1L, new Object[0]), 50, 32);
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Bronze, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Bronze, 4L), GregtechItemList.Fluid_Cell_16L.get(1L, new Object[0]), 50, 32);
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Brass, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Brass, 4L), GregtechItemList.Fluid_Cell_36L.get(1L, new Object[0]), 75, 32);
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Invar, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Invar, 4L), GregtechItemList.Fluid_Cell_144L.get(1L, new Object[0]), 75, 32);
- }
+ if (CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
+ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.WroughtIron, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 2L), GregtechItemList.Fluid_Cell_1L.get(1L, new Object[0]), 50, 32);
+ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Bronze, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Bronze, 2L), GregtechItemList.Fluid_Cell_16L.get(1L, new Object[0]), 50, 32);
+ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Brass, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Brass, 2L), GregtechItemList.Fluid_Cell_36L.get(1L, new Object[0]), 75, 32);
+ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Invar, 1L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Invar, 2L), GregtechItemList.Fluid_Cell_144L.get(1L, new Object[0]), 75, 32);
+
+ } else {
+ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.WroughtIron, 4L), GregtechItemList.Fluid_Cell_1L.get(1L, new Object[0]), 50, 32);
+ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Bronze, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Bronze, 4L), GregtechItemList.Fluid_Cell_16L.get(1L, new Object[0]), 50, 32);
+ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Brass, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Brass, 4L), GregtechItemList.Fluid_Cell_36L.get(1L, new Object[0]), 75, 32);
+ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Invar, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Invar, 4L), GregtechItemList.Fluid_Cell_144L.get(1L, new Object[0]), 75, 32);
+ }
+ }
+
+
+ if (LoadedMods.Baubles) {
+
+
+
+ // Turbine Housing Research Page
+ CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
+ ItemUtils.getGregtechCircuit(17),
+ ItemUtils.getItemStackOfAmountFromOreDict("plateRefinedTrinium", GTNH ? 64 : 32),
+ CI.getSensor(6, GTNH ? 6 : 3),
+ CI.getBolt(7, GTNH ? 64 : 32),
+ ItemUtils.getItemStackOfAmountFromOreDict("wireFinePlatinum", GTNH ? 64 : 32),
+ ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(7), GTNH ? 12 : 6)
+ },
+ CI.getAlternativeTieredFluid(7, 144 * 32),
+ ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_8_TURBINE_AUTOMATION, 1),
+ 20 * 60 * 5,
+ (int) GT_Values.V[6]);
+
+ // Cloaking Device Research Page
+ CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
+ ItemUtils.getGregtechCircuit(17),
+ ItemUtils.getSimpleStack(ModItems.itemCircuitLFTR, 4),
+ CI.getFieldGenerator(6, GTNH ? 16 : 8),
+ ItemUtils.getItemStackOfAmountFromOreDict("wireFinePalladium", GTNH ? 32 : 16),
+ ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(6), GTNH ? 12 : 6)
+ },
+ CI.getAlternativeTieredFluid(7, 144 * 32),
+ ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_9_CLOAKING, 1),
+ 20 * 60 * 10,
+ (int) GT_Values.V[7]);
+
+
+ // Supreme Pizza Gloves
+ CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
+ ItemUtils.getGregtechCircuit(19),
+ ItemUtils.getSimpleStack(ModItems.itemRope, GTNH ? 32 : 16),
+ ItemUtils.getItemStackOfAmountFromOreDict("gearGtSmallWroughtIron", GTNH ? 8 : 4),
+ ItemUtils.getItemStackOfAmountFromOreDict("wireFineCopper", GTNH ? 32 : 16),
+ ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(1), GTNH ? 2 : 1)
+ },
+ FluidUtils.getFluidStack("molten.rubber", 2000),
+ ItemUtils.getSimpleStack(ModItems.itemPersonalFireProofDevice),
+ 20 * 60 * 5,
+ 30);
}
@@ -1517,8 +1668,10 @@ public class RECIPES_GREGTECH {
new ItemStack[] {
ItemUtils.getItemStackOfAmountFromOreDict("nuggetBronze", 1),
ItemUtils.getItemStackOfAmountFromOreDict("nuggetElectrum", 1),
+ ItemUtils.getItemStackOfAmountFromOreDict("nuggetTantalum", 1),
+ ItemUtils.getItemStackOfAmountFromOreDict("dustSmallTungstate", 1),
ItemUtils.getSimpleStack(Blocks.obsidian) },
- new int[] { 750, 250, 1850 }, 0);
+ new int[] { 750, 250, 250, 250, 1850 }, 0);
/*
* HotFuel.addNewHotFuel( FluidUtils.getFluidStack("ic2hotcoolant",
@@ -1547,19 +1700,19 @@ public class RECIPES_GREGTECH {
private static void fluidExtractorRecipes() {
//FLiBe fuel
- GT_Values.RA.addFluidExtractionRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustLi2BeF4", 1), null,
- FluidUtils.getFluidStack("li2bef4", 144), 10000, 100, 500);
+ CORE.RA.addFluidExtractionRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustLi2BeF4", 1),
+ FluidUtils.getFluidStack("li2bef4", 144), 100, 500);
//LFTR Fuel 1
- GT_Values.RA.addFluidExtractionRecipe(NUCLIDE.LiFBeF2ZrF4U235.getDust(1), null,
- NUCLIDE.LiFBeF2ZrF4U235.getFluid(144), 10000, 250, 1000);
- GT_Values.RA.addFluidExtractionRecipe(NUCLIDE.LiFBeF2ZrF4UF4.getDust(1), null,
- NUCLIDE.LiFBeF2ZrF4UF4.getFluid(144), 10000, 150, 2000);
- GT_Values.RA.addFluidExtractionRecipe(NUCLIDE.LiFBeF2ThF4UF4.getDust(1), null,
- NUCLIDE.LiFBeF2ThF4UF4.getFluid(144), 10000, 200, 1500);
+ CORE.RA.addFluidExtractionRecipe(NUCLIDE.LiFBeF2ZrF4U235.getDust(1),
+ NUCLIDE.LiFBeF2ZrF4U235.getFluid(144), 250, 1000);
+ CORE.RA.addFluidExtractionRecipe(NUCLIDE.LiFBeF2ZrF4UF4.getDust(1),
+ NUCLIDE.LiFBeF2ZrF4UF4.getFluid(144), 150, 2000);
+ CORE.RA.addFluidExtractionRecipe(NUCLIDE.LiFBeF2ThF4UF4.getDust(1),
+ NUCLIDE.LiFBeF2ThF4UF4.getFluid(144), 200, 1500);
//ZIRCONIUM_TETRAFLUORIDE
- GT_Values.RA.addFluidExtractionRecipe(FLUORIDES.ZIRCONIUM_TETRAFLUORIDE.getDust(1), null,
- FluidUtils.getFluidStack(ModItems.fluidZrF4, 144), 10000, 200, 512+256);
+ CORE.RA.addFluidExtractionRecipe(FLUORIDES.ZIRCONIUM_TETRAFLUORIDE.getDust(1),
+ FluidUtils.getFluidStack(ModItems.fluidZrF4, 144), 200, 512+256);
@@ -1600,6 +1753,27 @@ public class RECIPES_GREGTECH {
}
private static void centrifugeRecipes() {
+
+ //Try use all woods found, fix/add methane extraction.
+ ArrayList<ItemStack> aLogData = OreDictionary.getOres("logWood");
+ ArrayList<ItemStack> aRubberLogs = OreDictionary.getOres("logRubber");
+ if (!aLogData.isEmpty() && !aRubberLogs.isEmpty()) {
+ Logger.INFO("Fixing Methane output of centrifuged logs.");
+ //First Check to see if it's a rubber log
+ for (ItemStack stack : aLogData) {
+ if (aRubberLogs.contains(stack)) {
+ if (GT_Values.RA.addCentrifugeRecipe(GT_Utility.copyAmount(1L, stack), null, null, Materials.Methane.getGas(60L), ItemList.IC2_Resin.get(1L, new Object[0]), GT_ModHandler.getIC2Item("plantBall", 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), null, null, new int[] { 5000, 3750, 2500, 2500 }, 200, 20)) {
+ Logger.INFO("Added rubber plant based methane extraction for "+ItemUtils.getItemName(stack));
+ }
+ }
+ else {
+ if (GT_Values.RA.addCentrifugeRecipe(GT_Utility.copyAmount(1L, stack), null, null, Materials.Methane.getGas(60L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 200, 20)) {
+ Logger.INFO("Added methane extraction for "+ItemUtils.getItemName(stack));
+ }
+ }
+ }
+ }
+
GT_Values.RA.addCentrifugeRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustThorium", 8), GT_Values.NI,
GT_Values.NF, GT_Values.NF, ELEMENT.getInstance().THORIUM232.getDust(2),
ItemUtils.getItemStackOfAmountFromOreDict("dustSmallThorium", 20),
@@ -1850,7 +2024,6 @@ public class RECIPES_GREGTECH {
Materials.Titanium.mBlastFurnaceTemp);
}
-
}
private static void autoclaveRecipes() {
@@ -1895,25 +2068,6 @@ public class RECIPES_GREGTECH {
}
- public static boolean addPulverisationRecipe(final ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2,
- final ItemStack aOutput3) {
- aOutput1 = GT_OreDictUnificator.get(true, aOutput1);
- aOutput2 = GT_OreDictUnificator.get(true, aOutput2);
- if ((GT_Utility.isStackInvalid(aInput)) || (GT_Utility.isStackInvalid(aOutput1))) {
- return false;
- }
- if (GT_Utility.getContainerItem(aInput, false) == null) {
-
- if (GregTech_API.sRecipeFile.get(ConfigCategories.Machines.maceration, aInput, true)) {
- GT_Utility.addSimpleIC2MachineRecipe(aInput, GT_ModHandler.getMaceratorRecipeList(), null,
- new Object[] { aOutput1 });
- }
- GT_Values.RA.addPulveriserRecipe(aInput, new ItemStack[] { aOutput1, aOutput2, aOutput3 },
- new int[] { 10000, 10000, 10000 }, 400, 2);
- }
- return true;
- }
-
private static void cyclotronRecipes() {
// Polonium
@@ -2241,24 +2395,6 @@ public class RECIPES_GREGTECH {
private static void sifterRecipes() {
- // Rare Earth Processing
- GT_Values.RA.addSifterRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustRareEarth", 1),
- new ItemStack[] {
- ELEMENT.getInstance().YTTRIUM.getSmallDust(1),
- ELEMENT.getInstance().NEODYMIUM.getSmallDust(1),
- ELEMENT.getInstance().LANTHANUM.getSmallDust(1),
- ELEMENT.getInstance().CERIUM.getSmallDust(1),
- ELEMENT.getInstance().CADMIUM.getSmallDust(1),
- ELEMENT.getInstance().CAESIUM.getSmallDust(1),
- ORES.SAMARSKITE_YB.getSmallDust(1),
- ORES.FLORENCITE.getSmallDust(1),
- ORES.FLUORCAPHITE.getSmallDust(1),
- //ELEMENT.getInstance().YTTERBIUM.getTinyDust(1),
- //ELEMENT.getInstance().SAMARIUM.getTinyDust(1),
- //ELEMENT.getInstance().GADOLINIUM.getTinyDust(1)
- },
- new int[] { 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000 }, 20 * 30, 500);
-
// Zirconium
GT_Values.RA.addSifterRecipe(ItemUtils.getItemStackOfAmountFromOreDict("crushedPurifiedIlmenite", 1),
new ItemStack[] { ItemUtils.getItemStackOfAmountFromOreDict("dustIron", 1),
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java
index 6ed5c71bcc..5048c5f2a5 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java
@@ -1,11 +1,14 @@
package gtPlusPlus.core.recipe;
+import static gtPlusPlus.core.lib.CORE.GTNH;
import static gtPlusPlus.core.recipe.common.CI.bitsd;
import static gtPlusPlus.core.util.minecraft.ItemUtils.getSimpleStack;
import static gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechConduits.generatePipeRecipes;
import static gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechConduits.generateWireRecipes;
-import gregtech.api.enums.*;
+import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.block.ModBlocks;
@@ -14,15 +17,14 @@ import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.LoadedMods;
import gtPlusPlus.core.material.ALLOY;
import gtPlusPlus.core.material.ELEMENT;
-import gtPlusPlus.core.material.nuclear.FLUORIDES;
import gtPlusPlus.core.recipe.common.CI;
import gtPlusPlus.core.util.minecraft.FluidUtils;
import gtPlusPlus.core.util.minecraft.ItemUtils;
import gtPlusPlus.core.util.minecraft.RecipeUtils;
+import gtPlusPlus.core.util.minecraft.gregtech.PollutionUtils;
import gtPlusPlus.xmod.bop.blocks.BOP_Block_Registrator;
import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList;
import gtPlusPlus.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechConduits;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
@@ -55,7 +57,6 @@ public class RECIPES_General {
OUTPUT_Blueprint = ItemUtils.getSimpleStack(ModItems.itemBlueprintBase);
run();
addCompressedObsidian();
- addHandPumpRecipes();
migratedRecipes();
}
}
@@ -118,12 +119,6 @@ public class RECIPES_General {
Logger.INFO("Added a recipe for Rainforest oak Saplings.");
}
-
- // Try fix this ore
- if (ModBlocks.blockOreFluorite != null){
- RecipeUtils.addShapelessGregtechRecipe(new ItemStack[]{ItemUtils.getSimpleStack(ModBlocks.blockOreFluorite)}, FLUORIDES.FLUORITE.getOre(1));
- }
-
//Iron bars
final ItemStack ironBars;
if (CORE.GTNH) {
@@ -162,13 +157,13 @@ public class RECIPES_General {
//Shaped Crafting for ULV Material Dusts
-
+
//Potin
if (RecipeUtils.addShapelessGregtechRecipe(new Object[] {"dustLead", "dustBronze", "dustTin",
"dustLead", "dustBronze"}, ALLOY.POTIN.getDust(5))){
Logger.INFO("Added shapeless recipe for Potin Dust.");
}
-
+
//Tumbaga
if (RecipeUtils.addShapelessGregtechRecipe(new Object[] {
"dustGold", "dustGold", "dustCopper"}, ItemUtils.getSimpleStack(ModItems.dustTumbagaMix))){
@@ -179,7 +174,7 @@ public class RECIPES_General {
ItemUtils.getSimpleStack(ModItems.dustTumbagaMix),
ItemUtils.getSimpleStack(ModItems.dustTumbagaMix),
"dustGold"
- },
+ },
ALLOY.TUMBAGA.getDust(10))){
Logger.INFO("Added shapeless recipe for Tumbaga Dust.");
}
@@ -291,6 +286,19 @@ public class RECIPES_General {
20 * 30, // Dur
16); // Eu
+ // Pest Killer
+ CORE.RA.addSixSlotAssemblingRecipe(
+ new ItemStack[] {
+ CI.getNumberedCircuit(16),
+ CI.getTieredMachineCasing(1),
+ CI.getElectricPump(2, 1),
+ CI.getPlate(2, GTNH ? 4 : 2),
+ ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(0), GTNH ? 2 : 1),
+ },
+ FluidUtils.getHotWater(500), // Fluid
+ ItemUtils.getSimpleStack(ModBlocks.blockPestKiller), // Output
+ 20 * 60, // Dur
+ 16); // Eu
@@ -335,42 +343,6 @@ public class RECIPES_General {
return true;
}
- private static void addHandPumpRecipes() {
- if (RecipeUtils.recipeBuilder(
- CI.electricPump_LV, "circuitBasic", null,
- "ringBrass", CI.electricMotor_LV, "circuitBasic",
- "plateSteel", "plateSteel", "rodBrass",
- ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1)))
- Logger.INFO("Added recipe for Hand Pump I - true");
- if (RecipeUtils.recipeBuilder(
- CI.electricPump_MV, "circuitAdvanced", null,
- "ringMagnalium", CI.electricMotor_MV, "circuitAdvanced",
- "plateAluminium", "plateAluminium", "rodMagnalium",
- ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1)))
- Logger.INFO("Added recipe for Hand Pump II - true");
- if (RecipeUtils.recipeBuilder(
- CI.electricPump_HV, "circuitData", null,
- "ringChrome", CI.electricMotor_HV, "circuitData",
- "plateStainlessSteel", "plateStainlessSteel", "rodChrome",
- ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1)))
- Logger.INFO("Added recipe for Hand Pump III - true");
- if (RecipeUtils.recipeBuilder(
- CI.electricPump_EV, "circuitElite", null,
- "ringTitanium", CI.electricMotor_EV, "circuitElite",
- "plateTungstenSteel", "plateTungstenSteel", "rodTitanium",
- ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1)))
- Logger.INFO("Added recipe for Hand Pump IV - true");
-
-
-
- GT_Values.RA.addAssemblerRecipe(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1), CI.getNumberedCircuit(20), ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1000, 1), 30, 30);
- GT_Values.RA.addAssemblerRecipe(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1), CI.getNumberedCircuit(20), ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1001, 1), 120, 120);
- GT_Values.RA.addAssemblerRecipe(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1), CI.getNumberedCircuit(20), ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1002, 1), 480, 480);
- GT_Values.RA.addAssemblerRecipe(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1), CI.getNumberedCircuit(20), ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1003, 1), 1820, 1820);
-
-
- }
-
private static void migratedRecipes() {
RecipeUtils.generateMortarRecipe(ItemUtils.getSimpleStack(ModItems.itemPlateRawMeat), ItemUtils.getItemStackOfAmountFromOreDict("dustMeatRaw", 1));
@@ -423,12 +395,11 @@ public class RECIPES_General {
generatePipeRecipes(e.mDefaultLocalName, e.getMass(), tVoltageMultiplier);
}
- if (CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK)
- RecipeUtils.addShapedGregtechRecipe(
- CI.component_Plate[4], "rotorGtStainlessSteel", CI.component_Plate[4],
- CI.getTieredCircuitOreDictName(3), CI.machineHull_HV, CI.getTieredCircuitOreDictName(3),
- CI.component_Plate[4], CI.electricPump_HV, CI.component_Plate[4],
- GregtechItemList.Hatch_Air_Intake.get(1L, new Object[0]));
+ RecipeUtils.addShapedGregtechRecipe(
+ CI.component_Plate[4], "rotorGtStainlessSteel", CI.component_Plate[4],
+ CI.getTieredCircuitOreDictName(3), CI.machineHull_HV, CI.getTieredCircuitOreDictName(3),
+ CI.component_Plate[4], CI.electricPump_HV, CI.component_Plate[4],
+ GregtechItemList.Hatch_Air_Intake.get(1L, new Object[0]));
RecipeUtils.addShapedGregtechRecipe(CI.component_Plate[6], ALLOY.MARAGING250.getGear(1), CI.component_Plate[6],
CI.getTieredCircuitOreDictName(4), GregtechItemList.Casing_AdvancedVacuum.get(1),
@@ -446,7 +417,7 @@ public class RECIPES_General {
CI.component_Plate[8], GregtechItemList.Hatch_Input_Naquadah.get(1L, new Object[0]));
- if (CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
+ if (PollutionUtils.isPollutionEnabled()) {
GT_ModHandler.addCraftingRecipe(GregtechItemList.Hatch_Muffler_Adv_LV.get(1L, new Object[0]), bitsd,
new Object[] { "M", "P", Character.valueOf('M'), ItemList.Hatch_Muffler_LV.get(1), Character.valueOf('P'),
GregtechItemList.Pollution_Cleaner_LV.get(1) });
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
index 6979bb4f39..578ef8f89c 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
@@ -2,6 +2,7 @@ package gtPlusPlus.core.recipe;
import static gtPlusPlus.core.lib.CORE.GTNH;
+import cpw.mods.fml.common.Loader;
import gregtech.api.enums.*;
import gregtech.api.util.GT_ModHandler;
import gtPlusPlus.api.objects.Logger;
@@ -15,8 +16,13 @@ import gtPlusPlus.core.material.Material;
import gtPlusPlus.core.recipe.common.CI;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.minecraft.*;
+import gtPlusPlus.core.util.minecraft.gregtech.PollutionUtils;
+import gtPlusPlus.core.util.reflect.ReflectionUtils;
import gtPlusPlus.everglades.dimension.Dimension_Everglades;
import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList;
+import gtPlusPlus.xmod.gregtech.common.covers.CoverManager;
+import gtPlusPlus.xmod.gregtech.common.items.MetaCustomCoverItem;
+import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
@@ -207,7 +213,7 @@ public class RECIPES_Machines {
}
private static void run(){
-
+
//Determines Casing Recipe Output
if (CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK && !GTNH){
Casing_Amount=2;
@@ -215,7 +221,7 @@ public class RECIPES_Machines {
else {
Casing_Amount=1;
}
-
+
initModItems();
controlCores();
energyCores();
@@ -223,7 +229,9 @@ public class RECIPES_Machines {
largeArcFurnace();
industrialVacuumFurnace();
fakeMachineCasingCovers();
+ ztonesCoverRecipes();
superBuses();
+ roundRobinators();
}
private static void initModItems(){
@@ -289,7 +297,7 @@ public class RECIPES_Machines {
private static void runModRecipes(){
if (LoadedMods.Gregtech){
-
+
//Computer Cube
CORE.RA.addSixSlotAssemblingRecipe(
new ItemStack[] {
@@ -357,7 +365,7 @@ public class RECIPES_Machines {
ItemUtils.getSimpleStack(ModBlocks.blockCustomJukebox),
20 * 30,
30);
-
+
//Poo Collector
CORE.RA.addSixSlotAssemblingRecipe(
new ItemStack[] {
@@ -443,7 +451,7 @@ public class RECIPES_Machines {
//Add recycle recipes for the Iron Plated Bricks
//GT_ModHandler.addPulverisationRecipe(RECIPE_IronPlatedBricks, ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustIron", 6), ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustClay", 2), true);
- RECIPES_GREGTECH.addPulverisationRecipe(
+ CORE.RA.addPulverisationRecipe(
RECIPE_IronPlatedBricks,
ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustIron", 6),
ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustClay", 2),
@@ -708,7 +716,7 @@ public class RECIPES_Machines {
//Semi-Fluid Generators
ItemStack mSemiFluidgen = ItemUtils.getItemStackFromFQRN("IC2:blockGenerator:7", 1);
mSemiFluidgen.setItemDamage(7);
- //ItemUtils.simpleMetaStack("IC2:blockGenerator:7", 7, 1);
+ //ItemUtils.simpleMetaStack("IC2:blockGenerator:7", 7, 1);
ItemStack[] aSemifluids = new ItemStack[] {mSemiFluidgen, GregtechItemList.Generator_SemiFluid_LV.get(1), GregtechItemList.Generator_SemiFluid_MV.get(1), GregtechItemList.Generator_SemiFluid_HV.get(1)};
for (int o=1;o<4;o++) {
CORE.RA.addSixSlotAssemblingRecipe(
@@ -829,7 +837,7 @@ public class RECIPES_Machines {
"plankWood", "frameGtTumbaga", "plankWood",
"plankWood", "plankWood", "plankWood",
RECIPE_TreeFarmFrame);
- }
+ }
if (CORE.ConfigSwitches.enableMachine_Tesseracts){
//Tesseracts
@@ -852,8 +860,8 @@ public class RECIPES_Machines {
if (CORE.ConfigSwitches.enableMachine_SimpleWasher){
ItemStack plateWrought = ItemUtils.getItemStackOfAmountFromOreDict("plateWroughtIron", 1);
ItemStack washerPipe;
-
-
+
+
if (CORE.ConfigSwitches.enableCustom_Pipes){
washerPipe = ItemUtils.getItemStackOfAmountFromOreDict("pipeLargeClay", 1);
RecipeUtils.addShapedGregtechRecipe(
@@ -869,7 +877,7 @@ public class RECIPES_Machines {
plateWrought, washerPipe, plateWrought,
plateWrought, CI.machineCasing_ULV, plateWrought,
GregtechItemList.SimpleDustWasher_ULV.get(1));
-
+
int aSimpleWasherTier = 2;
int aSlot = 0;
ItemStack[][] aInputsForSimpleWashers = new ItemStack[4][6];
@@ -880,7 +888,7 @@ public class RECIPES_Machines {
CI.getTieredComponent(OrePrefixes.plate, 1, GTNH ? 8 : 4),
CI.getTieredComponent(OrePrefixes.rod, 2, GTNH ? 4 : 2),
CI.getTieredComponent(OrePrefixes.circuit, 2, GTNH ? 3 : 1),
-
+
};
aInputsForSimpleWashers[1] = new ItemStack[] {
CI.getTieredMachineHull(4),
@@ -888,7 +896,7 @@ public class RECIPES_Machines {
CI.getTieredComponent(OrePrefixes.plate, 3, GTNH ? 12 : 6),
CI.getTieredComponent(OrePrefixes.rod, 4, GTNH ? 6 : 3),
CI.getTieredComponent(OrePrefixes.circuit, 4, GTNH ? 4 : 2),
-
+
};
aInputsForSimpleWashers[2] = new ItemStack[] {
CI.getTieredMachineHull(6),
@@ -896,7 +904,7 @@ public class RECIPES_Machines {
CI.getTieredComponent(OrePrefixes.plate, 5, GTNH ? 16 : 8),
CI.getTieredComponent(OrePrefixes.rod, 6, GTNH ? 8 : 4),
CI.getTieredComponent(OrePrefixes.circuit, 6, GTNH ? 6 : 3),
-
+
};
aInputsForSimpleWashers[3] = new ItemStack[] {
CI.getTieredMachineHull(8),
@@ -904,37 +912,37 @@ public class RECIPES_Machines {
CI.getTieredComponent(OrePrefixes.plate, 7, GTNH ? 32 : 16),
CI.getTieredComponent(OrePrefixes.rod, 8, GTNH ? 10 : 5),
CI.getTieredComponent(OrePrefixes.circuit, 8, GTNH ? 8 : 4),
-
+
};
-
-
-
-
-
-
+
+
+
+
+
+
ItemStack[] aSimpleWashers = new ItemStack[] {GregtechItemList.SimpleDustWasher_MV.get(1), GregtechItemList.SimpleDustWasher_EV.get(1), GregtechItemList.SimpleDustWasher_LuV.get(1), GregtechItemList.SimpleDustWasher_UV.get(1)};
for (int i=0;i<4;i++) {
-
+
CORE.RA.addSixSlotAssemblingRecipe(
aInputsForSimpleWashers[aSlot],
CI.getTieredFluid(aSimpleWasherTier, 144 * aSimpleWasherTier),
aSimpleWashers[aSlot],
20 * 15 * aSimpleWasherTier,
(int) GT_Values.V[aSimpleWasherTier]);
-
+
aSimpleWasherTier += 2;
aSlot++;
}
-
-
-
-
-
-
+
+
+
+
+
+
}
- if (CORE.ConfigSwitches.enableMachine_Pollution && CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK){
-
+ if (CORE.ConfigSwitches.enableMachine_Pollution && PollutionUtils.isPollutionEnabled()){
+
RecipeUtils.addShapedGregtechRecipe(
"plateCarbon", "plateCarbon", "plateCarbon",
"dustCarbon", "dustCarbon", "dustCarbon",
@@ -1056,7 +1064,20 @@ public class RECIPES_Machines {
RECIPE_ThermalBoilerCasing);
//Lava Filter Recipe
- GT_Values.RA.addAssemblerRecipe(ItemUtils.getItemStackWithMeta(LoadedMods.IndustrialCraft2, "IC2:itemPartCarbonMesh", "RawCarbonMesh", 0, 16), CI.getNumberedCircuit(18), ItemUtils.getSimpleStack(ModItems.itemLavaFilter), 80*20, 16);
+ CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
+ CI.getNumberedCircuit(18),
+ ItemUtils.getItemStackOfAmountFromOreDict("dustCarbon", GTNH ? 64 : 32),
+ ItemUtils.getItemStackOfAmountFromOreDict("wireFineSteel", GTNH ? 64 : 32),
+ ItemUtils.getItemStackOfAmountFromOreDict("ringTumbaga", GTNH ? 32 : 16),
+ ItemUtils.getItemStackOfAmountFromOreDict("foilCopper", GTNH ? 8 : 4),
+ ItemUtils.getItemStackWithMeta(LoadedMods.IndustrialCraft2, "IC2:itemPartCarbonMesh", "RawCarbonMesh", 0, 64),
+
+ },
+ CI.getTieredFluid(3, 144),
+ ItemUtils.getSimpleStack(ModItems.itemLavaFilter, GTNH ? 8 : 16),
+ 1600,
+ 240
+ );
}
if (CORE.ConfigSwitches.enableMultiblock_LiquidFluorideThoriumReactor){
@@ -1164,7 +1185,7 @@ public class RECIPES_Machines {
RECIPE_CyclotronController = GregtechItemList.COMET_Cyclotron.get(1);
RECIPE_CyclotronOuterCasing = GregtechItemList.Casing_Cyclotron_External.get(Casing_Amount);
RECIPE_CyclotronInnerCoil = GregtechItemList.Casing_Cyclotron_Coil.get(1);
-
+
//Outer Casing
CORE.RA.addSixSlotAssemblingRecipe(
new ItemStack[] {
@@ -1179,8 +1200,8 @@ public class RECIPES_Machines {
RECIPE_CyclotronOuterCasing,
30 * 20 * 2,
MaterialUtils.getVoltageForTier(4));
-
-
+
+
//Inner Coil
CORE.RA.addSixSlotAssemblingRecipe(
new ItemStack[] {
@@ -1995,7 +2016,7 @@ public class RECIPES_Machines {
}
}
-
+
private static void largeArcFurnace() {
int aCostMultiplier = GTNH ? 2 : 1;
CORE.RA.addSixSlotAssemblingRecipe(
@@ -2025,10 +2046,10 @@ public class RECIPES_Machines {
60 * 20 * 8,
MaterialUtils.getVoltageForTier(6));
}
-
+
private static void industrialVacuumFurnace() {
int aCostMultiplier = GTNH ? 2 : 1;
-
+
CORE.RA.addSixSlotAssemblingRecipe(
new ItemStack[] {
CI.getTieredMachineHull(-1, 1 * aCostMultiplier),
@@ -2041,9 +2062,9 @@ public class RECIPES_Machines {
GregtechItemList.Casing_Vacuum_Furnace.get(Casing_Amount),
20 * 10 * 6,
MaterialUtils.getVoltageForTier(6));
-
+
;
-
+
CORE.RA.addSixSlotAssemblingRecipe(
new ItemStack[] {
GregtechItemList.Casing_Vacuum_Furnace.get(Casing_Amount),
@@ -2058,113 +2079,290 @@ public class RECIPES_Machines {
60 * 20 * 12,
MaterialUtils.getVoltageForTier(7));
}
-
+
private static void fakeMachineCasingCovers() {
- GregtechItemList[] mMachineCasingCovers = new GregtechItemList[] {
- GregtechItemList.FakeMachineCasingPlate_ULV,
- GregtechItemList.FakeMachineCasingPlate_LV,
- GregtechItemList.FakeMachineCasingPlate_MV,
- GregtechItemList.FakeMachineCasingPlate_HV,
- GregtechItemList.FakeMachineCasingPlate_EV,
- GregtechItemList.FakeMachineCasingPlate_IV,
- GregtechItemList.FakeMachineCasingPlate_LuV,
- GregtechItemList.FakeMachineCasingPlate_ZPM,
- GregtechItemList.FakeMachineCasingPlate_UV,
- GregtechItemList.FakeMachineCasingPlate_MAX,
- };
- for (int i = 0;i<10;i++) {
- GT_Values.RA.addCutterRecipe(
- CI.getTieredMachineCasing(i),
- mMachineCasingCovers[i].get(5),
- null,
- 20 * 5 * i,
- (int) GT_Values.V[i]);
- }
+ GregtechItemList[] mMachineCasingCovers = new GregtechItemList[] {
+ GregtechItemList.FakeMachineCasingPlate_ULV,
+ GregtechItemList.FakeMachineCasingPlate_LV,
+ GregtechItemList.FakeMachineCasingPlate_MV,
+ GregtechItemList.FakeMachineCasingPlate_HV,
+ GregtechItemList.FakeMachineCasingPlate_EV,
+ GregtechItemList.FakeMachineCasingPlate_IV,
+ GregtechItemList.FakeMachineCasingPlate_LuV,
+ GregtechItemList.FakeMachineCasingPlate_ZPM,
+ GregtechItemList.FakeMachineCasingPlate_UV,
+ GregtechItemList.FakeMachineCasingPlate_MAX,
+ };
+ int aMaxTier = GT_Values.VOLTAGE_NAMES.length;
+ if (!GTNH) {
+ aMaxTier = 10;
+ }
+ ItemStack aTier[] = new ItemStack[aMaxTier];
+ for (int i=0;i<aMaxTier;i++) {
+ aTier[i] = ItemUtils.simpleMetaStack(CoverManager.Cover_Gt_Machine_Casing, i, 7);
+ }
+ // Deprecate old recipes
+ for (int i=0;i<10;i++) {
+ RecipeUtils.addShapelessGregtechRecipe(new ItemStack[] {mMachineCasingCovers[i].get(1)}, ItemUtils.getSimpleStack(aTier[i], 1));
+ }
+ // Add recipes for new ones
+ for (int i = 0;i<aMaxTier;i++) {
+ GT_Values.RA.addCutterRecipe(
+ CI.getTieredMachineCasing(i),
+ aTier[i],
+ null,
+ 20 * 5 * i,
+ (int) GT_Values.V[i]);
+ }
}
-
+
+ private static void ztonesCoverRecipes() {
+
+ if (!Loader.isModLoaded("Ztones")) {
+ return;
+ }
+ Class ModBlocksClass = ReflectionUtils.getClass("com.riciJak.Ztones.init.ModBlocks");
+ Block agon = (Block) ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "agonBlock"));
+ Block korp = (Block) ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "korpBlock"));
+ Block jelt = (Block) ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "jeltBlock"));
+ Block bitt = (Block) ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "bittBlock"));
+ Block iszm = (Block) ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "iszmBlock"));
+
+ // "agon", "iszm", "korp", "jelt", "bitt"
+
+ ItemStack[] aBlocks = new ItemStack[] {
+ ItemUtils.getSimpleStack(agon),
+ ItemUtils.getSimpleStack(iszm),
+ ItemUtils.getSimpleStack(korp),
+ ItemUtils.getSimpleStack(jelt),
+ ItemUtils.getSimpleStack(bitt)
+ };
+ MetaCustomCoverItem[] aCovers = new MetaCustomCoverItem[] {
+ CoverManager.Cover_Agon,
+ CoverManager.Cover_Iszm,
+ CoverManager.Cover_Korp,
+ CoverManager.Cover_Jelt,
+ CoverManager.Cover_Bitt
+ };
+
+ ItemStack aInputs[][] = new ItemStack[5][16];
+ ItemStack aOutputs[][] = new ItemStack[5][16];
+ for (int a=0;a<5;a++) {
+ for (int i=0;i<16;i++) {
+ aInputs[a][i] = ItemUtils.simpleMetaStack(aBlocks[a].getItem(), i, 1);
+ aOutputs[a][i] = ItemUtils.simpleMetaStack(aCovers[a], i, 9);
+ }
+ }
+ for (int a=0;a<5;a++) {
+ for (int i = 0;i<16;i++) {
+ ItemStack aInput = aInputs[a][i];
+ ItemStack aOutput = aOutputs[a][i];
+ if (GT_Values.RA.addCutterRecipe(
+ aInput,
+ aOutput,
+ null,
+ 20 * 5,
+ 16)) {
+ Logger.INFO("Added Cutting recipe for "+aInput.getDisplayName());
+ }
+
+ if (CORE.RA.addSixSlotAssemblingRecipe(
+ new ItemStack[] {
+ CI.getNumberedCircuit((i/4)+4),
+ aOutput
+ },
+ FluidUtils.getWildcardFluidStack("glue", 250),
+ aInput,
+ 20 * 10,
+ 16)) {
+ Logger.INFO("Added Assembly recipe for "+aInput.getDisplayName());
+ }
+ }
+ }
+ }
+
private static void superBuses() {
- GregtechItemList[] mSuperBusesInput = new GregtechItemList[] {
- GregtechItemList.Hatch_SuperBus_Input_ULV,
- GregtechItemList.Hatch_SuperBus_Input_LV,
- GregtechItemList.Hatch_SuperBus_Input_MV,
- GregtechItemList.Hatch_SuperBus_Input_HV,
- GregtechItemList.Hatch_SuperBus_Input_EV,
- GregtechItemList.Hatch_SuperBus_Input_IV,
- GregtechItemList.Hatch_SuperBus_Input_LuV,
- GregtechItemList.Hatch_SuperBus_Input_ZPM,
- GregtechItemList.Hatch_SuperBus_Input_UV,
- GregtechItemList.Hatch_SuperBus_Input_MAX,
- };
-
- GregtechItemList[] mSuperBusesOutput = new GregtechItemList[] {
- GregtechItemList.Hatch_SuperBus_Output_ULV,
- GregtechItemList.Hatch_SuperBus_Output_LV,
- GregtechItemList.Hatch_SuperBus_Output_MV,
- GregtechItemList.Hatch_SuperBus_Output_HV,
- GregtechItemList.Hatch_SuperBus_Output_EV,
- GregtechItemList.Hatch_SuperBus_Output_IV,
- GregtechItemList.Hatch_SuperBus_Output_LuV,
- GregtechItemList.Hatch_SuperBus_Output_ZPM,
- GregtechItemList.Hatch_SuperBus_Output_UV,
- GregtechItemList.Hatch_SuperBus_Output_MAX,
- };
-
- ItemStack[] mInputHatch = new ItemStack[] {
- ItemList.Hatch_Input_Bus_EV.get(1),
- ItemList.Hatch_Input_Bus_IV.get(1),
- ItemList.Hatch_Input_Bus_LuV.get(1),
- ItemList.Hatch_Input_Bus_ZPM.get(1),
- ItemList.Hatch_Input_Bus_UV.get(1),
- ItemList.Hatch_Input_Bus_MAX.get(1),
- GregtechItemList.Hatch_SuperBus_Input_ULV.get(1),
- GregtechItemList.Hatch_SuperBus_Input_LV.get(1),
- GregtechItemList.Hatch_SuperBus_Input_MV.get(1),
- GregtechItemList.Hatch_SuperBus_Input_HV.get(1),
- };
-
- ItemStack[] mOutputHatch = new ItemStack[] {
- ItemList.Hatch_Output_Bus_EV.get(1),
- ItemList.Hatch_Output_Bus_IV.get(1),
- ItemList.Hatch_Output_Bus_LuV.get(1),
- ItemList.Hatch_Output_Bus_ZPM.get(1),
- ItemList.Hatch_Output_Bus_UV.get(1),
- ItemList.Hatch_Output_Bus_MAX.get(1),
- GregtechItemList.Hatch_SuperBus_Output_ULV.get(1),
- GregtechItemList.Hatch_SuperBus_Output_LV.get(1),
- GregtechItemList.Hatch_SuperBus_Output_MV.get(1),
- GregtechItemList.Hatch_SuperBus_Output_HV.get(1),
- };
-
- //Input Buses
- for (int i = 0; i < 10; i++) {
- CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
- CI.getNumberedCircuit(16),
- mInputHatch[i],
- CI.getElectricMotor(i, GTNH ? 8 : 2),
- CI.getConveyor(i, GTNH ? 10 : 5),
- CI.getGear(i, GTNH ? 6 : 3),
- CI.getTieredComponent(OrePrefixes.circuit, i, GTNH ? 4 : 2)
- },
- CI.getAlternativeTieredFluid(i, 144 * 8),
- mSuperBusesInput[i].get(1), 20 * 30 * 2 * i,
- (int) GT_Values.V[i]);
- }
- //Output Buses
- for (int i = 0; i < 10; i++) {
- CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
- CI.getNumberedCircuit(18),
- mOutputHatch[i],
- CI.getElectricPiston(i, GTNH ? 8 : 2),
- CI.getConveyor(i, GTNH ? 10 : 5),
- CI.getGear(i, GTNH ? 6 : 3),
- CI.getTieredComponent(OrePrefixes.circuit, i, GTNH ? 4 : 2)
- },
- CI.getTertiaryTieredFluid(i, 144 * 8),
- mSuperBusesOutput[i].get(1), 20 * 30 * 2 * i,
- (int) GT_Values.V[i]);
- }
-
+ GregtechItemList[] mSuperBusesInput = new GregtechItemList[] {
+ GregtechItemList.Hatch_SuperBus_Input_ULV,
+ GregtechItemList.Hatch_SuperBus_Input_LV,
+ GregtechItemList.Hatch_SuperBus_Input_MV,
+ GregtechItemList.Hatch_SuperBus_Input_HV,
+ GregtechItemList.Hatch_SuperBus_Input_EV,
+ GregtechItemList.Hatch_SuperBus_Input_IV,
+ GregtechItemList.Hatch_SuperBus_Input_LuV,
+ GregtechItemList.Hatch_SuperBus_Input_ZPM,
+ GregtechItemList.Hatch_SuperBus_Input_UV,
+ GregtechItemList.Hatch_SuperBus_Input_MAX,
+ };
+
+ GregtechItemList[] mSuperBusesOutput = new GregtechItemList[] {
+ GregtechItemList.Hatch_SuperBus_Output_ULV,
+ GregtechItemList.Hatch_SuperBus_Output_LV,
+ GregtechItemList.Hatch_SuperBus_Output_MV,
+ GregtechItemList.Hatch_SuperBus_Output_HV,
+ GregtechItemList.Hatch_SuperBus_Output_EV,
+ GregtechItemList.Hatch_SuperBus_Output_IV,
+ GregtechItemList.Hatch_SuperBus_Output_LuV,
+ GregtechItemList.Hatch_SuperBus_Output_ZPM,
+ GregtechItemList.Hatch_SuperBus_Output_UV,
+ GregtechItemList.Hatch_SuperBus_Output_MAX,
+ };
+
+ ItemStack[] mInputHatch = new ItemStack[] {
+ ItemList.Hatch_Input_Bus_EV.get(1),
+ ItemList.Hatch_Input_Bus_IV.get(1),
+ ItemList.Hatch_Input_Bus_LuV.get(1),
+ ItemList.Hatch_Input_Bus_ZPM.get(1),
+ ItemList.Hatch_Input_Bus_UV.get(1),
+ ItemList.Hatch_Input_Bus_MAX.get(1),
+ GregtechItemList.Hatch_SuperBus_Input_LV.get(1),
+ GregtechItemList.Hatch_SuperBus_Input_MV.get(1),
+ GregtechItemList.Hatch_SuperBus_Input_HV.get(1),
+ GregtechItemList.Hatch_SuperBus_Input_EV.get(1),
+ };
+
+ ItemStack[] mOutputHatch = new ItemStack[] {
+ ItemList.Hatch_Output_Bus_EV.get(1),
+ ItemList.Hatch_Output_Bus_IV.get(1),
+ ItemList.Hatch_Output_Bus_LuV.get(1),
+ ItemList.Hatch_Output_Bus_ZPM.get(1),
+ ItemList.Hatch_Output_Bus_UV.get(1),
+ ItemList.Hatch_Output_Bus_MAX.get(1),
+ GregtechItemList.Hatch_SuperBus_Output_LV.get(1),
+ GregtechItemList.Hatch_SuperBus_Output_MV.get(1),
+ GregtechItemList.Hatch_SuperBus_Output_HV.get(1),
+ GregtechItemList.Hatch_SuperBus_Output_EV.get(1),
+ };
+
+ // Special Case recipes for ULV buses
+ {
+
+ int i = 0;
+ ItemStack[] aInputs1 = new ItemStack[] {
+ CI.getNumberedCircuit(17),
+ mInputHatch[i],
+ CI.getElectricMotor(i, GTNH ? 8 : 2),
+ CI.getConveyor(i, GTNH ? 10 : 5),
+ CI.getBolt(i, GTNH ? 32 : 16),
+ CI.getTieredComponent(OrePrefixes.circuit, i, GTNH ? 4 : 2)
+ };
+ Logger.INFO("[FIND] "+ItemUtils.getArrayStackNames(aInputs1));
+ ItemStack[] aOutputs1 = new ItemStack[] {
+ CI.getNumberedCircuit(18),
+ mOutputHatch[i],
+ CI.getElectricPiston(i, GTNH ? 8 : 2),
+ CI.getConveyor(i, GTNH ? 10 : 5),
+ CI.getGear(i, GTNH ? 6 : 3),
+ CI.getTieredComponent(OrePrefixes.circuit, i, GTNH ? 4 : 2)
+ };
+ Logger.INFO("[FIND] "+ItemUtils.getArrayStackNames(aOutputs1));
+
+ FluidStack a1 = CI.getAlternativeTieredFluid(i, 144 * 8);
+ FluidStack a2 = CI.getTertiaryTieredFluid(i, 144 * 8);
+
+
+ Logger.INFO("[FIND] Input Bus Fluid: "+ItemUtils.getFluidName(a1));
+ Logger.INFO("[FIND] Output Bus Fluid: "+ItemUtils.getFluidName(a2));
+
+
+ CORE.RA.addSixSlotAssemblingRecipe(aInputs1,
+ a1,
+ mSuperBusesInput[i].get(1),
+ 20 * 30 * 2 * i,
+ (int) GT_Values.V[i]);
+
+ CORE.RA.addSixSlotAssemblingRecipe(aOutputs1,
+ a2,
+ mSuperBusesOutput[i].get(1),
+ 20 * 30 * 2 * i,
+ (int) GT_Values.V[i]);
+
+
+ }
+
+ //Input Buses
+ for (int i = 1; i < 10; i++) {
+ CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
+ CI.getNumberedCircuit(17),
+ mInputHatch[i],
+ CI.getElectricMotor(i, GTNH ? 8 : 2),
+ CI.getConveyor(i, GTNH ? 10 : 5),
+ CI.getBolt(i, GTNH ? 32 : 16),
+ CI.getTieredComponent(OrePrefixes.circuit, i, GTNH ? 4 : 2)
+ },
+ CI.getAlternativeTieredFluid(i, 144 * 8),
+ mSuperBusesInput[i].get(1), 20 * 30 * 2 * i,
+ (int) GT_Values.V[i]);
+ }
+ //Output Buses
+ for (int i = 1; i < 10; i++) {
+ CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
+ CI.getNumberedCircuit(18),
+ mOutputHatch[i],
+ CI.getElectricPiston(i, GTNH ? 8 : 2),
+ CI.getConveyor(i, GTNH ? 10 : 5),
+ CI.getGear(i, GTNH ? 6 : 3),
+ CI.getTieredComponent(OrePrefixes.circuit, i, GTNH ? 4 : 2)
+ },
+ CI.getTertiaryTieredFluid(i, 144 * 8),
+ mSuperBusesOutput[i].get(1), 20 * 30 * 2 * i,
+ (int) GT_Values.V[i]);
+ }
+
}
-
+
+ private static void roundRobinators() {
+
+ RecipeUtils.addShapedGregtechRecipe(
+ ItemUtils.getSimpleStack(Blocks.hopper), "circuitPrimitive", ItemUtils.getSimpleStack(Blocks.hopper),
+ CI.craftingToolWrench, CI.machineCasing_ULV, CI.craftingToolScrewdriver,
+ ItemUtils.getSimpleStack(Blocks.hopper), "circuitPrimitive", ItemUtils.getSimpleStack(Blocks.hopper),
+ ItemUtils.simpleMetaStack(ModBlocks.blockRoundRobinator, 0, 1));
+
+ ItemStack[] aRobinators = new ItemStack[] {
+ ItemUtils.simpleMetaStack(ModBlocks.blockRoundRobinator, 0, 1),
+ ItemUtils.simpleMetaStack(ModBlocks.blockRoundRobinator, 1, 1),
+ ItemUtils.simpleMetaStack(ModBlocks.blockRoundRobinator, 2, 1),
+ ItemUtils.simpleMetaStack(ModBlocks.blockRoundRobinator, 3, 1),
+ ItemUtils.simpleMetaStack(ModBlocks.blockRoundRobinator, 4, 1),
+ };
+
+ int aCostMultiplier = GTNH ? 2 : 1;
+
+ for (int i = 0; i < 5; i++) {
+ if (i == 0) {
+ CORE.RA.addSixSlotAssemblingRecipe(
+ new ItemStack[] {
+ CI.getNumberedCircuit(17),
+ CI.getTieredMachineCasing(0),
+ ItemUtils.getSimpleStack(Blocks.hopper, 4),
+ CI.getTieredComponent(OrePrefixes.circuit, 0, 2)
+ },
+ GT_Values.NF, //Input Fluid
+ aRobinators[i],
+ 45 * 10 * 1,
+ 8);
+ continue;
+ }
+ int aTier = i+1;
+ ItemStack[] aInputs = new ItemStack[] {
+ aRobinators[i-1],
+ CI.getTieredMachineHull(aTier, 1 * aCostMultiplier),
+ CI.getConveyor(aTier, 2 * aCostMultiplier),
+ CI.getElectricMotor(aTier, 2 * aCostMultiplier),
+ CI.getTieredComponent(OrePrefixes.plate, aTier, 4 * aCostMultiplier),
+ CI.getTieredComponent(OrePrefixes.circuit, i, 2 * aCostMultiplier),
+ };
+
+ CORE.RA.addSixSlotAssemblingRecipe(
+ aInputs,
+ GT_Values.NF, //Input Fluid
+ aRobinators[i],
+ 45 * 10 * 1 * (i+1),
+ MaterialUtils.getVoltageForTier(i));
+
+ }
+ }
+
}
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java
new file mode 100644
index 0000000000..d3c0b4c093
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java
@@ -0,0 +1,226 @@
+package gtPlusPlus.core.recipe;
+
+import static gtPlusPlus.core.material.MISC_MATERIALS.BRINE;
+import static gtPlusPlus.core.material.MISC_MATERIALS.HYDROGEN_CHLORIDE;
+import static gtPlusPlus.core.material.MISC_MATERIALS.RARE_EARTH_HIGH;
+import static gtPlusPlus.core.material.MISC_MATERIALS.RARE_EARTH_LOW;
+import static gtPlusPlus.core.material.MISC_MATERIALS.RARE_EARTH_MID;
+import static gtPlusPlus.core.material.MISC_MATERIALS.SALT_WATER;
+import static gtPlusPlus.core.material.MISC_MATERIALS.SODIUM_CHLORIDE;
+import static gtPlusPlus.core.material.MISC_MATERIALS.SODIUM_HYDROXIDE;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.util.GT_OreDictUnificator;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.material.ELEMENT;
+import gtPlusPlus.core.material.MISC_MATERIALS;
+import gtPlusPlus.core.material.MaterialGenerator;
+import gtPlusPlus.core.material.ORES;
+import gtPlusPlus.core.recipe.common.CI;
+import gtPlusPlus.core.util.minecraft.FluidUtils;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+import gtPlusPlus.core.util.minecraft.MaterialUtils;
+import net.minecraft.item.ItemStack;
+import net.minecraftforge.fluids.Fluid;
+import net.minecraftforge.fluids.FluidStack;
+
+public class RECIPES_RareEarthProcessing {
+
+ private static ItemStack mDustSodiumHydroxide;
+ private static ItemStack mDustSalt;
+ private static FluidStack mSaltWater;
+ private static FluidStack mBrine;
+ private static FluidStack mHydrogenChloride;
+
+ public static void init() {
+
+ // Salt Check and Assignment
+ mDustSalt = ItemUtils.getItemStackOfAmountFromOreDict("dustSalt", 1);
+ if (mDustSalt == null) {
+ MaterialUtils.generateSpecialDustAndAssignToAMaterial(SODIUM_CHLORIDE, false);
+ mDustSalt = SODIUM_CHLORIDE.getDust(1);
+ }
+ else {
+ SODIUM_CHLORIDE.registerComponentForMaterial(OrePrefixes.dust, mDustSalt);
+ }
+
+ // Salt water Check and Assignment
+ mSaltWater = FluidUtils.getFluidStack("saltwater", 1000);
+ if (mSaltWater == null) {
+ Fluid f = SALT_WATER.generateFluid();
+ SALT_WATER.registerComponentForMaterial(FluidUtils.getFluidStack(f, 1000));
+ mSaltWater = SALT_WATER.getFluid(1000);
+ }
+ else {
+ SALT_WATER.registerComponentForMaterial(FluidUtils.getFluidStack(mSaltWater, 1000));
+ }
+
+ // Brine Check and assignment
+ mBrine = FluidUtils.getFluidStack("brine", 1000);
+ if (mBrine == null) {
+ Fluid f = BRINE.generateFluid();
+ BRINE.registerComponentForMaterial(FluidUtils.getFluidStack(f, 1000));
+ mBrine = BRINE.getFluid(1000);
+ }
+ else {
+ BRINE.registerComponentForMaterial(FluidUtils.getFluidStack(mBrine, 1000));
+ }
+
+ // Check Sodium Hydroxide Exists, generate if not.
+ mDustSodiumHydroxide = ItemUtils.getItemStackOfAmountFromOreDict("dustSodiumHydroxide", 1);
+ if (mDustSodiumHydroxide == null) {
+ mDustSodiumHydroxide = ItemUtils.getItemStackOfAmountFromOreDict("dustSodiumHydroxide_GT5U", 1);
+ if (mDustSodiumHydroxide == null) {
+ MaterialUtils.generateSpecialDustAndAssignToAMaterial(SODIUM_HYDROXIDE, false);
+ mDustSodiumHydroxide = SODIUM_HYDROXIDE.getDust(1);
+ }
+ else {
+ SODIUM_HYDROXIDE.registerComponentForMaterial(OrePrefixes.dust, mDustSodiumHydroxide);
+ }
+ }
+ else {
+ SODIUM_HYDROXIDE.registerComponentForMaterial(OrePrefixes.dust, mDustSodiumHydroxide);
+ }
+
+ // Hydrogen Chloride Check and assignment
+ mHydrogenChloride = FluidUtils.getFluidStack("hydrogenchloride", 1000);
+ if (mHydrogenChloride == null) {
+ HYDROGEN_CHLORIDE.generateFluid();
+ mHydrogenChloride = BRINE.getFluid(1000);
+ }
+ else {
+ HYDROGEN_CHLORIDE.registerComponentForMaterial(FluidUtils.getFluidStack(mHydrogenChloride, 1000));
+ }
+
+
+ // Add Process for creating Brine
+ CORE.RA.addBrewingRecipe(
+ ItemUtils.getSimpleStack(mDustSalt, 16),
+ MISC_MATERIALS.SALT_WATER.getFluid(2000),
+ FluidUtils.getFluidStack(mBrine, 4000),
+ 20 * 20,
+ 120,
+ false);
+
+ // Chloralkali process
+ GT_Values.RA.addElectrolyzerRecipe(
+ CI.getNumberedCircuit(16),
+ CI.emptyCells(4),
+ FluidUtils.getFluidStack(mBrine, 4000),
+ null, // Out
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChlorine", 2),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogen", 2),
+ ItemUtils.getSimpleStack(mDustSodiumHydroxide, 2),
+ null,
+ null,
+ null,
+ new int[] {10000, 10000, 10000},
+ 20 * 30,
+ (int) GT_Values.V[2]);
+
+ // Generate Special Laser Recipe
+ CORE.RA.addUvLaserRecipe(
+ ELEMENT.getInstance().CHLORINE.getCell(2),
+ ELEMENT.getInstance().HYDROGEN.getCell(2),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogenChloride", 4),
+ 20 * 30,
+ 480);
+
+
+ // Set Material Tiers correctly
+ ORES.GREENOCKITE.vTier = 1;
+ RARE_EARTH_LOW.vTier = 1;
+ RARE_EARTH_MID.vTier = 3;
+ RARE_EARTH_HIGH.vTier = 5;
+
+ // Set Material Voltages correctly
+ ORES.GREENOCKITE.vVoltageMultiplier = 30;
+ RARE_EARTH_LOW.vVoltageMultiplier = 30;
+ RARE_EARTH_MID.vVoltageMultiplier = 480;
+ RARE_EARTH_HIGH.vVoltageMultiplier = 7680;
+
+ // Set Material Tooltips to be shorter
+ RARE_EARTH_LOW.vChemicalFormula = "??????";
+ RARE_EARTH_MID.vChemicalFormula = "??????";
+ RARE_EARTH_HIGH.vChemicalFormula = "??????";
+
+ // Set Material Tooltips to be shorter
+ RARE_EARTH_LOW.vChemicalSymbol = "??";
+ RARE_EARTH_MID.vChemicalSymbol = "??";
+ RARE_EARTH_HIGH.vChemicalSymbol = "??";
+
+ // Generate Ore Materials
+ MaterialGenerator.generateOreMaterial(RARE_EARTH_LOW);
+ MaterialGenerator.generateOreMaterial(RARE_EARTH_MID);
+ MaterialGenerator.generateOreMaterial(RARE_EARTH_HIGH);
+
+ ItemStack aRareEarth = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 1L);
+
+ Fluid aSulfuric = FluidUtils.getFluidStack("sulfuricacid", 1).getFluid();
+ Fluid aHydrocholric = FluidUtils.getFluidStack("hydrogenchloride", 1).getFluid();
+ Fluid aNitric = FluidUtils.getFluidStack("hydrofluoricacid", 1).getFluid();
+
+
+
+ // LV Rare Earth
+ GT_Values.RA.addChemicalBathRecipe(
+ ItemUtils.getSimpleStack(aRareEarth, 3),
+ FluidUtils.getFluidStack(aSulfuric, 1000),
+ RARE_EARTH_LOW.getCrushed(1),
+ RARE_EARTH_LOW.getCrushed(1),
+ RARE_EARTH_LOW.getCrushed(1),
+ new int[] {10000, 10000, 9000},
+ 20 * 30,
+ (int) GT_Values.V[1]);
+
+ // HV Rare Earth
+ GT_Values.RA.addChemicalBathRecipe(
+ ItemUtils.getSimpleStack(aRareEarth, 6),
+ FluidUtils.getFluidStack(aHydrocholric, 3000),
+ RARE_EARTH_MID.getCrushed(2),
+ RARE_EARTH_MID.getCrushed(2),
+ RARE_EARTH_MID.getCrushed(2),
+ new int[] {10000, 9000, 8000},
+ 20 * 60,
+ (int) GT_Values.V[3]);
+
+ // IV Rare Earth
+ GT_Values.RA.addChemicalBathRecipe(
+ ItemUtils.getSimpleStack(aRareEarth, 9),
+ FluidUtils.getFluidStack(aNitric, 6000),
+ RARE_EARTH_HIGH.getCrushed(3),
+ RARE_EARTH_HIGH.getCrushed(3),
+ RARE_EARTH_HIGH.getCrushed(3),
+ new int[] {9000, 8000, 7000},
+ 20 * 90,
+ (int) GT_Values.V[5]);
+
+
+ }
+
+
+ public static void processCopperRecipes() {
+
+ // Rare Earth Processing
+ /*GT_Values.RA.addSifterRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustRareEarth", 1),
+ new ItemStack[] {
+ ELEMENT.getInstance().YTTRIUM.getSmallDust(1),
+ ELEMENT.getInstance().NEODYMIUM.getSmallDust(1),
+ ELEMENT.getInstance().LANTHANUM.getSmallDust(1),
+ ELEMENT.getInstance().CERIUM.getSmallDust(1),
+ ELEMENT.getInstance().CADMIUM.getSmallDust(1),
+ ELEMENT.getInstance().CAESIUM.getSmallDust(1),
+ ORES.SAMARSKITE_YB.getSmallDust(1),
+ ORES.FLORENCITE.getSmallDust(1),
+ ORES.FLUORCAPHITE.getSmallDust(1),
+ //ELEMENT.getInstance().YTTERBIUM.getTinyDust(1),
+ //ELEMENT.getInstance().SAMARIUM.getTinyDust(1),
+ //ELEMENT.getInstance().GADOLINIUM.getTinyDust(1)
+ },
+ new int[] { 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000 }, 20 * 30, 500);*/
+
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java
index 471a3cc33e..902806e026 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_SeleniumProcessing.java
@@ -17,7 +17,7 @@ public class RECIPES_SeleniumProcessing {
public static void init() {
//We need this
- MaterialUtils.generateSpecialDustAndAssignToAMaterial(MISC_MATERIALS.SELENIUM_DIOXIDE);
+ MaterialUtils.generateSpecialDustAndAssignToAMaterial(MISC_MATERIALS.SELENIUM_DIOXIDE, false);
// Makes Selenium Dioxide
processCopperRecipes();
@@ -86,15 +86,15 @@ public class RECIPES_SeleniumProcessing {
public static void processCopperRecipes() {
- //Copper
+ //Copper
CORE.RA.addDehydratorRecipe(
new ItemStack[]{
- ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Copper, 1), // Item Input
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Copper, 1), // Item Input
},
FluidUtils.getHotWater(1000), // Fluid
MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(20), // Fluid
new ItemStack[] {
- ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Copper, 1),
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Copper, 1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
@@ -116,18 +116,17 @@ public class RECIPES_SeleniumProcessing {
1000
},
40 * 20, // Time in ticks
- 1024); // EU
-
+ 1024); // EU
//Tetra
CORE.RA.addDehydratorRecipe(
new ItemStack[]{
- ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Tetrahedrite, 1), // Item Input
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Tetrahedrite, 1), // Item Input
},
FluidUtils.getHotWater(1000), // Fluid
MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(10), // Fluid
new ItemStack[] {
- ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Tetrahedrite, 1),
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Tetrahedrite, 1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
@@ -150,15 +149,16 @@ public class RECIPES_SeleniumProcessing {
},
40 * 20, // Time in ticks
1024); // EU
+
//Chalco
CORE.RA.addDehydratorRecipe(
new ItemStack[]{
- ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Chalcopyrite, 1), // Item Input
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Chalcopyrite, 1), // Item Input
},
FluidUtils.getHotWater(1000), // Fluid
MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(10), // Fluid
new ItemStack[] {
- ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Chalcopyrite, 1),
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Chalcopyrite, 1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
@@ -181,15 +181,16 @@ public class RECIPES_SeleniumProcessing {
},
40 * 20, // Time in ticks
1024); // EU
+
//Malachite
CORE.RA.addDehydratorRecipe(
new ItemStack[]{
- ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Malachite, 1), // Item Input
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Malachite, 1), // Item Input
},
FluidUtils.getHotWater(1000), // Fluid
MISC_MATERIALS.SELENIUM_DIOXIDE.getFluid(10), // Fluid
new ItemStack[] {
- ItemUtils.getOrePrefixStack(OrePrefixes.crushedPurified, Materials.Malachite, 1),
+ ItemUtils.getOrePrefixStack(OrePrefixes.crushedCentrifuged, Materials.Malachite, 1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getDust(1),
MISC_MATERIALS.SELENIUM_DIOXIDE.getSmallDust(1),
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Tools.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Tools.java
index 10cefdf0c4..2cc6d7b41a 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Tools.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Tools.java
@@ -154,16 +154,7 @@ public class RECIPES_Tools {
CobbleStone, sandHammer, CobbleStone,
CobbleStone, CobbleStone, CobbleStone,
RECIPE_Sand);
-
- if (LoadedMods.Baubles){
- //Cloaking Device
- RecipeUtils.recipeBuilder(
- plateDoubleNiChrome, plateIridiumAlloy, plateDoubleNiChrome,
- plateIridiumAlloy, batteryUltimate, plateIridiumAlloy,
- plateDoubleNiChrome, plateIridiumAlloy, plateDoubleNiChrome,
- personalCloakingDevice);
-
- }
+
//Sand to Sandstone
RecipeUtils.recipeBuilder(
Sand, Sand, Sand,
diff --git a/src/Java/gtPlusPlus/core/recipe/common/CI.java b/src/Java/gtPlusPlus/core/recipe/common/CI.java
index a9f336d19c..be1089a72a 100644
--- a/src/Java/gtPlusPlus/core/recipe/common/CI.java
+++ b/src/Java/gtPlusPlus/core/recipe/common/CI.java
@@ -6,6 +6,7 @@ import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Utility;
import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.core.item.chemistry.AgriculturalChem;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.LoadedMods;
import gtPlusPlus.core.material.ALLOY;
@@ -447,7 +448,10 @@ public class CI {
}
public static final ItemStack getTieredMachineCasing(int tier){
- if (tier == 0){
+ if (tier == 0){
+ if (machineCasing_ULV == null) {
+ machineCasing_ULV = ItemList.Casing_ULV.get(1);
+ }
return machineCasing_ULV;
}
else if (tier == 1){
@@ -544,7 +548,7 @@ public class CI {
private static final Material[] aMaterial_Main = new Material[] {
ALLOY.POTIN,
- ALLOY.ZIRCONIUM_CARBIDE,
+ ALLOY.TUMBAGA,
ALLOY.EGLIN_STEEL,
ALLOY.INCONEL_792,
ALLOY.TUNGSTEN_TITANIUM_CARBIDE,
@@ -558,7 +562,7 @@ public class CI {
};
private static final Material[] aMaterial_Secondary = new Material[] {
- ALLOY.TUMBAGA,
+ ALLOY.STEEL,
ALLOY.SILICON_CARBIDE,
ALLOY.TUNGSTEN_CARBIDE,
ALLOY.INCONEL_690,
@@ -573,7 +577,7 @@ public class CI {
};
private static final Material[] aMaterial_Tertiary = new Material[] {
- ALLOY.STEEL,
+ ELEMENT.getInstance().LEAD,
ELEMENT.getInstance().ALUMINIUM,
ALLOY.STAINLESS_STEEL,
ELEMENT.getInstance().TUNGSTEN,
@@ -631,12 +635,22 @@ public class CI {
}
public static FluidStack getTieredFluid(int aTier, int aAmount, int aType) {
- ItemStack aCell = getTieredComponent(OrePrefixes.liquid, aTier, 1);
+ // Weird Legacy handling
+ /*ItemStack aCell = getTieredComponent(OrePrefixes.liquid, aTier, 1);
FluidStack a = GT_Utility.getFluidForFilledItem(aCell, true);
if (a == null) {
a = aMaster[aType][aTier].getFluid(aAmount);
- }
- a.amount = aAmount;
+ }*/
+
+ // Modern Handling
+ FluidStack a = aMaster[aType][aTier].getFluid(aAmount);
+ if (a == null) {
+ ItemStack aCell = getTieredComponent(OrePrefixes.liquid, aTier, 1);
+ if (aCell != null) {
+ a = GT_Utility.getFluidForFilledItem(aCell, true);
+ a.amount = aAmount;
+ }
+ }
return a;
}
@@ -1226,4 +1240,8 @@ public class CI {
}
+ public static ItemStack getNumberedBioCircuit(int i) {
+ return ItemUtils.simpleMetaStack(AgriculturalChem.mBioCircuit, i, 0);
+ }
+
}