aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus/core
diff options
context:
space:
mode:
authorMartin Robertz <dream-master@gmx.net>2021-12-21 23:19:04 +0100
committerGitHub <noreply@github.com>2021-12-21 23:19:04 +0100
commitef8ac539395ce5067edfcf1b8a98ae746c476fc1 (patch)
treeaf4167cbb06d109743d76a506c005910ce6d42d6 /src/main/java/gtPlusPlus/core
parent62676f57093ed476b9c378615560749c6e0136e3 (diff)
parent06c8eb6bf1e2c634033d21e1d50ff7a8d8474550 (diff)
downloadGT5-Unofficial-ef8ac539395ce5067edfcf1b8a98ae746c476fc1.tar.gz
GT5-Unofficial-ef8ac539395ce5067edfcf1b8a98ae746c476fc1.tar.bz2
GT5-Unofficial-ef8ac539395ce5067edfcf1b8a98ae746c476fc1.zip
Merge pull request #74 from GTNewHorizons/New-Multis
New multis
Diffstat (limited to 'src/main/java/gtPlusPlus/core')
-rw-r--r--src/main/java/gtPlusPlus/core/config/ConfigHandler.java2
-rw-r--r--src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java2
-rw-r--r--src/main/java/gtPlusPlus/core/item/ModItems.java8
-rw-r--r--src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java6
-rw-r--r--src/main/java/gtPlusPlus/core/lib/CORE.java2
-rw-r--r--src/main/java/gtPlusPlus/core/lib/LoadedMods.java6
-rw-r--r--src/main/java/gtPlusPlus/core/material/ELEMENT.java15
-rw-r--r--src/main/java/gtPlusPlus/core/material/MISC_MATERIALS.java20
-rw-r--r--src/main/java/gtPlusPlus/core/material/ORES.java3
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/LOADER_Machine_Components.java27
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java34
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java6
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java106
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java20
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/common/CI.java51
-rw-r--r--src/main/java/gtPlusPlus/core/util/minecraft/HazmatUtils.java4
-rw-r--r--src/main/java/gtPlusPlus/core/util/reflect/ReflectionUtils.java6
17 files changed, 259 insertions, 59 deletions
diff --git a/src/main/java/gtPlusPlus/core/config/ConfigHandler.java b/src/main/java/gtPlusPlus/core/config/ConfigHandler.java
index 61610a03e9..382b63e2c3 100644
--- a/src/main/java/gtPlusPlus/core/config/ConfigHandler.java
+++ b/src/main/java/gtPlusPlus/core/config/ConfigHandler.java
@@ -225,6 +225,8 @@ public class ConfigHandler {
pollutionPerSecondMultiMassFabricator = config.get("pollution", "pollutionPerSecondMultiMassFabricator", pollutionPerSecondMultiMassFabricator,"pollution rate in gibbl/s for the Matter fabrication CPU").getInt(pollutionPerSecondMultiMassFabricator);
pollutionPerSecondMultiRefinery = config.get("pollution", "pollutionPerSecondMultiRefinery", pollutionPerSecondMultiRefinery,"pollution rate in gibbl/s for the Reactor fuel processing plant").getInt(pollutionPerSecondMultiRefinery);
//pollutionPerSecondMultiGeneratorArray;
+ pollutionPerSecondMultiIndustrialRockBreaker = config.get("pollution", "pollutionPerSecondMultiIndustrialRockBreaker", pollutionPerSecondMultiIndustrialRockBreaker,"pollution rate in gibbl/s for the Industrial Rock Breaker").getInt(pollutionPerSecondMultiIndustrialRockBreaker);
+ pollutionPerSecondMultiIndustrialChisel = config.get("pollution", "pollutionPerSecondMultiIndustrialChisel", pollutionPerSecondMultiIndustrialChisel,"pollution rate in gibbl/s for the Industrial Chisel").getInt(pollutionPerSecondMultiIndustrialChisel);
pollutionPerSecondMultiTreeFarm = config.get("pollution", "pollutionPerSecondMultiTreeFarm", pollutionPerSecondMultiTreeFarm,"pollution rate in gibbl/s for the Tree growth simulator").getInt(pollutionPerSecondMultiTreeFarm);
pollutionPerSecondMultiFrothFlotationCell = config.get("pollution", "pollutionPerSecondMultiFrothFlotationCell", pollutionPerSecondMultiFrothFlotationCell,"pollution rate in gibbl/s for the Flotation cell regulator").getInt(pollutionPerSecondMultiFrothFlotationCell);
pollutionPerSecondMultiAutoCrafter = config.get("pollution", "pollutionPerSecondMultiAutoCrafter", pollutionPerSecondMultiAutoCrafter,"pollution rate in gibbl/s for the Large-Scale auto assembler v1.01").getInt(pollutionPerSecondMultiAutoCrafter);
diff --git a/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java b/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
index 53d63499a6..bb47bb2380 100644
--- a/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
+++ b/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
@@ -160,6 +160,8 @@ public class COMPAT_HANDLER {
GregtechIsaMill.run();
GregtechSteamMultis.run();
//GregtechIndustrialElementDuplicator.run();
+ GregtechIndustrialRockBreaker.run();
+ GregtechIndustrialChisel.run();
//New Horizons Content
NewHorizonsAccelerator.run();
diff --git a/src/main/java/gtPlusPlus/core/item/ModItems.java b/src/main/java/gtPlusPlus/core/item/ModItems.java
index 47278c559d..fca4c5d3c6 100644
--- a/src/main/java/gtPlusPlus/core/item/ModItems.java
+++ b/src/main/java/gtPlusPlus/core/item/ModItems.java
@@ -14,6 +14,7 @@ import gtPlusPlus.core.common.compat.COMPAT_Baubles;
import gtPlusPlus.core.creative.AddToCreativeTab;
import gtPlusPlus.core.item.base.*;
import gtPlusPlus.core.item.base.BaseItemComponent.ComponentTypes;
+import gtPlusPlus.core.item.base.cell.BaseItemCell;
import gtPlusPlus.core.item.base.dusts.BaseItemDust;
import gtPlusPlus.core.item.base.foil.BaseItemFoil;
import gtPlusPlus.core.item.base.foods.BaseItemFood;
@@ -203,6 +204,8 @@ public final class ModItems {
public static Item dustIgnis;
public static Item dustTerra;
public static Item dustAqua;
+
+ public static Item cellHydrogenChlorideMix;
public static BaseEuItem metaItem2;
@@ -712,7 +715,10 @@ public final class ModItems {
dustAer = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AER, true)[0];
dustIgnis = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().IGNIS, true)[0];
dustTerra = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().TERRA, true)[0];
- dustAqua = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AQUA, true)[0];
+ dustAqua = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AQUA, true)[0];
+
+ ItemUtils.generateSpecialUseDusts(MISC_MATERIALS.WOODS_GLASS, false);
+ cellHydrogenChlorideMix = new BaseItemCell("hydrogenchloridemix", "Hydrogen Chloride Mix", MISC_MATERIALS.HYDROGEN_CHLORIDE.getRGB());
//Nuclear Fuel Dusts
dustLithiumCarbonate = ItemUtils.generateSpecialUseDusts("LithiumCarbonate", "Lithium Carbonate", "Li2CO3", Utils.rgbtoHexValue(240, 240, 240))[0]; //https://en.wikipedia.org/wiki/Lithium_carbonate
diff --git a/src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java b/src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java
index 688483b831..ad47adcf64 100644
--- a/src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java
+++ b/src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java
@@ -12,6 +12,7 @@ import gtPlusPlus.core.util.minecraft.ItemUtils;
import ic2.core.Ic2Items;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidContainerRegistry;
+import net.minecraftforge.fluids.FluidStack;
public class BaseItemCell extends BaseItemComponent{
@@ -26,7 +27,10 @@ public class BaseItemCell extends BaseItemComponent{
public BaseItemCell(final String unlocalName, final String localName, final short[] RGBa) {
super(unlocalName, localName, RGBa);
this.fluidColour = RGBa;
- FluidContainerRegistry.registerFluidContainer(FluidUtils.getFluidStack(unlocalName.toLowerCase(), 0), ItemUtils.getSimpleStack(this), Ic2Items.cell.copy());
+ FluidStack aFluid = FluidUtils.getFluidStack(unlocalName.toLowerCase(), 1000);
+ if (aFluid != null) {
+ FluidContainerRegistry.registerFluidContainer(aFluid, ItemUtils.getSimpleStack(this), Ic2Items.cell.copy());
+ }
}
public BaseItemCell(final String unlocalName, final String localName, final short[] RGBa, final Fluid cellFluid) {
diff --git a/src/main/java/gtPlusPlus/core/lib/CORE.java b/src/main/java/gtPlusPlus/core/lib/CORE.java
index 1ef04aa154..7508b9fc8f 100644
--- a/src/main/java/gtPlusPlus/core/lib/CORE.java
+++ b/src/main/java/gtPlusPlus/core/lib/CORE.java
@@ -300,6 +300,8 @@ public class CORE {
public static int pollutionPerSecondMultiAutoCrafter = 500;
public static int pollutionPerSecondMultiThermalBoiler = 700;
public static int pollutionPerSecondMultiAlgaePond = 0;
+ public static int pollutionPerSecondMultiIndustrialRockBreaker = 100;
+ public static int pollutionPerSecondMultiIndustrialChisel = 50;
//pollution single blocks
public static int basePollutionPerSecondSemiFluidGenerator = 40;
public static double[] pollutionReleasedByTierSemiFluidGenerator = new double[]{0,2.0,4.0,8.0};
diff --git a/src/main/java/gtPlusPlus/core/lib/LoadedMods.java b/src/main/java/gtPlusPlus/core/lib/LoadedMods.java
index 1eb8351d65..4f7a10be78 100644
--- a/src/main/java/gtPlusPlus/core/lib/LoadedMods.java
+++ b/src/main/java/gtPlusPlus/core/lib/LoadedMods.java
@@ -60,6 +60,7 @@ public class LoadedMods {
public static boolean CropsPlusPlus = false; //Barts Crop Mod
public static boolean Reliquary = false;
public static boolean SpiceOfLife = false;
+ public static boolean RemoteIO = false;
@@ -322,6 +323,11 @@ public class LoadedMods {
Witchery = true;
Logger.INFO("Components enabled for: Witchery");
totalMods++;
+ }
+ if (isModLoaded("RIO")){
+ RemoteIO = true;
+ Logger.INFO("Components enabled for: RemoteIO");
+ totalMods++;
}
Logger.INFO("Content found for "+totalMods+" mods");
diff --git a/src/main/java/gtPlusPlus/core/material/ELEMENT.java b/src/main/java/gtPlusPlus/core/material/ELEMENT.java
index 54af01ef6e..01d3fd5330 100644
--- a/src/main/java/gtPlusPlus/core/material/ELEMENT.java
+++ b/src/main/java/gtPlusPlus/core/material/ELEMENT.java
@@ -236,13 +236,14 @@ public final class ELEMENT {
0,
false,
new MaterialStack[]{
- new MaterialStack(getInstance().OXYGEN, 30),
- new MaterialStack(getInstance().IRON, 20),
- new MaterialStack(getInstance().SILICONDIOXIDE, 20),
- new MaterialStack(getInstance().ALUMINIUMOXIDE, 10),
- new MaterialStack(getInstance().POTASSIUM, 10),
- new MaterialStack(getInstance().CALCIUM, 5),
- new MaterialStack(getInstance().SODIUM, 5)
+ new MaterialStack(getInstance().OXYGEN, 16),
+ new MaterialStack(getInstance().IRON, 10),
+ new MaterialStack(getInstance().SILICONDIOXIDE, 10),
+ new MaterialStack(getInstance().ALUMINIUMOXIDE, 6),
+ new MaterialStack(getInstance().POTASSIUM, 6),
+ new MaterialStack(getInstance().CALCIUM, 4),
+ new MaterialStack(getInstance().SODIUM, 4),
+ new MaterialStack(getInstance().YTTERBIUM, 2)
});//Not a GT Inherited Material
public static final Material RUNITE = new Material("Runite", MaterialState.SOLID, TextureSet.SET_FINE, new short[] {60, 200, 190}, 6750, 11550, 73, 87, true, "ยง", 0);//Not a GT Inherited Material
diff --git a/src/main/java/gtPlusPlus/core/material/MISC_MATERIALS.java b/src/main/java/gtPlusPlus/core/material/MISC_MATERIALS.java
index 19e8499f02..2740f49d71 100644
--- a/src/main/java/gtPlusPlus/core/material/MISC_MATERIALS.java
+++ b/src/main/java/gtPlusPlus/core/material/MISC_MATERIALS.java
@@ -114,6 +114,26 @@ public final class MISC_MATERIALS {
new MaterialStack(ELEMENT.getInstance().CARBON, 1),
new MaterialStack(ELEMENT.getInstance().OXYGEN, 2)
});
+
+ public static final Material WOODS_GLASS = new Material(
+ "Wood's Glass", //Material Name
+ MaterialState.SOLID, //State
+ TextureSets.GEM_A.get(), //Texture Set
+ new short[] {220, 60, 255}, //Material Colour
+ -1,
+ -1,
+ -1,
+ -1,
+ false,
+ "Si4Ba3Na2Ni",
+ 0,
+ false,
+ new MaterialStack[]{
+ new MaterialStack(ELEMENT.getInstance().SILICON, 40),
+ new MaterialStack(ELEMENT.getInstance().BARIUM, 30),
+ new MaterialStack(ELEMENT.getInstance().SODIUM, 20),
+ new MaterialStack(ELEMENT.getInstance().NICKEL, 10),
+ });
/*
diff --git a/src/main/java/gtPlusPlus/core/material/ORES.java b/src/main/java/gtPlusPlus/core/material/ORES.java
index 0186c23a07..82757b2ee6 100644
--- a/src/main/java/gtPlusPlus/core/material/ORES.java
+++ b/src/main/java/gtPlusPlus/core/material/ORES.java
@@ -486,10 +486,11 @@ public final class ORES {
-1, //Radiation
new MaterialStack[]{
new MaterialStack(ELEMENT.getInstance().CALCIUM, 1),
+ new MaterialStack(ELEMENT.getInstance().YTTERBIUM, 3),
new MaterialStack(ELEMENT.getInstance().GADOLINIUM, 2),
new MaterialStack(ELEMENT.getInstance().DYSPROSIUM, 2),
new MaterialStack(ELEMENT.getInstance().URANIUM235, 2),
- new MaterialStack(ELEMENT.getInstance().OXYGEN,32),
+ new MaterialStack(ELEMENT.getInstance().OXYGEN,29),
new MaterialStack(ELEMENT.getInstance().HYDROGEN, 24)
});
diff --git a/src/main/java/gtPlusPlus/core/recipe/LOADER_Machine_Components.java b/src/main/java/gtPlusPlus/core/recipe/LOADER_Machine_Components.java
index 460b29e802..c77db21800 100644
--- a/src/main/java/gtPlusPlus/core/recipe/LOADER_Machine_Components.java
+++ b/src/main/java/gtPlusPlus/core/recipe/LOADER_Machine_Components.java
@@ -68,6 +68,13 @@ public class LOADER_Machine_Components {
CI.sensor_HV = ItemList.Sensor_HV.get(1);
CI.sensor_EV = ItemList.Sensor_EV.get(1);
CI.sensor_IV = ItemList.Sensor_IV.get(1);
+ if(CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
+ CI.fluidRegulator_LV = ItemUtils.getValueOfItemList("FluidRegulator_LV", ItemList.Pump_LV).get(1);
+ CI.fluidRegulator_MV = ItemUtils.getValueOfItemList("FluidRegulator_MV", ItemList.Pump_MV).get(1);
+ CI.fluidRegulator_HV = ItemUtils.getValueOfItemList("FluidRegulator_HV", ItemList.Pump_HV).get(1);
+ CI.fluidRegulator_EV = ItemUtils.getValueOfItemList("FluidRegulator_EV", ItemList.Pump_EV).get(1);
+ CI.fluidRegulator_IV = ItemUtils.getValueOfItemList("FluidRegulator_IV", ItemList.Pump_IV).get(1);
+ }
}
private static void registerGTExperimentalComponents(){
@@ -96,7 +103,13 @@ public class LOADER_Machine_Components {
CI.sensor_LuV = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32695, 1);
CI.sensor_ZPM = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32696, 1);
CI.sensor_UV = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32697, 1);
-
+
+ if(CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
+ CI.fluidRegulator_LuV = ItemUtils.getValueOfItemList("FluidRegulator_LuV", ItemList.Pump_LuV).get(1);
+ CI.fluidRegulator_ZPM = ItemUtils.getValueOfItemList("FluidRegulator_ZPM", ItemList.Pump_ZPM).get(1);
+ CI.fluidRegulator_UV = ItemUtils.getValueOfItemList("FluidRegulator_UV", ItemList.Pump_UV).get(1);
+ }
+
registerComponentsULV();
registerComponentsMAX();
}
@@ -135,6 +148,12 @@ public class LOADER_Machine_Components {
CI.sensor_UV = GregtechItemList.Sensor_UV.get(1);
CI.sensor_MAX = GregtechItemList.Sensor_MAX.get(1);
+ if(CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
+ CI.fluidRegulator_LuV = ItemUtils.getValueOfItemList("FluidRegulator_LuV", ItemList.Pump_LuV).get(1);
+ CI.fluidRegulator_ZPM = ItemUtils.getValueOfItemList("FluidRegulator_ZPM", ItemList.Pump_ZPM).get(1);
+ CI.fluidRegulator_UV = ItemUtils.getValueOfItemList("FluidRegulator_UV", ItemList.Pump_UV).get(1);
+ }
+
registerComponentsULV();
}
@@ -171,6 +190,12 @@ public class LOADER_Machine_Components {
CI.sensor_LuV = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32695, 1);
CI.sensor_ZPM = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32696, 1);
CI.sensor_UV = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32697, 1);
+
+ if(CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
+ CI.fluidRegulator_LuV = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32665, 1);
+ CI.fluidRegulator_ZPM = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32666, 1);
+ CI.fluidRegulator_UV = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32667, 1);
+ }
// Thanks 0lafe
CI.electricMotor_MAX = ItemUtils.simpleMetaStack("gregtech:gt.metaitem.01", 32596, 1);
diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
index 3d0e6aebfd..f8c923fc7a 100644
--- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
+++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
@@ -93,6 +93,7 @@ public class RECIPES_GREGTECH {
fluidheaterRecipes();
chemplantRecipes();
packagerRecipes();
+ alloySmelterRecipes();
/**
@@ -109,7 +110,17 @@ public class RECIPES_GREGTECH {
addFuels();
}
+ private static void alloySmelterRecipes() {
+
+ //Wood's Glass Laser Lens
+ GT_Values.RA.addAlloySmelterRecipe(
+ MISC_MATERIALS.WOODS_GLASS.getDust(5),
+ ItemList.Shape_Mold_Ball.get(0),
+ GregtechItemList.Laser_Lens_WoodsGlass.get(1),
+ 20 * 300,
+ MaterialUtils.getVoltageForTier(3));
+ }
private static void packagerRecipes() {
@@ -1122,29 +1133,6 @@ public class RECIPES_GREGTECH {
20 * 120,
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() {
diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java
index 1c95467770..d47b65391c 100644
--- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java
+++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java
@@ -439,12 +439,6 @@ public class RECIPES_General {
generatePipeRecipes(e.mDefaultLocalName, e.getMass(), tVoltageMultiplier);
}
- 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),
CI.getTieredCircuitOreDictName(4), CI.component_Plate[5], ItemList.Hatch_Input_IV.get(1),
diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java
index 14001d86bd..6e042a71b1 100644
--- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java
+++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java
@@ -253,7 +253,9 @@ public class RECIPES_Machines {
chemPlant();
zyngen();
milling();
- sparging();
+ sparging();
+ chisels();
+ rockBreaker();
}
@@ -1404,14 +1406,24 @@ public class RECIPES_Machines {
}
//Air Intake Hatch
- ItemList FluidRegulator_IV = ItemUtils.getValueOfItemList("FluidRegulator_IV", ItemList.Pump_IV);
- ItemStack aTieredFluidRegulator = CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK ? FluidRegulator_IV.get(1) : ItemList.Pump_IV.get(1);
RecipeUtils.addShapedGregtechRecipe(
CI.component_Plate[6], ItemList.Casing_Grate.get(1), CI.component_Plate[6],
- CI.component_Plate[6], aTieredFluidRegulator, CI.component_Plate[6],
- CI.getTieredCircuit(4), ItemList.Hatch_Input_IV.get(1), CI.getTieredCircuit(4),
+ CI.component_Plate[6], CI.getFluidRegulator(5, 1), CI.component_Plate[6],
+ CI.getTieredCircuit(5), ItemList.Hatch_Input_IV.get(1), CI.getTieredCircuit(5),
GregtechItemList.Hatch_Air_Intake.get(1));
-
+
+
+ RecipeUtils.addShapedGregtechRecipe(
+ CI.getPlate(6, 1), ItemList.Casing_Gearbox_Titanium, CI.getPlate(6, 1),
+ CI.getPlate(6, 1), CI.getFluidRegulator(5, 1), CI.getPlate(6, 1),
+ CI.getTieredCircuit(6), ItemList.Hatch_Input_IV.get(1), CI.getTieredCircuit(6),
+ GregtechItemList.Hatch_Reservoir.get(1));
+
+ RecipeUtils.addShapedGregtechRecipe(
+ CI.getPlate(7, 1), GregtechItemList.Hatch_Air_Intake.get(1), CI.getPlate(7, 1),
+ CI.getPlate(7, 1), CI.getFluidRegulator(7, 1), CI.getPlate(7, 1),
+ CI.getTieredCircuit(7), ItemList.Hatch_Input_ZPM.get(1), CI.getTieredCircuit(7),
+ GregtechItemList.Hatch_Air_Intake_Extreme.get(1));
if (CORE.ConfigSwitches.enableMultiblock_LiquidFluorideThoriumReactor){
//Thorium Reactor
@@ -2637,6 +2649,78 @@ public class RECIPES_Machines {
60 * 20 * 2,
MaterialUtils.getVoltageForTier(5));
}
+
+ private static void chisels() {
+ ItemStack[] aChisels = new ItemStack[] {
+ GregtechItemList.GT_Chisel_LV.get(1),
+ GregtechItemList.GT_Chisel_MV.get(1),
+ GregtechItemList.GT_Chisel_HV.get(1),
+ };
+ for (int i=1;i<4;i++) {
+ CORE.RA.addSixSlotAssemblingRecipe(
+ new ItemStack[] {
+ CI.getNumberedBioCircuit(10+i),
+ CI.getTieredMachineCasing(i),
+ CI.getPlate(i, 4),
+ CI.getElectricMotor(i, 2),
+ CI.getConveyor(i, 2),
+ CI.getRobotArm(i, 1)
+ },
+ CI.getTieredFluid(i, 144 * 4),
+ aChisels[i-1],
+ 20 * 20,
+ MaterialUtils.getVoltageForTier(i));
+ }
+
+ CORE.RA.addSixSlotAssemblingRecipe(
+ new ItemStack[] {
+ CI.getNumberedBioCircuit(14),
+ aChisels[2],
+ CI.getPlate(4, 8),
+ CI.getElectricMotor(4, 8),
+ CI.getConveyor(4, 8),
+ CI.getRobotArm(4, 4)
+ },
+ CI.getTieredFluid(4, 144 * 8),
+ GregtechItemList.Controller_IndustrialAutoChisel.get(1),
+ 20 * 20,
+ MaterialUtils.getVoltageForTier(4));
+
+ CORE.RA.addSixSlotAssemblingRecipe(
+ new ItemStack[] {
+ CI.getNumberedBioCircuit(14),
+ ItemList.Casing_SolidSteel.get(2),
+ CI.getPlate(4, 2),
+ CI.getTieredComponent(OrePrefixes.plate, 3, 4),
+ CI.getTieredComponent(OrePrefixes.ring, 3, 8),
+ CI.getTieredComponent(OrePrefixes.rod, 2, 4),
+ },
+ CI.getTieredFluid(2, 144 * 2),
+ GregtechItemList.Casing_IndustrialAutoChisel.get(1),
+ 20 * 20,
+ MaterialUtils.getVoltageForTier(3));
+
+
+
+ }
+
+ private static void rockBreaker() {
+
+ CORE.RA.addSixSlotAssemblingRecipe(
+ new ItemStack[] {
+ CI.getNumberedAdvancedCircuit(12),
+ ItemList.Machine_EV_RockBreaker.get(1),
+ ALLOY.STAINLESS_STEEL.getPlate(8),
+ ALLOY.STAINLESS_STEEL.getRing(4),
+ CI.getTieredComponentOfMaterial(Materials.Aluminium, OrePrefixes.plateDouble, 8),
+ ALLOY.EGLIN_STEEL.getScrew(8),
+ },
+ ELEMENT.getInstance().ALUMINIUM.getFluidStack(144 * 8),
+ GregtechItemList.Controller_IndustrialRockBreaker.get(1),
+ 60 * 20 * 2,
+ MaterialUtils.getVoltageForTier(4));
+
+ }
private static void fakeMachineCasingCovers() {
GregtechItemList[] mMachineCasingCovers = new GregtechItemList[] {
@@ -2680,11 +2764,11 @@ public class RECIPES_Machines {
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"));
+ Block agon = ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "agonBlock"));
+ Block korp = ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "korpBlock"));
+ Block jelt = ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "jeltBlock"));
+ Block bitt = ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "bittBlock"));
+ Block iszm = ReflectionUtils.getFieldValue( ReflectionUtils.getField(ModBlocksClass, "iszmBlock"));
// "agon", "iszm", "korp", "jelt", "bitt"
diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java
index 864d0bcca8..860a87deae 100644
--- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java
+++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java
@@ -13,6 +13,7 @@ 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.item.ModItems;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.material.ELEMENT;
import gtPlusPlus.core.material.MISC_MATERIALS;
@@ -118,12 +119,25 @@ public class RECIPES_RareEarthProcessing {
null,
new int[] {10000, 10000, 10000},
20 * 30,
- (int) GT_Values.V[2]);
+ 120);
// Generate Special Laser Recipe
+ CORE.RA.addMixerRecipe(
+ CI.getNumberedBioCircuit(2),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellChlorine", 1),
+ ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogen", 1),
+ null,
+ null,
+ null,
+ ItemUtils.getSimpleStack(ModItems.cellHydrogenChlorideMix, 2),
+ null,
+ null,
+ null,
+ 20 * 10,
+ 480);
+
CORE.RA.addUvLaserRecipe(
- ELEMENT.getInstance().CHLORINE.getCell(2),
- ELEMENT.getInstance().HYDROGEN.getCell(2),
+ ItemUtils.getSimpleStack(ModItems.cellHydrogenChlorideMix, 4),
ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogenChloride", 4),
20 * 30,
480);
diff --git a/src/main/java/gtPlusPlus/core/recipe/common/CI.java b/src/main/java/gtPlusPlus/core/recipe/common/CI.java
index 0a1b762a97..f6af91a040 100644
--- a/src/main/java/gtPlusPlus/core/recipe/common/CI.java
+++ b/src/main/java/gtPlusPlus/core/recipe/common/CI.java
@@ -128,6 +128,15 @@ public class CI {
public static ItemStack sensor_ZPM;
public static ItemStack sensor_UV;
public static ItemStack sensor_MAX;
+
+ public static ItemStack fluidRegulator_LV;
+ public static ItemStack fluidRegulator_MV;
+ public static ItemStack fluidRegulator_HV;
+ public static ItemStack fluidRegulator_EV;
+ public static ItemStack fluidRegulator_IV;
+ public static ItemStack fluidRegulator_LuV;
+ public static ItemStack fluidRegulator_ZPM;
+ public static ItemStack fluidRegulator_UV;
//Machine Casings
public static ItemStack machineCasing_ULV;
@@ -881,6 +890,48 @@ public class CI {
}
return ItemUtils.getSimpleStack(aType, aSize);
}
+
+ public static ItemStack getFluidRegulator(int aTier, int aSize) {
+ if (!CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
+ return CI.getElectricPump(aTier, aSize);
+ }
+ ItemStack aType;
+ int aLazyTier = 0;
+ if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_LV;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_LV;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_MV;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_HV;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_EV;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_IV;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_LuV;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_ZPM;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_UV;
+ }
+ else if (aTier == aLazyTier++) {
+ aType = CI.fluidRegulator_UV;
+ }
+ else {
+ aType = CI.fluidRegulator_LV;
+ }
+ return ItemUtils.getSimpleStack(aType, aSize);
+ }
public static ItemStack getElectricPiston(int aTier, int aSize) {
ItemStack aType;
diff --git a/src/main/java/gtPlusPlus/core/util/minecraft/HazmatUtils.java b/src/main/java/gtPlusPlus/core/util/minecraft/HazmatUtils.java
index b322036ef7..0e2fff3f35 100644
--- a/src/main/java/gtPlusPlus/core/util/minecraft/HazmatUtils.java
+++ b/src/main/java/gtPlusPlus/core/util/minecraft/HazmatUtils.java
@@ -254,7 +254,7 @@ public class HazmatUtils {
aItemFields.add(ReflectionUtils.getField(aItemsGravisuite, "graviChestPlate"));
AutoMap<ItemStack> aGravisuite = new AutoMap<ItemStack>();
for (Field aItemField : aItemFields) {
- Item aItemObject = (Item) ReflectionUtils.getFieldValue(aItemField);
+ Item aItemObject = ReflectionUtils.getFieldValue(aItemField);
if (aItemObject != null) {
aGravisuite.add(ItemUtils.getSimpleStack(aItemObject));
}
@@ -274,7 +274,7 @@ public class HazmatUtils {
aItemFields.add(ReflectionUtils.getField(aItemsEMT, "ultimateSolarHelmet"));
AutoMap<ItemStack> aASP = new AutoMap<ItemStack>();
for (Field aItemField : aItemFields) {
- Item aItemObject = (Item) ReflectionUtils.getFieldValue(aItemField);
+ Item aItemObject = ReflectionUtils.getFieldValue(aItemField);
if (aItemObject != null) {
aASP.add(ItemUtils.getSimpleStack(aItemObject));
}
diff --git a/src/main/java/gtPlusPlus/core/util/reflect/ReflectionUtils.java b/src/main/java/gtPlusPlus/core/util/reflect/ReflectionUtils.java
index 1ef925f793..92804d72ec 100644
--- a/src/main/java/gtPlusPlus/core/util/reflect/ReflectionUtils.java
+++ b/src/main/java/gtPlusPlus/core/util/reflect/ReflectionUtils.java
@@ -1060,13 +1060,13 @@ public class ReflectionUtils {
return false;
}
- public static Object getFieldValue(Field field) {
+ public static <T> T getFieldValue(Field field) {
return getFieldValue(field, null);
}
- public static Object getFieldValue(Field field, Object instance) {
+ public static <T> T getFieldValue(Field field, Object instance) {
try {
- return field.get(instance);
+ return (T) field.get(instance);
} catch (IllegalArgumentException | IllegalAccessException e) {
}
return null;